mirror of
https://github.com/openjdk/jdk.git
synced 2026-06-01 00:02:37 +00:00
8227637: Adjust Shenandoah C2 verifier to recognize IN_NATIVE barriers
Reviewed-by: roland
This commit is contained in:
parent
2169215b29
commit
02a90281ec
@ -208,7 +208,10 @@ bool ShenandoahBarrierC2Support::verify_helper(Node* in, Node_Stack& phis, Vecto
|
||||
if (trace) {
|
||||
tty->print("Found raw LoadP (OSR argument?)");
|
||||
}
|
||||
} else if (in->Opcode() == Op_ShenandoahLoadReferenceBarrier) {
|
||||
} else if (in->Opcode() == Op_ShenandoahLoadReferenceBarrier ||
|
||||
(in->Opcode() == Op_Proj &&
|
||||
in->in(0)->Opcode() == Op_CallLeaf &&
|
||||
strcmp(in->in(0)->as_Call()->_name, "ShenandoahRuntime::oop_load_from_native_barrier") == 0)) {
|
||||
if (t == ShenandoahOopStore) {
|
||||
uint i = 0;
|
||||
for (; i < phis.size(); i++) {
|
||||
@ -527,7 +530,7 @@ void ShenandoahBarrierC2Support::verify(RootNode* root) {
|
||||
if (!verify_helper(n->in(TypeFunc::Parms), phis, visited, ShenandoahStore, trace, barriers_used)) {
|
||||
report_verify_failure("Shenandoah verification: _fill should have barriers", n);
|
||||
}
|
||||
} else if (!strcmp(call->_name, "shenandoah_wb_pre")) {
|
||||
} else if (!strcmp(call->_name, "shenandoah_wb_pre") || !strcmp(call->_name, "ShenandoahRuntime::oop_load_from_native_barrier")) {
|
||||
// skip
|
||||
} else {
|
||||
const int calls_len = sizeof(calls) / sizeof(calls[0]);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user