LLVM 20.0.0git
|
This file implements a TargetTransformInfo analysis pass specific to the Hexagon target machine. More...
#include "HexagonTargetTransformInfo.h"
#include "HexagonSubtarget.h"
#include "llvm/Analysis/TargetTransformInfo.h"
#include "llvm/CodeGen/ValueTypes.h"
#include "llvm/IR/InstrTypes.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/User.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Transforms/Utils/LoopPeel.h"
#include "llvm/Transforms/Utils/UnrollLoop.h"
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "hexagontti" |
Variables | |
static cl::opt< bool > | HexagonAutoHVX ("hexagon-autohvx", cl::init(false), cl::Hidden, cl::desc("Enable loop vectorizer for HVX")) |
static cl::opt< bool > | EnableV68FloatAutoHVX ("force-hvx-float", cl::Hidden, cl::desc("Enable auto-vectorization of floatint point types on v68.")) |
static cl::opt< bool > | EmitLookupTables ("hexagon-emit-lookup-tables", cl::init(true), cl::Hidden, cl::desc("Control lookup table emission on Hexagon target")) |
static cl::opt< bool > | HexagonMaskedVMem ("hexagon-masked-vmem", cl::init(true), cl::Hidden, cl::desc("Enable masked loads/stores for HVX")) |
static const unsigned | FloatFactor = 4 |
This file implements a TargetTransformInfo analysis pass specific to the Hexagon target machine.
It uses the target's detailed information to provide more precise answers to certain TTI queries, while letting the target independent and default TTI implementations handle the rest.
Definition in file HexagonTargetTransformInfo.cpp.
#define DEBUG_TYPE "hexagontti" |
Definition at line 29 of file HexagonTargetTransformInfo.cpp.
|
static |
Referenced by llvm::HexagonTTIImpl::shouldBuildLookupTables().
|
static |
Definition at line 48 of file HexagonTargetTransformInfo.cpp.
Referenced by llvm::HexagonTTIImpl::getArithmeticInstrCost(), llvm::HexagonTTIImpl::getCastInstrCost(), llvm::HexagonTTIImpl::getCmpSelInstrCost(), and llvm::HexagonTTIImpl::getMemoryOpCost().
|
static |
|
static |
Referenced by llvm::HexagonTTIImpl::isLegalMaskedLoad(), and llvm::HexagonTTIImpl::isLegalMaskedStore().