florian
e57059eea3
* fix building on i386 after r49366
...
git-svn-id: trunk@49372 -
2021-05-15 16:02:22 +00:00
florian
884d24e321
* patch by J. Gareth Moreton: x86 MOVZX/CMP optimisation, resolves #38882
...
git-svn-id: trunk@49366 -
2021-05-14 20:50:03 +00:00
Károly Balogh
f0cc2c38b8
sinclairql: enable weak linking support for the Sinclair QL
...
git-svn-id: trunk@49363 -
2021-05-14 14:49:14 +00:00
florian
bc21634b46
* AVR: made avr_des intrinsic more usefull
...
git-svn-id: trunk@49362 -
2021-05-13 18:59:28 +00:00
florian
022a9b210f
+ AVR: avr_des intrinsic
...
git-svn-id: trunk@49353 -
2021-05-13 09:26:53 +00:00
pierre
da3eb5c178
Try to fix handle of large stack size in xtensa gen_proc_entry/gen_proc_exit
...
git-svn-id: trunk@49352 -
2021-05-12 22:54:59 +00:00
florian
9bfc731bb6
+ AVR: MovOp2Op 2 optimization
...
git-svn-id: trunk@49350 -
2021-05-12 19:20:10 +00:00
florian
929fc50004
* cleanup
...
git-svn-id: trunk@49349 -
2021-05-10 20:30:31 +00:00
florian
8535c758ef
+ initial support for ARMv2
...
* check for unassigned valuestr when writing ntbs eabi attributes
git-svn-id: trunk@49348 -
2021-05-09 20:42:31 +00:00
florian
4ab310e0ed
+ ARM: basic vasm support
...
git-svn-id: trunk@49347 -
2021-05-08 20:48:59 +00:00
florian
5e1e6c24a4
* patch by Christo Crause: handle references to absolute address 0 correctly, resolves #38861
...
git-svn-id: trunk@49344 -
2021-05-07 16:19:05 +00:00
florian
964c04aded
* patch by J. Gareth Moreton, second part of #38841
...
git-svn-id: trunk@49341 -
2021-05-06 18:44:18 +00:00
pierre
9bad5180bb
Avoid using UXT and SXT instructions on arm version below 6
...
git-svn-id: trunk@49340 -
2021-05-06 16:17:16 +00:00
pierre
0a4f75ce7a
Add explicit zeroing of trttiparaloc record to avoid hash calculation issues
...
git-svn-id: trunk@49339 -
2021-05-06 08:02:34 +00:00
florian
d936280c6b
* (modified) patch by J. Gareth Moreton to unify ldr/str optimizations on Aarch64/ARM, part of #38841
...
git-svn-id: trunk@49338 -
2021-05-05 20:38:05 +00:00
pierre
dd9179043e
Fix message about unsupported OS_TARGET for LLVM
...
git-svn-id: trunk@49330 -
2021-05-03 16:10:59 +00:00
pierre
39896a1b11
Destroy tfornode class loopiteration field if assigned
...
git-svn-id: trunk@49329 -
2021-05-03 16:04:19 +00:00
florian
210674b9a0
* patch by J. Gareth Moreton: AArch64: Improved speed and efficiency with constant generation, resolves #38837
...
git-svn-id: trunk@49321 -
2021-05-01 18:56:25 +00:00
Jonas Maebe
cc5814dac1
* support arbitrary record regvars on AArch64: it has fairly complete support
...
for inserting/extracting bitfields (although the compiler doesn't use those
instructions yet in all possible cases, it seems)
git-svn-id: trunk@49313 -
2021-05-01 13:58:10 +00:00
Jonas Maebe
5ca1e37fb6
* AArch64: fix spilling information for BFI
...
git-svn-id: trunk@49312 -
2021-05-01 13:58:07 +00:00
Jonas Maebe
9977889f4a
* fix finally block getting unconditionally removed if try-block is empty
...
(hasnocode(nil) always returns true). Regression from r48174
git-svn-id: trunk@49305 -
2021-05-01 09:28:58 +00:00
pierre
5ef44c550a
Avoid range/overflow error after commit #49290
...
git-svn-id: trunk@49298 -
2021-04-30 09:55:11 +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
f76bb5fc5e
m68k-sinclairql: apply the same hack as for amiga and atari to avoid vlink section attribute warning
...
git-svn-id: trunk@49295 -
2021-04-29 22:21:36 +00:00
Károly Balogh
cdc7fec019
m68k: D2 is considered volatile on macosclassic
...
git-svn-id: trunk@49294 -
2021-04-29 22:06:26 +00:00
pierre
f0b322f4ed
Add -TFreeBSD target OS option to -h output for aarch64 compiler ppc64
...
git-svn-id: trunk@49293 -
2021-04-29 21:59:32 +00:00
pierre
bf5f714497
Also check *.pas and *.inc files inside sub-directories in msgused.pl
...
git-svn-id: trunk@49292 -
2021-04-29 20:16:31 +00:00
florian
256ca9d210
* patch by J. Gareth Moreton: AArch64 "magic division"
...
(replace division by constant with multiplication), part of #38806
git-svn-id: trunk@49290 -
2021-04-29 19:48:54 +00:00
pierre
595edf6f9b
Use as-clang as idtxt for as_aarch64_clang_gas_info
...
git-svn-id: trunk@49287 -
2021-04-28 23:03:47 +00:00
pierre
b464d38777
Add several missing -AXXX options
...
git-svn-id: trunk@49286 -
2021-04-28 23:02:44 +00:00
florian
837b433abc
* avoid overflow during register allocation
...
git-svn-id: trunk@49285 -
2021-04-28 18:32:48 +00:00
pierre
72667f41ad
Avoid warning with -O4 option
...
git-svn-id: trunk@49284 -
2021-04-28 14:56:30 +00:00
florian
0ffd4f8780
* fix compilation of arm compiler on 32 bit hosts
...
git-svn-id: trunk@49281 -
2021-04-27 16:36:40 +00:00
pierre
77e3a402da
Set string length before calling move to avoid problems with global data analysis on systems using C library
...
git-svn-id: trunk@49280 -
2021-04-27 14:52:22 +00:00
pierre
7721995c71
Make sure nf_usercode_entry get transferred inside firstpass procedure
...
git-svn-id: trunk@49279 -
2021-04-27 14:20:09 +00:00
pierre
423940afd7
Avoid range check error inside genitem_thumb2 by changing local variable i type
...
git-svn-id: trunk@49278 -
2021-04-27 14:01:35 +00:00
Károly Balogh
d06cb1a20a
m68k: fixed a comment. no functional change
...
git-svn-id: trunk@49275 -
2021-04-27 06:25:13 +00:00
pierre
d03c3c0669
Disable overflow/range check in some part of the arm code
...
git-svn-id: trunk@49274 -
2021-04-26 21:51:42 +00:00
pierre
c2faf6a8fd
Avoid invalid typecast if hp is not an instruction
...
git-svn-id: trunk@49273 -
2021-04-26 21:50:53 +00:00
pierre
f1d30a5bc6
Add .force_thumb pseudo-directive support forarm reader
...
git-svn-id: trunk@49271 -
2021-04-26 21:14:27 +00:00
pierre
570af33fa9
Add a second handling of NIL entries in deflist
...
git-svn-id: trunk@49270 -
2021-04-26 21:12:02 +00:00
pierre
db02c7c85a
Add -march=XXX option for aarch64 external assemblers
...
git-svn-id: trunk@49269 -
2021-04-26 21:10:25 +00:00
florian
1b22962140
* patch by Christo Crause to fix #38789 : writing of linker commands should not depent in -s
...
git-svn-id: trunk@49267 -
2021-04-26 20:52:02 +00:00
florian
77cc2f4ced
* decrease macro nesting counter early when expanding empty macro
...
to avoid errors about too depth macro nesting, resolves #38802
git-svn-id: trunk@49265 -
2021-04-25 19:49:26 +00:00
nickysn
1a71ca4106
* prevention of dangling pointers and use after free after free_unregistered_localsymtable_elements
...
git-svn-id: trunk@49262 -
2021-04-25 15:58:59 +00:00
florian
5557dbedf2
+ Aarch64: directly inline code for frac(...)
...
git-svn-id: trunk@49261 -
2021-04-25 09:26:47 +00:00
florian
cd3570caf1
+ Aarch64: use frintz for int(...) instead of creating a helper call
...
git-svn-id: trunk@49260 -
2021-04-25 08:53:12 +00:00
nickysn
bc42d64348
* workaround for the raise node generating invalid WebAssembly code for
...
obtaining the current address. Note that exception handling in WebAssembly
doesn't work. This only fixes the raise node enough to generate valid (but not
correct) WebAssembly code. This is a temporary fix to allow the SysUtils unit
to be compiled. Eventually, exception handling for WebAssembly will need to be
rewritten entirely, in order to make exceptions work properly.
git-svn-id: trunk@49259 -
2021-04-24 14:40:07 +00:00
nickysn
f81dd894aa
* override the raise node for WebAssembly and copy the generic pass_1
...
implementation. No functional changes.
git-svn-id: trunk@49258 -
2021-04-24 14:31:56 +00:00
pierre
17e3c31b7e
Fix gotpcrel relocation for TESTQ x86_64 instruction
...
git-svn-id: trunk@49252 -
2021-04-23 21:52:24 +00:00