HomePhabricator

[WebAssembly] Optimize ISel for SIMD Boolean reductions

Description

[WebAssembly] Optimize ISel for SIMD Boolean reductions

Summary:
Converting the result *.{all,any}_true to a bool at the source level
generates LLVM IR that compares the result to 0. This check is
redundant since these instructions already return either 0 or 1 and
therefore conform to the BooleanContents setting for WebAssembly. This
CL adds patterns to detect and remove such redundant operations on the
result of Boolean reductions.

Reviewers: dschuff, aheejin

Subscribers: sbc100, jgravelle-google, hiraditya, sunfish, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D63529

Details

Committed
tlivelyJun 18 2019, 5:02 PM
Differential Revision
D63529: [WebAssembly] Optimize ISel for SIMD Boolean reductions
Parents
rL363755: Don't crash if PR_SET_VMA_ANON_NAME fails.
Branches
Unknown
Tags
Unknown