src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyGetOptionsUsage.java
--- a/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyGetOptionsUsage.java Thu Mar 28 11:06:00 2019 -0700
+++ b/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyGetOptionsUsage.java Thu Mar 28 19:39:14 2019 +0100
@@ -36,6 +36,7 @@
import jdk.vm.ci.meta.MetaAccessProvider;
import jdk.vm.ci.meta.ResolvedJavaMethod;
+import jdk.vm.ci.meta.ResolvedJavaMethod.Parameter;
import jdk.vm.ci.meta.ResolvedJavaType;
/**
@@ -55,15 +56,19 @@
}
@Override
- protected boolean verify(StructuredGraph graph, PhaseContext context) {
+ protected void verify(StructuredGraph graph, PhaseContext context) {
MetaAccessProvider metaAccess = context.getMetaAccess();
ResolvedJavaType canonicalizerToolClass = metaAccess.lookupJavaType(CanonicalizerTool.class);
boolean hasTool = false;
+ ResolvedJavaMethod method = graph.method();
try {
- for (ResolvedJavaMethod.Parameter parameter : graph.method().getParameters()) {
- if (parameter.getType().getName().equals(canonicalizerToolClass.getName())) {
- hasTool = true;
- break;
+ Parameter[] parameters = method.getParameters();
+ if (parameters != null) {
+ for (ResolvedJavaMethod.Parameter parameter : parameters) {
+ if (parameter.getType().getName().equals(canonicalizerToolClass.getName())) {
+ hasTool = true;
+ break;
+ }
}
}
} catch (MalformedParametersException e) {
@@ -76,13 +81,11 @@
if (callee.equals(getOptionsMethod)) {
if (hasTool) {
throw new VerificationError("Must use CanonicalizerTool.getOptions() instead of Node.getOptions() in method '%s' of class '%s'.",
- graph.method().getName(), graph.method().getDeclaringClass().getName());
+ method.getName(), method.getDeclaringClass().getName());
}
}
}
}
-
- return true;
}
}