public void |
AddArrayType(const String<char>& typeId, const String<char>& elementTypeId, long size) |
public Function* |
AddFunction(int lineNumber, Type* type, const String<char>& name, bool once, MDStructRef* md) |
public void |
AddFunctionType(const String<char>& typeId, const String<char>& returnTypeId, const List<String<char>>& paramTypeIds) |
public void |
AddGlobalVariable(Type* type, const String<char>& name, ConstantValue* initializer, int line, bool once) |
public void |
AddPtrType(const String<char>& typeId, int line) |
public void |
AddStructureType(const String<char>& typeId, const List<String<char>>& memberTypeIds) |
public void |
AddValue(Value* value) |
public nothrow LiteralOperand* |
CreateLiteralOperand() |
public MDBool* |
CreateMDBool(bool value) |
public MDLong* |
CreateMDLong(long value) |
public MDString* |
CreateMDString(const String<char>& value) |
public MDStruct* |
CreateMDStruct(int id) |
public MDStructRef* |
CreateMDStructRef(int id) |
public inline nothrow BasicBlock* |
CurrentBasicBlock() const |
public inline nothrow Function* |
CurrentFunction() const |
public inline nothrow BoolType* |
GetBoolType() const |
public inline nothrow ByteType* |
GetByteType() const |
public nothrow Operand* |
GetClsIdOperand(const String<char>& typeId) |
public inline nothrow DoubleType* |
GetDoubleType() const |
public inline nothrow FloatType* |
GetFloatType() const |
public GlobalVariable* |
GetGlobalVariable(const String<char>& globalVariableName) const |
public GlobalVariable* |
GetGlobalVariableNothrow(const String<char>& globalVariableName) const |
public inline nothrow IntType* |
GetIntType() const |
public nothrow LiteralOperand* |
GetLiteralOperand(ulong value) |
public inline nothrow LongType* |
GetLongType() const |
public PtrType* |
GetPtrType(Type* baseType) |
public inline nothrow SByteType* |
GetSByteType() const |
public inline nothrow ShortType* |
GetShortType() const |
public nothrow Operand* |
GetStringOperand(const String<char>& value) |
public nothrow SymbolOperand* |
GetSymbolOperand(const String<char>& value) |
public Type* |
GetTypeById(int lineNumber, const String<char>& typeId) const |
public inline nothrow TypeRepository& |
GetTypeRepository() |
public inline nothrow UIntType* |
GetUIntType() const |
public inline nothrow ULongType* |
GetULongType() const |
public inline nothrow UShortType* |
GetUShortType() const |
public inline nothrow Type* |
GetVoidType() const |
public ArrayValue* |
MakeArrayValue() |
public ConstantValue* |
MakeByteValue(ByteType* type, byte value) |
public ClsIdValue* |
MakeClsIdValue(Type* type, const String<char>& clsIdStr, int line) |
public ConversionValue* |
MakeConversionValue(Type* targetType, ConstantValue* from, int lineNumber) |
public ConstantValue* |
MakeDoubleValue(DoubleType* type, double value) |
public ConstantValue* |
MakeFloatValue(FloatType* type, float value) |
public ConstantValue* |
MakeIntValue(IntType* type, int value) |
public ConstantValue* |
MakeLiteralValue(int lineNumber, const String<char>& fromStr, Type* type) |
public ConstantValue* |
MakeLongValue(LongType* type, long value) |
public ConstantValue* |
MakeSByteValue(SByteType* type, sbyte value) |
public ConstantValue* |
MakeShortValue(ShortType* type, short value) |
public StringArrayValue* |
MakeStringArrayValue(char prefix) |
public StringValue* |
MakeStringValue(const String<char>& value) |
public StructureValue* |
MakeStructureValue() |
public ConstantValue* |
MakeSymbolValue(int lineNumber, const String<char>& symbol, Type* type) |
public ConstantValue* |
MakeUIntValue(UIntType* type, uint value) |
public ConstantValue* |
MakeULongValue(ULongType* type, ulong value) |
public ConstantValue* |
MakeUShortValue(UShortType* type, ushort value) |
public void |
PrintTypes(CodeFormatter& formatter) |
public void |
ResolveTypes() |
public void |
SetCompileUnitInfo(const String<char>& compileUnitId, MDStructRef* mdRef) |
public inline nothrow void |
SetCurrentBasicBlock(BasicBlock* basicBlock) |
public inline nothrow void |
SetCurrentFunction(Function* currentFunction_) |
public nothrow void |
SetFileName(const String<char>& fileName) |
public void |
ValidateGlobalVariables() |
private HashMap<byte, ConstantValue*, Hasher<byte>, EqualTo<byte>> |
byteValueMap |
public CompileUnit |
compileUnit |
private BasicBlock* |
currentBasicBlock |
public Function* |
currentFunction |
private HashMap<uint, IdValue*, Hasher<uint>, EqualTo<uint>> |
idValueMap |
private HashMap<int, ConstantValue*, Hasher<int>, EqualTo<int>> |
intValueMap |
private HashMap<ulong, LiteralOperand*, Hasher<ulong>, EqualTo<ulong>> |
literalOperandMap |
private HashMap<long, ConstantValue*, Hasher<long>, EqualTo<long>> |
longValueMap |
private List<UniquePtr<Operand>> |
operands |
public Registers |
regs |
private HashMap<sbyte, ConstantValue*, Hasher<sbyte>, EqualTo<sbyte>> |
sbyteValueMap |
private HashMap<short, ConstantValue*, Hasher<short>, EqualTo<short>> |
shortValueMap |
private HashMap<String<char>, SymbolOperand*, Hasher<String<char>>, EqualTo<String<char>>> |
symbolOperandMap |
private HashMap<String<char>, SymbolValue*, Hasher<String<char>>, EqualTo<String<char>>> |
symbolValueMap |
private TypeRepository |
typeRepository |
private HashMap<uint, ConstantValue*, Hasher<uint>, EqualTo<uint>> |
uintValueMap |
private HashMap<ulong, ConstantValue*, Hasher<ulong>, EqualTo<ulong>> |
ulongValueMap |
private HashMap<ushort, ConstantValue*, Hasher<ushort>, EqualTo<ushort>> |
ushortValueMap |
private List<UniquePtr<Value>> |
values |