Commit Graph

65727 Commits

Author SHA1 Message Date
Nikolay Nikolov
db980a5d18 + add the "-m wasm32" parameter to the linker, when linking for the WASI
target. No idea if it does anything, but is passed to the linker by the
  official WASI SDK, so it shouldn't hurt.
2022-07-14 20:29:41 +03:00
Nikolay Nikolov
e3139fea21 + setup a thread manager (functions are still not yet implemented), when the WASI RTL is compiled with multithreading support 2022-07-14 05:14:20 +03:00
Nikolay Nikolov
b900be6142 + added WebAssembly intrinsics for reading __tls_size, __tls_align and __tls_base 2022-07-14 04:15:47 +03:00
Nikolay Nikolov
7475d22154 + declare the three magic global variables (__tls_size, __tls_align, __tls_base), created by the linker, when WebAssembly multithreading is enabled 2022-07-14 03:57:06 +03:00
Nikolay Nikolov
4db653998b + generate proper WebAssembly threadvar access when multithreading is turned on 2022-07-14 02:39:07 +03:00
Nikolay Nikolov
557e823734 + introduced trefaddr.addr_got_tls, to be used for generating WebAssembly threadvar access, when WASM multithreading is turned on 2022-07-14 00:28:03 +03:00
florian
d27c3b4b79 + test for #33559 2022-07-13 22:53:37 +02:00
Nikolay Nikolov
b821b9d502 + WebAssembly multithreading: also declare threadvar sections as TLS and prefix their name with '.tbss' when using the external assembler 2022-07-13 23:50:48 +03:00
Nikolay Nikolov
fa5575ea54 + prefix the threadvar sections with '.tbss' when WASM multithreading is enabled 2022-07-13 23:27:30 +03:00
Nikolay Nikolov
2606cef21f + set the TLS flag for threadvar sections when WASM threads are enabled 2022-07-13 23:19:48 +03:00
Nikolay Nikolov
eb8325300e + added WASM segment flag constants 2022-07-13 22:41:18 +03:00
Nikolay Nikolov
9859125c7b + added the WASM_SYM_TLS symbol flag constant 2022-07-13 22:39:29 +03:00
florian
8363c48863 * patch by rika: simplify tscannerfile.readstring, resolves #39835 2022-07-12 22:12:23 +02:00
Nikolay Nikolov
cf5feb0dca + support writing of 32-bit and 64-bit relocations in the REL object writer
for Z80. This fixes DWARF debug output and makes it behave consistently with
  the Z80 external assembler writer.
2022-07-12 19:16:23 +03:00
mattias
d9e156e90e webidl: wasmjob: error on passing not supported array as argument 2022-07-12 15:09:14 +02:00
florian
e25594c48e * correctly truncate rtti symbol names of enumeration types, resolves #39829 2022-07-11 22:07:57 +02:00
Michaël Van Canneyt
9d776f058e * Move fdbf back to private section 2022-07-11 18:03:32 +02:00
Frank Rademakers
9d4cdc9383 Additional Visual Foxpro functionality for TDbf. AutoInc fields work and can... 2022-07-11 15:57:30 +00:00
Luiz Américo Pereira Câmara
501f397277 fpexprpars: fix access violation when setting an expression after clear 2022-07-10 21:06:12 -03:00
J. Gareth "Curious Kit" Moreton
ef15d3d9ec * Fixed infinite loop when CONSTPROP is enabled
but USELOADMODIFYSTORE is not.
2022-07-10 21:15:26 +00:00
florian
6ea4ddd3d5 * deprecated warning fixed 2022-07-10 22:52:22 +02:00
Jonas Maebe
4193563190 LLVM address sanitizer: add asan library and rpath on Darwin
Also verified that "make all" works with asan on macOS/AArch64
2022-07-10 22:28:30 +02:00
Jonas Maebe
8c251db2c1 Darwin: fix compilation on macOS/AArch64 after 1f328cf3
No function suffixes there since there's no backward compatibility issue.
2022-07-10 22:28:30 +02:00
Joost van der Sluis
3385ce92a2 * Always generate CFI-information. During linking it can be omitted when
no debug-information is requested. On Linux this needed a change in the
   linker-script. On Windows it already works as desired. Other targets
   may need some adjustments as well.
