forked from OSchip/llvm-project
AMDGPU: Move waitcnt intrinsic to instruction definition pattern
llvm-svn: 365349
This commit is contained in:
parent
6afc666eb8
commit
430b0497e7
|
@ -745,6 +745,7 @@ def VReg32OrOffClass : AsmOperandClass {
|
|||
def WAIT_FLAG : Operand <i32> {
|
||||
let ParserMatchClass = SWaitMatchClass;
|
||||
let PrintMethod = "printWaitFlag";
|
||||
let OperandType = "OPERAND_IMMEDIATE";
|
||||
}
|
||||
|
||||
include "SIInstrFormats.td"
|
||||
|
|
|
@ -1089,7 +1089,8 @@ def S_WAKEUP : SOPP <0x00000003, (ins), "s_wakeup"> {
|
|||
}
|
||||
|
||||
let mayLoad = 1, mayStore = 1, hasSideEffects = 1 in
|
||||
def S_WAITCNT : SOPP <0x0000000c, (ins WAIT_FLAG:$simm16), "s_waitcnt $simm16">;
|
||||
def S_WAITCNT : SOPP <0x0000000c, (ins WAIT_FLAG:$simm16), "s_waitcnt $simm16",
|
||||
[(int_amdgcn_s_waitcnt SIMM16bit:$simm16)]>;
|
||||
def S_SETHALT : SOPP <0x0000000d, (ins i16imm:$simm16), "s_sethalt $simm16">;
|
||||
def S_SETKILL : SOPP <0x0000000b, (ins i16imm:$simm16), "s_setkill $simm16">;
|
||||
|
||||
|
@ -1247,17 +1248,6 @@ def : GCNPat<
|
|||
>;
|
||||
|
||||
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// SOPP Patterns
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
def : GCNPat <
|
||||
(int_amdgcn_s_waitcnt i32:$simm16),
|
||||
(S_WAITCNT (as_i16imm $simm16))
|
||||
>;
|
||||
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// Target-specific instruction encodings.
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
|
Loading…
Reference in New Issue