LLVM: lib/Target/WebAssembly/WebAssemblyRegColoring.cpp File Reference (original) (raw)
This file implements a virtual register coloring pass. More...
Go to the source code of this file.
| Macros | |
|---|---|
| #define | DEBUG_TYPE "wasm-reg-coloring" |
| Functions | |
|---|---|
| INITIALIZE_PASS (WebAssemblyRegColoring, DEBUG_TYPE, "Minimize number of registers used", false, false) FunctionPass *llvm | |
| static float | computeWeight (const MachineRegisterInfo *MRI, const MachineBlockFrequencyInfo *MBFI, unsigned VReg) |
| static DenseMap< Register, std::vector< std::pair< SlotIndex, MachineInstr * > > > | buildVRegToDbgValueMap (MachineFunction &MF, const LiveIntervals *Liveness) |
| static void | undefInvalidDbgValues (const LiveIntervals *Liveness, ArrayRef< SmallVector< LiveInterval *, 4 > > Assignments, DenseMap< Register, std::vector< std::pair< SlotIndex, MachineInstr * > > > &DbgVRegToValues) |
Detailed Description
Macro Definition Documentation
◆ DEBUG_TYPE
#define DEBUG_TYPE "wasm-reg-coloring"
Function Documentation
◆ buildVRegToDbgValueMap()
Definition at line 80 of file WebAssemblyRegColoring.cpp.
References llvm::any_of(), llvm::SlotIndexes::getInstructionIndex(), llvm::SlotIndexes::getMBBEndIdx(), llvm::SlotIndexes::getMBBStartIdx(), llvm::LiveIntervals::getSlotIndexes(), MBB, MI, llvm::SmallVectorTemplateBase< T, bool >::push_back(), llvm::sort(), and X.
◆ computeWeight()
◆ INITIALIZE_PASS()
| INITIALIZE_PASS | ( | WebAssemblyRegColoring | , |
|---|---|---|---|
| DEBUG_TYPE | , | ||
| "Minimize number of registers used" | , | ||
| false | , | ||
| false | ) |