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
florian
792b629aa6
+ -Xa option: generate code which allows to use more than 2 GB of static data on 64 Bit targets
...
+ implemented support for x86-64
* more than 2 GB static data requires to use the --no-relax option on linux
git-svn-id: trunk@47651 -
2020-11-30 22:07:34 +00:00
nickysn
f9daec43ef
* synchronized with trunk
...
git-svn-id: branches/wasm@47588 -
2020-11-25 21:59:19 +00:00
Károly Balogh
45fc515400
sinclairql: added platform specific options to allow specifying executable metadata format
...
git-svn-id: trunk@47567 -
2020-11-25 01:48:36 +00:00
florian
7ad8f94ec4
* set reasonable defaults for arm eabi
...
git-svn-id: trunk@47530 -
2020-11-22 19:47:12 +00:00
nickysn
59b465bbe7
* synchronized with trunk
...
git-svn-id: branches/wasm@47525 -
2020-11-22 04:01:56 +00:00
Károly Balogh
ebb199b9d4
sinclairql: make sure the Sinclair QL defaults to vlink
...
git-svn-id: trunk@47520 -
2020-11-21 21:42:33 +00:00
nickysn
c895c8fa0a
* synchronized with trunk
...
git-svn-id: branches/wasm@47506 -
2020-11-20 23:21:42 +00:00
pierre
47d96efe29
+ options.pas: Add new option -sT, to do only the linking on target, by
...
opposition to the old -st option, which does
both assembling and linking on target.
msg/errore.msg: Add new -sT help message
modify -st help message, to explicitly say that both assembling and linking
scripts are prepared for target system.
* msgidx.txt, msgtxt.inc: Regenerated
git-svn-id: trunk@47488 -
2020-11-20 15:09:24 +00:00
nickysn
509821260e
* synchronized with trunk
...
git-svn-id: branches/wasm@47448 -
2020-11-19 01:12:38 +00:00
pierre
f0b22a1569
Revert commit #47257 , Disable use of cmov instructions in alignment patterns for some i386 targets (it prevents use of some emulators)
...
Replace it by a new set of i386 targets, for which the default cpu is set to i80486 instead of pentium2
to avoid (for default configuration) use of CMOVxx or PREFETCHyyy instructions, not supported by some emulators.
git-svn-id: trunk@47433 -
2020-11-16 17:04:46 +00:00
florian
e440bf0e00
* cosmetics
...
git-svn-id: trunk@47403 -
2020-11-12 20:32:00 +00:00
florian
d9784412a4
* patch by Cyrax: forbid to use heaptrc and valgrind at the same time, resolves #36529
...
* load cmem before line* units as they might allocate memory
git-svn-id: trunk@47390 -
2020-11-11 20:55:03 +00:00
Károly Balogh
82e16f02ca
sinclairql: make sure the default CPU target is 68000 for the QL. also, some cleanups
...
git-svn-id: trunk@47360 -
2020-11-09 01:03:44 +00:00
nickysn
d3d51d2f7e
* synchronized with trunk
...
git-svn-id: branches/wasm@47338 -
2020-11-07 22:40:43 +00:00
Károly Balogh
519701960c
m68k: initial commit to add the Sinclair QL as a compiler target
...
git-svn-id: trunk@47307 -
2020-11-04 14:20:28 +00:00
nickysn
48b81da877
* synchronized with trunk
...
git-svn-id: branches/wasm@47249 -
2020-10-29 10:49:36 +00:00
pierre
075966f142
Display xtensa specific options for ppcxtensa -h
...
git-svn-id: trunk@47232 -
2020-10-28 10:48:06 +00:00
nickysn
578750a646
* synchronized with trunk
...
git-svn-id: branches/wasm@47135 -
2020-10-19 05:06:33 +00:00
florian
9ea52b8578
+ new switches -DD and DT which allow to pass an arbitrary string which is used by %DATE%/%TIME%
...
git-svn-id: trunk@47132 -
2020-10-18 17:13:38 +00:00
Jonas Maebe
d0d07dc3bf
* naturally align threadvar lists/tables
...
o required for (future) Darwin arm64e target, and a good idea elsewhere too
(on constrained targets, it won't make a difference because the alignment
of pointers won't be > sizeof(longint))
git-svn-id: trunk@47115 -
2020-10-15 20:29:32 +00:00
nickysn
8f059a6b8a
* synchronized with trunk
...
git-svn-id: branches/wasm@47106 -
2020-10-14 02:41:25 +00:00
florian
637976e83f
* patch by Marģers to unify internal error numbers, resolves #37888
...
git-svn-id: trunk@47103 -
2020-10-13 19:59:01 +00:00
nickysn
114d0d738b
* synchronized with trunk
...
git-svn-id: branches/wasm@46970 -
2020-09-26 23:19:51 +00:00
florian
7f53d04ffd
+ xtensa: make use of nsau to implement Bsr*
...
git-svn-id: trunk@46963 -
2020-09-26 22:03:13 +00:00
nickysn
c1197ddb90
* synchronized with trunk
...
git-svn-id: branches/wasm@46529 -
2020-08-20 21:45:40 +00:00
florian
7157bac9fd
* patch by Christo Crause, resolves #37335
...
* ESP8266 support for t_freertos.pas
+ -Ff switch to be able to pass the IDF_PATH without using an evironment variable
git-svn-id: trunk@46527 -
2020-08-20 21:29:48 +00:00
nickysn
2b3b1b4373
* synchronized with trunk
...
git-svn-id: branches/wasm@46488 -
2020-08-18 22:38:25 +00:00
florian
004ac4d1f4
* Xtensa: set abi correctly
...
git-svn-id: trunk@46485 -
2020-08-18 21:10:06 +00:00
nickysn
de29036512
* synchronized with trunk
...
git-svn-id: branches/wasm@46407 -
2020-08-12 22:20:37 +00:00
svenbarth
b88d12c7b9
+ add option -FF to force the use of fpcres as RC compiler
...
Note: if we merge this to 3.2.x then we can switch to this by default once 3.2.2 is released
git-svn-id: trunk@46398 -
2020-08-12 19:08:25 +00:00
nickysn
62cb7c2d12
* synchronized with trunk
...
git-svn-id: branches/wasm@46214 -
2020-08-03 21:15:39 +00:00
nickysn
a893f06813
[PATCH 55/83] minor fixes and cleanups for the wasm target ( #1 )
...
* wasm: add support to the Makefile.fpc files. Makefiles needs to be regen'd
* wasm: include fpcdefs.inc in all units
* wasm: one more missing fpcdefs.inc
* wasm: define some system macro defaults
* + increase the size of some tsysteminfo fields, as wasm uses longer names, this fixes some warnings
* wasm: fixed mkwasmreg program name
* wasm: don't override MakeCmdLine, the inherited function serves us just fine, as it also replaces . Also fixes a warning about result being uninitialized
From 3f1ed3fd157d3ed217ef8845ade8e3e3630f424b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?K=C3=A1roly=20Balogh?= <charlie@amigaspirit.hu>
Date: Mon, 23 Sep 2019 04:08:46 +0200
git-svn-id: branches/wasm@45932 -
2020-07-29 19:02:27 +00:00
Jonas Maebe
64da9c4ab2
* add a patch level to the default version numbers so llvm doesn't complain
...
* fixed compiler variable for default macOS 11.0
git-svn-id: trunk@45809 -
2020-07-19 14:30:41 +00:00
Jonas Maebe
eb7ba1690e
* mark all external assemblers using an LLVM tool using af_llvm
...
+ added support for constructing target triplets
* pass "-target triplet" when using an LLVM assembler
o removed no longer needed $DARWINVERSION and $ARCH parameters
* consistently use as_clang_gas when clang is used to assembler GAS-style
assembly, and rename as_llcm_clang to as_clang_llvm (for consistency)
* support pipe assembling when using clang on *nix in all cases
git-svn-id: trunk@45807 -
2020-07-19 14:30:35 +00:00
Jonas Maebe
6fe8d7bd14
* don't crash if no info is registered for the selected external assembler
...
git-svn-id: trunk@45806 -
2020-07-19 14:30:31 +00:00
Jonas Maebe
e7d1a77f9a
* rename the ARM/AArch64-Darwin targets to ARM/AArch64-iOS
...
* rename the m68k/PowerPC-MacOS targets to m68k/PowerPC-MacOSClassic
* repurpose the AArch64/Darwin target for AArch64/macOS
o make AArch64-Darwin default target for a hosted AArch64-Darwin compiler
git-svn-id: trunk@45758 -
2020-07-10 21:52:24 +00:00
florian
5ad02a3799
+ Xtensa: more cpu capabilites
...
+ Xtensa: set cpu for xtensa-linux as call window support is required
git-svn-id: trunk@45731 -
2020-07-04 21:18:13 +00:00
svenbarth
921e73ab0c
+ add compiler support for the Z80 MSX-DOS target
...
git-svn-id: trunk@45596 -
2020-06-06 17:16:20 +00:00
nickysn
f5489b5678
+ allow specifying the program load address for the ZX Spectrum target via the -WB option
...
git-svn-id: trunk@45581 -
2020-06-03 20:09:27 +00:00
florian
a4695a7015
* xtensa-embedded: fix setting of the fpu and abi
...
git-svn-id: trunk@45270 -
2020-05-05 20:41:36 +00:00
pierre
1b5ee0d063
* Put all code adding cs_fp_emulation by default inside one big
...
{$ifdef cpufpemu}
* Add system_arm_freertos and system_xtena_linux to the list
of systems that automatically add cs_fp_emulation to
init_settings.moduleswitches.
+ Do not use controller specfic default fputype for xtensa-linux
target that does not support use of -Wp option to set controller type.
git-svn-id: trunk@45265 -
2020-05-05 12:20:21 +00:00
nickysn
caecdfd51d
+ allow setting the heap size for the ZX Spectrum target
...
git-svn-id: branches/z80@45102 -
2020-04-26 14:58:47 +00:00
nickysn
4c5f095422
+ reenabled fileio and textio, because consoleio doesn't seem to work without them
...
git-svn-id: branches/z80@45029 -
2020-04-23 02:55:08 +00:00
nickysn
3f62fb7fe7
+ enabled FPU emulation for the Z80
...
git-svn-id: branches/z80@45007 -
2020-04-22 22:18:33 +00:00
nickysn
86643f8a34
* synchronized with trunk
...
git-svn-id: branches/z80@44981 -
2020-04-21 23:36:44 +00:00
svenbarth
3af74d2fd2
+ implement initial compiler support for Win64 on Aarch64
...
git-svn-id: trunk@44914 -
2020-04-21 06:04:22 +00:00
nickysn
e261ea8e2b
- disable some rtl/compiler features on the ZX Spectrum
...
git-svn-id: branches/z80@44909 -
2020-04-21 03:03:06 +00:00
nickysn
2f68090dd6
* synchronized with trunk
...
git-svn-id: branches/z80@44898 -
2020-04-20 22:42:08 +00:00
florian
8ac8c79a71
+ initial support for arm-freertos largely based on patch by Michael Ring
...
git-svn-id: trunk@44871 -
2020-04-19 20:59:52 +00:00
nickysn
d2c32efb7b
* synchronized with trunk
...
git-svn-id: branches/z80@44809 -
2020-04-18 23:47:30 +00:00
Jonas Maebe
ea2e516b4e
+ -ib parameter to print the code generator backend type: FPC or LLVM
...
* some cleanups related to -i printing
git-svn-id: trunk@44787 -
2020-04-18 15:44:42 +00:00
nickysn
b2549b63cd
* implemented pop_parasize for the Z80 and declared stdcall to be a clearstack pocall on this arch
...
git-svn-id: branches/z80@44629 -
2020-04-07 00:07:34 +00:00
nickysn
50e5b07568
* synchronize with trunk
...
git-svn-id: branches/z80@44503 -
2020-04-01 22:43:55 +00:00
florian
ba9e930556
* Xtensa: set fpu type dependending on the controller
...
git-svn-id: trunk@44495 -
2020-04-01 20:08:23 +00:00
nickysn
a581ca4dce
* synchronized with trunk
...
git-svn-id: branches/z80@44474 -
2020-03-31 22:00:40 +00:00
florian
5ef1ede0a4
* xtensa-freertos: enable softfloat for now
...
git-svn-id: trunk@44463 -
2020-03-31 19:33:11 +00:00
nickysn
e0efce2dd8
+ added Z80-specific help messages, using the Z identifier
...
+ added help about the available Z80 assemblers
git-svn-id: branches/z80@44460 -
2020-03-31 19:32:17 +00:00
nickysn
3e3942e324
* synchronize with trunk
...
git-svn-id: branches/z80@44458 -
2020-03-31 19:18:42 +00:00
Károly Balogh
8bdcf4273d
* darwin: remove some leftover resource-spec structures from i_bsd, clean up some related darwin specific int/ext resource handling in options
...
git-svn-id: trunk@44455 -
2020-03-31 04:57:08 +00:00
nickysn
6e346f1c79
* synchronize with trunk
...
git-svn-id: branches/z80@44444 -
2020-03-30 22:36:17 +00:00
Jonas Maebe
79974a9671
+ -XlS<x> option to specify a suffix for externally called LLVM utilities,
...
e.g. -XlS-7 to call clang-7 instead of clang)
* IMPORTANT: changed the -CL llvm code generation options to -Cl, for
consistency with the new -Xl option (-XL was already taken)
git-svn-id: trunk@44436 -
2020-03-30 19:58:49 +00:00
nickysn
48b4cc34cb
* synchronized with trunk
...
git-svn-id: branches/z80@44414 -
2020-03-29 23:04:40 +00:00
florian
391512546e
+ initial FreeRTOS RTL support, largely based on the Embedded target, limited to Xtensa so far
...
git-svn-id: trunk@44400 -
2020-03-29 17:13:45 +00:00
nickysn
755fe97c51
* synchronize with trunk
...
git-svn-id: branches/z80@44397 -
2020-03-29 16:24:32 +00:00
florian
73c68236b6
* Xtensa: completed compiler skeleton
...
git-svn-id: trunk@44323 -
2020-03-21 12:49:45 +00:00
florian
9e40d536cb
+ Xtensa: initial skeleton completed
...
+ xtensa-embedded support in the compiler
git-svn-id: trunk@44318 -
2020-03-20 22:34:33 +00:00
florian
95e8992e2f
+ AArch64: profiler support for aarch64-linux
...
git-svn-id: trunk@44216 -
2020-02-19 21:10:19 +00:00
Tomas Hajny
8de6066b95
+ added possibility to list supported modeswitches using -im and documented it in help pages
...
git-svn-id: trunk@44120 -
2020-02-05 22:37:43 +00:00
joost
171142a724
* Make Win32 SEH support enabled by default. If necessary to disable, compiler should be cycled with OPT=-dDISABLE_WIN32_SEH. Mantis #12974 .
...
git-svn-id: trunk@43830 -
2020-01-01 14:43:57 +00:00
Jonas Maebe
6fc79c7ed0
* set default target iOS/iPhoneSim version to 9.0 so we no longer depend
...
on crt.o existing, which is not shipped with the current SDKs anymore
git-svn-id: trunk@43822 -
2019-12-30 16:36:57 +00:00
florian
a20209e691
+ tf_init_final_units_by_calls
...
* arm-embedded generates direct calls for unit init/final now as well
git-svn-id: trunk@43771 -
2019-12-24 16:14:30 +00:00
pierre
ba73f7376f
Also accept -a5 for older binutils for mips and mpisel cpus
...
git-svn-id: trunk@43599 -
2019-11-27 22:54:47 +00:00
pierre
01fbad64b7
Use defined(aarch64) instead of defined(cpuaarch64) for FPC_HAS_INTERNAL_ABS_INT64
...
git-svn-id: trunk@43598 -
2019-11-27 22:15:23 +00:00
pierre
7d12e8cc6d
Avoid warnings for m68k compiler
...
git-svn-id: trunk@43391 -
2019-11-05 10:00:48 +00:00
Jonas Maebe
62da49577d
* set default Mac OS X/OS X/macOS target version to 10.8 for i386 and x86-64,
...
instead of the previous 10.4 for i386 and 10.5 for x86-64. This prevents
issues with finding the crt.* files, as starting with 10.8 those files
are no longer required.
git-svn-id: trunk@43374 -
2019-11-02 22:44:15 +00:00
Károly Balogh
421b06affe
morphos: in SDK 3.14, the binutils is finally upgraded to 2.32 (from 2.9.1), which makes section smartlinking working with binutils, and also has finally properly working stabs relocations for lineinfo, etc. so it's the default again both cross and native compilations
...
git-svn-id: trunk@43313 -
2019-10-26 22:24:00 +00:00
Jonas Maebe
6483b3f5e3
* fixed opt-in sysroot substitution again, renamed the three-argument version
...
TSearchPathList.AddPath() to AddLibraryPath() to make it clear it's only
to be used for adding library search paths (and replaced one case where
it was used for a source file search path with a call to the
two-argument version)
* also added some missing '=' prefixes to built-in library search paths,
and fixed wrong DirectoryExists checks in t_linux in case of using
a sysroot, cross-compiling or linking on target
git-svn-id: trunk@43312 -
2019-10-26 13:48:30 +00:00
Jonas Maebe
78fb35525f
* change convention for searching sysroot library paths to be the same as the
...
one used by GNU ld: only search for library paths in the sysroot if they
are built into the compiler or start with "=". Previously, all
user-provided library paths were also searched in the sysroot
(mantis #36198 )
git-svn-id: trunk@43279 -
2019-10-20 17:26:44 +00:00
pierre
6f7a39adab
Fix compilation for arm-darwin using clang and forbid use of eabihf ABI for that target
...
git-svn-id: trunk@43205 -
2019-10-15 22:17:52 +00:00
florian
a2d3522812
* general-dynamic -> global-dynamic
...
git-svn-id: trunk@43132 -
2019-10-05 20:48:29 +00:00
florian
03f7ef4c63
* renamed tls model switches and symbols to match gcc
...
git-svn-id: trunk@43122 -
2019-10-05 20:48:20 +00:00
florian
d8e2db2691
+ command line switch -CV to select the threadvar model for section threadvars
...
git-svn-id: trunk@43071 -
2019-09-25 21:19:04 +00:00
florian
26d8cc9142
+ define FPC_STACKALIGNMENT
...
git-svn-id: trunk@43008 -
2019-09-15 17:17:28 +00:00
florian
c418d63c16
+ create defines with FPU capabilites
...
+ make use of FPU capability defines in the rtl
git-svn-id: trunk@42681 -
2019-08-13 22:12:49 +00:00
florian
85edf1c1eb
* reworked arm vfp capability handling to use fpu_capabilites
...
git-svn-id: trunk@42679 -
2019-08-13 18:41:15 +00:00
svenbarth
e296b26e9e
- remove unit info and related code again as that will be handled similar, but differently with dynamic packages
...
git-svn-id: trunk@42369 -
2019-07-12 22:05:47 +00:00
svenbarth
84848df18d
Reintegration of Custom Attributes branch by Joost van der Sluis with patches reworked by Svetozar Belic [patch 3/3]
...
Added FPC_REQUIRES_PROPER_ALIGNMENT to TUnitInfo definition. Added FPC_HAS_EXTENDED_RTTI define.
git-svn-id: trunk@42358 -
2019-07-12 22:04:56 +00:00