6744422: incorrect handling of -1 in set_jump_destination

Reviewed-by: rasbold
This commit is contained in:
Tom Rodriguez 2008-09-03 14:57:00 -07:00
parent b6b71da22d
commit 29440e8636

View File

@ -391,6 +391,9 @@ class NativeJump: public NativeInstruction {
void set_jump_destination(address dest) {
intptr_t val = dest - next_instruction_address();
if (dest == (address) -1) {
val = -5; // jump to self
}
#ifdef AMD64
assert((labs(val) & 0xFFFFFFFF00000000) == 0 || dest == (address)-1, "must be 32bit offset or -1");
#endif // AMD64