Mercurial > hg > truffle
comparison src/share/vm/code/nmethod.hpp @ 2321:1b4e6a5d98e0
7012914: JSR 292 MethodHandlesTest C1: frame::verify_return_pc(return_address) failed: must be a return pc
Reviewed-by: never, bdelsart
author | twisti |
---|---|
date | Mon, 28 Feb 2011 06:07:12 -0800 |
parents | bf8517f4e4d0 |
children | 3d5a546351ef 46a56fac55c7 |
comparison
equal
deleted
inserted
replaced
2320:41d4973cf100 | 2321:1b4e6a5d98e0 |
---|---|
32 // exception/pc/handler information. | 32 // exception/pc/handler information. |
33 | 33 |
34 class ExceptionCache : public CHeapObj { | 34 class ExceptionCache : public CHeapObj { |
35 friend class VMStructs; | 35 friend class VMStructs; |
36 private: | 36 private: |
37 static address _unwind_handler; | |
38 enum { cache_size = 16 }; | 37 enum { cache_size = 16 }; |
39 klassOop _exception_type; | 38 klassOop _exception_type; |
40 address _pc[cache_size]; | 39 address _pc[cache_size]; |
41 address _handler[cache_size]; | 40 address _handler[cache_size]; |
42 int _count; | 41 int _count; |
60 | 59 |
61 address match(Handle exception, address pc); | 60 address match(Handle exception, address pc); |
62 bool match_exception_with_space(Handle exception) ; | 61 bool match_exception_with_space(Handle exception) ; |
63 address test_address(address addr); | 62 address test_address(address addr); |
64 bool add_address_and_handler(address addr, address handler) ; | 63 bool add_address_and_handler(address addr, address handler) ; |
65 | |
66 static address unwind_handler() { return _unwind_handler; } | |
67 }; | 64 }; |
68 | 65 |
69 | 66 |
70 // cache pc descs found in earlier inquiries | 67 // cache pc descs found in earlier inquiries |
71 class PcDescCache VALUE_OBJ_CLASS_SPEC { | 68 class PcDescCache VALUE_OBJ_CLASS_SPEC { |