LLVM 20.0.0git
|
#include "Hexagon.h"
#include "HexagonInstrInfo.h"
#include "HexagonMachineFunctionInfo.h"
#include "HexagonRegisterInfo.h"
#include "HexagonSubtarget.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/Pass.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/Support/CommandLine.h"
#include <map>
Go to the source code of this file.
Namespaces | |
namespace | llvm |
This is an optimization pass for GlobalISel generic memory operations. | |
Functions | |
void | llvm::initializeHexagonVExtractPass (PassRegistry &) |
FunctionPass * | llvm::createHexagonVExtract () |
INITIALIZE_PASS (HexagonVExtract, "hexagon-vextract", "Hexagon optimize vextract", false, false) unsigned HexagonVExtract | |
Variables | |
static cl::opt< unsigned > | VExtractThreshold ("hexagon-vextract-threshold", cl::Hidden, cl::init(1), cl::desc("Threshold for triggering vextract replacement")) |
INITIALIZE_PASS | ( | HexagonVExtract | , |
"hexagon-vextract" | , | ||
"Hexagon optimize vextract" | , | ||
false | , | ||
false | |||
) |
Definition at line 64 of file HexagonVExtract.cpp.
References llvm::MachineInstrBuilder::add(), llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addReg(), llvm::BuildMI(), DL, llvm::MachineOperand::getImm(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::MachineBasicBlock::getParent(), and MRI.