LLVM  8.0.1
Namespaces | Macros | Functions
HexagonConstPropagation.cpp File Reference
#include "HexagonInstrInfo.h"
#include "HexagonRegisterInfo.h"
#include "HexagonSubtarget.h"
#include "llvm/ADT/APFloat.h"
#include "llvm/ADT/APInt.h"
#include "llvm/ADT/PostOrderIterator.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineOperand.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/TargetRegisterInfo.h"
#include "llvm/CodeGen/TargetSubtargetInfo.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/Type.h"
#include "llvm/Pass.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/raw_ostream.h"
#include <cassert>
#include <cstdint>
#include <cstring>
#include <iterator>
#include <map>
#include <queue>
#include <set>
#include <utility>
#include <vector>
Include dependency graph for HexagonConstPropagation.cpp:

Go to the source code of this file.

Namespaces

 llvm
 This class represents lattice values for constants.
 

Macros

#define DEBUG_TYPE   "hcp"
 

Functions

FunctionPassllvm::createHexagonConstPropagationPass ()
 
void llvm::initializeHexagonConstPropagationPass (PassRegistry &Registry)
 
 INITIALIZE_PASS (HexagonConstPropagation, "hexagon-constp", "Hexagon Constant Propagation", false, false) HexagonConstEvaluator
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "hcp"

Definition at line 10 of file HexagonConstPropagation.cpp.

Referenced by INITIALIZE_PASS().

Function Documentation

◆ INITIALIZE_PASS()

INITIALIZE_PASS ( HexagonConstPropagation  ,
"hexagon-constp"  ,
"Hexagon Constant Propagation ,
false  ,
false   
)

Definition at line 1904 of file HexagonConstPropagation.cpp.

References llvm::MachineInstrBuilder::addImm(), llvm::MachineInstr::addOperand(), llvm::MachineInstrBuilder::addReg(), assert(), B, llvm::tgtok::Bits, llvm::BuildMI(), C, llvm::HexagonISD::CONST32, D, llvm::dbgs(), DEBUG_TYPE, llvm::DebugFlag, E, llvm::SmallVectorBase::empty(), EQ, llvm::DebugLoc::get(), llvm::ConstantInt::get(), getBitWidth(), llvm::APInt::getBitWidth(), getCmp(), llvm::MachineInstr::getDebugLoc(), llvm::MachineOperand::getImm(), llvm::Type::getInt32Ty(), llvm::Type::getInt64Ty(), llvm::ilist_node_impl< OptionsT >::getIterator(), llvm::MachineOperand::getMBB(), llvm::MachineFunction::getName(), llvm::MachineInstr::getNumOperands(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::MachineBasicBlock::getParent(), llvm::MachineInstr::getParent(), llvm::MachineOperand::getReg(), llvm::AMDGPU::getRegBitWidth(), llvm::getRegState(), llvm::APInt::getSExtValue(), llvm::MachineOperand::getSubReg(), llvm::APInt::getZExtValue(), llvm::MipsISD::Hi, I, llvm::SetVector< T, Vector, Set >::insert(), llvm::MachineInstr::isBranch(), llvm::MachineInstr::isCall(), llvm::MachineInstr::isCompare(), llvm::MachineInstr::isCopy(), llvm::isCurrentDebugType(), llvm::MachineOperand::isDef(), llvm::MachineOperand::isImm(), llvm::MachineOperand::isImplicit(), llvm::isInt< 8 >(), llvm::APInt::isIntN(), llvm::MachineBasicBlock::isLayoutSuccessor(), llvm::MachineInstr::isPHI(), llvm::MachineOperand::isReg(), llvm::MachineInstr::isRegSequence(), llvm::APInt::isSignedIntN(), llvm::MachineInstr::isUnconditionalBranch(), llvm::MachineOperand::isUse(), llvm::TargetRegisterInfo::isVirtualRegister(), LLVM_DEBUG, LLVM_FALLTHROUGH, llvm_unreachable, llvm::MipsISD::Lo, llvm::Lo_32(), llvm::AArch64CC::LS, llvm::AArch64_AM::LSL, llvm::AArch64_AM::LSR, llvm::Intrinsic::memcpy, MI, MRI, llvm::AArch64CC::NE, llvm::RISCVFenceField::O, llvm::MachineInstr::operands(), P, llvm::printMBBReference(), llvm::printReg(), llvm::Hexagon::ps_sub_hi, llvm::Hexagon::ps_sub_lo, llvm::SmallVectorTemplateBase< T >::push_back(), llvm::SmallVectorTemplateBase< T, bool >::push_back(), R2, Register, llvm::MachineInstr::RemoveOperand(), llvm::MachineInstr::setDesc(), llvm::MachineOperand::setIsKill(), llvm::MachineOperand::setReg(), llvm::SmallVectorBase::size(), llvm::SetVector< T, Vector, Set >::size(), T, llvm::APInt::trunc(), llvm::RISCVFenceField::W, and llvm::APInt::zextOrSelf().