diff options
Diffstat (limited to 'contrib/llvm-project/llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h')
-rw-r--r-- | contrib/llvm-project/llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/contrib/llvm-project/llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h b/contrib/llvm-project/llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h index e61021d451f8..03632ac18598 100644 --- a/contrib/llvm-project/llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h +++ b/contrib/llvm-project/llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h @@ -35,9 +35,15 @@ private: SDValue getFFBX_U32(SelectionDAG &DAG, SDValue Op, const SDLoc &DL, unsigned Opc) const; public: + /// \returns The minimum number of bits needed to store the value of \Op as an + /// unsigned integer. Truncating to this size and then zero-extending to the + /// original size will not change the value. static unsigned numBitsUnsigned(SDValue Op, SelectionDAG &DAG); + + /// \returns The minimum number of bits needed to store the value of \Op as a + /// signed integer. Truncating to this size and then sign-extending to the + /// original size will not change the value. static unsigned numBitsSigned(SDValue Op, SelectionDAG &DAG); - static bool hasDefinedInitializer(const GlobalValue *GV); protected: SDValue LowerEXTRACT_SUBVECTOR(SDValue Op, SelectionDAG &DAG) const; @@ -337,7 +343,7 @@ namespace AMDGPUISD { enum NodeType : unsigned { // AMDIL ISD Opcodes FIRST_NUMBER = ISD::BUILTIN_OP_END, - UMUL, // 32bit unsigned multiplication + UMUL, // 32bit unsigned multiplication BRANCH_COND, // End AMDIL ISD Opcodes @@ -360,6 +366,9 @@ enum NodeType : unsigned { // Return with values from a non-entry function. RET_FLAG, + // Return with values from a non-entry function (AMDGPU_Gfx CC). + RET_GFX_FLAG, + DWORDADDR, FRACT, @@ -416,10 +425,10 @@ enum NodeType : unsigned { DOT4, CARRY, BORROW, - BFE_U32, // Extract range of bits with zero extension to 32-bits. - BFE_I32, // Extract range of bits with sign extension to 32-bits. - BFI, // (src0 & src1) | (~src0 & src2) - BFM, // Insert a range of bits into a 32-bit word. + BFE_U32, // Extract range of bits with zero extension to 32-bits. + BFE_I32, // Extract range of bits with sign extension to 32-bits. + BFI, // (src0 & src1) | (~src0 & src2) + BFM, // Insert a range of bits into a 32-bit word. FFBH_U32, // ctlz with -1 if input is zero. FFBH_I32, FFBL_B32, // cttz with -1 if input is zero. @@ -528,7 +537,6 @@ enum NodeType : unsigned { LAST_AMDGPU_ISD_NUMBER }; - } // End namespace AMDGPUISD } // End namespace llvm |