changeset 22837:134cdf5e0b8a

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
author iveresov
date Thu, 13 Mar 2014 14:55:34 -0700
parents 99c72fb0cfc4
children 7e2e246df4e9
files src/share/vm/c1/c1_LIRGenerator.cpp
diffstat 1 files changed, 1 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- 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),