Commit Graph

25090 Commits

Author SHA1 Message Date
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