diff options
author | Thomas Lively <tlively@google.com> | 2019-01-30 02:23:29 +0000 |
---|---|---|
committer | Thomas Lively <tlively@google.com> | 2019-01-30 02:23:29 +0000 |
commit | 079816efb72c96c928f634d8c5e57a26892cc3d6 (patch) | |
tree | 9e3f9060cb92547d474b3563e3d334cb9bbf111b /clang/lib/CodeGen/CodeGenModule.cpp | |
parent | ccefbbd0f02c5036dd1244ee5c6603f365653fbe (diff) | |
download | bcm5719-llvm-079816efb72c96c928f634d8c5e57a26892cc3d6.tar.gz bcm5719-llvm-079816efb72c96c928f634d8c5e57a26892cc3d6.zip |
[WebAssembly] Optimize BUILD_VECTOR lowering for size
Summary:
Implements custom lowering logic that finds the optimal value for the
initial splat of the vector and either uses it or uses v128.const if
it is available and if it would produce smaller code. This logic
replaces large TableGen ISEL patterns that would lower all non-splat
BUILD_VECTORs into a splat followed by a fixed number of replace_lane
instructions. This CL fixes PR39685.
Reviewers: aheejin
Subscribers: dschuff, sbc100, jgravelle-google, sunfish, llvm-commits
Differential Revision: https://reviews.llvm.org/D56633
llvm-svn: 352592
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions