Jonas Maebe
75c16b6126
llvm: support for getting the llvm rtl (rt) architecture name
...
This is the name used as part of the llvm rt libraries, like
asan (address sanitizer)
2022-07-24 14:36:13 +02:00
J. Gareth "Curious Kit" Moreton
d1f035f456
* arm: Labels to constants are now data labels and not jump labels
2022-07-15 17:03:10 +00:00
J. Gareth "Curious Kit" Moreton
be39828fca
* arm: Symbol reference counts are corrected when PC-relative data is inserted
2022-07-15 17:03:10 +00:00
florian
83ce54b815
set Tag_ABI_VFP_args to 1 only if the hard float abi is used, should resolve #39817
2022-06-30 22:02:11 +02:00
Jonas Maebe
03a961709b
arm paramanager: always create at least one paraloc
...
Even for parameters of 0 bytes. Matches behaviour on other targets.
2022-06-13 22:52:27 +02:00
Pierre Muller
2cdbdcd5c5
Manually increase refs of newly created labelsymbol in insertpcrelativedata
2022-05-31 14:26:00 +00:00
Sven/Sarah Barth
7f3a5eb9ab
* extend tabstractprocdef.getcopyas by a parameter to control whether the copy should be registered or not
2022-05-26 21:42:59 +02:00
florian
27fb9086aa
* cleanup: cs_opt_loopunroll is a generic optimization for a long time already
2022-03-08 23:03:18 +01:00
florian
2a93e65511
* seperator => separator
2022-01-02 13:12:33 +01:00
florian
6404478ea4
* cleanup of VER3_0 defines
2021-11-17 22:19:57 +01:00
florian
9423d5e390
+ fp-armv8 fpu type added
2021-11-06 11:00:53 +01:00
florian
9feafc7bd7
+ ARM: started on vfpv5 support
2021-11-05 23:05:38 +01:00
florian
ff3acfb8cd
* cleanup of 2.7.0 defines
2021-10-31 13:20:28 +01:00
florian
bbcc396644
* ARM: fix for Merge Add/Sub optimization
...
git-svn-id: trunk@49520 -
2021-06-21 21:36:32 +00:00
florian
356afdd25b
* ARM (thumb): do not save registers in routines marked as noreturn
...
git-svn-id: trunk@49519 -
2021-06-20 18:14:30 +00:00
florian
50648f2a60
+ ARM: PushPop optimziation
...
git-svn-id: trunk@49510 -
2021-06-17 21:12:08 +00:00
florian
e1d9d1be0a
+ Merge Add/Sub optimization
...
git-svn-id: trunk@49508 -
2021-06-16 19:53:56 +00:00
florian
3f8aeadb91
* do not generate exit code for arm (thumb and thumb-2) if a routine is marked as noreturn
...
git-svn-id: trunk@49506 -
2021-06-15 20:09:46 +00:00
florian
7ee31ae252
* optimization "Merging stores: STR/STR -> STM" cannot be carried out when generating thumb code
...
git-svn-id: trunk@49503 -
2021-06-15 19:05:34 +00:00
florian
776667366f
* patch by J. Gareth Moreton: ARM - str/str -> stm optimisation, second part of #38975
...
git-svn-id: trunk@49499 -
2021-06-13 20:46:46 +00:00
florian
214936b90e
* patch by J. Gareth Moreton: refactoring to standardise the "Peephole Optimization: " prefix on peephole debug messages, part of #38975
...
git-svn-id: trunk@49493 -
2021-06-09 18:31:52 +00:00
florian
134bc7eb42
* ARM: split TCpuThumb2AsmOptimizer.PeepHoleOptPass1Cpu
...
git-svn-id: trunk@49489 -
2021-06-07 21:20:43 +00:00
florian
814b68fac0
* more fixes for VASM for ARM
...
git-svn-id: trunk@49398 -
2021-05-23 19:46:40 +00:00
florian
e9b3db0d78
* more fixes to support vasm on arm
...
* do not crash on empty eabi attribute strings
git-svn-id: trunk@49397 -
2021-05-22 20:22:53 +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
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
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
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
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
florian
695665c393
+ optimized multiplication for "symmetric" bit patterns on arm
...
git-svn-id: trunk@49199 -
2021-04-13 21:16:56 +00:00
Jonas Maebe
ca399f3c71
* don't generate high-level CFI statements when the selected assembler
...
does not support them, even if the target normally uses them
o fixes assembling with -Aas-darwin for i386/arm/x86-64 (on OS
versions that used those)
git-svn-id: trunk@49138 -
2021-04-08 19:50:27 +00:00
pierre
8ea95e9b95
Use value $00000F00 instead of $F0000000 for IF_FPMASK, and adapt all floating point constants, to avoid IF_VFPv4 having the same value as IF_PASS2
...
git-svn-id: trunk@49096 -
2021-03-31 21:03:50 +00:00
Jeppe Johansen
1105726dcf
* Add SAMD51P19A controller type. Unit generated by Michael Ring and slightly modified.
...
git-svn-id: trunk@49034 -
2021-03-22 18:40:12 +00:00
florian
09d6398942
* arm: better cfi
...
git-svn-id: trunk@48685 -
2021-02-15 22:25:18 +00:00
florian
e694897bb3
* initial implementation of CFI support for arm (non-thumb)
...
git-svn-id: trunk@48684 -
2021-02-15 21:34:07 +00:00
florian
a3d68e6839
* arm thumb: generate proper cfi
...
git-svn-id: trunk@48678 -
2021-02-14 21:26:41 +00:00
florian
44856e660c
* ARM: NR_RETURN_ADDRESS_REG is R14
...
git-svn-id: trunk@48677 -
2021-02-14 21:25:36 +00:00
florian
0316a7697f
* arm thumb1: several fixes for the internal assembler writer
...
git-svn-id: trunk@48675 -
2021-02-14 17:52:26 +00:00
florian
33ce19799b
* forgotten part of last commit
...
git-svn-id: trunk@48674 -
2021-02-14 17:15:37 +00:00
florian
f1883c4e61
* arm: taicpu uses set instead of boolean to store instruction states
...
+ track if an instruction is a thumb instruction in taicpu
git-svn-id: trunk@48673 -
2021-02-14 15:51:48 +00:00
florian
dda9f83dfe
* factored out tbasecgarm.init_mmregister_allocator
...
git-svn-id: trunk@48671 -
2021-02-13 22:16:59 +00:00
florian
87e1dc159d
* do not mess with FPA registers if they are not available
...
git-svn-id: trunk@48669 -
2021-02-13 17:04:03 +00:00
florian
7f1aac8bd7
- armv5 never existed (without extension), removed
...
git-svn-id: trunk@48652 -
2021-02-11 21:27:12 +00:00
florian
3b49e95415
* do not initialize unncessary register allocators
...
git-svn-id: trunk@48628 -
2021-02-10 19:52:52 +00:00
yury
9b1567f054
* Corrected method's visibility.
...
git-svn-id: trunk@48393 -
2021-01-24 14:06:35 +00:00
yury
64c586b86d
* Removed/ifdefed lots of unused variables.
...
git-svn-id: trunk@48384 -
2021-01-24 12:24:01 +00:00