florian
|
29bdbdba95
* reduce amount of software floating point exception checking, VSTR, VMOV, VLDR do not raise those
|
5 years ago |
florian
|
16163b74ec
+ support for the gnu2 general-dynamic tls model on arm, use it instead of the gnu one as the gnu2 one can be relaxed (access optimizations by the linker)
|
5 years ago |
florian
|
03dfc615dc
+ new relocations for arm tls
|
5 years ago |
florian
|
ba0768b6a6
* building with -Cfvfpv2 hopefully fixed
|
6 years ago |
florian
|
867df5362c
+ basic Neon support in the assembler writer
|
6 years ago |
florian
|
85edf1c1eb
* reworked arm vfp capability handling to use fpu_capabilites
|
6 years ago |
florian
|
99f92ce5dd
* insert FPC_THROWFPUEXCEPTION call into the correct assembler list
|
6 years ago |
florian
|
46bac33a2d
+ fpu_capabilities for arm
|
6 years ago |
florian
|
b3ed34592f
+ software handling of exceptions on arm
|
6 years ago |
Jonas Maebe
|
281b3ad276
* fix case completeness and unreachable code warnings in compiler that would
|
6 years ago |
yury
|
3a43ffd57b
* arm: Include pi_needs_got to current_procinfo.flags when the GOT register is accessed. It forces proper initialization of the GOT register at the beginning of a procedure. This fixes storing of a double constant to a field in a packed record and other rare copy operations when PIC is enabled.
|
6 years ago |
yury
|
3e8c7f66b7
* arm: Fixed crash while loading double constants with PIC enabled. This is the regression after r41129. The crash has occurred due to usage of a rare code path. It will be fixed in the next commit.
|
6 years ago |
Jonas Maebe
|
d99d1f1f30
* let the ARM code generator use the generic tcg.a_load_ref_cgpara() instead
|
6 years ago |
florian
|
2b6076a719
* compilation fixed
|
6 years ago |
florian
|
acbf7d15c4
* do not load always the references into a register in g_concatcopy
|
6 years ago |
pierre
|
4657f45e74
* Change first parameter type of function is_continuous_maks to aword type.
|
6 years ago |
florian
|
9f16c34329
+ initial work for tls-based threadvar support on arm-linux
|
6 years ago |
pierre
|
e42ccccecf
Disable range check completely in arm/cgcpu unit
|
6 years ago |
Jonas Maebe
|
0b246f3dbd
* converted Boolean8 to an internal type, and mapped Boolean to the
|
6 years ago |
Jonas Maebe
|
d69ad8fa41
* removed temppos field again from parameter locations: they're not allocated
|
7 years ago |
Jonas Maebe
|
4686f61002
* keep track of the temp position separately from the offset in references,
|
7 years ago |
Jeppe Johansen
|
f3889a191b
Generate bx lr exit instruction in Thumb-2 instead of mov pc,lr as bx lr will trigger an exception return but mov doesn't.
|
8 years ago |
yury
|
2ae3ce79bb
* ARM: Never use the "BLX label" instruction. Use "BL label" instead.
|
8 years ago |
Jonas Maebe
|
880d438704
* renamed t<cpuname>procinfo to tcpuprocinfo for all targets, so we can
|
8 years ago |
Jonas Maebe
|
a25ebbba3e
+ added volatility information to all memory references
|
8 years ago |
Jonas Maebe
|
aa1be3276f
- removed default value of _typ parameter of TAsmData.(Weak)RefAsmSymbol():
|
9 years ago |
florian
|
ad71b8348e
* S1..S15 do not need to be marked as volatile as they are sub-registers of double size registers
|
9 years ago |
florian
|
1c067e96bf
* fix VFPv4 support
|
9 years ago |
florian
|
3f2057a2f2
* do not generate blx instructions, the generation of blx instead of bl was introduced some years ago but today it proves to be wrong: if necessary, the linker converts the bl into a blx, this is also how gcc and clang handle it
|
9 years ago |
yury
|
61a1976e09
* Removed a leftover of my code. It is not needed anymore.
|
10 years ago |