[Reassociate] Add initial support for vector instructions.
authorRobert Lougher <rob.lougher@gmail.com>
Fri, 13 Mar 2015 18:33:27 +0000 (18:33 +0000)
committerRobert Lougher <rob.lougher@gmail.com>
Fri, 13 Mar 2015 18:33:27 +0000 (18:33 +0000)
commit4635abb06529379bf2641b26d07d29aed5ce59f4
treeba8a21e5bbf5863c565c3305f064239f73639cc9
parent011536a1cceaf8d7c0a967788c3e05f8cfff38d1
[Reassociate] Add initial support for vector instructions.

This patch adds initial support for vector instructions to the reassociation
pass. It enables most parts of the pass to work with vectors but to keep the
size of the patch small, optimization of Xor trees, canonicalization of
negative constants and converting shifts to muls, etc., have been left out.
This will be handled in later patches.

The patch is based on an initial patch by Chad Rosier.

Differential Revision: http://reviews.llvm.org/D7566

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@232190 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Scalar/Reassociate.cpp
test/Transforms/Reassociate/fast-ReassociateVector.ll