< prev index next >
test/testlibrary/jittester/src/jdk/test/lib/jittester/factories/BinaryShiftOperatorFactory.java
Print this page
*** 26,38 ****
import jdk.test.lib.Pair;
import jdk.test.lib.jittester.OperatorKind;
import jdk.test.lib.jittester.ProductionFailedException;
import jdk.test.lib.jittester.Type;
import jdk.test.lib.jittester.TypeList;
- import jdk.test.lib.jittester.types.TypeInt;
import jdk.test.lib.jittester.types.TypeKlass;
- import jdk.test.lib.jittester.types.TypeLong;
import jdk.test.lib.jittester.utils.PseudoRandom;
import jdk.test.lib.jittester.utils.TypeUtil;
class BinaryShiftOperatorFactory extends BinaryOperatorFactory {
BinaryShiftOperatorFactory(OperatorKind opKind, long complexityLimit, int operatorLimit,
--- 26,36 ----
*** 40,54 ****
super(opKind, complexityLimit, operatorLimit, ownerClass, resultType, exceptionSafe, noconsts);
}
@Override
protected boolean isApplicable(Type resultType) {
! return resultType.equals(new TypeInt()) || resultType.equals(new TypeLong());
}
@Override
! protected Pair<Type, Type> generateTypes() throws ProductionFailedException {
! Type leftType = resultType.equals(new TypeInt()) ? PseudoRandom.randomElement(TypeUtil.getImplicitlyCastable(TypeList.getBuiltInInt(), resultType)) : resultType;
! Type rightType = PseudoRandom.randomElement(TypeUtil.getImplicitlyCastable(TypeList.getBuiltInInt(), new TypeLong()));
return new Pair<>(leftType, rightType);
}
}
--- 38,52 ----
super(opKind, complexityLimit, operatorLimit, ownerClass, resultType, exceptionSafe, noconsts);
}
@Override
protected boolean isApplicable(Type resultType) {
! return resultType.equals(TypeList.INT) || resultType.equals(TypeList.LONG);
}
@Override
! protected Pair<Type, Type> generateTypes() {
! Type leftType = resultType.equals(TypeList.INT) ? PseudoRandom.randomElement(TypeUtil.getImplicitlyCastable(TypeList.getBuiltInInt(), resultType)) : resultType;
! Type rightType = PseudoRandom.randomElement(TypeUtil.getImplicitlyCastable(TypeList.getBuiltInInt(), TypeList.LONG));
return new Pair<>(leftType, rightType);
}
}
< prev index next >