[PATCH] D108496: [WebAssembly] Lower v2f32 to v2f64 extending loads with promote_low

Thomas Lively via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 20 16:36:44 PDT 2021


tlively created this revision.
tlively added reviewers: aheejin, dschuff.
Herald added subscribers: wingo, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100.
tlively requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

Previously extra wide v4f32 to v4f64 extending loads would be legalized to v2f32
to v2f64 extending loads, which would then be scalarized by legalization. (v2f32
to v2f64 extending loads not produced by legalization were already being emitted
correctly.) Instead, mark v2f32 to v2f64 extending loads as legal and explicitly
lower them using promote_low. This regresses the addressing modes supported for
the extloads not produced by legalization, but that's a fine trade off for now.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D108496

Files:
  llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
  llvm/test/CodeGen/WebAssembly/simd-load-promote-wide.ll
  llvm/test/CodeGen/WebAssembly/simd-offset.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D108496.367924.patch
Type: text/x-patch
Size: 16449 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210820/dd2c717e/attachment.bin>


More information about the llvm-commits mailing list