# HG changeset patch # User ysr # Date 1256177634 25200 # Node ID aa83c08db78cceaa9e4825e53ce917464fa5008a # Parent d43a7bf8626638948c7c0c447548ee46642f860b# Parent 47ca7aa20d9752c65a094ac6fb8338becbdb698a Merge diff -r d43a7bf86266 -r aa83c08db78c src/cpu/sparc/vm/interp_masm_sparc.cpp --- a/src/cpu/sparc/vm/interp_masm_sparc.cpp Wed Oct 21 12:35:50 2009 -0700 +++ b/src/cpu/sparc/vm/interp_masm_sparc.cpp Wed Oct 21 19:13:54 2009 -0700 @@ -1696,6 +1696,9 @@ void InterpreterMacroAssembler::record_klass_in_profile_helper( Register receiver, Register scratch, int start_row, Label& done) { + if (TypeProfileWidth == 0) + return; + int last_row = VirtualCallData::row_limit() - 1; assert(start_row <= last_row, "must be work left to do"); // Test this row for both the receiver and for null. diff -r d43a7bf86266 -r aa83c08db78c src/cpu/x86/vm/interp_masm_x86_32.cpp --- a/src/cpu/x86/vm/interp_masm_x86_32.cpp Wed Oct 21 12:35:50 2009 -0700 +++ b/src/cpu/x86/vm/interp_masm_x86_32.cpp Wed Oct 21 19:13:54 2009 -0700 @@ -1262,6 +1262,9 @@ Register receiver, Register mdp, Register reg2, int start_row, Label& done) { + if (TypeProfileWidth == 0) + return; + int last_row = VirtualCallData::row_limit() - 1; assert(start_row <= last_row, "must be work left to do"); // Test this row for both the receiver and for null. diff -r d43a7bf86266 -r aa83c08db78c src/cpu/x86/vm/interp_masm_x86_64.cpp --- a/src/cpu/x86/vm/interp_masm_x86_64.cpp Wed Oct 21 12:35:50 2009 -0700 +++ b/src/cpu/x86/vm/interp_masm_x86_64.cpp Wed Oct 21 19:13:54 2009 -0700 @@ -1272,6 +1272,9 @@ Register receiver, Register mdp, Register reg2, int start_row, Label& done) { + if (TypeProfileWidth == 0) + return; + int last_row = VirtualCallData::row_limit() - 1; assert(start_row <= last_row, "must be work left to do"); // Test this row for both the receiver and for null.