[PATCH] Reducing the costs of cast instructions to enable more vectorization of smaller types in LoopVectorize

Sam Parker sam.parker at arm.com
Fri Jun 19 00:52:08 PDT 2015


I have changed the algorithms so that they are not recursive. The first pass checks all the instructions top-down and assigns a potential (TBC) narrow type. The second pass then searches bottom up from truncs to confirm, or adjust, the narrow type. I've also added support for sub, ashr and lshr instructions, but would really appreciate my logic being confirmed.


http://reviews.llvm.org/D9822

Files:
  lib/Transforms/Vectorize/LoopVectorize.cpp
  test/Transforms/LoopVectorize/AArch64/loop-vectorization-factors.ll

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D9822.28007.patch
Type: text/x-patch
Size: 33903 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150619/4e358bd1/attachment.bin>


More information about the llvm-commits mailing list