--- old/src/cpu/x86/vm/c1_LIRGenerator_x86.cpp 2014-01-16 13:47:53.000000000 -0800 +++ new/src/cpu/x86/vm/c1_LIRGenerator_x86.cpp 2014-01-16 13:47:53.000000000 -0800 @@ -941,6 +941,8 @@ case vmIntrinsics::_updateCRC32: { LIRItem crc(x->argument_at(0), this); LIRItem val(x->argument_at(1), this); + // val is destroyed by update_crc32 + val.set_destroys_register(); crc.load_item(); val.load_item(); __ update_crc32(crc.result(), val.result(), result);