public abstract class ArithmeticLIRGenerator extends Object implements ArithmeticLIRGeneratorTool
ArithmeticLIRGeneratorTool.RoundingMode| Constructor and Description |
|---|
ArithmeticLIRGenerator() |
| Modifier and Type | Method and Description |
|---|---|
protected AllocatableValue |
asAllocatable(Value value) |
protected abstract Variable |
emitAdd(LIRKind resultKind,
Value a,
Value b,
boolean setFlags) |
Variable |
emitAdd(Value aVal,
Value bVal,
boolean setFlags) |
Value |
emitRor(Value value,
Value distance) |
protected abstract Variable |
emitSub(LIRKind resultKind,
Value a,
Value b,
boolean setFlags) |
Variable |
emitSub(Value aVal,
Value bVal,
boolean setFlags) |
LIRGenerator |
getLIRGen() |
OptionValues |
getOptions() |
protected abstract boolean |
isNumericInteger(PlatformKind kind) |
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitemitAnd, emitBitCount, emitBitScanForward, emitBitScanReverse, emitCountLeadingZeros, emitCountTrailingZeros, emitDiv, emitFloatConvert, emitFusedMultiplyAdd, emitLoad, emitMathAbs, emitMathCopySign, emitMathCos, emitMathExp, emitMathLog, emitMathMax, emitMathMin, emitMathPow, emitMathSignum, emitMathSin, emitMathSqrt, emitMathTan, emitMul, emitMulHigh, emitNarrow, emitNegate, emitNot, emitOr, emitOrderedLoad, emitOrderedStore, emitReinterpret, emitRem, emitRound, emitRoundFloatToInteger, emitShl, emitShr, emitSignExtend, emitStore, emitUDiv, emitUMulHigh, emitURem, emitUShr, emitXor, emitXorFP, emitZeroExtendpublic LIRGenerator getLIRGen()
protected final AllocatableValue asAllocatable(Value value)
public OptionValues getOptions()
protected abstract boolean isNumericInteger(PlatformKind kind)
public final Variable emitAdd(Value aVal, Value bVal, boolean setFlags)
emitAdd in interface ArithmeticLIRGeneratorToolpublic final Variable emitSub(Value aVal, Value bVal, boolean setFlags)
emitSub in interface ArithmeticLIRGeneratorToolpublic Value emitRor(Value value,
Value distance)