summaryrefslogtreecommitdiffstats
path: root/sys/powerpc
diff options
context:
space:
mode:
Diffstat (limited to 'sys/powerpc')
-rw-r--r--sys/powerpc/aim/locore64.S8
-rw-r--r--sys/powerpc/aim/swtch64.S14
-rw-r--r--sys/powerpc/aim/trap_subr64.S14
-rw-r--r--sys/powerpc/include/asm.h11
-rw-r--r--sys/powerpc/include/profile.h13
5 files changed, 27 insertions, 33 deletions
diff --git a/sys/powerpc/aim/locore64.S b/sys/powerpc/aim/locore64.S
index 234cded..acdc8a1 100644
--- a/sys/powerpc/aim/locore64.S
+++ b/sys/powerpc/aim/locore64.S
@@ -174,7 +174,7 @@ ASENTRY(__start)
insrdi 9,8,1,0
mtmsrd 9
- bl .OF_initial_setup
+ bl OF_initial_setup
nop
lis 4,end@ha
@@ -188,14 +188,14 @@ ASENTRY(__start)
mr 6,20
mr 7,21
- bl .powerpc_init
+ bl powerpc_init
nop
mr %r1, %r3
li %r3, 0
std %r3, 0(%r1)
- bl .mi_startup
+ bl mi_startup
nop
- b .OF_exit
+ b OF_exit
nop
/*
diff --git a/sys/powerpc/aim/swtch64.S b/sys/powerpc/aim/swtch64.S
index dd76e0a..1877e8d 100644
--- a/sys/powerpc/aim/swtch64.S
+++ b/sys/powerpc/aim/swtch64.S
@@ -121,7 +121,7 @@ ENTRY(cpu_switch)
/* Save FPU context if needed */
andi. %r7, %r7, PCB_FPU
beq .L1
- bl .save_fpu
+ bl save_fpu
nop
.L1:
@@ -130,12 +130,12 @@ ENTRY(cpu_switch)
/* Save Altivec context if needed */
andi. %r7, %r7, PCB_VEC
beq .L2
- bl .save_vec
+ bl save_vec
nop
.L2:
mr %r3,%r14 /* restore old thread ptr */
- bl .pmap_deactivate /* Deactivate the current pmap */
+ bl pmap_deactivate /* Deactivate the current pmap */
nop
addi %r1,%r1,48
@@ -161,7 +161,7 @@ blocked_loop:
stdu %r1,-48(%r1)
mr %r3,%r15 /* Get new thread ptr */
- bl .pmap_activate /* Activate the new address space */
+ bl pmap_activate /* Activate the new address space */
nop
lwz %r6, PCB_FLAGS(%r17)
@@ -169,7 +169,7 @@ blocked_loop:
andi. %r6, %r6, PCB_FPU
beq .L3
mr %r3,%r15 /* Pass curthread to enable_fpu */
- bl .enable_fpu
+ bl enable_fpu
nop
.L3:
@@ -178,7 +178,7 @@ blocked_loop:
andi. %r6, %r6, PCB_VEC
beq .L4
mr %r3,%r15 /* Pass curthread to enable_vec */
- bl .enable_vec
+ bl enable_vec
nop
/* thread to restore is in r3 */
@@ -276,7 +276,7 @@ ENTRY(fork_trampoline)
ld %r5,CF_ARG1(%r1)
stdu %r1,-48(%r1)
- bl .fork_exit
+ bl fork_exit
nop
addi %r1,%r1,48+CF_SIZE-FSP /* Allow 8 bytes in front of
trapframe to simulate FRAME_SETUP
diff --git a/sys/powerpc/aim/trap_subr64.S b/sys/powerpc/aim/trap_subr64.S
index db54d4b..64e4ac1 100644
--- a/sys/powerpc/aim/trap_subr64.S
+++ b/sys/powerpc/aim/trap_subr64.S
@@ -295,14 +295,14 @@ cpu_reset:
lis %r3,tocbase@ha
ld %r2,tocbase@l(%r3)
lis %r3,1@l
- bl CNAME(.cpudep_ap_early_bootstrap) /* Set PCPU */
+ bl CNAME(cpudep_ap_early_bootstrap) /* Set PCPU */
nop
- bl CNAME(.pmap_cpu_bootstrap) /* Turn on virtual memory */
+ bl CNAME(pmap_cpu_bootstrap) /* Turn on virtual memory */
nop
- bl CNAME(.cpudep_ap_bootstrap) /* Set up PCPU and stack */
+ bl CNAME(cpudep_ap_bootstrap) /* Set up PCPU and stack */
nop
mr %r1,%r3 /* Use new stack */
- bl CNAME(.machdep_ap_bootstrap) /* And away! */
+ bl CNAME(machdep_ap_bootstrap) /* And away! */
nop
/* Should not be reached */
@@ -510,7 +510,7 @@ trapagain:
lis %r3,tocbase@ha
ld %r2,tocbase@l(%r3)
addi %r3,%r1,48
- bl CNAME(.powerpc_interrupt)
+ bl CNAME(powerpc_interrupt)
nop
.globl CNAME(trapexit) /* backtrace code sentinel */
@@ -538,7 +538,7 @@ CNAME(trapexit):
lis %r3,tocbase@ha
ld %r2,tocbase@l(%r3)
addi %r3,%r1,48
- bl CNAME(.ast)
+ bl CNAME(ast)
nop
.globl CNAME(asttrapexit) /* backtrace code sentinel #2 */
CNAME(asttrapexit):
@@ -587,7 +587,7 @@ dbtrap:
lis %r3,tocbase@ha
ld %r2,tocbase@l(%r3)
addi %r3,%r1,48
- bl CNAME(.db_trap_glue)
+ bl CNAME(db_trap_glue)
nop
or. %r3,%r3,%r3
bne dbleave
diff --git a/sys/powerpc/include/asm.h b/sys/powerpc/include/asm.h
index 90c30cb..0c6b6a5 100644
--- a/sys/powerpc/include/asm.h
+++ b/sys/powerpc/include/asm.h
@@ -37,7 +37,7 @@
#include <sys/cdefs.h>
-#ifdef PIC
+#if defined(PIC) && !defined(__powerpc64__)
#define PIC_PROLOGUE XXX
#define PIC_EPILOGUE XXX
#define PIC_PLT(x) x@plt
@@ -53,11 +53,6 @@
#define PIC_GOT(x) x
#endif
-#ifdef __powerpc64__
-#undef PIC_PLT
-#define PIC_PLT(x) __CONCAT(.,x)
-#endif
-
#define CNAME(csym) csym
#define ASMNAME(asmsym) asmsym
#ifdef __powerpc64__
@@ -73,8 +68,8 @@
#define _ENTRY(x) \
.text; .align 2; .globl x; .section ".opd","aw"; \
.align 3; x: \
- .quad .x,.TOC.@tocbase,0; .previous; \
- .align 4; .globl .x; .type .x,@function; .x:
+ .quad .L.x,.TOC.@tocbase,0; .size x,24; .previous; \
+ .align 4; .type x,@function; .L.x:
#else
#define _ENTRY(x) \
.text; .align 4; .globl x; .type x,@function; x:
diff --git a/sys/powerpc/include/profile.h b/sys/powerpc/include/profile.h
index 6c8185a..a354e38 100644
--- a/sys/powerpc/include/profile.h
+++ b/sys/powerpc/include/profile.h
@@ -83,13 +83,12 @@ __asm( " .text \n" \
" .section \".opd\",\"aw\" \n" \
" .align 3 \n" \
"_mcount: \n" \
- " .quad ._mcount,.TOC.@tocbase,0 \n" \
+ " .quad .L._mcount,.TOC.@tocbase,0\n" \
" .previous \n" \
+ " .type _mcount,@function \n" \
" .align 4 \n" \
- " .globl ._mcount \n" \
- " .type ._mcount,@function \n" \
- "._mcount: \n" \
- " stdu %r1,-(288+120)(%r1) \n" \
+ ".L._mcount: \n" \
+ " stdu %r1,-(288+128)(%r1) \n" \
" std %r3,48(%r1) \n" \
" std %r4,56(%r1) \n" \
" std %r5,64(%r1) \n" \
@@ -103,7 +102,7 @@ __asm( " .text \n" \
" ld %r3,0(%r1) \n" \
" ld %r3,0(%r3) \n" \
" ld %r3,16(%r3) \n" \
- " bl .__mcount \n" \
+ " bl __mcount \n" \
" nop \n" \
" ld %r4,112(%r1) \n" \
" mtlr %r4 \n" \
@@ -115,7 +114,7 @@ __asm( " .text \n" \
" ld %r8,88(%r1) \n" \
" ld %r9,96(%r1) \n" \
" ld %r10,104(%r1) \n" \
- " addi %r1,%r1,(288+120) \n" \
+ " addi %r1,%r1,(288+128) \n" \
" blr \n");
#else
OpenPOWER on IntegriCloud