Fri, 23 Dec 2011 09:36:23 +0100
7123253: C1: in store check code, usage of registers may be incorrect
Summary: fix usage of input register in assembly code for store check.
Reviewed-by: never
src/share/vm/c1/c1_LIR.cpp | file | annotate | diff | comparison | revisions |
1.1 --- a/src/share/vm/c1/c1_LIR.cpp Thu Dec 22 10:55:53 2011 +0100 1.2 +++ b/src/share/vm/c1/c1_LIR.cpp Fri Dec 23 09:36:23 2011 +0100 1.3 @@ -854,6 +854,9 @@ 1.4 if (opTypeCheck->_info_for_exception) do_info(opTypeCheck->_info_for_exception); 1.5 if (opTypeCheck->_info_for_patch) do_info(opTypeCheck->_info_for_patch); 1.6 if (opTypeCheck->_object->is_valid()) do_input(opTypeCheck->_object); 1.7 + if (op->code() == lir_store_check && opTypeCheck->_object->is_valid()) { 1.8 + do_temp(opTypeCheck->_object); 1.9 + } 1.10 if (opTypeCheck->_array->is_valid()) do_input(opTypeCheck->_array); 1.11 if (opTypeCheck->_tmp1->is_valid()) do_temp(opTypeCheck->_tmp1); 1.12 if (opTypeCheck->_tmp2->is_valid()) do_temp(opTypeCheck->_tmp2);