mirror of
https://github.com/openjdk/jdk.git
synced 2026-01-28 12:09:14 +00:00
8372461: [IR Framework] Multiple test failures after JDK-8371789
Reviewed-by: epeter, syan, dfenacci
This commit is contained in:
parent
ca96366c03
commit
293fec7e28
@ -523,13 +523,13 @@ public class IRNode {
|
||||
|
||||
public static final String CHECKCAST_ARRAY = PREFIX + "CHECKCAST_ARRAY" + POSTFIX;
|
||||
static {
|
||||
String regex = "(((?i:cmp|CLFI|CLR).*precise \\[.*:|.*(?i:mov|mv|or).*precise \\[.*:.*\\R.*(cmp|CMP|CLR))" + END;
|
||||
String regex = "(((?i:cmp|CLFI|CLR).*aryklassptr:\\[.*:Constant|.*(?i:mov|mv|or).*aryklassptr:\\[.*:Constant.*\\R.*(cmp|CMP|CLR))" + END;
|
||||
optoOnly(CHECKCAST_ARRAY, regex);
|
||||
}
|
||||
|
||||
public static final String CHECKCAST_ARRAY_OF = COMPOSITE_PREFIX + "CHECKCAST_ARRAY_OF" + POSTFIX;
|
||||
static {
|
||||
String regex = "(((?i:cmp|CLFI|CLR).*precise \\[.*" + IS_REPLACED + ":|.*(?i:mov|mv|or).*precise \\[.*" + IS_REPLACED + ":.*\\R.*(cmp|CMP|CLR))" + END;
|
||||
String regex = "(((?i:cmp|CLFI|CLR).*aryklassptr:\\[.*" + IS_REPLACED + ":.*:Constant|.*(?i:mov|mv|or).*aryklassptr:\\[.*" + IS_REPLACED + ":.*:Constant.*\\R.*(cmp|CMP|CLR))" + END;
|
||||
optoOnly(CHECKCAST_ARRAY_OF, regex);
|
||||
}
|
||||
|
||||
@ -3220,10 +3220,9 @@ public class IRNode {
|
||||
|
||||
// @ matches the start character of the pattern
|
||||
// (\w+: ?)+ tries to match the pattern 'ptrtype:' or 'stable:' with optional trailing whitespaces
|
||||
// (\w/)* tries to match the pattern 'a/b/`
|
||||
// (\w$)* tries to match the pattern 'c$d$'
|
||||
// [\\w/\\$] tries to match the pattern such as 'a/b/', 'a/b', or '/b' but also nested class such as '$c' or '$c$d'
|
||||
// \b asserts that the next character is a word character
|
||||
private static final String LOAD_STORE_PREFIX = "@(\\w+: ?)+(\\w/)*(\\w$)*\\b";
|
||||
private static final String LOAD_STORE_PREFIX = "@(\\w+: ?)+[\\w/\\$]*\\b";
|
||||
// ( \([^\)]+\))? tries to match the pattern ' (f/g,h/i/j)'
|
||||
// :\w+ tries to match the pattern ':NotNull'
|
||||
// .* tries to match the remaining of the pattern
|
||||
|
||||
@ -255,9 +255,9 @@ public class TestIRMatching {
|
||||
} else {
|
||||
cmp = "cmp";
|
||||
}
|
||||
runCheck(BadFailOnConstraint.create(CheckCastArray.class, "array(java.lang.Object[])", 1, cmp, "precise"),
|
||||
BadFailOnConstraint.create(CheckCastArray.class, "array(java.lang.Object[])", 2, 1,cmp, "precise", "MyClass"),
|
||||
BadFailOnConstraint.create(CheckCastArray.class, "array(java.lang.Object[])", 2, 2,cmp, "precise", "ir_framework/tests/MyClass"),
|
||||
runCheck(BadFailOnConstraint.create(CheckCastArray.class, "array(java.lang.Object[])", 1, cmp, "Constant"),
|
||||
BadFailOnConstraint.create(CheckCastArray.class, "array(java.lang.Object[])", 2, 1,cmp, "Constant", "MyClass"),
|
||||
BadFailOnConstraint.create(CheckCastArray.class, "array(java.lang.Object[])", 2, 2,cmp, "Constant", "ir_framework/tests/MyClass"),
|
||||
GoodFailOnConstraint.create(CheckCastArray.class, "array(java.lang.Object[])", 3),
|
||||
Platform.isS390x() ? // There is no checkcast_arraycopy stub for C2 on s390
|
||||
GoodFailOnConstraint.create(CheckCastArray.class, "arrayCopy(java.lang.Object[],java.lang.Class)", 1)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user