diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2017-07-20 10:13:40 +0000 |
---|---|---|
committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2017-07-20 10:13:40 +0000 |
commit | 9d7863b935101e66cdaa7d719f7cdf95da98ad66 (patch) | |
tree | 856da9680cda2520598874d890b58f5edda97734 /clang/lib/Basic/VirtualFileSystem.cpp | |
parent | 3793a82b2806949d9b6975643a3f0159a0a33589 (diff) | |
download | llvm-9d7863b935101e66cdaa7d719f7cdf95da98ad66.zip llvm-9d7863b935101e66cdaa7d719f7cdf95da98ad66.tar.gz llvm-9d7863b935101e66cdaa7d719f7cdf95da98ad66.tar.bz2 |
[DAGCombiner] Match non-uniform constant vectors using predicates.
Most combines currently recognise scalar and splat-vector constants, but not non-uniform vector constants.
This patch introduces a matching mechanism that uses predicates to check against BUILD_VECTOR of ConstantSDNode, as well as scalar ConstantSDNode cases.
I've changed a couple of predicates to demonstrate - the combine-shl changes add currently unsupported cases, while the MatchRotate replaces an existing mechanism.
Differential Revision: https://reviews.llvm.org/D35492
llvm-svn: 308598
Diffstat (limited to 'clang/lib/Basic/VirtualFileSystem.cpp')
0 files changed, 0 insertions, 0 deletions