# HG changeset patch # User Thomas Wuerthinger # Date 1293043659 -3600 # Node ID 98dbef29f10be4b82f5f4d73f574d98e2830388e # Parent b1f2e875300a58e9b47c92b07ed385f8cba26349 Important fix for exception unwind method entry offset (regression introduced during update to latest OpenJDK). Hard to find bug => should add a regression test for wrong offsets. diff -r b1f2e875300a -r 98dbef29f10b src/share/vm/code/nmethod.cpp --- a/src/share/vm/code/nmethod.cpp Tue Dec 21 17:40:10 2010 +0100 +++ b/src/share/vm/code/nmethod.cpp Wed Dec 22 19:47:39 2010 +0100 @@ -794,11 +794,11 @@ // Exception handler and deopt handler are in the stub section if (UseC1X) { - // c1x produces no stub section - _exception_offset = _stub_offset + offsets->value(CodeOffsets::Exceptions); - _deoptimize_offset = _stub_offset + offsets->value(CodeOffsets::Deopt); + // c1x produces no (!) stub section + _exception_offset = code_offset() + offsets->value(CodeOffsets::Exceptions); + _deoptimize_offset = code_offset() + offsets->value(CodeOffsets::Deopt); if (has_method_handle_invokes()) { - _deoptimize_mh_offset = _stub_offset + offsets->value(CodeOffsets::DeoptMH); + _deoptimize_mh_offset = code_offset() + offsets->value(CodeOffsets::DeoptMH); } else { _deoptimize_mh_offset = -1; }