Commit Graph

908 Commits

Author SHA1 Message Date
Jonas Maebe
b26703feaa Darwin version comparisons: factored out into object
Use numeric instead of string comparisons
2022-09-16 11:21:05 +02:00
florian
d6e8375e64 * apply default replacements also to defines set by -d:
- -d with $ is not possible so this should not break any existing compiler call
      - this fixes also the strange error message "Error: malformed parameter: -dlinux"
        when e.g. -d$FPCOS is passed as the default replacements are applied to the
        error message
2022-08-19 22:31:55 +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
3ef0db2404 LLVM: list supported LLVM/Xcode versions
Use the -i or -il command line parameter
2022-06-04 10:22:19 +02:00
Jonas Maebe
16cb409fbf LLVM: separate as_clang_llvm_darwin
The Darwin local label prefix ('L') is different from that on most other
platforms ('.L). While LLVM generally handles that for us, for inline
assembly it's still FPC's job to adhere to the target conventions.
2022-05-14 22:38:49 +02:00
florian
28964711d7 * sorted defines in the compiler: mips64 is defined on all 64 Bit mips platforms, mips64el for little endian, misp64eb for big endian 2022-02-06 21:57:01 +01:00
florian
ed2b73eee6 * sorted MIPS defines 2022-02-04 23:07:25 +01:00
Pierre Muller
4db332fecf Add default macros inoptions unit for mips64 and mips64el CPUs 2022-02-04 19:59:26 +00:00
Thorsten Otto
073b48de82 atari: add -Wt<x> option to allow specifying the executable format
This is useful to create aoutmint format binaries using vlink,
which have a symbol table that has no limit for the name length.
2022-02-02 21:34:32 +00:00
Karoly Balogh
a87b38f753 * m68k-atari: make the Atari target always default to VLink, even for crosscompilers 2022-01-25 23:50:07 +01:00
Karoly Balogh
ed2dca9a9b * m68k-atari: make the Atari target use 68000 CPU as default 2022-01-25 23:50:07 +01:00
Karoly Balogh
b3cbf07f27 + m68k-atari: fixed bogus TOS program flags passed to VLink. added -WF argument to allow the user to specify their own flags if needed 2022-01-25 23:50:07 +01:00
Karoly Balogh
273a598be8 * Amiga-likes: set some sensible heapsize defaults, for OSHeap support 2021-12-26 17:22:11 +01:00
florian
89aeedac1e * fixes excluding of cpu capabilities 2021-12-01 22:48:19 +01:00
florian
60623f39a1 + - can be used to remove options from a cpu capability switch 2021-11-30 22:37:47 +01:00
ccrause
ab00794343 Keep esp32 and esp8266 version specific tweaks separate. 2021-11-29 22:42:49 +01:00
florian
802f24dfbd * force result to be set 2021-11-29 22:42:49 +01:00
ccrause
5289aab4f2 Add -WP option so that IDF version can be passed in - stored in globals.idf_version. The version is checked in t_freertos.pas and for esp-idf version 4.3.x an extra link file is added, also running ldgen.py is skipped as that seems unused. 2021-11-29 22:42:49 +01:00
florian
67f3a7502d + Aaarch64: support adr instructions with local labels in the assembler reader
+ throw an error if an illegal instruction extension is passed as command line option
2021-11-19 22:37:47 +01:00
florian
c917639b91 * cosmetics 2021-11-07 14:46:03 +01:00
florian
c1d43df4a1 + be able to add single cpu capabilites by the command line
+ AArch64: SHA2 capability
2021-11-06 23:32:56 +01:00
florian
ff3acfb8cd * cleanup of 2.7.0 defines 2021-10-31 13:20:28 +01:00
Nikolay Nikolov
5124ab2521 * cloned the WebAssembly native exceptions code generation and rtl support into
the branchful exceptions (which will be modified later, but we're using this
  as their starting point, because we can get a snapshot built, without compiler
  internal errors)
2021-10-05 00:37:20 +03:00
Nikolay Nikolov
bdbdf26168 + added validation to ensure no more than one WebAssembly exception support
mode is enabled
+ set the NOEXCEPTIONS mode by default for the WebAssembly targets
2021-09-16 23:09:20 +03:00
florian
9305bff861 * generate a def. file only if really necessary 2021-09-01 09:31:15 +02:00
ccrause
e310be017e + Add support for -Adefault.
* Move help message for option -sT to the correct group of messages. 
  * Use shorter message to indicate switch to external asm. 
  * Adapted -sX messages because -sT doesn't force external assembler writer.
2021-09-01 09:31:14 +02:00
florian
2c418b988c * use smaller alignment when generating thumb code
git-svn-id: trunk@49505 -
2021-06-15 19:52:07 +00:00
florian
c02b43fb93 * change fma cpu flag into an fpu flag
git-svn-id: trunk@49448 -
2021-06-01 21:16:52 +00:00
Károly Balogh
c9b90ccde0 m68k: sinclair ql now requires vlink 0.16h or newer.
git-svn-id: trunk@49296 -
2021-04-29 22:23:58 +00:00
Károly Balogh
f718567c95 sinclairql: support the upcoming QL binary linking feature of vlink (still in development). it's behind an undocumented -WL switch now. also, reduce the amount of used dataspace by the size of the relocation table in the current linking mode
git-svn-id: trunk@49234 -
2021-04-19 19:09:34 +00:00
pierre
70760208bb Add systems_openbsd to suppported_targets_x_smallr and modify GenerateExecutable in t_bsd unit accordingly
git-svn-id: trunk@49229 -
2021-04-18 15:41:11 +00:00
Károly Balogh
6ec6d2043b sinclairql: enable commandargs and exitcode features
git-svn-id: trunk@49177 -
2021-04-11 00:19:06 +00:00
Jonas Maebe
1b34fe90a3 * don't override specified assembler on the command line when leaving
assembler files in case that specified assembler is already an
    external one

git-svn-id: trunk@49137 -
2021-04-08 19:50:24 +00:00
florian
f879d76491 * forgotten " added
git-svn-id: trunk@49109 -
2021-04-02 21:41:31 +00:00
florian
9e7d80a8bd * Aarch64: the M1 is an ARM v8.4-a CPU
git-svn-id: trunk@49107 -
2021-04-02 19:52:00 +00:00
florian
3999d037e3 + write controller unit wiht -ix as well
git-svn-id: trunk@49106 -
2021-04-02 17:13:11 +00:00
nickysn
e42330a7ad * synchronized with trunk
git-svn-id: branches/wasm@48949 -
2021-03-13 21:47:24 +00:00
florian
8fa04a0cee * finished -ix output
git-svn-id: trunk@48936 -
2021-03-10 20:33:49 +00:00
nickysn
f8052134e3 * synchronized with trunk
git-svn-id: branches/wasm@48906 -
2021-03-08 00:52:43 +00:00
florian
b0772ae749 + initial (and so far experimental) implementation of -ix to output -i in xml format for further automated processing
git-svn-id: trunk@48897 -
2021-03-07 14:11:09 +00:00
nickysn
d7df2d45c6 * synchronized with trunk
git-svn-id: branches/wasm@48680 -
2021-02-14 23:47:42 +00:00
florian
a4b35d16f2 + throw an error if hardware floating point operations are used in thumb(-1) mode, this is not supported
git-svn-id: trunk@48672 -
2021-02-13 22:17:35 +00:00
florian
50bc387688 * handle -Ca (as proposed by Michael Ring) and -Cf in the first option pass as well
git-svn-id: trunk@48668 -
2021-02-13 14:37:07 +00:00
nickysn
64bb0359d2 * synchronized with trunk
git-svn-id: branches/wasm@48412 -
2021-01-24 23:38:35 +00:00
florian
1f49e633b6 + modified patch by Christo Crause: if the target support, the switch -Xu can be used to generate the executable as an uf2 file
git-svn-id: trunk@48394 -
2021-01-24 14:21:03 +00:00
nickysn
c3c199cf67 * show the list of wasm32 targets in the compiler help screen
git-svn-id: branches/wasm@48375 -
2021-01-24 02:25:00 +00:00
nickysn
062360341c * synchronized with trunk
git-svn-id: branches/wasm@48248 -
2021-01-20 23:34:58 +00:00
pierre
b88f9ad57c Reset paratargetdbg to dbg_none when handling -g- option, to really suppress debug information generation
git-svn-id: trunk@48243 -
2021-01-20 22:11:15 +00:00
nickysn
b01a0a7018 + define the CPUWASM32 system macro for wasm32
git-svn-id: branches/wasm@47955 -
2021-01-02 07:54:53 +00:00
nickysn
aeafe42144 * synchronized with trunk
git-svn-id: branches/wasm@47653 -
2020-12-01 03:27:01 +00:00