LLVM: lib/Target/AMDGPU/AMDGPULaneMaskUtils.h Source File (original) (raw)

1

2

3

4

5

6

7

8

9#ifndef LLVM_LIB_TARGET_AMDGPU_UTILS_AMDGPULANEMASKUTILS_H

10#define LLVM_LIB_TARGET_AMDGPU_UTILS_AMDGPULANEMASKUTILS_H

11

14

15namespace llvm {

16

18

20

22public:

43

51 : AMDGPU::S_ANDN2_SAVEEXEC_B64),

53 : AMDGPU::S_ANDN2_B64_term),

55 : AMDGPU::S_AND_SAVEEXEC_B64),

57 : AMDGPU::S_AND_SAVEEXEC_B64_term),

66 : AMDGPU::S_OR_SAVEEXEC_B64),

70

72};

73

78

80 unsigned WavefrontSize = ST.getWavefrontSize();

81 assert(WavefrontSize == 32 || WavefrontSize == 64);

83}

84

85}

86

87}

88

89#endif

assert(UImm &&(UImm !=~static_cast< T >(0)) &&"Invalid immediate!")

AMD GCN specific subclass of TargetSubtarget.

const unsigned CSelectOpc

Definition AMDGPULaneMaskUtils.h:34

const unsigned CMovOpc

Definition AMDGPULaneMaskUtils.h:33

const unsigned AndSaveExecTermOpc

Definition AMDGPULaneMaskUtils.h:31

const unsigned AndTermOpc

Definition AMDGPULaneMaskUtils.h:26

const unsigned XorOpc

Definition AMDGPULaneMaskUtils.h:40

const unsigned WQMOpc

Definition AMDGPULaneMaskUtils.h:42

const unsigned AndN2Opc

Definition AMDGPULaneMaskUtils.h:27

const unsigned OrTermOpc

Definition AMDGPULaneMaskUtils.h:38

const Register VccReg

Definition AMDGPULaneMaskUtils.h:24

const unsigned AndOpc

Definition AMDGPULaneMaskUtils.h:25

constexpr LaneMaskConstants(bool IsWave32)

Definition AMDGPULaneMaskUtils.h:44

const unsigned MovOpc

Definition AMDGPULaneMaskUtils.h:35

static const LaneMaskConstants & get(const GCNSubtarget &ST)

Definition AMDGPULaneMaskUtils.h:79

const unsigned XorTermOpc

Definition AMDGPULaneMaskUtils.h:41

const Register ExecReg

Definition AMDGPULaneMaskUtils.h:23

const unsigned MovTermOpc

Definition AMDGPULaneMaskUtils.h:36

const unsigned OrOpc

Definition AMDGPULaneMaskUtils.h:37

const unsigned AndN2SaveExecOpc

Definition AMDGPULaneMaskUtils.h:28

const unsigned BfmOpc

Definition AMDGPULaneMaskUtils.h:32

const unsigned OrSaveExecOpc

Definition AMDGPULaneMaskUtils.h:39

const unsigned AndSaveExecOpc

Definition AMDGPULaneMaskUtils.h:30

const unsigned AndN2TermOpc

Definition AMDGPULaneMaskUtils.h:29

Wrapper class representing virtual and physical registers.

static constexpr LaneMaskConstants LaneMaskConstants32

Definition AMDGPULaneMaskUtils.h:74

static constexpr LaneMaskConstants LaneMaskConstants64

Definition AMDGPULaneMaskUtils.h:76

This is an optimization pass for GlobalISel generic memory operations.