From f221461bcd18c286ce8e6bf71352e30bcbca5384 Mon Sep 17 00:00:00 2001 From: iveresov Date: Thu, 30 Sep 2010 16:00:40 -0700 Subject: [PATCH] 6988779: c1_LIRAssembler_x86.cpp crashes VS2010 compiler Summary: The workaround changes the scope of the variable Reviewed-by: phh, ysr, kvn --- src/cpu/x86/vm/c1_LIRAssembler_x86.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp b/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp index 7e1be01c3..3af7df224 100644 --- a/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp +++ b/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp @@ -1616,8 +1616,7 @@ void LIR_Assembler::emit_alloc_array(LIR_OpAllocArray* op) { void LIR_Assembler::type_profile_helper(Register mdo, ciMethodData *md, ciProfileData *data, Register recv, Label* update_done) { - uint i; - for (i = 0; i < ReceiverTypeData::row_limit(); i++) { + for (uint i = 0; i < ReceiverTypeData::row_limit(); i++) { Label next_test; // See if the receiver is receiver[n]. __ cmpptr(recv, Address(mdo, md->byte_offset_of_slot(data, ReceiverTypeData::receiver_offset(i)))); @@ -1629,7 +1628,7 @@ void LIR_Assembler::type_profile_helper(Register mdo, } // Didn't find receiver; find next empty slot and fill it in - for (i = 0; i < ReceiverTypeData::row_limit(); i++) { + for (uint i = 0; i < ReceiverTypeData::row_limit(); i++) { Label next_test; Address recv_addr(mdo, md->byte_offset_of_slot(data, ReceiverTypeData::receiver_offset(i))); __ cmpptr(recv_addr, (intptr_t)NULL_WORD); -- GitLab