src/cpu/sparc/vm/methodHandles_sparc.cpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File
*** old/src/cpu/sparc/vm/methodHandles_sparc.cpp Thu May 20 11:35:58 2010
--- new/src/cpu/sparc/vm/methodHandles_sparc.cpp Thu May 20 11:35:57 2010
*** 373,386 ****
--- 373,386 ----
// Push arguments as if coming from the interpreter.
Register O0_scratch = O0_argslot;
int stackElementSize = Interpreter::stackElementSize;
! // Make space on the stack for the arguments.
__ sub(SP, 4*stackElementSize, SP);
! __ sub(Gargs, 3*stackElementSize, Gargs);
! //__ sub(Lesp, 3*stackElementSize, Lesp);
! // Make space on the stack for the arguments and set Gargs
+ // correctly.
! __ sub(SP, 4*stackElementSize, SP); // Keep stack aligned.
! __ add(SP, (frame::varargs_offset)*wordSize - 1*Interpreter::stackElementSize + STACK_BIAS + BytesPerWord, Gargs);
// void raiseException(int code, Object actual, Object required)
__ st( O1_scratch, Address(Gargs, 2*stackElementSize)); // code
__ st_ptr(O2_scratch, Address(Gargs, 1*stackElementSize)); // actual
__ st_ptr(O3_scratch, Address(Gargs, 0*stackElementSize)); // required
src/cpu/sparc/vm/methodHandles_sparc.cpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File