# HG changeset patch # User iveresov # Date 1285887640 25200 # Node ID 5511edd5d719f3fc9fdd04879482026a3d2c8652 # Parent b2045e0af26e4638c2da5a0e5c1262989a26ded2 6988779: c1_LIRAssembler_x86.cpp crashes VS2010 compiler Summary: The workaround changes the scope of the variable Reviewed-by: phh, ysr, kvn diff -r b2045e0af26e -r 5511edd5d719 src/cpu/x86/vm/c1_LIRAssembler_x86.cpp --- a/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp Fri Sep 24 00:52:04 2010 -0700 +++ b/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp Thu Sep 30 16:00:40 2010 -0700 @@ -1616,8 +1616,7 @@ 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 @@ } // 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);