| 
    LLVM 22.0.0git
    
   | 
 
#include "Target/WebAssembly/WebAssemblyDebugValueManager.h"
Public Member Functions | |
| WebAssemblyDebugValueManager (MachineInstr *Def) | |
| void | sink (MachineInstr *Insert) | 
| void | cloneSink (MachineInstr *Insert, Register NewReg=Register(), bool CloneDef=true) const | 
| void | updateReg (Register Reg) | 
| void | replaceWithLocal (unsigned LocalId) | 
| void | removeDef () | 
Definition at line 28 of file WebAssemblyDebugValueManager.h.
| WebAssemblyDebugValueManager::WebAssemblyDebugValueManager | ( | MachineInstr * | Def | ) | 
Definition at line 24 of file WebAssemblyDebugValueManager.cpp.
| void WebAssemblyDebugValueManager::cloneSink | ( | MachineInstr * | Insert, | 
| Register | NewReg = Register(), | ||
| bool | CloneDef = true ) const | 
Definition at line 354 of file WebAssemblyDebugValueManager.cpp.
References llvm::dwarf_linker::DebugLoc, llvm::MachineInstr::getOperand(), hasSameDebugLoc(), llvm::Register::isValid(), MBB, llvm::SmallVectorTemplateBase< T, bool >::push_back(), llvm::MachineInstr::setDebugLoc(), and llvm::MachineOperand::setReg().
Referenced by moveAndTeeForMultiUse(), and rematerializeCheapDef().
| void WebAssemblyDebugValueManager::removeDef | ( | ) | 
Definition at line 415 of file WebAssemblyDebugValueManager.cpp.
Referenced by rematerializeCheapDef().
| void WebAssemblyDebugValueManager::replaceWithLocal | ( | unsigned | LocalId | ) | 
Definition at line 404 of file WebAssemblyDebugValueManager.cpp.
References llvm::WebAssembly::TI_LOCAL, and llvm::WebAssembly::TI_LOCAL_INDIRECT.
| void WebAssemblyDebugValueManager::sink | ( | MachineInstr * | Insert | ) | 
Definition at line 253 of file WebAssemblyDebugValueManager.cpp.
References llvm::dwarf_linker::DebugLoc, hasSameDebugLoc(), MBB, llvm::SmallVectorTemplateBase< T, bool >::push_back(), and llvm::SmallVectorImpl< T >::swap().
Referenced by moveAndTeeForMultiUse(), and moveForSingleUse().
| void WebAssemblyDebugValueManager::updateReg | ( | Register | Reg | ) | 
Definition at line 394 of file WebAssemblyDebugValueManager.cpp.
Referenced by moveAndTeeForMultiUse(), and moveForSingleUse().