[PATCH] D66519: [ARM] Fix lsrl with a 128/256 bit shift amount or a shift of 32

Sam Tebbs via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 21 02:57:30 PDT 2019


samtebbs created this revision.
samtebbs added reviewers: dmgreen, SjoerdMeijer, samparker, t.p.northover, olista01, simon_tatham.
Herald added subscribers: hiraditya, kristof.beyls, javed.absar.
Herald added a project: LLVM.

This patch fixes shifts by a 128/256 bit shift amount. It also fixes
codegen for shifts of 32 by delegating to LLVM's default optimisation
instead of emitting a long shift.

Tests that used to generate long shifts of 32 are updated to check for the
more optimised codegen.


https://reviews.llvm.org/D66519

Files:
  llvm/lib/Target/ARM/ARMISelLowering.cpp
  llvm/test/CodeGen/ARM/shift_parts.ll
  llvm/test/CodeGen/Thumb2/mve-abs.ll
  llvm/test/CodeGen/Thumb2/mve-div-expand.ll
  llvm/test/CodeGen/Thumb2/mve-vcvt.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D66519.216358.patch
Type: text/x-patch
Size: 9298 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190821/9bab64fa/attachment.bin>


More information about the llvm-commits mailing list