diff options
author | ian <ian@FreeBSD.org> | 2014-03-10 22:38:07 +0000 |
---|---|---|
committer | ian <ian@FreeBSD.org> | 2014-03-10 22:38:07 +0000 |
commit | ab22d4f391ac7c4c8395ac6a05ab747f91d52d2f (patch) | |
tree | 07029275fcc48409a3e4dc553bc42d2378ae48d7 /sys/arm | |
parent | aa6dd6786650e1b2914d76d1ba6406b8c655eed4 (diff) | |
download | FreeBSD-src-ab22d4f391ac7c4c8395ac6a05ab747f91d52d2f.zip FreeBSD-src-ab22d4f391ac7c4c8395ac6a05ab747f91d52d2f.tar.gz |
Change the way the asm GET_CURTHREAD_PTR() macro is defined so that code
using it doesn't have to have an "AST_LOCALS" macro somewhere in the file.
Diffstat (limited to 'sys/arm')
-rw-r--r-- | sys/arm/arm/exception.S | 2 | ||||
-rw-r--r-- | sys/arm/arm/swtch.S | 1 | ||||
-rw-r--r-- | sys/arm/include/asmacros.h | 11 |
3 files changed, 4 insertions, 10 deletions
diff --git a/sys/arm/arm/exception.S b/sys/arm/arm/exception.S index f773c92..cb537cc 100644 --- a/sys/arm/arm/exception.S +++ b/sys/arm/arm/exception.S @@ -56,8 +56,6 @@ __FBSDID("$FreeBSD$"); .text .align 0 -AST_LOCALS - /* * reset_entry: * diff --git a/sys/arm/arm/swtch.S b/sys/arm/arm/swtch.S index d704823..be9b5c4 100644 --- a/sys/arm/arm/swtch.S +++ b/sys/arm/arm/swtch.S @@ -501,6 +501,5 @@ ENTRY(fork_trampoline) movs pc, lr /* Exit */ -AST_LOCALS END(fork_trampoline) diff --git a/sys/arm/include/asmacros.h b/sys/arm/include/asmacros.h index 8796ae8..b849582 100644 --- a/sys/arm/include/asmacros.h +++ b/sys/arm/include/asmacros.h @@ -243,13 +243,10 @@ name: #define GET_CURTHREAD_PTR(tmp) \ mrc p15, 0, tmp, c13, c0, 4 #else -#define AST_LOCALS ;\ -.Lcurthread: ;\ - .word _C_LABEL(__pcpu) + PC_CURTHREAD - -#define GET_CURTHREAD_PTR(tmp) \ - ldr tmp, .Lcurthread; \ - ldr tmp, [tmp] +#define AST_LOCALS +#define GET_CURTHREAD_PTR(tmp) \ + ldr tmp, =_C_LABEL(__pcpu);\ + ldr tmp, [tmp, #PC_CURTHREAD] #endif #define DO_AST \ |