Commit Graph

58367 Commits

Author SHA1 Message Date
florian
1643fc5210 + xtensa-embedded: patch by Christo Crause to check and support SUBARCH
git-svn-id: trunk@44843 -
2020-04-19 11:22:55 +00:00
florian
db19900eb1 * TARMAsmOptimizer.RemoveSuperfluousMove should not mess with PC
git-svn-id: trunk@44842 -
2020-04-19 11:04:31 +00:00
florian
c2df0f2300 * Xtensa: handle localsize > 32760
git-svn-id: trunk@44840 -
2020-04-19 08:41:32 +00:00
florian
7b2bd0b917 * Xtensa: generate better code for adding/subtracting 16 bit constants
git-svn-id: trunk@44839 -
2020-04-19 08:41:31 +00:00
florian
702e63e59f * build more units for FreeRTOS
git-svn-id: trunk@44838 -
2020-04-19 08:41:30 +00:00
florian
2edec13a0f * use j.l in external wrappers, this is not save yet as A15 might contain
an argument: externals need to be called with call4 if they use all
    parameter registers, this needs to be implemented

git-svn-id: trunk@44837 -
2020-04-19 07:37:45 +00:00
florian
a49a776307 * go through cg to generate jumps, so the right jump is generated always
git-svn-id: trunk@44836 -
2020-04-19 07:36:13 +00:00
florian
099faf2d2b * factored out and improved TARMAsmOptimizer.RedundantMovProcess
+ AArch64: use TARMAsmOptimizer.RedundantMovProcess

git-svn-id: trunk@44799 -
2020-04-18 21:48:25 +00:00
florian
d7623be563 * FreeRTOS: do not try to build native utils
git-svn-id: trunk@44798 -
2020-04-18 20:39:38 +00:00
florian
9211e6cf93 * FreeRTOS: try not to build native binaries
git-svn-id: trunk@44797 -
2020-04-18 20:39:37 +00:00
florian
3ec0437d5f * Xtensa: dummy overflow checking
git-svn-id: trunk@44796 -
2020-04-18 20:39:37 +00:00
florian
6ccb8b83da + AArch64: TCpuAsmOptimizer.OptPass1Mov
git-svn-id: trunk@44795 -
2020-04-18 17:58:45 +00:00
florian
2b3d7dd42c * bail out early if possible
git-svn-id: trunk@44794 -
2020-04-18 17:58:44 +00:00
Jonas Maebe
4b59bcb0ca * regenerated makefiles
git-svn-id: trunk@44793 -
2020-04-18 16:08:25 +00:00
Jonas Maebe
d098600c67 * updated after changes to fpcmake.ini/inc
git-svn-id: trunk@44792 -
2020-04-18 16:07:56 +00:00
Jonas Maebe
723430ac34 * support building the IDE with the LLVM code generator
git-svn-id: trunk@44791 -
2020-04-18 15:44:57 +00:00
Jonas Maebe
218ca87a3f * always add the libgcc search directory under Linux, as it is required for
both the LLVM code generator and SEH support (it does _not_ force linking
    libgcc, just adds the search directory so it can be found in case it's
    required)

git-svn-id: trunk@44790 -
2020-04-18 15:44:53 +00:00
Jonas Maebe
468c8fb820 - removed FPC pre-2.1 optimization options
git-svn-id: trunk@44789 -
2020-04-18 15:44:49 +00:00
Jonas Maebe
2355daf63f * added missing write memory barriers
git-svn-id: trunk@44788 -
2020-04-18 15:44:45 +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
florian
7125cb505c + AAarch64: assembler optimization Bl2B
git-svn-id: trunk@44785 -
2020-04-18 15:17:29 +00:00
marco
98b1d2b975 * use wingetprocaddress instead of getprocaddress in code under SUPPORT_WIN95.
getprocaddress is meanwhile a "manager", and is not yet initialized here.

git-svn-id: trunk@44777 -
2020-04-18 13:42:08 +00:00
michael
fa4560c6ba * Refactored ObjectToJSON so descendents have more control (bug ID 36803)
git-svn-id: trunk@44776 -
2020-04-18 10:48:08 +00:00
michael
c660cab3a7 * Fix bug #36851: Content-Length header needs to be removed if automatically added
git-svn-id: trunk@44775 -
2020-04-18 10:36:03 +00:00
pierre
3a76f9f477 * Fix compilation of gdbint unit for go32v2, should resolve bug report 36923.
Replace cint type by longint (as gdbint unit does not use ctypes unit).

