# HG changeset patch # User never # Date 1220479020 25200 # Node ID 3a26e9e4be71d95d53a77bef5c0f887504ba03df # Parent a10808f5a4b571b2117e6399b8818e3fe0ada888 6744422: incorrect handling of -1 in set_jump_destination Reviewed-by: rasbold diff -r a10808f5a4b5 -r 3a26e9e4be71 src/cpu/x86/vm/nativeInst_x86.hpp --- a/src/cpu/x86/vm/nativeInst_x86.hpp Tue Sep 02 08:30:41 2008 -0700 +++ b/src/cpu/x86/vm/nativeInst_x86.hpp Wed Sep 03 14:57:00 2008 -0700 @@ -391,6 +391,9 @@ 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