# HG changeset patch # User ysr # Date 1256176648 25200 # Node ID b7e7fc226009abd8f14fb33be35a9730934cf007 # Parent d43a7bf8626638948c7c0c447548ee46642f860b# Parent 47ca7aa20d9752c65a094ac6fb8338becbdb698a Merge diff -r d43a7bf86266 -r b7e7fc226009 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 18:57:28 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 b7e7fc226009 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 18:57:28 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 b7e7fc226009 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 18:57:28 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.