diff --git a/src/compile-powerpc.S b/src/compile-powerpc.S index b732f893ea..b1cd0ba928 100644 --- a/src/compile-powerpc.S +++ b/src/compile-powerpc.S @@ -24,12 +24,12 @@ # define GLOBAL(x) x #endif -#define THREAD_STACK 2152 -#define THREAD_CONTINUATION 2156 +#define THREAD_STACK 2144 +#define THREAD_CONTINUATION 2148 #define THREAD_EXCEPTION 44 -#define THREAD_EXCEPTION_STACK_ADJUSTMENT 2160 -#define THREAD_EXCEPTION_OFFSET 2164 -#define THREAD_EXCEPTION_HANDLER 2168 +#define THREAD_EXCEPTION_STACK_ADJUSTMENT 2152 +#define THREAD_EXCEPTION_OFFSET 2156 +#define THREAD_EXCEPTION_HANDLER 2160 #define CONTINUATION_NEXT 4 #define CONTINUATION_ADDRESS 16 diff --git a/src/compile.cpp b/src/compile.cpp index 53e31367f1..83c4532a47 100644 --- a/src/compile.cpp +++ b/src/compile.cpp @@ -2662,6 +2662,12 @@ makeNew64(Thread* t, object class_) return reinterpret_cast(makeNew(t, class_)); } +uint64_t +getJClass64(Thread* t, object class_) +{ + return reinterpret_cast(getJClass(t, class_)); +} + void gcIfNecessary(MyThread* t) { @@ -4401,7 +4407,7 @@ compile(MyThread* t, Frame* initialFrame, unsigned ip, frame->pushObject (c->call (c->constant - (getThunk(t, getJClassThunk), Compiler::AddressType), + (getThunk(t, getJClass64Thunk), Compiler::AddressType), 0, frame->trace(0, 0), BytesPerWord, diff --git a/src/thunks.cpp b/src/thunks.cpp index 9de7aaf263..4d863ecca4 100644 --- a/src/thunks.cpp +++ b/src/thunks.cpp @@ -48,5 +48,5 @@ THUNK(instanceOf64) THUNK(makeNewGeneral64) THUNK(makeNew64) THUNK(set) -THUNK(getJClass) +THUNK(getJClass64) THUNK(gcIfNecessary)