Commit Graph

70551 Commits

Author SHA1 Message Date
Nikolay Nikolov
a46c6229c5 + WebAssembly interal linker: add global names to the name custom section 2024-09-19 07:00:56 +03:00
Nikolay Nikolov
507e728ee8 + introduced local method WriteNameMap for writing name maps in the WebAssembly name custom section 2024-09-19 06:48:22 +03:00
Nikolay Nikolov
b5d0cd57ed + introduced method TWasmExeOutput.AddToGlobalNameMap 2024-09-19 06:43:52 +03:00
Nikolay Nikolov
7c545cfa8b + introduced method TWasmExeOutput.AddToNameMap 2024-09-19 06:42:03 +03:00
Nikolay Nikolov
85143f515d + introduced private type TCustomSectionNameMap to class TWasmExeOutput 2024-09-19 06:40:37 +03:00
Nikolay Nikolov
2ee8a59fbd + introduced private type TCustomSectionNameMapEntry to class TWasmExeOutput 2024-09-19 06:39:38 +03:00
Nikolay Nikolov
ffd461860b + added extra values to TWasmNameSubsectionType from the extended name section
proposal and the gc proposal
2024-09-19 06:35:49 +03:00
Pierre Muller
b1a18f5690 Handle floatx80 records with gaps also in InternalAssembler 2024-09-18 18:54:44 +00:00
Michaël Van Canneyt
705b2cf62a * Fix compilation in pas2js 2024-09-18 18:47:40 +02:00
Michaël Van Canneyt
b18e381049 * Some minor improvements 2024-09-18 17:49:41 +02:00
Michaël Van Canneyt
5ac4fd0b13 * Allow message in ShowAsDebug 2024-09-18 17:32:37 +02:00
Michaël Van Canneyt
1f0c72b6c1 * JOB debugobject call 2024-09-18 17:09:02 +02:00
Michaël Van Canneyt
334102e391 * Add timer API and demo 2024-09-18 16:49:27 +02:00
Michaël Van Canneyt
c883683b6a * Fix compiling system unit 2024-09-18 08:46:17 +02:00
florian
76fc3275bc * handle except blocks as normal code block with regard to specialization of generics, resolves #40890 2024-09-17 23:02:25 +02:00
Margers
4ed3e6d002 Increase IDE version 2024-09-17 06:25:14 +00:00
Margers
016962261f Assembler Reader Options for x86_64 2024-09-17 06:24:21 +00:00
Margers
69d552415a Save All is enabled and disabled as requiered 2024-09-17 06:22:32 +00:00
Nikolay Nikolov
29ee863e8f - WebAssembly code generator: removed the g_fingerprint hack, that added 4
useless i64 constants on the stack with random numbers and then drop them. It
  was used for primitive debugging, since previously it wasn't possible to
  identify the function name. Now we can produce DWARF debug info, as well as a
  "names" custom section to give each function a name and most WebAssembly
  environments support at least one of the two mechanisms. Therefore the
  g_fingerprint hack is no longer necessary.
