Mercurial > hg > truffle
diff src/cpu/x86/vm/assembler_x86.cpp @ 5984:fd09f2d8283e
7157141: crash in 64 bit with corrupted oops
Reviewed-by: kvn, iveresov
author | never |
---|---|
date | Mon, 02 Apr 2012 16:05:56 -0700 |
parents | fd8114661503 |
children | 6759698e3140 |
line wrap: on
line diff
--- a/src/cpu/x86/vm/assembler_x86.cpp Fri Mar 30 14:18:17 2012 -0700 +++ b/src/cpu/x86/vm/assembler_x86.cpp Mon Apr 02 16:05:56 2012 -0700 @@ -528,10 +528,12 @@ if (which == end_pc_operand) return ip + (is_64bit ? 8 : 4); // these asserts are somewhat nonsensical #ifndef _LP64 - assert(which == imm_operand || which == disp32_operand, ""); + assert(which == imm_operand || which == disp32_operand, + err_msg("which %d is_64_bit %d ip " INTPTR_FORMAT, which, is_64bit, ip)); #else assert((which == call32_operand || which == imm_operand) && is_64bit || - which == narrow_oop_operand && !is_64bit, ""); + which == narrow_oop_operand && !is_64bit, + err_msg("which %d is_64_bit %d ip " INTPTR_FORMAT, which, is_64bit, ip)); #endif // _LP64 return ip;