summaryrefslogtreecommitdiff
path: root/lib/Target/WebAssembly/WebAssemblyInstrInteger.td
diff options
context:
space:
mode:
authorDan Gohman <dan433584@gmail.com>2016-10-24 20:21:49 +0000
committerDan Gohman <dan433584@gmail.com>2016-10-24 20:21:49 +0000
commit8dd4db3f4984e874c3939e6e16f446bbe2fcca5c (patch)
tree52cef43d01d0fbf76ecba32c46d9871714becc27 /lib/Target/WebAssembly/WebAssemblyInstrInteger.td
parent1871c0f45593f48c75fa7d4157de41a846a3fb70 (diff)
[WebAssembly] Update opcode values according to recent spec changes.
This corresponds to the "0xd" opcode renumbering. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@285014 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/WebAssembly/WebAssemblyInstrInteger.td')
-rw-r--r--lib/Target/WebAssembly/WebAssemblyInstrInteger.td60
1 files changed, 30 insertions, 30 deletions
diff --git a/lib/Target/WebAssembly/WebAssemblyInstrInteger.td b/lib/Target/WebAssembly/WebAssemblyInstrInteger.td
index 96ff1c331f8..ab28dd3e1c7 100644
--- a/lib/Target/WebAssembly/WebAssemblyInstrInteger.td
+++ b/lib/Target/WebAssembly/WebAssemblyInstrInteger.td
@@ -17,51 +17,51 @@ let Defs = [ARGUMENTS] in {
// The spaces after the names are for aesthetic purposes only, to make
// operands line up vertically after tab expansion.
let isCommutable = 1 in
-defm ADD : BinaryInt<add, "add ", 0x40, 0x5b>;
-defm SUB : BinaryInt<sub, "sub ", 0x41, 0x5c>;
+defm ADD : BinaryInt<add, "add ", 0x6a, 0x7c>;
+defm SUB : BinaryInt<sub, "sub ", 0x6b, 0x7d>;
let isCommutable = 1 in
-defm MUL : BinaryInt<mul, "mul ", 0x42, 0x5d>;
+defm MUL : BinaryInt<mul, "mul ", 0x6c, 0x7e>;
// Divide and remainder trap on a zero denominator.
let hasSideEffects = 1 in {
-defm DIV_S : BinaryInt<sdiv, "div_s", 0x43, 0x5e>;
-defm DIV_U : BinaryInt<udiv, "div_u", 0x44, 0x5f>;
-defm REM_S : BinaryInt<srem, "rem_s", 0x45, 0x60>;
-defm REM_U : BinaryInt<urem, "rem_u", 0x46, 0x61>;
+defm DIV_S : BinaryInt<sdiv, "div_s", 0x6d, 0x7f>;
+defm DIV_U : BinaryInt<udiv, "div_u", 0x6e, 0x80>;
+defm REM_S : BinaryInt<srem, "rem_s", 0x6f, 0x81>;
+defm REM_U : BinaryInt<urem, "rem_u", 0x70, 0x82>;
} // hasSideEffects = 1
let isCommutable = 1 in {
-defm AND : BinaryInt<and, "and ", 0x47, 0x62>;
-defm OR : BinaryInt<or, "or ", 0x48, 0x63>;
-defm XOR : BinaryInt<xor, "xor ", 0x49, 0x64>;
+defm AND : BinaryInt<and, "and ", 0x71, 0x83>;
+defm OR : BinaryInt<or, "or ", 0x72, 0x84>;
+defm XOR : BinaryInt<xor, "xor ", 0x73, 0x85>;
} // isCommutable = 1
-defm SHL : BinaryInt<shl, "shl ", 0x4a, 0x65>;
-defm SHR_U : BinaryInt<srl, "shr_u", 0x4b, 0x66>;
-defm SHR_S : BinaryInt<sra, "shr_s", 0x4c, 0x67>;
-defm ROTL : BinaryInt<rotl, "rotl", 0xb7, 0xb9>;
-defm ROTR : BinaryInt<rotr, "rotr", 0xb6, 0xb8>;
+defm SHL : BinaryInt<shl, "shl ", 0x74, 0x86>;
+defm SHR_S : BinaryInt<sra, "shr_s", 0x75, 0x87>;
+defm SHR_U : BinaryInt<srl, "shr_u", 0x76, 0x88>;
+defm ROTL : BinaryInt<rotl, "rotl", 0x77, 0x89>;
+defm ROTR : BinaryInt<rotr, "rotr", 0x78, 0x90>;
let isCommutable = 1 in {
-defm EQ : ComparisonInt<SETEQ, "eq ", 0x4d, 0x68>;
-defm NE : ComparisonInt<SETNE, "ne ", 0x4e, 0x69>;
+defm EQ : ComparisonInt<SETEQ, "eq ", 0x46, 0x68>;
+defm NE : ComparisonInt<SETNE, "ne ", 0x47, 0x69>;
} // isCommutable = 1
-defm LT_S : ComparisonInt<SETLT, "lt_s", 0x4f, 0x6a>;
-defm LE_S : ComparisonInt<SETLE, "le_s", 0x50, 0x6b>;
-defm LT_U : ComparisonInt<SETULT, "lt_u", 0x51, 0x6c>;
-defm LE_U : ComparisonInt<SETULE, "le_u", 0x52, 0x6d>;
-defm GT_S : ComparisonInt<SETGT, "gt_s", 0x53, 0x6e>;
-defm GE_S : ComparisonInt<SETGE, "ge_s", 0x54, 0x6f>;
-defm GT_U : ComparisonInt<SETUGT, "gt_u", 0x55, 0x70>;
-defm GE_U : ComparisonInt<SETUGE, "ge_u", 0x56, 0x71>;
+defm LT_S : ComparisonInt<SETLT, "lt_s", 0x48, 0x53>;
+defm LT_U : ComparisonInt<SETULT, "lt_u", 0x49, 0x54>;
+defm GT_S : ComparisonInt<SETGT, "gt_s", 0x4a, 0x55>;
+defm GT_U : ComparisonInt<SETUGT, "gt_u", 0x4b, 0x56>;
+defm LE_S : ComparisonInt<SETLE, "le_s", 0x4c, 0x57>;
+defm LE_U : ComparisonInt<SETULE, "le_u", 0x4d, 0x58>;
+defm GE_S : ComparisonInt<SETGE, "ge_s", 0x4e, 0x59>;
+defm GE_U : ComparisonInt<SETUGE, "ge_u", 0x4f, 0x5a>;
-defm CLZ : UnaryInt<ctlz, "clz ", 0x57, 0x72>;
-defm CTZ : UnaryInt<cttz, "ctz ", 0x58, 0x73>;
-defm POPCNT : UnaryInt<ctpop, "popcnt", 0x59, 0x74>;
+defm CLZ : UnaryInt<ctlz, "clz ", 0x67, 0x79>;
+defm CTZ : UnaryInt<cttz, "ctz ", 0x68, 0x7a>;
+defm POPCNT : UnaryInt<ctpop, "popcnt", 0x69, 0x7b>;
def EQZ_I32 : I<(outs I32:$dst), (ins I32:$src),
[(set I32:$dst, (setcc I32:$src, 0, SETEQ))],
- "i32.eqz \t$dst, $src", 0x5a>;
+ "i32.eqz \t$dst, $src", 0x45>;
def EQZ_I64 : I<(outs I32:$dst), (ins I64:$src),
[(set I32:$dst, (setcc I64:$src, 0, SETEQ))],
- "i64.eqz \t$dst, $src", 0xba>;
+ "i64.eqz \t$dst, $src", 0x50>;
} // Defs = [ARGUMENTS]