From 103f0161b3853e2fd9b12256f3652ceb4d0637f3 Mon Sep 17 00:00:00 2001 From: Thomas Lively Date: Wed, 10 Oct 2018 19:09:16 +0000 Subject: [PATCH] [WebAssembly][NFC] Use vnot patfrag to simplify v128.not Reviewers: aheejin, dschuff Subscribers: sbc100, jgravelle-google, sunfish, llvm-commits Differential Revision: https://reviews.llvm.org/D53097 llvm-svn: 344175 --- llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td b/llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td index 28262fb..491ee56 100644 --- a/llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td +++ b/llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td @@ -508,23 +508,16 @@ defm XOR : SIMDBitwise; } // isCommutable = 1 // Bitwise logic: v128.not -multiclass SIMDNot { - defm NOT_#vec_t : SIMD_I<(outs V128:$dst), (ins V128:$vec), - (outs), (ins), - [(set - (vec_t V128:$dst), - (vec_t (xor - (vec_t V128:$vec), - (vec_t (splat_pat (lane_t -1))) - )) - )], +multiclass SIMDNot { + defm NOT_#vec_t : SIMD_I<(outs V128:$dst), (ins V128:$vec), (outs), (ins), + [(set (vec_t V128:$dst), (vec_t (vnot V128:$vec)))], "v128.not\t$dst, $vec", "v128.not", 63>; } -defm "" : SIMDNot; -defm "" : SIMDNot; -defm "" : SIMDNot; -defm "" : SIMDNot; +defm "" : SIMDNot; +defm "" : SIMDNot; +defm "" : SIMDNot; +defm "" : SIMDNot; // Bitwise select: v128.bitselect def wasm_bitselect_t : SDTypeProfile<1, 3, -- 2.7.4