[PATCH] D47725: [SelectionDAG] Provide default expansion for rotates

Krzysztof Parzyszek via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 5 14:47:17 PDT 2018


kparzysz updated this revision to Diff 150046.
kparzysz added a comment.

Using UREM ended up calling runtime functions (since UREM is a libcall on Hexagon), so I switched it back to using AND.  Eli's comment confirms that only types that are power-of-2 bits wide can exist at this point.

Per Eli's request, expanded the testcase to include checks for the actual expansion code.


Repository:
  rL LLVM

https://reviews.llvm.org/D47725

Files:
  lib/CodeGen/SelectionDAG/DAGCombiner.cpp
  lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
  lib/Target/Hexagon/HexagonISelLowering.cpp
  lib/Target/Hexagon/HexagonISelLowering.h
  lib/Target/Hexagon/HexagonPatterns.td
  test/CodeGen/Hexagon/rotate.ll
  test/CodeGen/Hexagon/rotl-i64.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D47725.150046.patch
Type: text/x-patch
Size: 13078 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180605/bbe8b5d8/attachment.bin>


More information about the llvm-commits mailing list