[PATCH] D49585: [ARM] Prefer lsls+lsrs over lsls+ands or lsrs+ands in Thumb1.

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 19 19:39:29 PDT 2018


efriedma created this revision.
efriedma added reviewers: SjoerdMeijer, t.p.northover, samparker.
Herald added a reviewer: javed.absar.
Herald added subscribers: chrib, kristof.beyls.

Saves materializing the immediate for the "ands".

Corresponding patterns exist for lsrs+lsls, but that seems less common in practice.

Not sure Select() is the best place for this; maybe it could be done as a target-specific combine? But I'm not sure what other consequences messing with the canonical form in DAGCombine would have.


Repository:
  rL LLVM

https://reviews.llvm.org/D49585

Files:
  lib/Target/ARM/ARMISelDAGToDAG.cpp
  test/CodeGen/Thumb/shift-and.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D49585.156419.patch
Type: text/x-patch
Size: 4180 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180720/be0a96f6/attachment.bin>


More information about the llvm-commits mailing list