< prev index next >

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

Print this page

        

*** 21,50 **** * questions. */ package jdk.test.lib.jittester.factories; ! import jdk.test.lib.jittester.IRNode; import jdk.test.lib.jittester.OperatorKind; import jdk.test.lib.jittester.ProductionFailedException; import jdk.test.lib.jittester.Rule; import jdk.test.lib.jittester.Type; import jdk.test.lib.jittester.types.TypeKlass; ! class LogicOperatorFactory extends Factory { ! private final Rule rule; LogicOperatorFactory(long complexityLimit, int operatorLimit, TypeKlass ownerClass, Type resultType, boolean exceptionSafe, boolean noconsts) throws ProductionFailedException { IRNodeBuilder builder = new IRNodeBuilder() .setComplexityLimit(complexityLimit) .setOperatorLimit(operatorLimit) .setOwnerKlass(ownerClass) .setResultType(resultType) .setExceptionSafe(exceptionSafe) .setNoConsts(noconsts); ! rule = new Rule("arithmetic"); rule.add("land", builder.setOperatorKind(OperatorKind.AND).getBinaryOperatorFactory()); rule.add("lor", builder.setOperatorKind(OperatorKind.OR).getBinaryOperatorFactory()); rule.add("greater", builder.setOperatorKind(OperatorKind.GT).getBinaryOperatorFactory()); rule.add("less", builder.setOperatorKind(OperatorKind.LT).getBinaryOperatorFactory()); rule.add("ge", builder.setOperatorKind(OperatorKind.GE).getBinaryOperatorFactory()); --- 21,50 ---- * questions. */ package jdk.test.lib.jittester.factories; ! import jdk.test.lib.jittester.Operator; import jdk.test.lib.jittester.OperatorKind; import jdk.test.lib.jittester.ProductionFailedException; import jdk.test.lib.jittester.Rule; import jdk.test.lib.jittester.Type; import jdk.test.lib.jittester.types.TypeKlass; ! class LogicOperatorFactory extends Factory<Operator> { ! private final Rule<Operator> rule; LogicOperatorFactory(long complexityLimit, int operatorLimit, TypeKlass ownerClass, Type resultType, boolean exceptionSafe, boolean noconsts) throws ProductionFailedException { IRNodeBuilder builder = new IRNodeBuilder() .setComplexityLimit(complexityLimit) .setOperatorLimit(operatorLimit) .setOwnerKlass(ownerClass) .setResultType(resultType) .setExceptionSafe(exceptionSafe) .setNoConsts(noconsts); ! rule = new Rule<>("arithmetic"); rule.add("land", builder.setOperatorKind(OperatorKind.AND).getBinaryOperatorFactory()); rule.add("lor", builder.setOperatorKind(OperatorKind.OR).getBinaryOperatorFactory()); rule.add("greater", builder.setOperatorKind(OperatorKind.GT).getBinaryOperatorFactory()); rule.add("less", builder.setOperatorKind(OperatorKind.LT).getBinaryOperatorFactory()); rule.add("ge", builder.setOperatorKind(OperatorKind.GE).getBinaryOperatorFactory());
*** 53,61 **** rule.add("neq", builder.setOperatorKind(OperatorKind.NE).getBinaryOperatorFactory()); rule.add("lnot", builder.setOperatorKind(OperatorKind.NOT).getUnaryOperatorFactory()); } @Override ! public IRNode produce() throws ProductionFailedException { return rule.produce(); } } --- 53,61 ---- rule.add("neq", builder.setOperatorKind(OperatorKind.NE).getBinaryOperatorFactory()); rule.add("lnot", builder.setOperatorKind(OperatorKind.NOT).getUnaryOperatorFactory()); } @Override ! public Operator produce() throws ProductionFailedException { return rule.produce(); } }
< prev index next >