< prev index next >

test/testlibrary/jittester/src/jdk/test/lib/jittester/factories/ConstructorDefinitionFactory.java

Print this page

        

*** 26,44 **** import java.util.ArrayList; import jdk.test.lib.jittester.IRNode; import jdk.test.lib.jittester.ProductionFailedException; import jdk.test.lib.jittester.Symbol; import jdk.test.lib.jittester.SymbolTable; import jdk.test.lib.jittester.VariableInfo; import jdk.test.lib.jittester.functions.ArgumentDeclaration; import jdk.test.lib.jittester.functions.ConstructorDefinition; import jdk.test.lib.jittester.functions.FunctionInfo; import jdk.test.lib.jittester.types.TypeKlass; - import jdk.test.lib.jittester.types.TypeVoid; import jdk.test.lib.jittester.utils.PseudoRandom; ! class ConstructorDefinitionFactory extends Factory { private final long complexityLimit; private final int statementLimit; private final int operatorLimit; private final int memberFunctionsArgLimit; private final int level; --- 26,44 ---- import java.util.ArrayList; import jdk.test.lib.jittester.IRNode; import jdk.test.lib.jittester.ProductionFailedException; import jdk.test.lib.jittester.Symbol; import jdk.test.lib.jittester.SymbolTable; + import jdk.test.lib.jittester.TypeList; import jdk.test.lib.jittester.VariableInfo; import jdk.test.lib.jittester.functions.ArgumentDeclaration; import jdk.test.lib.jittester.functions.ConstructorDefinition; import jdk.test.lib.jittester.functions.FunctionInfo; import jdk.test.lib.jittester.types.TypeKlass; import jdk.test.lib.jittester.utils.PseudoRandom; ! class ConstructorDefinitionFactory extends Factory<ConstructorDefinition> { private final long complexityLimit; private final int statementLimit; private final int operatorLimit; private final int memberFunctionsArgLimit; private final int level;
*** 53,63 **** this.memberFunctionsArgLimit = memberFunctionsArgLimit; this.level = level; } @Override ! public IRNode produce() throws ProductionFailedException { int argNumber = (int) (PseudoRandom.random() * memberFunctionsArgLimit); ArrayList<VariableInfo> argumentsInfo = new ArrayList<>(argNumber); ArrayList<ArgumentDeclaration> argumentsDeclaration = new ArrayList<>(argNumber); SymbolTable.push(); IRNode body; --- 53,63 ---- this.memberFunctionsArgLimit = memberFunctionsArgLimit; this.level = level; } @Override ! public ConstructorDefinition produce() throws ProductionFailedException { int argNumber = (int) (PseudoRandom.random() * memberFunctionsArgLimit); ArrayList<VariableInfo> argumentsInfo = new ArrayList<>(argNumber); ArrayList<ArgumentDeclaration> argumentsDeclaration = new ArrayList<>(argNumber); SymbolTable.push(); IRNode body;
*** 88,98 **** } } } long blockComplLimit = (long) (PseudoRandom.random() * complexityLimit); try { ! body = builder.setResultType(new TypeVoid()) .setComplexityLimit(blockComplLimit) .setStatementLimit(statementLimit) .setOperatorLimit(operatorLimit) .setLevel(level) .setSubBlock(true) --- 88,98 ---- } } } long blockComplLimit = (long) (PseudoRandom.random() * complexityLimit); try { ! body = builder.setResultType(TypeList.VOID) .setComplexityLimit(blockComplLimit) .setStatementLimit(statementLimit) .setOperatorLimit(operatorLimit) .setLevel(level) .setSubBlock(true)
< prev index next >