|
LLVM
3.7.0
|
#include "llvm/CodeGen/Passes.h"#include "llvm/ADT/Statistic.h"#include "llvm/CodeGen/MachineFunctionPass.h"#include "llvm/CodeGen/MachineRegisterInfo.h"#include "llvm/Pass.h"#include "llvm/Support/Debug.h"#include "llvm/Support/raw_ostream.h"#include "llvm/Target/TargetInstrInfo.h"#include "llvm/Target/TargetSubtargetInfo.h"Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "codegen-dce" |
Functions | |
| STATISTIC (NumDeletes,"Number of dead instructions deleted") | |
| INITIALIZE_PASS(DeadMachineInstructionElim,"dead-mi-elimination","Remove dead machine instructions", false, false) bool DeadMachineInstructionElim | if (MI->getOpcode()==TargetOpcode::LOCAL_ESCAPE) return false |
| if (!MI->isSafeToMove(nullptr, SawStore)&&!MI->isPHI()) return false | |
| for (unsigned i=0, e=MI->getNumOperands();i!=e;++i) | |
Variables | |
| bool | SawStore = false |
| return | true |
| #define DEBUG_TYPE "codegen-dce" |
Definition at line 26 of file DeadMachineInstructionElim.cpp.
| for | ( | unsigned | i = 0, |
| e | = MI->getNumOperands(); i != e; ++i |
||
| ) |
Definition at line 72 of file DeadMachineInstructionElim.cpp.
References llvm::MachineOperand::getReg(), llvm::MachineOperand::isDef(), llvm::TargetRegisterInfo::isPhysicalRegister(), and llvm::MachineOperand::isReg().
Referenced by llvm::DWARFAcceleratorTable::dump(), llvm::BitTracker::RegisterCell::extract(), firstch(), freeset(), freezeset(), llvm::TargetLowering::getMultipleConstraintMatchWeight(), INITIALIZE_PASS(), isProfitableChain(), nch(), llvm::BitVector::operator&=(), llvm::operator<<(), llvm::UnrollLoop(), and llvm::MachineConstantPool::~MachineConstantPool().
| INITIALIZE_PASS (DeadMachineInstructionElim, "dead-mi-elimination", "Remove dead machine instructions", false, false) bool DeadMachineInstructionElim if | ( | MI-> | getOpcode() = =TargetOpcode::LOCAL_ESCAPE | ) |
| if | ( | !MI-> | isSafeToMovenullptr, SawStore)&&!MI->isPHI( | ) |
| STATISTIC | ( | NumDeletes | , |
| "Number of dead instructions deleted" | |||
| ) |
Definition at line 67 of file DeadMachineInstructionElim.cpp.
Referenced by llvm::MachineInstr::isSafeToMove(), MaySpeculate(), and llvm::X86InstrInfo::optimizeLoadInstr().
| return true |
Definition at line 89 of file DeadMachineInstructionElim.cpp.
1.8.6