Mercurial > hg > truffle
diff src/share/vm/classfile/verifier.hpp @ 20242:d14a18794c90
8051012: Regression in verifier for <init> method call from inside of a branch
Summary: Fix stackmap matching for branches.
Reviewed-by: coleenp, lfoltan, acorn
author | hseigel |
---|---|
date | Sat, 02 Aug 2014 16:28:59 -0400 |
parents | f73af4455d7d |
children | 077483254bf6 |
line wrap: on
line diff
--- a/src/share/vm/classfile/verifier.hpp Thu Jan 16 13:25:25 2014 -0800 +++ b/src/share/vm/classfile/verifier.hpp Sat Aug 02 16:28:59 2014 -0400 @@ -258,9 +258,6 @@ ErrorContext _error_context; // contains information about an error - // Used to detect illegal jumps over calls to super() nd this() in ctors. - int32_t _furthest_jump; - void verify_method(methodHandle method, TRAPS); char* generate_code_data(methodHandle m, u4 code_length, TRAPS); void verify_exception_handler_table(u4 code_length, char* code_data, @@ -407,19 +404,6 @@ TypeOrigin ref_ctx(const char* str, TRAPS); - // Keep track of the furthest branch done in a method to make sure that - // there are no branches over calls to super() or this() from inside of - // a constructor. - int32_t furthest_jump() { return _furthest_jump; } - - void set_furthest_jump(int32_t target) { - _furthest_jump = target; - } - - void update_furthest_jump(int32_t target) { - if (target > _furthest_jump) _furthest_jump = target; - } - }; inline int ClassVerifier::change_sig_to_verificationType(