< prev index next >
test/testlibrary/jittester/src/jdk/test/lib/jittester/factories/DeclarationFactory.java
Print this page
*** 29,39 ****
import jdk.test.lib.jittester.ProductionParams;
import jdk.test.lib.jittester.Rule;
import jdk.test.lib.jittester.TypeList;
import jdk.test.lib.jittester.types.TypeKlass;
! class DeclarationFactory extends Factory {
private final int operatorLimit;
private final long complexityLimit;
private final boolean isLocal;
private final boolean exceptionSafe;
private final TypeKlass ownerClass;
--- 29,39 ----
import jdk.test.lib.jittester.ProductionParams;
import jdk.test.lib.jittester.Rule;
import jdk.test.lib.jittester.TypeList;
import jdk.test.lib.jittester.types.TypeKlass;
! class DeclarationFactory extends Factory<Declaration> {
private final int operatorLimit;
private final long complexityLimit;
private final boolean isLocal;
private final boolean exceptionSafe;
private final TypeKlass ownerClass;
*** 46,78 ****
this.complexityLimit = complexityLimit;
this.operatorLimit = operatorLimit;
}
@Override
! public IRNode produce() throws ProductionFailedException {
! Rule rule = new Rule("declaration");
IRNodeBuilder builder = new IRNodeBuilder().setOwnerKlass(ownerClass)
! .setResultType(TypeList.getVoid())
.setIsLocal(isLocal)
.setComplexityLimit(complexityLimit)
.setOperatorLimit(operatorLimit)
.setIsLocal(isLocal)
.setExceptionSafe(exceptionSafe);
! rule.add("decl", builder.setIsStatic(false).getVariableDeclarationFactory());
! rule.add("decl_and_init", builder.setIsConstant(false)
! .setIsStatic(false).getVariableInitializationFactory());
if (!ProductionParams.disableFinalVariables.value()) {
! rule.add("const_decl_and_init", builder.setIsConstant(true)
! .setIsStatic(false).getVariableInitializationFactory());
}
if (!isLocal && !ProductionParams.disableStatic.value()) {
! rule.add("static_decl", builder.setIsStatic(true).getVariableDeclarationFactory());
! rule.add("static_decl_and_init", builder.setIsConstant(false)
! .setIsStatic(true).getVariableInitializationFactory());
if (!ProductionParams.disableFinalVariables.value()) {
! rule.add("static_const_decl_and_init", builder.setIsConstant(true)
! .setIsStatic(true).getVariableInitializationFactory());
}
}
return new Declaration(rule.produce());
}
}
--- 46,91 ----
this.complexityLimit = complexityLimit;
this.operatorLimit = operatorLimit;
}
@Override
! public Declaration produce() throws ProductionFailedException {
! Rule<IRNode> rule = new Rule<>("declaration");
IRNodeBuilder builder = new IRNodeBuilder().setOwnerKlass(ownerClass)
! .setResultType(TypeList.VOID)
.setIsLocal(isLocal)
.setComplexityLimit(complexityLimit)
.setOperatorLimit(operatorLimit)
.setIsLocal(isLocal)
.setExceptionSafe(exceptionSafe);
! rule.add("decl", builder
! .setIsStatic(false)
! .getVariableDeclarationFactory());
! rule.add("decl_and_init", builder
! .setIsConstant(false)
! .setIsStatic(false)
! .getVariableInitializationFactory());
if (!ProductionParams.disableFinalVariables.value()) {
! rule.add("const_decl_and_init", builder
! .setIsConstant(true)
! .setIsStatic(false)
! .getVariableInitializationFactory());
}
if (!isLocal && !ProductionParams.disableStatic.value()) {
! rule.add("static_decl", builder
! .setIsConstant(false)
! .setIsStatic(true)
! .getVariableDeclarationFactory());
! rule.add("static_decl_and_init", builder
! .setIsConstant(false)
! .setIsStatic(true)
! .getVariableInitializationFactory());
if (!ProductionParams.disableFinalVariables.value()) {
! rule.add("static_const_decl_and_init", builder
! .setIsConstant(true)
! .setIsStatic(true)
! .getVariableInitializationFactory());
}
}
return new Declaration(rule.produce());
}
}
< prev index next >