Mercurial > hg > truffle
comparison src/cpu/sparc/vm/methodHandles_sparc.cpp @ 3336:2e038ad0c1d0
7009361: JSR 292 Invalid value on stack on solaris-sparc with -Xcomp
Reviewed-by: kvn, twisti
author | never |
---|---|
date | Mon, 02 May 2011 18:53:37 -0700 |
parents | d934e4b931e9 |
children | 8d944991dbf9 |
comparison
equal
deleted
inserted
replaced
3335:49d67a090fe2 | 3336:2e038ad0c1d0 |
---|---|
348 | 348 |
349 | 349 |
350 #ifndef PRODUCT | 350 #ifndef PRODUCT |
351 extern "C" void print_method_handle(oop mh); | 351 extern "C" void print_method_handle(oop mh); |
352 void trace_method_handle_stub(const char* adaptername, | 352 void trace_method_handle_stub(const char* adaptername, |
353 oopDesc* mh) { | 353 oopDesc* mh, |
354 printf("MH %s mh="INTPTR_FORMAT"\n", adaptername, (intptr_t) mh); | 354 intptr_t* saved_sp) { |
355 tty->print_cr("MH %s mh="INTPTR_FORMAT " saved_sp=" INTPTR_FORMAT, adaptername, (intptr_t) mh, saved_sp); | |
355 print_method_handle(mh); | 356 print_method_handle(mh); |
356 } | 357 } |
357 void MethodHandles::trace_method_handle(MacroAssembler* _masm, const char* adaptername) { | 358 void MethodHandles::trace_method_handle(MacroAssembler* _masm, const char* adaptername) { |
358 if (!TraceMethodHandles) return; | 359 if (!TraceMethodHandles) return; |
359 BLOCK_COMMENT("trace_method_handle {"); | 360 BLOCK_COMMENT("trace_method_handle {"); |
360 // save: Gargs, O5_savedSP | 361 // save: Gargs, O5_savedSP |
361 __ save_frame(16); | 362 __ save_frame(16); |
362 __ set((intptr_t) adaptername, O0); | 363 __ set((intptr_t) adaptername, O0); |
363 __ mov(G3_method_handle, O1); | 364 __ mov(G3_method_handle, O1); |
365 __ mov(I5_savedSP, O2); | |
364 __ mov(G3_method_handle, L3); | 366 __ mov(G3_method_handle, L3); |
365 __ mov(Gargs, L4); | 367 __ mov(Gargs, L4); |
366 __ mov(G5_method_type, L5); | 368 __ mov(G5_method_type, L5); |
367 __ call_VM_leaf(L7, CAST_FROM_FN_PTR(address, trace_method_handle_stub)); | 369 __ call_VM_leaf(L7, CAST_FROM_FN_PTR(address, trace_method_handle_stub)); |
368 | 370 |