1 //===-- SPIRVInstrFormats.td - SPIR-V Instruction Formats --*- tablegen -*-===//
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
9 def StringImm: Operand<i32>{
10 let PrintMethod="printStringImm";
13 class Op<bits<16> Opcode, dag outs, dag ins, string asmstr, list<dag> pattern = []>
19 let Namespace = "SPIRV";
20 let DecoderNamespace = "SPIRV";
22 dag OutOperandList = outs;
23 dag InOperandList = ins;
24 let AsmString = asmstr;
25 let Pattern = pattern;
28 // Pseudo instructions
29 class Pseudo<dag outs, dag ins> : Op<0, outs, ins, ""> {
31 let hasSideEffects = 0;