mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-21 03:24:38 +02:00
7180769: assert(tboth->klass_is_exact()) failed: klass should be exact
Use class exactness as part of the condition for class compare optimization instead of assert. Reviewed-by: twisti, roland
This commit is contained in:
parent
3511594d3c
commit
761e0b221d
1 changed files with 2 additions and 2 deletions
|
@ -1278,9 +1278,9 @@ void Parse::sharpen_type_after_if(BoolTest::mask btest,
|
|||
// or the narrowOop equivalent.
|
||||
const Type* obj_type = _gvn.type(obj);
|
||||
const TypeOopPtr* tboth = obj_type->join(con_type)->isa_oopptr();
|
||||
if (tboth != NULL && tboth != obj_type && tboth->higher_equal(obj_type)) {
|
||||
if (tboth != NULL && tboth->klass_is_exact() && tboth != obj_type &&
|
||||
tboth->higher_equal(obj_type)) {
|
||||
// obj has to be of the exact type Foo if the CmpP succeeds.
|
||||
assert(tboth->klass_is_exact(), "klass should be exact");
|
||||
int obj_in_map = map()->find_edge(obj);
|
||||
JVMState* jvms = this->jvms();
|
||||
if (obj_in_map >= 0 &&
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue