[K42-discussion] [PATCH] Fix branches which need to use new EXTC macro
Donour Sizemore
donour at cs.unm.edu
Sat Jan 13 07:06:28 EST 2007
Signed-off-by: donour at cs.unm.edu <donour at cs.unm.edu>
---
lib/libc/cobj/sys/arch/powerpc/defaultFuncs.S | 2 +
lib/libc/cobj/sys/arch/powerpc/mediateMethods.S | 4 +-
.../scheduler/arch/powerpc/DispatcherDefaultAsm.S | 40
++++++++++++-----------
lib/libc/sync/arch/powerpc/BLockAsm.S | 8 ++--
lib/libc/usr/arch/powerpc/entry.S | 2 +
5 files changed, 28 insertions(+), 28 deletions(-)
diff --git a/lib/libc/cobj/sys/arch/powerpc/defaultFuncs.S
b/lib/libc/cobj/sys/arch/powerpc/defaultFuncs.S
index eb579ba..0a65427 100644
--- a/lib/libc/cobj/sys/arch/powerpc/defaultFuncs.S
+++ b/lib/libc/cobj/sys/arch/powerpc/defaultFuncs.S
@@ -40,7 +40,7 @@ CODE_ENTRY(defaultFuncCommon)
la r3,STK_PARAM0(r1) // first param: &this
mr r4,r12 // second param: method number
stdu r1,-(STK_SIZE+(13*8))(r1) // push frame
- bl C_TEXT(GenericDefaultFunc) // call generic function
+ bl CXX_EXTC_TEXT(GenericDefaultFunc) // call generic function
la r1,(STK_SIZE+(13*8))(r1) // pop frame
ld r0,STK_LR(r1) // restore link register
mtlr r0
diff --git a/lib/libc/cobj/sys/arch/powerpc/mediateMethods.S
b/lib/libc/cobj/sys/arch/powerpc/mediateMethods.S
index bb9efc1..f5dd576 100644
--- a/lib/libc/cobj/sys/arch/powerpc/mediateMethods.S
+++ b/lib/libc/cobj/sys/arch/powerpc/mediateMethods.S
@@ -69,7 +69,7 @@ CODE_ENTRY(mediateMethodCommon)
ld NVREG,STK_PARAM0(r1) // save mediator ptr to nvreg
la r7,LSTK_DOEPILOG(r1) // fifth param: &doEpilog
stdu r1,-LSTK_SIZE(r1) // push frame
- bl C_TEXT(mediateForwardProlog) // invoke forward prolog
+ bl CXX_EXTC_TEXT(mediateForwardProlog) // invoke forward prolog
la r1,LSTK_SIZE(r1) // pop frame
ld r2,8(r3) // load toc from func desc
ld r3,0(r3) // load ctr from func desc
@@ -134,7 +134,7 @@ CODE_ENTRY(mediateMethodCommon)
ld r2,0(r2) // load new TOC
- bl C_TEXT(mediateForwardEpilog) // invoke forward epilog
+ bl CXX_EXTC_TEXT(mediateForwardEpilog) // invoke forward epilog
la r1,LSTK_SIZE(r1) // pop frame
mtlr r3 // get ra loaded first
ld NVREG,LSTK_NVREG(r1) // restore nvreg also
diff --git a/lib/libc/scheduler/arch/powerpc/DispatcherDefaultAsm.S
b/lib/libc/scheduler/arch/powerpc/DispatcherDefaultAsm.S
index 8d3520a..45a9a5e 100644
--- a/lib/libc/scheduler/arch/powerpc/DispatcherDefaultAsm.S
+++ b/lib/libc/scheduler/arch/powerpc/DispatcherDefaultAsm.S
@@ -169,7 +169,7 @@ C_TEXT_ENTRY(DispatcherDefault_InitThrea
mr r3,r12 // r3 = dispatcher
li r0,0 // clear lr since "call" can't return
mtlr r0
- b C_TEXT(DispatcherDefault_ThreadBase) // "call" ThreadBase
+ b CXX_EXTC_TEXT(DispatcherDefault_ThreadBase) // "call" ThreadBase
// NOTREACHED
InitThread_SuspendCore:
// mimic SuspendCore
@@ -217,7 +217,7 @@ C_TEXT_ENTRY(DispatcherDefault_InitThrea
mr r3,r12 // r3 = dispatcher
li r0,0 // clear lr since "call" can't return
mtlr r0
- b C_TEXT(DispatcherDefault_ThreadBaseGeneral) // "call" ThreadBase
+ b CXX_EXTC_TEXT(DispatcherDefault_ThreadBaseGeneral) // "call" ThreadBase
// NOTREACHED
InitThreadGeneral_SuspendCore:
// mimic SuspendCore
@@ -542,7 +542,7 @@ CODE_ENTRY(TraceCurThread)
DISPATCHER_STACK(r12,r0)
VOLATILE_FRAME_ENTER()
// DispatcherDefault_TraceCurThread();
- bl C_TEXT(DispatcherDefault_TraceCurThread)
+ bl CXX_EXTC_TEXT(DispatcherDefault_TraceCurThread)
VOLATILE_FRAME_RETURN()
CODE_END(TraceCurThread)
#endif // !USE_EXPEDIENT_SCHEDULER || !USE_EXPEDIENT_PPC
@@ -559,7 +559,7 @@ CODE_ENTRY(VolatileEnabledSelfInterrupt)
std r0,XR_disabled(r11)
// SelfInterrupt(dispatcher);
mr r3,r12 // r3 = dispatcher
- bl C_TEXT(DispatcherDefault_SelfInterrupt)
+ bl CXX_EXTC_TEXT(DispatcherDefault_SelfInterrupt)
// Enable()
GET_EXTREGS_AND_DISPATCHER(r11,r12)
li r0,0
@@ -578,7 +578,7 @@ CODE_ENTRY(VolatileSelfInterrupt)
VOLATILE_FRAME_ENTER()
// SelfInterrupt(dispatcher);
mr r3,r12 // r3 = dispatcher
- bl C_TEXT(DispatcherDefault_SelfInterrupt)
+ bl CXX_EXTC_TEXT(DispatcherDefault_SelfInterrupt)
VOLATILE_FRAME_RETURN()
CODE_END(VolatileSelfInterrupt)
@@ -621,7 +621,7 @@ CODE_ENTRY(DeactivateSelf)
bnelr+ // return if no notification requested
VOLATILE_FRAME_ENTER()
mr r3,r11 // r3 = activeCntP
- bl C_TEXT(ActiveThrdCnt_NotifyAdvance)
+ bl CXX_EXTC_TEXT(ActiveThrdCnt_NotifyAdvance)
VOLATILE_FRAME_RETURN()
CODE_END(DeactivateSelf)
@@ -692,7 +692,7 @@ CODE_ENTRY(SandboxUpcall)
// r3 = address of volatile state already
// r4 = address of nonvolatile state in FULLSAVE_FRAME
la r4,FULLSAVE_FRAME_NVS_OFFSET(0)(r1)
- bl C_TEXT(K42Linux_SandboxUpcall)
+ bl CXX_EXTC_TEXT(K42Linux_SandboxUpcall)
FULLSAVE_FRAME_RETURN(0, r0)
CODE_END(SandboxUpcall)
@@ -735,7 +735,7 @@ CODE_ENTRY(DispatcherDefault_InterruptEn
DEBUG_FIXUP(STK_FLOOR,STK_LOCAL1,STK_LOCAL0,r0)
// InterruptYield(dispatcher);
mr r3,r12 // r3 = dispatcher
- bl C_TEXT(DispatcherDefault_InterruptYield)
+ bl CXX_EXTC_TEXT(DispatcherDefault_InterruptYield)
DEBUG_RESTORE(STK_FLOOR,STK_LOCAL1,STK_LOCAL0,r0)
la r3,STK_LOCAL1(r1) // r3 = addr of volatile state on stack
b UserResumeFromMemory
@@ -746,7 +746,7 @@ CODE_ENTRY(DispatcherDefault_InterruptEn
std r0,DD_sandboxShepherd(r12)
// InterruptYield(dispatcher);
mr r3,r12 // r3 = dispatcher
- bl C_TEXT(DispatcherDefault_InterruptYield)
+ bl CXX_EXTC_TEXT(DispatcherDefault_InterruptYield)
b CODE(ReturnToSandbox)
CODE_END(DispatcherDefault_InterruptEntry)
@@ -757,7 +757,7 @@ CODE_ENTRY(NativeTrap)
// r3-r5 already hold trapNumber, trapInfo, and trapAuxInfo
// r6 = address of nonvolatile state in FULLSAVE_FRAME
la r6,FULLSAVE_FRAME_NVS_OFFSET(0)(r1)
- bl C_TEXT(GDBStub_UserTrap)
+ bl CXX_EXTC_TEXT(GDBStub_UserTrap)
FULLSAVE_FRAME_RETURN(0, r0)
CODE_END(NativeTrap)
@@ -769,7 +769,7 @@ CODE_ENTRY(SandboxTrap)
// r6 = address of volatile state already
// r7 = address of nonvolatile state in FULLSAVE_FRAME
la r7,FULLSAVE_FRAME_NVS_OFFSET(0)(r1)
- bl C_TEXT(K42Linux_SandboxTrap)
+ bl CXX_EXTC_TEXT(K42Linux_SandboxTrap)
FULLSAVE_FRAME_RETURN(0, r0)
CODE_END(SandboxTrap)
@@ -783,7 +783,7 @@ CODE_ENTRY(AlignmentHandler)
// r6 = address of volatile state already
// r7 = address of nonvolatile state in FULLSAVE_FRAME
la r7,FULLSAVE_FRAME_NVS_OFFSET(0)(r1)
- bl C_TEXT(fix_alignment)
+ bl CXX_EXTC_TEXT(fix_alignment)
GET_DISPATCHER(r12)
AlignmentHandler_Return:
li r0,0 // clear handler mark
@@ -887,7 +887,7 @@ CODE_ENTRY(DispatcherDefault_PgfltEntry)
// r5 = faultAddr (already)
// r4 = faultInfo (already)
mr r3,r12 // r3 = dispatcher
- bl C_TEXT(DispatcherDefault_PgfltBlock)
+ bl CXX_EXTC_TEXT(DispatcherDefault_PgfltBlock)
DEBUG_RESTORE(STK_FLOOR,STK_LOCAL1,STK_LOCAL0,r0)
la r3,STK_LOCAL1(r1) // r3 = addr of volatile state on stack
b UserResumeFromMemory
@@ -902,7 +902,7 @@ CODE_ENTRY(DispatcherDefault_PgfltEntry)
// r5 = faultAddr (already)
// r4 = faultInfo (already)
mr r3,r12 // r3 = dispatcher
- bl C_TEXT(DispatcherDefault_PgfltBlock)
+ bl CXX_EXTC_TEXT(DispatcherDefault_PgfltBlock)
b CODE(ReturnToSandbox)
CODE_END(DispatcherDefault_PgfltEntry)
@@ -911,7 +911,7 @@ CODE_ENTRY(DispatcherDefault_ProcessInte
std r12,STK_LOCAL0(r1) // save dispatcher
// HandleInterrupts(dispatcher);
mr r3,r12 // r3 = dispatcher
- bl C_TEXT(DispatcherDefault_HandleInterrupts)
+ bl CXX_EXTC_TEXT(DispatcherDefault_HandleInterrupts)
ld r12,STK_LOCAL0(r1) // restore dispatcher
FRAME_RETURN(1, r0)
CODE_END(DispatcherDefault_ProcessInterrupts)
@@ -1205,7 +1205,7 @@ CODE_ENTRY(PPC_CreateThread)
VOLATILE_FRAME_ENTER()
// CurrentThread = CreateThread(dispatcher);
mr r3,r12 // r3 = dispatcher
- bl C_TEXT(DispatcherDefault_CreateThread)
+ bl CXX_EXTC_TEXT(DispatcherDefault_CreateThread)
mr r13,r3
VOLATILE_FRAME_RETURN()
CODE_END(PPC_CreateThread)
@@ -1268,7 +1268,7 @@ CODE_ENTRY(PPC_TraceXObjFct)
VOLATILE_FRAME_ENTER()
// DispatcherDefault_TracePPCXObjFct(PPC_function);
mr r3,r11 // r3 = PPC_function
- bl C_TEXT(DispatcherDefault_TracePPCXObjFct)
+ bl CXX_EXTC_TEXT(DispatcherDefault_TracePPCXObjFct)
VOLATILE_FRAME_RETURN()
CODE_END(PPC_TraceXObjFct)
#endif
@@ -1339,7 +1339,7 @@ #define SVC_STK_SIZE (STK_SIZE-STK_FLOOR
bl CODE(ActivateSelf)
// rc = SVC64(a0, a1, a2, a3, a4, a5, stkPtr, svcNum);
// syscall parameters are already in r3-r8, stkPtr in r9, svcNum in r10
- bl C_TEXT(K42Linux_SVC64)
+ bl CXX_EXTC_TEXT(K42Linux_SVC64)
bl CODE(DeactivateSelf)
GET_EXTREGS_AND_DISPATCHER(r11,r12)
// Disable();
@@ -1457,7 +1457,7 @@ #define SVC_STK_SIZE (STK_SIZE-STK_FLOOR
bl CODE(ActivateSelf)
// rc = SVC32(a0, a1, a2, a3, a4, a5, stkPtr, svcNum);
// syscall parameters are already in r3-r8, stkPtr in r9, svcNum in r10
- bl C_TEXT(K42Linux_SVC32)
+ bl CXX_EXTC_TEXT(K42Linux_SVC32)
bl CODE(DeactivateSelf)
GET_EXTREGS_AND_DISPATCHER(r11,r12)
// Disable();
@@ -1593,7 +1593,7 @@ #define SVC_STK_SIZE (STK_SIZE-STK_FLOOR
bnel- CODE(VolatileEnabledSelfInterrupt)
// rc = SVC64(a0, a1, a2, a3, a4, a5, stkPtr, svcNum);
// syscall parameters are already in r3-r8, stkPtr in r9, svcNum in r10
- bl C_TEXT(K42Linux_SVC64)
+ bl CXX_EXTC_TEXT(K42Linux_SVC64)
/*
* Restore state and return to caller.
*/
diff --git a/lib/libc/sync/arch/powerpc/BLockAsm.S
b/lib/libc/sync/arch/powerpc/BLockAsm.S
index fd9729d..3492ff5 100644
--- a/lib/libc/sync/arch/powerpc/BLockAsm.S
+++ b/lib/libc/sync/arch/powerpc/BLockAsm.S
@@ -34,7 +34,7 @@ C_TEXT_ENTRY(BitBLock_Acquire)
and. r0,r11,r4 # if ((current & lockBitMask) == 0)
beqlr+ # return
li r6,0 # datap = NULL (for SlowAcquireAndFetch)
- b C_TEXT(BitBLock_SlowAcquireAndFetch)
+ b CXX_EXTC_TEXT(BitBLock_SlowAcquireAndFetch)
C_TEXT_END(BitBLock_Acquire)
/*
@@ -53,7 +53,7 @@ C_TEXT_ENTRY(BitBLock_AcquireAndFetch)
std r11,0(r6) # *datap = current (speculative)
and. r0,r11,r4 # if ((current & lockBitMask) == 0)
beqlr+ # return
- b C_TEXT(BitBLock_SlowAcquireAndFetch)
+ b CXX_EXTC_TEXT(BitBLock_SlowAcquireAndFetch)
C_TEXT_END(BitBLock_AcquireAndFetch)
/*
@@ -114,7 +114,7 @@ C_TEXT_ENTRY(BitBLock_Release)
Release_Slow:
andc r6,r11,r4 # data = current & ~lockBitMask
andc r6,r6,r5 # data = data & ~waitBitMask
- b C_TEXT(BitBLock_SlowStoreAndRelease)
+ b CXX_EXTC_TEXT(BitBLock_SlowStoreAndRelease)
C_TEXT_END(BitBLock_Release)
/*
@@ -133,5 +133,5 @@ C_TEXT_ENTRY(BitBLock_StoreAndRelease)
bne- StoreAndRelease_Loop # try again if store failed
blr # return
StoreAndRelease_Slow:
- b C_TEXT(BitBLock_SlowStoreAndRelease)
+ b CXX_EXTC_TEXT(BitBLock_SlowStoreAndRelease)
C_TEXT_END(BitBLock_StoreAndRelease)
diff --git a/lib/libc/usr/arch/powerpc/entry.S
b/lib/libc/usr/arch/powerpc/entry.S
index 8ec2537..7983e00 100644
--- a/lib/libc/usr/arch/powerpc/entry.S
+++ b/lib/libc/usr/arch/powerpc/entry.S
@@ -54,7 +54,7 @@ CODE_ENTRY(ProgExec0_ForkChildStart)
addis r1,r1,SHIFT_R(ProgExec_THR_STK_SIZE,16)
li r4, 0
stdu r4,-STK_SIZE(r1)
- bl C_TEXT(ProgExec_ForkChild)
+ bl CXX_EXTC_TEXT(ProgExec_ForkChild)
/* NOTREACHED */
tw 4,0,0
CODE_END(ProgExec0_ForkChildStart)
--
1.4.1.1
More information about the K42-discussion
mailing list