Mercurial > hg > graal-jvmci-8
comparison src/share/vm/code/nmethod.cpp @ 2083:7d9caaedafce
6990933: assert(sender_cb) failed: sanity in frame::sender_for_interpreter_frame
Reviewed-by: never
author | twisti |
---|---|
date | Sat, 18 Dec 2010 01:15:01 -0800 |
parents | f95d63e2154a |
children | 5a1e52a439fa |
comparison
equal
deleted
inserted
replaced
2080:c04052fd6ae1 | 2083:7d9caaedafce |
---|---|
809 // Section offsets | 809 // Section offsets |
810 _consts_offset = content_offset() + code_buffer->total_offset_of(code_buffer->consts()); | 810 _consts_offset = content_offset() + code_buffer->total_offset_of(code_buffer->consts()); |
811 _stub_offset = content_offset() + code_buffer->total_offset_of(code_buffer->stubs()); | 811 _stub_offset = content_offset() + code_buffer->total_offset_of(code_buffer->stubs()); |
812 | 812 |
813 // Exception handler and deopt handler are in the stub section | 813 // Exception handler and deopt handler are in the stub section |
814 assert(offsets->value(CodeOffsets::Exceptions) != -1, "must be set"); | |
815 assert(offsets->value(CodeOffsets::Deopt ) != -1, "must be set"); | |
814 _exception_offset = _stub_offset + offsets->value(CodeOffsets::Exceptions); | 816 _exception_offset = _stub_offset + offsets->value(CodeOffsets::Exceptions); |
815 _deoptimize_offset = _stub_offset + offsets->value(CodeOffsets::Deopt); | 817 _deoptimize_offset = _stub_offset + offsets->value(CodeOffsets::Deopt); |
816 if (has_method_handle_invokes()) { | 818 if (offsets->value(CodeOffsets::DeoptMH) != -1) { |
817 _deoptimize_mh_offset = _stub_offset + offsets->value(CodeOffsets::DeoptMH); | 819 _deoptimize_mh_offset = _stub_offset + offsets->value(CodeOffsets::DeoptMH); |
818 } else { | 820 } else { |
819 _deoptimize_mh_offset = -1; | 821 _deoptimize_mh_offset = -1; |
820 } | 822 } |
821 if (offsets->value(CodeOffsets::UnwindHandler) != -1) { | 823 if (offsets->value(CodeOffsets::UnwindHandler) != -1) { |
1907 if (pcs[i].is_method_handle_invoke()) { | 1909 if (pcs[i].is_method_handle_invoke()) { |
1908 set_has_method_handle_invokes(true); | 1910 set_has_method_handle_invokes(true); |
1909 break; | 1911 break; |
1910 } | 1912 } |
1911 } | 1913 } |
1914 assert(has_method_handle_invokes() == (_deoptimize_mh_offset != -1), "must have deopt mh handler"); | |
1912 | 1915 |
1913 int size = count * sizeof(PcDesc); | 1916 int size = count * sizeof(PcDesc); |
1914 assert(scopes_pcs_size() >= size, "oob"); | 1917 assert(scopes_pcs_size() >= size, "oob"); |
1915 memcpy(scopes_pcs_begin(), pcs, size); | 1918 memcpy(scopes_pcs_begin(), pcs, size); |
1916 | 1919 |