Commit Graph

1518 Commits

Author SHA1 Message Date
Jinyang He
3d2c96ebbf Add loongarch64 linux support to compiler 2023-02-05 19:18:48 +00:00
florian
e9ec4a8bb3 * more riscv32-freertos-esp32c3 stuff added 2023-01-29 19:30:11 +01:00
florian
bedd4edc72 + first work for esp32-c3 support 2023-01-28 21:28:19 +01:00
Jonas Maebe
51fdbb5524 macOS: set max var/constalign to 64
For all non-ppc(64) targets. Fixes test/talignrec1.
2023-01-20 21:07:18 +01:00
Jonas Maebe
6d3e3d06e2 Linux: don't discard CFI when using it for exceptions 2022-10-30 21:57:19 +01:00
Jonas Maebe
57935a895c Darwin: really fix -Xg for DWARF4 2022-10-30 21:57:19 +01:00
florian
be401422fd * more warnings after last commit fixed 2022-10-24 22:52:52 +02:00
florian
3fa77a4f62 * fix life information propagation for while loops, resolves #39971
* warnings/errors fixed which are caused by the new life information propagation
  + test
2022-10-24 22:13:43 +02:00
Jonas Maebe
b150480c60 Darwin: don't try to print size statistics if the binary wasn't linked 2022-10-12 22:58:19 +02:00
florian
f8848dd185 * fix for commit a91e5478, mixed localalignmax and constalignmax 2022-10-03 22:03:55 +02:00
florian
a91e547832 * set the maximum alignment values for constants and variables to 64 on aarch64-linux 2022-10-03 14:40:57 +02:00
florian
123f196d5d * small correction to linker script 2022-09-27 22:10:56 +02:00
Pierre Muller
aca84a8128 Add /usr/lib64 and /lib64 to default library path list for sparc linux 2022-09-18 14:02:40 +02:00
Jonas Maebe
b26703feaa Darwin version comparisons: factored out into object
Use numeric instead of string comparisons
2022-09-16 11:21:05 +02:00
Pierre Muller
fecdaeed0d Fix searching of gstrip binary in cross-environment for solaris OS target 2022-08-02 17:52:19 +02:00
Jonas Maebe
425707e936 Fix compilation with -Oodfa 2022-07-24 14:46:11 +02:00
Jonas Maebe
7ef33cf4b2 llvm: generalised sanitizer linking support
Also enabled automatic detection of sanitizer library + setting rpath to Linux
2022-07-24 14:36:23 +02:00
Jonas Maebe
1148caaece llvm: move asan library linking support to texternallinker
This way other platforms besides Darwin can also use it.
2022-07-24 14:34:47 +02:00
florian
19ad26afd8 * Riscv32 and Riscv64 on linux: enable safecall support 2022-07-22 22:56:21 +02:00
florian
2da28054d4 * RiscV: pass the same default directories to the linker as on other architectures 2022-07-21 23:19:08 +02:00
Nikolay Nikolov
4144f8d93a * apply the same alignment parameters to wasm32-embedded as wasm32-wasi 2022-07-15 17:06:47 +03:00
Nikolay Nikolov
dba189f4af + show a "linking" message before invoking the linker for the wasm32-embedded target 2022-07-15 16:09:52 +03:00
Nikolay Nikolov
46dcd4da76 - removed debug writeln when calling the linker for the wasm32-embedded target 2022-07-15 16:07:16 +03:00
Nikolay Nikolov
b6c4592513 + allow specifying custom extra linker options for the wasm32-wasi target 2022-07-15 16:06:03 +03:00
Nikolay Nikolov
ad35fc82af + allow specifying custom extra linker options for the wasm32-embedded target 2022-07-15 16:04:01 +03:00
Nikolay Nikolov
ec9c81e77e * use current_module.sharedlibfilename instead of current_module.exefilename, when linking a library for the wasm32-embedded target 2022-07-15 15:59:34 +03:00
Nikolay Nikolov
9dfda963a3 + allow creating a linker map file, when compiling for the wasm32-embedded target 2022-07-15 15:57:23 +03:00
Nikolay Nikolov
078aa5d046 + pass '-m wasm32' to the linker, when compiling for the wasm32-embedded target 2022-07-15 15:53:55 +03:00
Nikolay Nikolov
1bbd16d1b7 + allow setting the stack size for the wasm32-embedded target 2022-07-15 15:53:13 +03:00
Nikolay Nikolov
8aee781950 * set the stack size to 64kb and stack align to 16 bytes for the wasm32-embedded target 2022-07-15 15:51:00 +03:00
Nikolay Nikolov
7cef39657f * stack alignment on the WASI platform is 16 bytes 2022-07-15 10:52:50 +03:00
Nikolay Nikolov
4e3c170ad4 + allow changing the stack size for the WASI platform 2022-07-14 20:57:11 +03:00
Nikolay Nikolov
c910ec814c * set the default stack size for the WASI platform to 65536 bytes (this is the
default, used by the linker)
2022-07-14 20:56:11 +03:00
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
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
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
florian
1ac2334b59 * do not use Dwarf-4 yet as it is too little tested and has no benefits 2022-06-18 21:02:01 +02:00
Jonas Maebe
1b2d7755ac darwin: also run dsymutil for DWARF 4 2022-06-18 16:50:01 +02:00
marcoonthegit
fb7565fc6c * set freebsd to ld.bfd 2022-06-11 17:59:33 +02:00
florian
1c7626715d * the stack pointer on Risc-V points always at the last used position, resolves #39739 2022-05-28 20:10:49 +02:00
Nikolay Nikolov
34ebeb15ed * pass the option to create shared, imported memory to the linker, in case the module is compiled with -CTwasmthreads
Note that this breaks running programs compiled with -CTwasmthreads with "wasmtime run --wasm-features threads", but
  there's not much we can do about that, since shared memory is required for threading, and wasmtime still doesn't
  support it.
2022-05-28 20:06:34 +03:00
florian
9f47e21da3 * increase default dwarf version for linux targets where current distributions exist 2022-05-16 22:56:30 +02:00
florian
deec6fc4ba * set max. variable and constant alignment for win32 and win64 to 64 byte boundaries 2022-05-11 20:58:38 +02:00
florian
a73869b879 * arm-linux: set max. alignment for constants and variables to 32 byte boundaries 2022-05-09 22:45:21 +02:00
florian
4add05c625 * x86_64-linux and i386-linux align variables and constants up to 64 byte boundaries 2022-05-08 17:50:00 +02:00
ccrause
a6766d62ee Fix generation of default linker script for esp-idf v4.4 2022-05-02 21:18:40 +00:00
florian
eba76dd052 * allow 32 byte alignment of constants and variables on aarch64-darwin 2022-05-01 10:55:48 +02:00
florian
366d1332d1 * nicer casing 2022-04-16 21:40:33 +02:00
Karoly Balogh
e0599bb231 * z80-amstradcpc: fixed target naming mess, so -Tamstradcpc works now, also fixed the help text 2022-03-09 13:36:47 +01:00