git-svn-id: trunk@44774 -
2020-04-18 09:53:24 +00:00
florian
5a07298ea5 + AAarch64: FOpFMov2FOp assembler optimization
git-svn-id: trunk@44773 -
2020-04-18 09:38:10 +00:00
Károly Balogh
56ad37133e m68k-amiga: hack to avoid a linker (vlink) warning about merging sections with different flags together. Amiga doesn't support true read only sections anyway
git-svn-id: trunk@44757 -
2020-04-17 23:09:16 +00:00
florian
001057b52e * re-added assembler optimization accidently removed in r44738 as noted by margers on the mailing list
git-svn-id: trunk@44751 -
2020-04-17 21:02:35 +00:00
nickysn
599b7e80c0 * fix for OP_ROR in tcgavr.a_op_reg_reg_internal
git-svn-id: trunk@44749 -
2020-04-17 17:19:22 +00:00
Károly Balogh
09b6bed27c m68k-amiga: implemented CreateNewProc for legacy support, means AThreads now works on OS v1.2+
git-svn-id: trunk@44748 -
2020-04-17 17:12:23 +00:00
svenbarth
4f16473baa * fix typo
git-svn-id: trunk@44747 -
2020-04-17 14:44:16 +00:00
svenbarth
de35356a4d * when checking for an existing operator overload for the assignment operator, check for the correct variant (explicit or not) matching the overload
+ added tests

git-svn-id: trunk@44746 -
2020-04-17 14:44:14 +00:00
svenbarth
f5fc806c9d * fix comment
git-svn-id: trunk@44745 -
2020-04-17 14:44:11 +00:00
Károly Balogh
1bd66a605c amicommon: only include exec helpers when compiling for v2.0 in athreads
git-svn-id: trunk@44743 -
2020-04-17 00:15:30 +00:00
Károly Balogh
db0deab026 amicommon: instead of a runtime check, check for OS2.0+ features at compile time in DOS
git-svn-id: trunk@44742 -
2020-04-17 00:14:42 +00:00
Károly Balogh
024ab0a854 amicommon: only include exec extensions when complied for v2.0
git-svn-id: trunk@44741 -
2020-04-17 00:13:56 +00:00
florian
9176efbab4 * factored out TARMAsmOptimizer.OptPass1SXTH
* AArch64: use TARMAsmOptimizer.OptPass1SXTH

git-svn-id: trunk@44739 -
2020-04-16 21:19:14 +00:00
florian
19a9d4c4ac * factored out TARMAsmOptimizer.OptPass1SXTB
* AArch64: use TARMAsmOptimizer.OptPass1SXTB

git-svn-id: trunk@44738 -
2020-04-16 21:19:13 +00:00
florian
7172397077 * factored out TARMAsmOptimizer.OptPass1UXTH
* AArch64: use TARMAsmOptimizer.OptPass1UXTH

git-svn-id: trunk@44737 -
2020-04-16 21:19:12 +00:00
Károly Balogh
4f14f0f4e5 m68k-amiga: startup code to print a console message and quit, when the OS is known to be too old for the RTL
git-svn-id: trunk@44736 -
2020-04-16 20:59:08 +00:00
Károly Balogh
c577e290d1 m68k-amiga: enable certain legacy exec support functions only when compiling for OS v2.0
git-svn-id: trunk@44735 -
2020-04-16 20:51:57 +00:00
Károly Balogh
2f8fe76bed m68k-amiga: have an AMIGA prefix in OS_MINVERSION public constant, add OS 2.0 support, make sure we open v39 by default as it is needed by memory pool functions
git-svn-id: trunk@44734 -
2020-04-16 20:50:14 +00:00
Károly Balogh
36e4db15bc m68k-amiga: make it possible to disable functions newer than OS 2.0 (v37+)
git-svn-id: trunk@44733 -
2020-04-16 20:42:31 +00:00
pierre
73b563b367 Avoid invalid typecast in tarmunaryminusnode.pass_1 method
git-svn-id: trunk@44726 -
2020-04-15 20:47:04 +00:00
florian
9bcff94e9e * factored out TARMAsmOptimizer.OptPass1UXTB
* several other routines being very similar for ARM and AAarch64 moved to aoptarm

git-svn-id: trunk@44725 -
2020-04-15 20:21:29 +00:00
marco
3c467f7cc5 * added some image_dllcharacteristics flags + removed some hard tabs.
git-svn-id: trunk@44724 -
2020-04-15 10:09:55 +00:00
florian
c4b66c89f7 * check for stup instead of stp
git-svn-id: trunk@44722 -
2020-04-14 20:52:27 +00:00
florian
2276caae24 + common assembler optimizer base class for arm and aarch64
git-svn-id: trunk@44720 -
2020-04-13 21:01:01 +00:00
pierre
3022927a6f Handle all existing possible values for init_settings.fputype to set Tag_FP_Arch .eabi_attribute
git-svn-id: trunk@44719 -
2020-04-13 20:56:44 +00:00
florian
3dff78621c * Aarch64: UTX/STX instructions include now the postfix, so it is the same as for ARM
git-svn-id: trunk@44718 -
2020-04-13 18:04:34 +00:00