< prev index next >
src/cpu/sparc/vm/c1_LIRAssembler_sparc.cpp
Print this page
rev 9443 : 8233019: java.lang.Class.isPrimitive() (C1) returns wrong result if Klass* is aligned to 32bit
Reviewed-by: mdoerr, dlong, aph
@@ -1679,10 +1679,22 @@
__ cmp(opr1->as_register(), O7);
}
}
break;
+ case T_METADATA:
+ // We only need, for now, comparison with NULL for metadata.
+ { assert(condition == lir_cond_equal || condition == lir_cond_notEqual, "oops");
+ Metadata* m = opr2->as_constant_ptr()->as_metadata();
+ if (m == NULL) {
+ __ cmp(opr1->as_register(), 0);
+ } else {
+ ShouldNotReachHere();
+ }
+ }
+ break;
+
default:
ShouldNotReachHere();
break;
}
} else {
< prev index next >