|
LLVM
4.0.0
|
#include "llvm/CodeGen/MachineTraceMetrics.h"#include "llvm/ADT/PostOrderIterator.h"#include "llvm/ADT/SparseSet.h"#include "llvm/CodeGen/MachineBasicBlock.h"#include "llvm/CodeGen/MachineBranchProbabilityInfo.h"#include "llvm/CodeGen/MachineLoopInfo.h"#include "llvm/CodeGen/MachineRegisterInfo.h"#include "llvm/CodeGen/Passes.h"#include "llvm/MC/MCSubtargetInfo.h"#include "llvm/Support/Debug.h"#include "llvm/Support/Format.h"#include "llvm/Support/raw_ostream.h"#include "llvm/Target/TargetInstrInfo.h"#include "llvm/Target/TargetRegisterInfo.h"#include "llvm/Target/TargetSubtargetInfo.h"Go to the source code of this file.
Classes | |
| class | llvm::po_iterator_storage< LoopBounds, true > |
Namespaces | |
| llvm | |
| Compute iterated dominance frontiers using a linear time algorithm. | |
Macros | |
| #define | DEBUG_TYPE "machine-trace-metrics" |
Typedefs | |
| typedef DenseMap< const MachineInstr *, unsigned > | MIHeightMap |
Variables | |
| machine trace | metrics |
| machine trace Machine Trace | Metrics |
| machine trace Machine Trace | false |
| #define DEBUG_TYPE "machine-trace-metrics" |
Definition at line 28 of file MachineTraceMetrics.cpp.
| typedef DenseMap<const MachineInstr *, unsigned> MIHeightMap |
Definition at line 926 of file MachineTraceMetrics.cpp.
|
static |
Definition at line 629 of file MachineTraceMetrics.cpp.
References E, llvm::MachineInstr::getOperandNo(), llvm::MachineOperand::getReg(), I, llvm::MachineInstr::isDebugValue(), llvm::TargetRegisterInfo::isPhysicalRegister(), llvm::MachineOperand::isReg(), llvm::MachineInstr::operands_begin(), llvm::MachineInstr::operands_end(), llvm::SmallVectorTemplateBase< T, isPodLike< T >::value >::push_back(), and llvm::MachineOperand::readsReg().
|
static |
Definition at line 659 of file MachineTraceMetrics.cpp.
References assert(), llvm::MachineOperand::getMBB(), llvm::MachineInstr::getNumOperands(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::getReg(), i, llvm::MachineInstr::isPHI(), and llvm::SmallVectorTemplateBase< T, isPodLike< T >::value >::push_back().
Referenced by llvm::MachineTraceMetrics::Trace::getPHIDepth().
| INITIALIZE_PASS_BEGIN | ( | MachineTraceMetrics | , |
| "machine-trace-metrics" | , | ||
| "Machine Trace Metrics" | , | ||
| false | , | ||
| true | |||
| ) |
|
static |
Definition at line 293 of file MachineTraceMetrics.cpp.
References llvm::LoopBase< N, M >::contains().
Referenced by llvm::po_iterator_storage< LoopBounds, true >::insertEdge().
|
static |
Definition at line 930 of file MachineTraceMetrics.cpp.
References llvm::TargetSchedModel::computeOperandLatency(), I, and llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::insert().
|
static |
Definition at line 695 of file MachineTraceMetrics.cpp.
References llvm::SparseSet< ValueT, KeyFunctorT, SparseT >::end(), llvm::SparseSet< ValueT, KeyFunctorT, SparseT >::erase(), llvm::SparseSet< ValueT, KeyFunctorT, SparseT >::find(), llvm::MachineInstr::getOperand(), llvm::MachineInstr::getOperandNo(), llvm::MachineOperand::getReg(), I, llvm::MachineOperand::isDead(), llvm::MachineOperand::isDef(), llvm::MachineOperand::isKill(), llvm::TargetRegisterInfo::isPhysicalRegister(), llvm::MachineOperand::isReg(), llvm::MCRegisterInfo::DiffListIterator::isValid(), llvm::RegState::Kill, MI, llvm::MachineInstr::operands_begin(), llvm::MachineInstr::operands_end(), llvm::SmallVectorTemplateBase< T, isPodLike< T >::value >::push_back(), llvm::SmallVectorTemplateBase< T, isPodLike >::push_back(), llvm::MachineOperand::readsReg(), and UseMI.
|
static |
Definition at line 869 of file MachineTraceMetrics.cpp.
References llvm::TargetSchedModel::computeOperandLatency(), llvm::SparseSet< ValueT, KeyFunctorT, SparseT >::end(), llvm::SparseSet< ValueT, KeyFunctorT, SparseT >::erase(), llvm::SparseSet< ValueT, KeyFunctorT, SparseT >::find(), llvm::MachineInstr::getOperand(), llvm::MachineInstr::getOperandNo(), llvm::MachineOperand::getReg(), I, i, llvm::MachineOperand::isDef(), llvm::TargetRegisterInfo::isPhysicalRegister(), llvm::MachineOperand::isReg(), llvm::MachineInstr::isTransient(), llvm::MCRegisterInfo::DiffListIterator::isValid(), MI, llvm::MachineInstr::operands_begin(), llvm::MachineInstr::operands_end(), llvm::SmallVectorTemplateBase< T, isPodLike >::push_back(), llvm::MachineOperand::readsReg(), and llvm::SmallVectorTemplateCommon< T, typename >::size().
Definition at line 38 of file MachineTraceMetrics.cpp.
| machine trace metrics |
Definition at line 38 of file MachineTraceMetrics.cpp.
Definition at line 38 of file MachineTraceMetrics.cpp.
Referenced by ApproximateLoopSize().
1.8.6