LLVM: lib/IR/IntrinsicInst.cpp File Reference (original) (raw)
Go to the source code of this file.
Macros | |
---|---|
#define | BEGIN_REGISTER_VP_INTRINSIC(VPID, MASKPOS, VLENPOS) |
#define | BEGIN_REGISTER_VP_INTRINSIC(VPID, MASKPOS, VLENPOS) |
#define | BEGIN_REGISTER_VP_INTRINSIC(VPID, MASKPOS, VLENPOS) |
#define | BEGIN_REGISTER_VP_INTRINSIC(VPID, ...) case Intrinsic::VPID: |
#define | VP_PROPERTY_FUNCTIONAL_OPC(OPC) return Instruction::OPC; |
#define | END_REGISTER_VP_INTRINSIC(VPID) break; |
#define | BEGIN_REGISTER_VP_INTRINSIC(VPID, ...) case Intrinsic::VPID: |
#define | VP_PROPERTY_FUNCTIONAL_INTRINSIC(INTRIN) return Intrinsic::INTRIN; |
#define | END_REGISTER_VP_INTRINSIC(VPID) break; |
#define | BEGIN_REGISTER_VP_INTRINSIC(VPID, ...) case Intrinsic::VPID: |
#define | VP_PROPERTY_NO_FUNCTIONAL return true; |
#define | END_REGISTER_VP_INTRINSIC(VPID) break; |
#define | BEGIN_REGISTER_VP_INTRINSIC(VPID, ...) |
#define | BEGIN_REGISTER_VP_INTRINSIC(VPID, ...) case Intrinsic::VPID: |
#define | VP_PROPERTY_CONSTRAINEDFP(CID) return Intrinsic::CID; |
#define | END_REGISTER_VP_INTRINSIC(VPID) break; |
#define | BEGIN_REGISTER_VP_INTRINSIC(VPID, ...) break; |
#define | VP_PROPERTY_FUNCTIONAL_OPC(OPC) case Instruction::OPC: |
#define | END_REGISTER_VP_INTRINSIC(VPID) return Intrinsic::VPID; |
#define | BEGIN_REGISTER_VP_INTRINSIC(VPID, ...) break; |
#define | VP_PROPERTY_FUNCTIONAL_INTRINSIC(INTRIN) case Intrinsic::INTRIN: |
#define | END_REGISTER_VP_INTRINSIC(VPID) return Intrinsic::VPID; |
#define | BEGIN_REGISTER_VP_INTRINSIC(VPID, ...) case Intrinsic::VPID: |
#define | VP_PROPERTY_BINARYOP return true; |
#define | END_REGISTER_VP_INTRINSIC(VPID) break; |
Functions | |
---|---|
static ValueAsMetadata * | getAsMetadata (Value *V) |
static FCmpInst::Predicate | getFPPredicateFromMD (const Value *Op) |
constexpr bool | isVPIntrinsic (Intrinsic::ID ID) |
static constexpr std::optional< unsigned > | getFunctionalOpcodeForVP (Intrinsic::ID ID) |
static constexpr std::optional< Intrinsic::ID > | getFunctionalIntrinsicIDForVP (Intrinsic::ID ID) |
static constexpr bool | doesVPHaveNoFunctionalEquivalent (Intrinsic::ID ID) |
static constexpr Intrinsic::ID | getForIntrinsic (Intrinsic::ID Id) |
static ICmpInst::Predicate | getIntPredicateFromMD (const Value *Op) |
◆ BEGIN_REGISTER_VP_INTRINSIC [1/11]
| #define BEGIN_REGISTER_VP_INTRINSIC | ( | | VPID, | | -------------------------------------- | - | | ----- | | | MASKPOS, | | | | | | VLENPOS | | | | | ) | | | |
◆ BEGIN_REGISTER_VP_INTRINSIC [2/11]
| #define BEGIN_REGISTER_VP_INTRINSIC | ( | | VPID, | | -------------------------------------- | - | | ----- | | | MASKPOS, | | | | | | VLENPOS | | | | | ) | | | |
◆ BEGIN_REGISTER_VP_INTRINSIC [3/11]
| #define BEGIN_REGISTER_VP_INTRINSIC | ( | | VPID, | | -------------------------------------- | - | | ----- | | | MASKPOS, | | | | | | VLENPOS | | | | | ) | | | |
◆ BEGIN_REGISTER_VP_INTRINSIC [4/11]
| #define BEGIN_REGISTER_VP_INTRINSIC | ( | | VPID, | | -------------------------------------- | --------------------- | | ----- | | | ... | | | | | ) | case Intrinsic::VPID: | | |
◆ BEGIN_REGISTER_VP_INTRINSIC [5/11]
| #define BEGIN_REGISTER_VP_INTRINSIC | ( | | VPID, | | -------------------------------------- | --------------------- | | ----- | | | ... | | | | | ) | case Intrinsic::VPID: | | |
◆ BEGIN_REGISTER_VP_INTRINSIC [6/11]
| #define BEGIN_REGISTER_VP_INTRINSIC | ( | | VPID, | | -------------------------------------- | --------------------- | | ----- | | | ... | | | | | ) | case Intrinsic::VPID: | | |
◆ BEGIN_REGISTER_VP_INTRINSIC [7/11]
| #define BEGIN_REGISTER_VP_INTRINSIC | ( | | VPID, | | -------------------------------------- | - | | ----- | | | ... | | | | | ) | | | |
Value:
getFunctionalOpcodeForVP(Intrinsic::VPID) || \
getFunctionalIntrinsicIDForVP(Intrinsic::VPID));
static constexpr bool doesVPHaveNoFunctionalEquivalent(Intrinsic::ID ID)
Definition at line 544 of file IntrinsicInst.cpp.
◆ BEGIN_REGISTER_VP_INTRINSIC [8/11]
| #define BEGIN_REGISTER_VP_INTRINSIC | ( | | VPID, | | -------------------------------------- | --------------------- | | ----- | | | ... | | | | | ) | case Intrinsic::VPID: | | |
◆ BEGIN_REGISTER_VP_INTRINSIC [9/11]
| #define BEGIN_REGISTER_VP_INTRINSIC | ( | | VPID, | | -------------------------------------- | ------ | | ----- | | | ... | | | | | ) | break; | | |
◆ BEGIN_REGISTER_VP_INTRINSIC [10/11]
| #define BEGIN_REGISTER_VP_INTRINSIC | ( | | VPID, | | -------------------------------------- | ------ | | ----- | | | ... | | | | | ) | break; | | |
◆ BEGIN_REGISTER_VP_INTRINSIC [11/11]
| #define BEGIN_REGISTER_VP_INTRINSIC | ( | | VPID, | | -------------------------------------- | --------------------- | | ----- | | | ... | | | | | ) | case Intrinsic::VPID: | | |
◆ END_REGISTER_VP_INTRINSIC [1/7]
| #define END_REGISTER_VP_INTRINSIC | ( | | VPID | ) | break; | | ------------------------------------ | - | | ---- | - | ------ |
◆ END_REGISTER_VP_INTRINSIC [2/7]
| #define END_REGISTER_VP_INTRINSIC | ( | | VPID | ) | break; | | ------------------------------------ | - | | ---- | - | ------ |
◆ END_REGISTER_VP_INTRINSIC [3/7]
| #define END_REGISTER_VP_INTRINSIC | ( | | VPID | ) | break; | | ------------------------------------ | - | | ---- | - | ------ |
◆ END_REGISTER_VP_INTRINSIC [4/7]
| #define END_REGISTER_VP_INTRINSIC | ( | | VPID | ) | break; | | ------------------------------------ | - | | ---- | - | ------ |
◆ END_REGISTER_VP_INTRINSIC [5/7]
| #define END_REGISTER_VP_INTRINSIC | ( | | VPID | ) | return Intrinsic::VPID; | | ------------------------------------ | - | | ---- | - | ----------------------- |
◆ END_REGISTER_VP_INTRINSIC [6/7]
| #define END_REGISTER_VP_INTRINSIC | ( | | VPID | ) | return Intrinsic::VPID; | | ------------------------------------ | - | | ---- | - | ----------------------- |
◆ END_REGISTER_VP_INTRINSIC [7/7]
| #define END_REGISTER_VP_INTRINSIC | ( | | VPID | ) | break; | | ------------------------------------ | - | | ---- | - | ------ |
◆ VP_PROPERTY_BINARYOP
#define VP_PROPERTY_BINARYOP return true;
◆ VP_PROPERTY_CONSTRAINEDFP
| #define VP_PROPERTY_CONSTRAINEDFP | ( | | CID | ) | return Intrinsic::CID; | | ----------------------------------- | - | | --- | - | ---------------------- |
◆ VP_PROPERTY_FUNCTIONAL_INTRINSIC [1/2]
| #define VP_PROPERTY_FUNCTIONAL_INTRINSIC | ( | | INTRIN | ) | return Intrinsic::INTRIN; | | ------------------------------------------- | - | | ------ | - | ------------------------- |
◆ VP_PROPERTY_FUNCTIONAL_INTRINSIC [2/2]
| #define VP_PROPERTY_FUNCTIONAL_INTRINSIC | ( | | INTRIN | ) | case Intrinsic::INTRIN: | | ------------------------------------------- | - | | ------ | - | ----------------------- |
◆ VP_PROPERTY_FUNCTIONAL_OPC [1/2]
| #define VP_PROPERTY_FUNCTIONAL_OPC | ( | | OPC | ) | return Instruction::OPC; | | ------------------------------------- | - | | --- | - | ------------------------ |
◆ VP_PROPERTY_FUNCTIONAL_OPC [2/2]
| #define VP_PROPERTY_FUNCTIONAL_OPC | ( | | OPC | ) | case Instruction::OPC: | | ------------------------------------- | - | | --- | - | ---------------------- |
◆ VP_PROPERTY_NO_FUNCTIONAL
#define VP_PROPERTY_NO_FUNCTIONAL return true;
◆ doesVPHaveNoFunctionalEquivalent()
static constexpr bool doesVPHaveNoFunctionalEquivalent ( Intrinsic::ID ID) | staticconstexpr |
---|
◆ getAsMetadata()
◆ getForIntrinsic()
◆ getFPPredicateFromMD()
static FCmpInst::Predicate getFPPredicateFromMD ( const Value * Op) | static |
---|
Definition at line 315 of file IntrinsicInst.cpp.
References llvm::CmpInst::BAD_FCMP_PREDICATE, llvm::StringSwitch< T, R >::Case(), llvm::StringSwitch< T, R >::Default(), llvm::CmpInst::FCMP_OEQ, llvm::CmpInst::FCMP_OGE, llvm::CmpInst::FCMP_OGT, llvm::CmpInst::FCMP_OLE, llvm::CmpInst::FCMP_OLT, llvm::CmpInst::FCMP_ONE, llvm::CmpInst::FCMP_ORD, llvm::CmpInst::FCMP_UEQ, llvm::CmpInst::FCMP_UGE, llvm::CmpInst::FCMP_UGT, llvm::CmpInst::FCMP_ULE, llvm::CmpInst::FCMP_ULT, llvm::CmpInst::FCMP_UNE, and llvm::CmpInst::FCMP_UNO.
Referenced by llvm::VPCmpIntrinsic::getPredicate(), and llvm::ConstrainedFPCmpIntrinsic::getPredicate().
◆ getFunctionalIntrinsicIDForVP()
◆ getFunctionalOpcodeForVP()
◆ getIntPredicateFromMD()
static ICmpInst::Predicate getIntPredicateFromMD ( const Value * Op) | static |
---|
Definition at line 755 of file IntrinsicInst.cpp.
References llvm::CmpInst::BAD_ICMP_PREDICATE, llvm::StringSwitch< T, R >::Case(), llvm::StringSwitch< T, R >::Default(), llvm::CmpInst::ICMP_EQ, llvm::CmpInst::ICMP_NE, llvm::CmpInst::ICMP_SGE, llvm::CmpInst::ICMP_SGT, llvm::CmpInst::ICMP_SLE, llvm::CmpInst::ICMP_SLT, llvm::CmpInst::ICMP_UGE, llvm::CmpInst::ICMP_UGT, llvm::CmpInst::ICMP_ULE, and llvm::CmpInst::ICMP_ULT.
Referenced by llvm::VPCmpIntrinsic::getPredicate().