llir-opt
0.0.1
Low-Level Post-Link Optimiser for OCaml and C
|
#include <emitter/isel_mapping.h>
Public Member Functions | |
llvm::MachineFunction * | operator[] (const Func *func) const |
Finds the MachineFunction attached to a function. | |
llvm::MCSymbol * | operator[] (const Inst *inst) const |
Finds the label attached to an instruction. | |
llvm::MachineBasicBlock * | operator[] (const Block *block) const |
Finds the MachineBasicBlock attached to a block. | |
const CamlFrame * | operator[] (llvm::MCSymbol *symbol) const |
Finds the frame attached to a symbol. | |
Protected Attributes | |
std::unordered_map< const Func *, llvm::MachineFunction * > | funcs_ |
Mapping from functions to MachineFunctions. | |
std::unordered_map< const Block *, llvm::MachineBasicBlock * > | mbbs_ |
Mapping from blocks to machine blocks. | |
std::unordered_map< const Block *, llvm::BasicBlock * > | bbs_ |
Mapping from blocks to basic blocks. | |
std::unordered_map< const Inst *, llvm::MCSymbol * > | labels_ |
Labels of annotated instructions. | |
std::unordered_map< llvm::MCSymbol *, const CamlFrame * > | frames_ |
Mapping from labels to instructions. | |
Mapping from LLIR to LLVM objects.