1// WebAssemblyInstrSIMD.td - WebAssembly SIMD codegen support -*- tablegen -*-// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9/// 10/// \file 11/// WebAssembly SIMD operand code-gen constructs. 12/// 13//===----------------------------------------------------------------------===// 14 15let Defs = [ARGUMENTS] in { 16 17let isCommutable = 1 in 18defm ADD : SIMDBinaryInt<add, "add ", 24>; 19defm SUB : SIMDBinaryInt<sub, "sub ", 28>; 20let isCommutable = 1 in 21defm MUL : SIMDBinaryInt<mul, "mul ", 32>; 22 23let isCommutable = 1 in 24defm ADD : SIMDBinaryFP<fadd, "add ", 122>; 25defm SUB : SIMDBinaryFP<fsub, "sub ", 124>; 26defm DIV : SIMDBinaryFP<fdiv, "div ", 126>; 27let isCommutable = 1 in 28defm MUL : SIMDBinaryFP<fmul, "mul ", 128>; 29 30} // Defs = [ARGUMENTS] 31