2022-07-10 12:24:18 +02:00
florian
776c39dc0a + avr-embedded: keep fpc.* sections, should resolve #39825 2022-07-09 22:04:10 +02:00
mattias
bcb5365cca webidl: array arg pass as const 2022-07-08 10:25:44 +02:00
florian
f6b5c513bb * patch by Rika: makes #39786 work on more setups, resolves #39786 2022-07-07 23:00:47 +02:00
mattias
1aae90b294 webidl: wasmjob: array name 2022-07-07 09:42:50 +02:00
mattias
7486782674 webidl: wasmjob: started return type array 2022-07-07 09:42:50 +02:00
Jonas Maebe
7bad177139 msg files: regenerated 2022-07-06 22:26:13 +02:00
Jonas Maebe
403292a131 LLVM backend: address sanitizer support
Activate with -Clfsanitize=address. Only tested on Darwin/x86-64 for now.
2022-07-06 22:26:13 +02:00
Jonas Maebe
1ab6fc9a4b llvm: fix reading past end of data for some parameter references
Fixes false positives when using address sanitizer
2022-07-06 22:25:05 +02:00
Jonas Maebe
b2ea782eb4 agllvm: fix writing strings in metadata arrays
They were interpreted as part of larger strings
2022-07-06 22:25:05 +02:00
Jonas Maebe
a8352f3e99 ttai_typedconstbuilder: do not remove tcalo_vectorized_dead_strip_item
This was done because originally getting the finalized asmlist happend
through a single proc that either called the vectorized version or the
regular version depending on the presence of tcalo_vectorized_* flags.

Nowadays, calling either get_final_asmlist_vectorized_dead_strip or
get_final_asmlist happens directly as needed.

This flag will be used by the LLVM asmwriter to add appropriate
address sanitizer information.
2022-07-06 22:25:05 +02:00
Jonas Maebe
6dc47c71fb tstringconstnode.changestringtype: fix buffer overrun
Found by asan
2022-07-06 22:25:05 +02:00
Jonas Maebe
2ce3656ed3 x86 BuildInsTabMemRefSizeInfoCache: don't read past end of instab 2022-07-06 22:25:05 +02:00
Jonas Maebe
6a485065ba __fpc_valgrind symbol: use correct size when inserting definition 2022-07-06 22:25:05 +02:00
Jonas Maebe
27a1acdc7d cresstr: fix length specified for resource strings to typed const builder
Copy/paste error
2022-07-06 22:25:05 +02:00
Jonas Maebe
1f328cf362 Darwin: use recent versions of stat(fs) records when available
When the RTL is built for Mac OS X 10.6 or newer, use the new versions
and the corresponding alternate system library functions.

Also extracted the Darwin stat record definition to reduce the
ifdef hell.
2022-07-06 22:25:05 +02:00
florian
0122044226 * part of last commit 2022-07-06 20:39:38 +02:00
florian
4fecfe3df3 * fix SysUtils.HashName as proposed by Awkward in #39827, resolves #39827
* adapted to syscodepages.inc for the fixed HashName
2022-07-06 20:38:45 +02:00
florian
1d32a575e7 * as correctly pointed out by Bart B, -gw instead of -g should be used in the test for #39816 2022-07-06 19:50:07 +02:00
florian
e28238da9b * handle absolute on strings correctly for dwarf debug info, resolves #39816 2022-07-05 23:04:57 +02:00
Robert Roland
a19add9c88 Add cntfrq_el0 and cntpct_el0 AArch64 registers 2022-07-05 20:40:27 +00:00
florian
a9db747eb9 + test for #39786 2022-07-04 22:52:05 +02:00
florian
a2a2a6d79e * naming fixed, it is a test for #39785 2022-07-03 16:09:09 +02:00
Michaël Van Canneyt
f754ecf3d4 * Fix AV when reading palette. Fixes issue #39823 2022-07-03 10:32:33 +02:00
Michaël Van Canneyt
672f90bf40 Reset col when reading new lines. Fix issue #39356 2022-07-03 10:27:15 +02:00
florian
c5a0d16c58 * experimental test for #39758 2022-07-02 23:36:14 +02:00
Jeppe
f5cf8956c5 riscv: Merge stack code, fix interrupted code
- Stack pointer is kept below register save area. This ensures that
registers are not overwritten by interrupt handlers.
- RV32 and 64 code is merged to base class.
2022-07-02 15:07:42 +02:00