| public nothrow | Function(Context& context_, FunctionType* type_, const String<char>& name_, bool once_, MDStructRef* md_) | 
| public BasicBlock* | AddBasicBlock(uint id) | 
| public void | CombineBasicBlocks() | 
| public nothrow void | ComputeLivenessAndNextUse() | 
| private void | CreateEpilog(MachineCode& machineCode) | 
| private void | CreateProlog(MachineCode& machineCode) | 
| public void | GenerateCode(MachineCode& machineCode, CodeFormatter& formatter) | 
| public void | GenerateDeclaration(MachineCode& machineCode) | 
| public BasicBlock* | GetBasicBlock(uint target) | 
| public inline nothrow int | GetNextArgIndex() | 
| public inline nothrow int | GetNextInstructionIndex() | 
| public inline nothrow int | GetNextValueNumber() | 
| public Value* | MakeIdValue(int lineNumber, uint id, Type* type) | 
| public void | MapInstruction(uint id, Instruction* instruction) | 
| public void | MapInstructions() | 
| public void | Print(CodeFormatter& formatter, int stage) | 
| public inline nothrow void | ResetNextArgIndex() | 
| public Value* | ResolveOperand(int line, Value* operand) | 
| public void | Validate() | 
| public AddressDescriptors | addressDescriptors | 
| public List<UniquePtr<BasicBlock>> | basicBlocks | 
| public Context& | context | 
| public BasicBlock | epilog | 
| public FrameLocations | frameLocations | 
| public ulong | frameSize | 
| private LiteralOperand* | frameSizeOperand | 
| private HashMap<uint, IdValue*, Hasher<uint>, EqualTo<uint>> | idValueMap | 
| private HashMap<uint, Instruction*, Hasher<uint>, EqualTo<uint>> | instructionMap | 
| public MDStructRef* | md | 
| public String<char> | name | 
| private int | nextArgIndex | 
| private int | nextInstructionIndex | 
| private int | nextValueNumber | 
| private bool | once | 
| public BasicBlock | prolog | 
| public List<ParamInstruction*> | regParams | 
| public FunctionType* | type | 
| private List<UniquePtr<Value>> | values |