# HG changeset patch # User iveresov # Date 1394747734 25200 # Node ID 134cdf5e0b8a4a4993748802e2ca90a81cddcbc2 # Parent 99c72fb0cfc437c3fc05d7b36179c8d34d1fc95b 8037140: C1: Incorrect argument type used for SharedRuntime::OSR_migration_end in LIRGenerator::do_Goto Summary: Fix the type of osrBuffer parameter to depend on bitness Reviewed-by: kvn, twisti diff -r 99c72fb0cfc4 -r 134cdf5e0b8a src/share/vm/c1/c1_LIRGenerator.cpp --- a/src/share/vm/c1/c1_LIRGenerator.cpp Fri Feb 06 09:15:06 2015 -0800 +++ b/src/share/vm/c1/c1_LIRGenerator.cpp Thu Mar 13 14:55:34 2014 -0700 @@ -2561,7 +2561,7 @@ // need to free up storage used for OSR entry point LIR_Opr osrBuffer = block()->next()->operand(); BasicTypeList signature; - signature.append(T_INT); + signature.append(NOT_LP64(T_INT) LP64_ONLY(T_LONG)); // pass a pointer to osrBuffer CallingConvention* cc = frame_map()->c_calling_convention(&signature); __ move(osrBuffer, cc->args()->at(0)); __ call_runtime_leaf(CAST_FROM_FN_PTR(address, SharedRuntime::OSR_migration_end),