[PATCH] D83734: [WebAssembly] Lower vselect to v128.bitselect

Thomas Lively via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 13 18:43:16 PDT 2020


tlively created this revision.
tlively added a reviewer: aheejin.
Herald added subscribers: llvm-commits, sunfish, hiraditya, jgravelle-google, sbc100, dschuff.
Herald added a project: LLVM.

We were previously expanding vselect and matching on the expansion to
generate bitselects, but in some cases the expansion would be further
combined and a bitselect would not get generated. This patch improves
codegen in those cases by legalizing vselect and lowering it to
v128.bitselect. The old pattern that matches the expansion is still
useful for lowering IR that already uses the expansion rather than a
select operation.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D83734

Files:
  llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
  llvm/test/CodeGen/WebAssembly/simd-select.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D83734.277633.patch
Type: text/x-patch
Size: 7338 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200714/b315d836/attachment.bin>


More information about the llvm-commits mailing list