LLVM: lib/Target/LoongArch/LoongArchTargetTransformInfo.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16#ifndef LLVM_LIB_TARGET_LOONGARCH_LOONGARCHTARGETTRANSFORMINFO_H
17#define LLVM_LIB_TARGET_LOONGARCH_LOONGARCHTARGETTRANSFORMINFO_H
18
23
24namespace llvm {
25
29 friend BaseT;
30
31 enum LoongArchRegisterClass { GPRRC, FPRRC, VRRC };
34
37
38public:
40 : BaseT(TM, F.getDataLayout()), ST(TM->getSubtargetImpl(F)),
41 TLI(ST->getTargetLowering()) {}
42
47 Type *Ty = nullptr) const override;
51
55
57
60};
61
62}
63
64#endif
This file provides a helper that implements much of the TTI interface in terms of the target-independ...
uint64_t IntrinsicInst * II
This pass exposes codegen information to IR-level passes.
BasicTTIImplBase(const TargetMachine *TM, const DataLayout &DL)
A wrapper class for inspecting calls to intrinsic functions.
TTI::PopcntSupportKind getPopcntSupport(unsigned TyWidth) const override
unsigned getCacheLineSize() const override
bool shouldExpandReduction(const IntrinsicInst *II) const override
LoongArchTTIImpl(const LoongArchTargetMachine *TM, const Function &F)
Definition LoongArchTargetTransformInfo.h:39
unsigned getRegisterClassForType(bool Vector, Type *Ty=nullptr) const override
TTI::MemCmpExpansionOptions enableMemCmpExpansion(bool OptSize, bool IsZeroCmp) const override
unsigned getMaxInterleaveFactor(ElementCount VF) const override
const char * getRegisterClassName(unsigned ClassID) const override
unsigned getNumberOfRegisters(unsigned ClassID) const override
unsigned getPrefetchDistance() const override
bool enableWritePrefetching() const override
TypeSize getRegisterBitWidth(TargetTransformInfo::RegisterKind K) const override
virtual const DataLayout & getDataLayout() const
This pass provides access to the codegen interfaces that are needed for IR-level transformations.
PopcntSupportKind
Flags indicating the kind of support for population count.
The instances of the Type class are immutable: once they are created, they are never changed.
This is an optimization pass for GlobalISel generic memory operations.
Returns options for expansion of memcmp. IsZeroCmp is.