Add DoStringise(const DXIL::Operation &el)

This commit is contained in:
Jake Turner
2024-05-07 16:11:24 +01:00
parent 8498f24ce3
commit b75fa90630
2 changed files with 99 additions and 0 deletions
@@ -1395,3 +1395,4 @@ rdcstr escapeStringIfNeeded(const rdcstr &name);
DECLARE_REFLECTION_ENUM(DXIL::Attribute);
DECLARE_STRINGISE_TYPE(DXIL::InstructionFlags);
DECLARE_STRINGISE_TYPE(DXIL::AtomicBinOpCode);
DECLARE_STRINGISE_TYPE(DXIL::Operation);
@@ -4732,4 +4732,102 @@ rdcstr DoStringise(const DXIL::AtomicBinOpCode &el)
STRINGISE_ENUM_CLASS(Invalid)
}
END_ENUM_STRINGISE();
}
template <>
rdcstr DoStringise(const DXIL::Operation &el)
{
BEGIN_ENUM_STRINGISE(DXIL::Operation)
{
STRINGISE_ENUM_CLASS(NoOp)
STRINGISE_ENUM_CLASS(Call)
STRINGISE_ENUM_CLASS(Trunc)
STRINGISE_ENUM_CLASS(ZExt)
STRINGISE_ENUM_CLASS(SExt)
STRINGISE_ENUM_CLASS(FToU)
STRINGISE_ENUM_CLASS(FToS)
STRINGISE_ENUM_CLASS(UToF)
STRINGISE_ENUM_CLASS(SToF)
STRINGISE_ENUM_CLASS(FPTrunc)
STRINGISE_ENUM_CLASS(FPExt)
STRINGISE_ENUM_CLASS(PtrToI)
STRINGISE_ENUM_CLASS(IToPtr)
STRINGISE_ENUM_CLASS(Bitcast)
STRINGISE_ENUM_CLASS(AddrSpaceCast)
STRINGISE_ENUM_CLASS(ExtractVal)
STRINGISE_ENUM_CLASS(Ret)
STRINGISE_ENUM_CLASS(FAdd)
STRINGISE_ENUM_CLASS(FSub)
STRINGISE_ENUM_CLASS(FMul)
STRINGISE_ENUM_CLASS(FDiv)
STRINGISE_ENUM_CLASS(FRem)
STRINGISE_ENUM_CLASS(Add)
STRINGISE_ENUM_CLASS(Sub)
STRINGISE_ENUM_CLASS(Mul)
STRINGISE_ENUM_CLASS(UDiv)
STRINGISE_ENUM_CLASS(SDiv)
STRINGISE_ENUM_CLASS(URem)
STRINGISE_ENUM_CLASS(SRem)
STRINGISE_ENUM_CLASS(ShiftLeft)
STRINGISE_ENUM_CLASS(LogicalShiftRight)
STRINGISE_ENUM_CLASS(ArithShiftRight)
STRINGISE_ENUM_CLASS(And)
STRINGISE_ENUM_CLASS(Or)
STRINGISE_ENUM_CLASS(Xor)
STRINGISE_ENUM_CLASS(Unreachable)
STRINGISE_ENUM_CLASS(Alloca)
STRINGISE_ENUM_CLASS(GetElementPtr)
STRINGISE_ENUM_CLASS(Load)
STRINGISE_ENUM_CLASS(Store)
STRINGISE_ENUM_CLASS(FOrdFalse)
STRINGISE_ENUM_CLASS(FOrdEqual)
STRINGISE_ENUM_CLASS(FOrdGreater)
STRINGISE_ENUM_CLASS(FOrdGreaterEqual)
STRINGISE_ENUM_CLASS(FOrdLess)
STRINGISE_ENUM_CLASS(FOrdLessEqual)
STRINGISE_ENUM_CLASS(FOrdNotEqual)
STRINGISE_ENUM_CLASS(FOrd)
STRINGISE_ENUM_CLASS(FUnord)
STRINGISE_ENUM_CLASS(FUnordEqual)
STRINGISE_ENUM_CLASS(FUnordGreater)
STRINGISE_ENUM_CLASS(FUnordGreaterEqual)
STRINGISE_ENUM_CLASS(FUnordLess)
STRINGISE_ENUM_CLASS(FUnordLessEqual)
STRINGISE_ENUM_CLASS(FUnordNotEqual)
STRINGISE_ENUM_CLASS(FOrdTrue)
STRINGISE_ENUM_CLASS(IEqual)
STRINGISE_ENUM_CLASS(INotEqual)
STRINGISE_ENUM_CLASS(UGreater)
STRINGISE_ENUM_CLASS(UGreaterEqual)
STRINGISE_ENUM_CLASS(ULess)
STRINGISE_ENUM_CLASS(ULessEqual)
STRINGISE_ENUM_CLASS(SGreater)
STRINGISE_ENUM_CLASS(SGreaterEqual)
STRINGISE_ENUM_CLASS(SLess)
STRINGISE_ENUM_CLASS(SLessEqual)
STRINGISE_ENUM_CLASS(Select)
STRINGISE_ENUM_CLASS(ExtractElement)
STRINGISE_ENUM_CLASS(InsertElement)
STRINGISE_ENUM_CLASS(ShuffleVector)
STRINGISE_ENUM_CLASS(InsertValue)
STRINGISE_ENUM_CLASS(Branch)
STRINGISE_ENUM_CLASS(Phi)
STRINGISE_ENUM_CLASS(Switch)
STRINGISE_ENUM_CLASS(Fence)
STRINGISE_ENUM_CLASS(CompareExchange)
STRINGISE_ENUM_CLASS(LoadAtomic)
STRINGISE_ENUM_CLASS(StoreAtomic)
STRINGISE_ENUM_CLASS(AtomicExchange)
STRINGISE_ENUM_CLASS(AtomicAdd)
STRINGISE_ENUM_CLASS(AtomicSub)
STRINGISE_ENUM_CLASS(AtomicAnd)
STRINGISE_ENUM_CLASS(AtomicNand)
STRINGISE_ENUM_CLASS(AtomicOr)
STRINGISE_ENUM_CLASS(AtomicXor)
STRINGISE_ENUM_CLASS(AtomicMax)
STRINGISE_ENUM_CLASS(AtomicMin)
STRINGISE_ENUM_CLASS(AtomicUMax)
STRINGISE_ENUM_CLASS(AtomicUMin)
}
END_ENUM_STRINGISE();
}