Skip to content
This repository was archived by the owner on Mar 28, 2020. It is now read-only.

Commit 39dbb53

Browse files
committed
[AMDGPU] Refactor SOP instructions TD files.
Differential revision: https://reviews.llvm.org/D23617 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@280101 91177308-0d34-0410-b5e6-96231b3b80d8
1 parent db6b577 commit 39dbb53

File tree

4 files changed

+1105
-914
lines changed

4 files changed

+1105
-914
lines changed

lib/Target/AMDGPU/SIInstrFormats.td

Lines changed: 0 additions & 126 deletions
Original file line numberDiff line numberDiff line change
@@ -203,69 +203,6 @@ class VOP3Common <dag outs, dag ins, string asm = "",
203203
// Scalar operations
204204
//===----------------------------------------------------------------------===//
205205

206-
class SOP1e <bits<8> op> : Enc32 {
207-
bits<7> sdst;
208-
bits<8> src0;
209-
210-
let Inst{7-0} = src0;
211-
let Inst{15-8} = op;
212-
let Inst{22-16} = sdst;
213-
let Inst{31-23} = 0x17d; //encoding;
214-
}
215-
216-
class SOP2e <bits<7> op> : Enc32 {
217-
bits<7> sdst;
218-
bits<8> src0;
219-
bits<8> src1;
220-
221-
let Inst{7-0} = src0;
222-
let Inst{15-8} = src1;
223-
let Inst{22-16} = sdst;
224-
let Inst{29-23} = op;
225-
let Inst{31-30} = 0x2; // encoding
226-
}
227-
228-
class SOPCe <bits<7> op> : Enc32 {
229-
bits<8> src0;
230-
bits<8> src1;
231-
232-
let Inst{7-0} = src0;
233-
let Inst{15-8} = src1;
234-
let Inst{22-16} = op;
235-
let Inst{31-23} = 0x17e;
236-
}
237-
238-
class SOPKe <bits<5> op> : Enc32 {
239-
bits <7> sdst;
240-
bits <16> simm16;
241-
242-
let Inst{15-0} = simm16;
243-
let Inst{22-16} = sdst;
244-
let Inst{27-23} = op;
245-
let Inst{31-28} = 0xb; //encoding
246-
}
247-
248-
class SOPK64e <bits<5> op> : Enc64 {
249-
bits <7> sdst = 0;
250-
bits <16> simm16;
251-
bits <32> imm;
252-
253-
let Inst{15-0} = simm16;
254-
let Inst{22-16} = sdst;
255-
let Inst{27-23} = op;
256-
let Inst{31-28} = 0xb;
257-
258-
let Inst{63-32} = imm;
259-
}
260-
261-
class SOPPe <bits<7> op> : Enc32 {
262-
bits <16> simm16;
263-
264-
let Inst{15-0} = simm16;
265-
let Inst{22-16} = op;
266-
let Inst{31-23} = 0x17f; // encoding
267-
}
268-
269206
class SMRDe <bits<5> op, bits<1> imm> : Enc32 {
270207
bits<7> sdst;
271208
bits<7> sbase;
@@ -303,69 +240,6 @@ class SMRD_IMMe_ci <bits<5> op> : Enc64 {
303240
let Inst{63-32} = offset;
304241
}
305242

306-
let SchedRW = [WriteSALU] in {
307-
class SOP1 <dag outs, dag ins, string asm, list<dag> pattern> :
308-
InstSI<outs, ins, asm, pattern> {
309-
let mayLoad = 0;
310-
let mayStore = 0;
311-
let hasSideEffects = 0;
312-
let isCodeGenOnly = 0;
313-
let SALU = 1;
314-
let SOP1 = 1;
315-
}
316-
317-
class SOP2 <dag outs, dag ins, string asm, list<dag> pattern> :
318-
InstSI <outs, ins, asm, pattern> {
319-
320-
let mayLoad = 0;
321-
let mayStore = 0;
322-
let hasSideEffects = 0;
323-
let isCodeGenOnly = 0;
324-
let SALU = 1;
325-
let SOP2 = 1;
326-
327-
let UseNamedOperandTable = 1;
328-
}
329-
330-
class SOPC <bits<7> op, dag outs, dag ins, string asm, list<dag> pattern> :
331-
InstSI<outs, ins, asm, pattern>, SOPCe <op> {
332-
333-
let mayLoad = 0;
334-
let mayStore = 0;
335-
let hasSideEffects = 0;
336-
let SALU = 1;
337-
let SOPC = 1;
338-
let isCodeGenOnly = 0;
339-
let Defs = [SCC];
340-
341-
let UseNamedOperandTable = 1;
342-
}
343-
344-
class SOPK <dag outs, dag ins, string asm, list<dag> pattern> :
345-
InstSI <outs, ins , asm, pattern> {
346-
347-
let mayLoad = 0;
348-
let mayStore = 0;
349-
let hasSideEffects = 0;
350-
let SALU = 1;
351-
let SOPK = 1;
352-
353-
let UseNamedOperandTable = 1;
354-
}
355-
356-
class SOPP <bits<7> op, dag ins, string asm, list<dag> pattern = []> :
357-
InstSI <(outs), ins, asm, pattern >, SOPPe <op> {
358-
359-
let mayLoad = 0;
360-
let mayStore = 0;
361-
let hasSideEffects = 0;
362-
let SALU = 1;
363-
let SOPP = 1;
364-
365-
let UseNamedOperandTable = 1;
366-
}
367-
368-
} // let SchedRW = [WriteSALU]
369243

370244
class SMRD <dag outs, dag ins, string asm, list<dag> pattern> :
371245
InstSI<outs, ins, asm, pattern> {

0 commit comments

Comments
 (0)