Mercurial > hg > truffle
comparison src/share/vm/ci/ciInstanceKlass.hpp @ 13021:4d3575d37a07
8026735: Stream tests throw java.lang.IncompatibleClassChangeError
Summary: Put a band-aid to disable CHA-based inlining for interfaces with default methods in C1
Reviewed-by: kvn, twisti
author | iveresov |
---|---|
date | Wed, 30 Oct 2013 22:55:11 -0700 |
parents | d13d7aba8c12 |
children | 096c224171c4 de6a9e811145 |
comparison
equal
deleted
inserted
replaced
13020:60a32bb8ff99 | 13021:4d3575d37a07 |
---|---|
50 InstanceKlass::ClassState _init_state; // state of class | 50 InstanceKlass::ClassState _init_state; // state of class |
51 bool _is_shared; | 51 bool _is_shared; |
52 bool _has_finalizer; | 52 bool _has_finalizer; |
53 bool _has_subklass; | 53 bool _has_subklass; |
54 bool _has_nonstatic_fields; | 54 bool _has_nonstatic_fields; |
55 bool _has_default_methods; | |
55 | 56 |
56 ciFlags _flags; | 57 ciFlags _flags; |
57 jint _nonstatic_field_size; | 58 jint _nonstatic_field_size; |
58 jint _nonstatic_oop_map_size; | 59 jint _nonstatic_oop_map_size; |
59 | 60 |
169 } else { | 170 } else { |
170 return 2; | 171 return 2; |
171 } | 172 } |
172 } | 173 } |
173 | 174 |
175 bool has_default_methods() { | |
176 assert(is_loaded(), "must be loaded"); | |
177 return _has_default_methods; | |
178 } | |
179 | |
174 ciInstanceKlass* get_canonical_holder(int offset); | 180 ciInstanceKlass* get_canonical_holder(int offset); |
175 ciField* get_field_by_offset(int field_offset, bool is_static); | 181 ciField* get_field_by_offset(int field_offset, bool is_static); |
176 ciField* get_field_by_name(ciSymbol* name, ciSymbol* signature, bool is_static); | 182 ciField* get_field_by_name(ciSymbol* name, ciSymbol* signature, bool is_static); |
177 | 183 |
178 GrowableArray<ciField*>* non_static_fields(); | 184 GrowableArray<ciField*>* non_static_fields(); |