Jonas Maebe
d9f4c85d2e
* llvm sometimes uses the AArch64 framepointer register as a regvar in the
...
main routine (because it can never return) -> attempt to guard against
invalid accesses in get_caller_addr
git-svn-id: trunk@44066 -
2020-01-29 22:21:21 +00:00
florian
688c7d439f
o AArch64:
...
* properly initialize FPU
* FMOV cannot throw an FPU exception
git-svn-id: trunk@43167 -
2019-10-11 21:55:48 +00:00
florian
078595be4c
+ support for software floating point exception handling on AArch64 (-CE)
...
git-svn-id: trunk@42891 -
2019-09-01 17:26:11 +00:00
florian
ff86c80176
* cpu specific header file for the system unit: cpuh.inc, moved several declarations into it
...
git-svn-id: trunk@37542 -
2017-11-01 16:33:30 +00:00
Jonas Maebe
2cacb588aa
* replaced AArch64 setjmp/longjmp code initially taken from NetBSD with
...
straightforward own implementation
git-svn-id: trunk@30006 -
2015-02-25 19:34:42 +00:00
Jonas Maebe
1edd3ac511
* support for the "RaisePending" parameter of RaiseExceptions on AArch64
...
git-svn-id: trunk@29951 -
2015-02-23 22:55:02 +00:00
Jonas Maebe
41fba0c4f7
* switched to using the stack pointer as base register for the temp allocator
...
instead of the frame pointer register:
1) we exactly know the offsets of the temps from the stack pointer
after pass 1 (based on the require parameter stack size for called
routines), while we don't know it for the frame pointer (it depends
on the number of saved registers)
2) temp offsets from the stack pointer are positive while those from
the frame pointer are negative, and we can directly encode much
bigger positive offsets in the instructions
o move the stack pointer register to a virtual register in
loadparentfpn, because many instructions cannot directly operate
on/with the stack pointer
o add the necessary register interference edges for the stack pointer
register
git-svn-id: trunk@29938 -
2015-02-23 22:54:03 +00:00
Jonas Maebe
65141ab135
+ aarch64 makefile.cpu
...
git-svn-id: trunk@29887 -
2015-02-23 22:51:12 +00:00
Jonas Maebe
e32965879d
* dummy strings.inc for aarch64
...
git-svn-id: trunk@29886 -
2015-02-23 22:51:09 +00:00
Jonas Maebe
dad442c7e3
+ aarch64 fpu init, atomic routines and memory barriers
...
git-svn-id: trunk@29885 -
2015-02-23 22:51:06 +00:00
Jonas Maebe
6813831e03
+ AArch64 setjump code based on NetBSD version
...
git-svn-id: trunk@29884 -
2015-02-23 22:51:03 +00:00
Jonas Maebe
6b371315f3
+ dummy AArch64 stringss.inc file
...
git-svn-id: trunk@29883 -
2015-02-23 22:51:00 +00:00
Jonas Maebe
e82201d6ac
+ dummy set.inc for AArch64
...
git-svn-id: trunk@29882 -
2015-02-23 22:50:57 +00:00
Jonas Maebe
4c7f75c93b
+ round/trunc/int for AArch64
...
git-svn-id: trunk@29881 -
2015-02-23 22:50:54 +00:00
Jonas Maebe
66d4e9a3a5
+ dummy int64p.inc
...
git-svn-id: trunk@29880 -
2015-02-23 22:50:51 +00:00
Jonas Maebe
84f04ad2ce
+ aarch64 fpu rounding mode/exception support
...
git-svn-id: trunk@29879 -
2015-02-23 22:50:48 +00:00