8248467: C2: compiler/intrinsics/object/TestClone fails with -XX:+VerifyGraphEdges
Fix assert by taking MemBarNodes into account whose precedence edge can be NULL. Reviewed-by: kvn, thartmann
This commit is contained in:
parent
73c75ed838
commit
4f99e1fb11
@ -2141,8 +2141,9 @@ void Node::verify_edges(Unique_Node_List &visited) {
|
||||
}
|
||||
assert( cnt == 0,"Mismatched edge count.");
|
||||
} else if (n == NULL) {
|
||||
assert(i >= req() || i == 0 || is_Region() || is_Phi() || is_ArrayCopy()
|
||||
|| (is_Unlock() && i == req()-1), "only region, phi, arraycopy or unlock nodes have null data edges");
|
||||
assert(i >= req() || i == 0 || is_Region() || is_Phi() || is_ArrayCopy() || (is_Unlock() && i == req()-1)
|
||||
|| (is_MemBar() && i == 5), // the precedence edge to a membar can be removed during macro node expansion
|
||||
"only region, phi, arraycopy, unlock or membar nodes have null data edges");
|
||||
} else {
|
||||
assert(n->is_top(), "sanity");
|
||||
// Nothing to check.
|
||||
|
@ -23,7 +23,7 @@
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @bug 8033626 8246453
|
||||
* @bug 8033626 8246453 8248467
|
||||
* @summary assert(ex_map->jvms()->same_calls_as(_exceptions->jvms())) failed: all collected exceptions must come from the same place
|
||||
* @modules java.base/jdk.internal.misc
|
||||
* @library /test/lib
|
||||
@ -35,6 +35,10 @@
|
||||
* -XX:+IgnoreUnrecognizedVMOptions -XX:+StressReflectiveCode
|
||||
* -XX:CompileCommand=compileonly,compiler.intrinsics.object.TestClone::test*
|
||||
* compiler.intrinsics.object.TestClone
|
||||
* @run main/othervm -XX:-TieredCompilation -Xbatch
|
||||
* -XX:+IgnoreUnrecognizedVMOptions -XX:+StressReflectiveCode -XX:+VerifyGraphEdges
|
||||
* -XX:CompileCommand=compileonly,compiler.intrinsics.object.TestClone::test*
|
||||
* compiler.intrinsics.object.TestClone
|
||||
*/
|
||||
|
||||
package compiler.intrinsics.object;
|
||||
|
Loading…
x
Reference in New Issue
Block a user