diff options
| author | Valery Ushakov <uwe@stderr.spb.ru> | 2020-12-29 20:10:33 +0300 |
|---|---|---|
| committer | Valery Ushakov <uwe@stderr.spb.ru> | 2020-12-29 20:10:33 +0300 |
| commit | e89e8a1559693b91fd201d2a0368a8561c1473b7 (patch) | |
| tree | 470c0f822788924826a62e04e5b913797af46fdf /lib9 | |
| parent | a93f6c888f6d530420fbb54e2f7fa4572cdc5208 (diff) | |
NetBSD/arm: initial support
This is more or less mechanical merge of existing NetBSD code and
ARM-specific bits from Linux/arm files.
Diffstat (limited to 'lib9')
| -rw-r--r-- | lib9/getcallerpc-NetBSD-arm.S | 1 | ||||
| -rw-r--r-- | lib9/setfcr-NetBSD-arm.S | 38 |
2 files changed, 39 insertions, 0 deletions
diff --git a/lib9/getcallerpc-NetBSD-arm.S b/lib9/getcallerpc-NetBSD-arm.S new file mode 100644 index 00000000..2b2e74b1 --- /dev/null +++ b/lib9/getcallerpc-NetBSD-arm.S @@ -0,0 +1 @@ +/* getcallerpc for NetBSD/arm is placed in lib9.h as inline function*/ diff --git a/lib9/setfcr-NetBSD-arm.S b/lib9/setfcr-NetBSD-arm.S new file mode 100644 index 00000000..61afd843 --- /dev/null +++ b/lib9/setfcr-NetBSD-arm.S @@ -0,0 +1,38 @@ +#include <machine/asm.h> + +#define ENT +#define RET bx lr + +#ifdef USEVFP + .fpu vfp +#define VMSR(f,r) vmsr f,r +#define VMRS(r,f) vmrs r,f +#else + .fpu softvfp +#define VMSR(f,r) +#define VMRS(r,f) +#endif + +ENTRY_NP(setfcr) + ENT + VMSR(fpscr, r0) + RET + END(setfcr) + +ENTRY_NP(getfcr) + ENT + VMRS(r0, fpscr) + RET + END(getfcr) + +ENTRY_NP(getfsr) + ENT + VMRS(r0, fpscr) + RET + END(getfsr) + +ENTRY_NP(setfsr) + ENT + VMSR(fpscr, r0) + RET + END(setfsr) |