2024-09-17 06:14:03 +03:00
Nikolay Nikolov
cf7d9fa4c5 + WebAssembly internal linker: create a name custom section to help debugging 2024-09-17 05:34:20 +03:00
florian
9d7ea2c069 * revert check for boolean type when handling LOC_FLAG in tcgassignmentnode.pass_generate_code. This makes pas boolean the default,
resolves #40908
2024-09-16 22:48:18 +02:00
Pierre Muller
400094921c Handle cross-endian case inside TCoffObjData.writereloc method 2024-09-16 18:58:40 +00:00
Margers
822a9e1bb1 Compilation error fix for Assembler output options. 2024-09-16 18:18:29 +00:00
Margers
dde4d515bf Autosave before Run with Breakpoints in Debuger 2024-09-16 17:39:51 +00:00
Margers
ca03194927 Enable mouse in pterm (putty) 2024-09-16 17:37:12 +00:00
Margers
69e7ffadba Implementation of Kitty keys and xterm - ModifyOtherKeys (Unix keyboard) 2024-09-16 17:36:02 +00:00
Margers
4f35953353 Cancel exit if Auto Save is ON and saving new file is canceled. 2024-09-16 17:34:48 +00:00
Margers
ef4ad5d669 Save and read correctly Assembler Output options in Textmoed ide. 2024-09-16 17:33:45 +00:00
Margers
e4596d3db4 Textmode ide: in Change Directrory dialog can copy and paste in input line. 2024-09-16 07:55:31 +00:00
florian
0e0c4bd621 * make UpdateFnv64 closer to the original algorithm as proposed by Gareth 2024-09-15 21:49:02 +02:00
Nikolay Nikolov
beee98e246 * WebAssembly debug info: make wasmtime happy by not emitting line info end
sequences for procedures that lack any debug lines emitted previously
2024-09-15 11:15:17 +03:00
Nikolay Nikolov
aba44452f3 * WebAssembly internal linker: also don't remove unused data sections if
smartlinking is turned off.
2024-09-15 08:59:08 +03:00
Nikolay Nikolov
36ecb2b5da * WebAssembly internal linker: don't remove unused code sections if smartlinking
is turned off. This is needed for debugging, because FPC doesn't support debug
  info with smartlinking on most platforms, and that includes WebAssembly.
2024-09-15 08:32:35 +03:00
Nikolay Nikolov
993db6cf32 WebAssembly debug info: use different LINE_BASE and LINE_RANGE on WebAssembly to
improve compatibility with WasmTime's debugger support
2024-09-15 07:21:32 +03:00
Nikolay Nikolov
4914a5a31f + introduced LINE_RANGE constant in the DWARF debug info generation unit 2024-09-15 05:36:42 +03:00
Nikolay Nikolov
562ca0ad80 * WebAssembly internal assembler writer: generate the function locals header
when assembling the tai_local directive, instead of injecting them manually in
  TWasmObjOutput.WriteFunctionCode. This makes function code offsets correct
  and avoids the need to manually adjust relocation fixups by adding the locals
  header size. It also fixes relative relocations, used in DWARF debug line
  info.
2024-09-15 03:44:14 +03:00
Nikolay Nikolov
1a08d76ccb + WebAssembly: insert a tai_local directive also for assembler functions 2024-09-15 02:12:48 +03:00
Nikolay Nikolov
80523e192a * TWasmObjData.DeclareLocal renamed DeclareLocals. No functional changes. 2024-09-15 01:03:56 +03:00
Nikolay Nikolov
b9ca30165c * WebAssembly: refactored tai_local, so that it is a single directive,
containing multiple locals, instead of creating multiple tai_local directives,
  each containing a single local. No functional changes.
2024-09-15 00:49:05 +03:00
Nikolay Nikolov
05b67c7408 - WebAssembly: removed tai_local.name, because we don't use it 2024-09-15 00:09:39 +03:00
florian
a685e2aa5a + avrsim6 controller type 2024-09-14 16:00:35 +02:00
florian
761b451962 + AVR: dummy thlcgcpu.g_intf_wrapper implementation 2024-09-14 16:00:07 +02:00
florian
190b27ad45 * use proper value for Fnv64 initialization
* PPU version increased
2024-09-14 13:54:54 +02:00
florian
84da5e619c * use also an FNV hash to shorten interface wrapper names 2024-09-13 22:13:22 +02:00
Michaël Van Canneyt
aec11012e8 * Remove superfluous initialization of local variable. Fixes issue #40917 2024-09-13 16:09:36 +02:00
Michaël Van Canneyt
633f905b79 * Correct export name 2024-09-13 16:09:36 +02:00
Pierre Muller
231bb3df8d Change prt0.as and cprt0.as to allow to generate FreeBSD aarch64 13.2 executables 2024-09-13 11:57:16 +00:00
Michaël Van Canneyt
3e2b0ac8b9 * CopyFromMemory 2024-09-13 11:35:37 +02:00
Pierre Muller
f5336f6311 Set DynamicLinker for FreeBSD systems 2024-09-13 09:22:29 +00:00
Pierre Muller
feb7d54553 Fix compilation of heaptrc unit using fixes branch bsd compiler 2024-09-13 09:21:47 +00:00