mirror of
https://github.com/corda/corda.git
synced 2025-06-01 15:10:54 +00:00
update PowerPC assembly Thread field offsets
The new Thread::defaultHeap declaration has increased the offset of all the fields following it. This commit also makes vmInvoke_returnAddress global so it can be refered to from compile.cpp.
This commit is contained in:
parent
2d6a179bf2
commit
74930d75e7
@ -24,12 +24,12 @@
|
|||||||
# define GLOBAL(x) x
|
# define GLOBAL(x) x
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define THREAD_STACK 108
|
#define THREAD_STACK 2152
|
||||||
#define THREAD_CONTINUATION 112
|
#define THREAD_CONTINUATION 2156
|
||||||
#define THREAD_EXCEPTION 44
|
#define THREAD_EXCEPTION 44
|
||||||
#define THREAD_EXCEPTION_STACK_ADJUSTMENT 116
|
#define THREAD_EXCEPTION_STACK_ADJUSTMENT 2160
|
||||||
#define THREAD_EXCEPTION_OFFSET 120
|
#define THREAD_EXCEPTION_OFFSET 2164
|
||||||
#define THREAD_EXCEPTION_HANDLER 124
|
#define THREAD_EXCEPTION_HANDLER 2168
|
||||||
|
|
||||||
#define CONTINUATION_NEXT 4
|
#define CONTINUATION_NEXT 4
|
||||||
#define CONTINUATION_ADDRESS 16
|
#define CONTINUATION_ADDRESS 16
|
||||||
@ -104,7 +104,8 @@ LOCAL(vmInvoke_argumentTest):
|
|||||||
mtctr r4
|
mtctr r4
|
||||||
bctrl
|
bctrl
|
||||||
|
|
||||||
LOCAL(vmInvoke_returnAddress):
|
.globl GLOBAL(vmInvoke_returnAddress)
|
||||||
|
GLOBAL(vmInvoke_returnAddress):
|
||||||
// restore stack pointer
|
// restore stack pointer
|
||||||
lwz r1,0(r1)
|
lwz r1,0(r1)
|
||||||
|
|
||||||
@ -150,7 +151,7 @@ LOCAL(vmInvoke_continuationTest):
|
|||||||
|
|
||||||
LOCAL(vmInvoke_getPC):
|
LOCAL(vmInvoke_getPC):
|
||||||
mflr r10
|
mflr r10
|
||||||
la r10,lo16(LOCAL(vmInvoke_returnAddress)-LOCAL(vmInvoke_getPC))(r10)
|
la r10,lo16(GLOBAL(vmInvoke_returnAddress)-LOCAL(vmInvoke_getPC))(r10)
|
||||||
stwx r10,r1,r7
|
stwx r10,r1,r7
|
||||||
|
|
||||||
lwz r7,CONTINUATION_FRAME_POINTER_OFFSET(r5)
|
lwz r7,CONTINUATION_FRAME_POINTER_OFFSET(r5)
|
||||||
@ -283,7 +284,7 @@ LOCAL(vmJumpAndInvoke_argumentTest):
|
|||||||
|
|
||||||
LOCAL(vmJumpAndInvoke_getPC):
|
LOCAL(vmJumpAndInvoke_getPC):
|
||||||
mflr r10
|
mflr r10
|
||||||
la r10,lo16(LOCAL(vmInvoke_returnAddress)-LOCAL(vmJumpAndInvoke_getPC))(r10)
|
la r10,lo16(GLOBAL(vmInvoke_returnAddress)-LOCAL(vmJumpAndInvoke_getPC))(r10)
|
||||||
mtlr r10
|
mtlr r10
|
||||||
|
|
||||||
mtctr r4
|
mtctr r4
|
||||||
|
Loading…
x
Reference in New Issue
Block a user