summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td')
-rw-r--r--llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td17
1 files changed, 14 insertions, 3 deletions
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td b/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td
index 061a253816e..dfa66cd2dc1 100644
--- a/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td
@@ -138,9 +138,20 @@ def : Pat<(i32 (WebAssemblywrapper texternalsym:$addr)),
let Defs = [ARGUMENTS] in {
// Function signature and local variable declaration "instructions".
-def PARAM : I<(outs), (ins variable_ops), [], ".param \t">;
-def RESULT : I<(outs), (ins variable_ops), [], ".result \t">;
-def LOCAL : I<(outs), (ins variable_ops), [], ".local \t">;
+// Set TSFlags{0} to 1 to indicate that the variable_ops are immediates.
+// Set TSFlags{1} to 1 to indicate that the immediates represent types.
+def PARAM : I<(outs), (ins variable_ops), [], ".param \t"> {
+ let TSFlags{0} = 1;
+ let TSFlags{1} = 1;
+}
+def RESULT : I<(outs), (ins variable_ops), [], ".result \t"> {
+ let TSFlags{0} = 1;
+ let TSFlags{1} = 1;
+}
+def LOCAL : I<(outs), (ins variable_ops), [], ".local \t"> {
+ let TSFlags{0} = 1;
+ let TSFlags{1} = 1;
+}
} // Defs = [ARGUMENTS]
OpenPOWER on IntegriCloud