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;