aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephen Rothwell <sfr@canb.auug.org.au>2005-10-12 17:44:55 +1000
committerStephen Rothwell <sfr@canb.auug.org.au>2005-10-13 09:49:51 +1000
commit7062018687da3d5d4966f58d6f0a58528b1e331b (patch)
treeccd1c08ab25397d44f34382fc353df2e5cb591fc
parent4920960f577edcb0a5ef03823a53911cca5875e1 (diff)
powerpc: create 32 bit LOADADDR macro
and use it in misc_32.S Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
-rw-r--r--arch/powerpc/kernel/misc_32.S6
-rw-r--r--include/asm-powerpc/ppc_asm.h4
2 files changed, 6 insertions, 4 deletions
diff --git a/arch/powerpc/kernel/misc_32.S b/arch/powerpc/kernel/misc_32.S
index fa8c20ffec7..27274108116 100644
--- a/arch/powerpc/kernel/misc_32.S
+++ b/arch/powerpc/kernel/misc_32.S
@@ -43,8 +43,7 @@ _GLOBAL(reloc_offset)
mflr r0
bl 1f
1: mflr r3
- lis r4,1b@ha
- addi r4,r4,1b@l
+ LOADADDR(r4,1b)
subf r3,r4,r3
mtlr r0
blr
@@ -56,8 +55,7 @@ _GLOBAL(add_reloc_offset)
mflr r0
bl 1f
1: mflr r5
- lis r4,1b@ha
- addi r4,r4,1b@l
+ LOADADDR(r4,1b)
subf r5,r4,r5
add r3,r3,r5
mtlr r0
diff --git a/include/asm-powerpc/ppc_asm.h b/include/asm-powerpc/ppc_asm.h
index e4350e406d2..6aae414a161 100644
--- a/include/asm-powerpc/ppc_asm.h
+++ b/include/asm-powerpc/ppc_asm.h
@@ -193,6 +193,10 @@ n:
#define CMPI cmpdi
#else /* 32-bit */
+#define LOADADDR(rn,name) \
+ lis rn,name@ha \
+ addi rn,rn,name@l
+
#define LOADBASE(rn,name) \
lis rn,name@ha