Commit Graph

939 Commits

Author SHA1 Message Date
ccrause
c42bf9cdf5 Extend riscv32-freertos functionality for esp32c3 2024-05-25 17:26:15 +00:00
florian
13e7f947ea * all CPUs use now internal abs(<int64>) so overflow checking is possible
+ added overflow checking to generic abs(<longint>)
2024-03-29 20:30:57 +01:00
florian
56d84c9283 * compilation fixed 2024-03-28 18:31:38 +01:00
florian
0efd3afb8c + arm: internal abs(<int64>)
+ arm: overflow checking for abs(...)
2024-03-28 15:56:52 +01:00
Karoly Balogh
3c57eb42f9 do not display the changing assembler note, if the internal and the external assemblers are the same, or there's no internal assembler defined 2024-01-08 14:19:20 +01:00
Karoly Balogh
db137d0528 tabs to spaces cosmetics, no functional change 2024-01-08 14:19:20 +01:00
Karoly Balogh
4a1db1dc79 m68k: initial compiler changes for Human68k (Sharp X68000) support 2023-11-30 23:43:27 +00:00
Pierre Muller
31c8e78581 Default to external assembler
in cross-endian configuration.

  Add note about reason of switching to external assembler.
2023-11-12 17:26:19 +00:00
Pierre Muller
b054febbc8 Change internal linker in cross-endian message.
Change message level from error to warning,
in order to allow to work on full support of
cross-endian internal assemblers and linkers.
2023-11-12 17:26:19 +00:00
Pierre Muller
2cbaa24f76 Prevent usage of internal linker in cross-endian configuration.
Add LinkInternSetExplicitly field to TOption class.
Set this field to true if '-Xe-' or '-Xi' option is used.
Check at exit if in cross-endian configuration:
 if LinkInternSetExplicitly is set, issue error message,
else add cs_link_extern to init_settings.globalswitches.
2023-11-12 17:25:45 +00:00
Michaël Van Canneyt
c9b88a1cd0 * Allow to disable 8.3 filename search 2023-11-12 09:55:30 +01:00
ccrause
9440b17eea [AVR] Add command line options to selectively remove portions of the RTL startup code. 2023-08-15 21:33:58 +00:00
Michaël Van Canneyt
adf9f98f7c * Define char as AnsiChar 2023-07-22 08:26:22 +00:00
Pierre Muller
79d1fcd40d Introduce -XLL option for link using ld.lld linker 2023-07-19 19:00:30 +02:00
Michaël Van Canneyt
0261a025de * Restore -aR, lost in refactoring 2023-07-07 10:15:03 +02:00
florian
78c0c267a5 * cleanup 2023-07-01 20:54:08 +02:00
Michaël Van Canneyt
188fc9c112 * Fix compilation for ARM 2023-07-01 18:40:41 +00:00
Michaël Van Canneyt
1930aaa340 * Make use of copy() without count when rest of string is needed 2023-07-01 18:40:41 +00:00
Michaël Van Canneyt
535107a700 * Split out option parsing in one routine per letter 2023-07-01 18:40:41 +00:00
Michael VAN CANNEYT
5605cebd46 * Implement -t and -x options
* Fix spurious warning of already specified -t
* If no subtarget file found, error out instead of hint/warn
* Globals needs subtarget for macro substitution
2023-06-19 07:04:50 +00:00
Michaël Van Canneyt
0515be62b4 * Add option to allow emitting comments in RTTI info 2023-05-29 13:41:25 +00:00
Pierre Muller
892220d6fe Treat -Cb / -Cb- options in first pass (to be able to use FPC_BIG_ENDIAN inside .fpc.cfg config file) 2023-04-06 16:49:40 +02:00
Dmytro Bogatskyy
327aac7f24 Add aarch64-iphonesim target 2023-03-27 18:45:00 +00:00
florian
c7a0c0bbb4 * set FPU type properly for riscv32-freertos 2023-02-11 20:42:31 +01:00
florian
71e0c12c88 * set fpu type correctly for riscv32-freertos 2023-02-08 22:38:17 +01:00
florian
7e3bdd501c * enable to check the existing of environment variables in config files 2023-02-08 21:33:21 +01:00
Jinyang He
12c4290ffe Add loongarch64 architecture 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
Jonas Maebe
e54197e9d2 Darwin: support -Xg for DWARFv4 2023-01-22 22:34:25 +01:00
Jonas Maebe
57935a895c Darwin: really fix -Xg for DWARF4 2022-10-30 21:57:19 +01:00
Jonas Maebe
f18524f2fe Darwin: fix mac0S 11.0 version string
Prevents LLVM warnings
2022-10-29 14:24:37 +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
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