summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorAmara Emerson <amara.emerson@arm.com>2017-05-10 09:42:49 +0000
committerAmara Emerson <amara.emerson@arm.com>2017-05-10 09:42:49 +0000
commit0dd30f878bb418c331563dd1b206fae8f6910609 (patch)
tree72f3c6a63a2e1ef5f16001e6723b0edad9e68caa /tools
parenta2ef53afc07ba3a0503361765506b2e4be3c9d0c (diff)
Add a late IR expansion pass for the experimental reduction intrinsics.
This pass uses a new target hook to decide whether or not to expand a particular intrinsic to the shuffevector sequence. Differential Revision: https://reviews.llvm.org/D32245 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@302631 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools')
-rw-r--r--tools/llc/llc.cpp1
-rw-r--r--tools/opt/opt.cpp1
2 files changed, 2 insertions, 0 deletions
diff --git a/tools/llc/llc.cpp b/tools/llc/llc.cpp
index 7c81abaed75..9efad747aa1 100644
--- a/tools/llc/llc.cpp
+++ b/tools/llc/llc.cpp
@@ -301,6 +301,7 @@ int main(int argc, char **argv) {
initializeConstantHoistingLegacyPassPass(*Registry);
initializeScalarOpts(*Registry);
initializeVectorization(*Registry);
+ initializeExpandReductionsPass(*Registry);
// Register the target printer for --version.
cl::AddExtraVersionPrinter(TargetRegistry::printRegisteredTargetsForVersion);
diff --git a/tools/opt/opt.cpp b/tools/opt/opt.cpp
index 0b584d45b28..3c6188a0dc6 100644
--- a/tools/opt/opt.cpp
+++ b/tools/opt/opt.cpp
@@ -397,6 +397,7 @@ int main(int argc, char **argv) {
initializeInterleavedAccessPass(Registry);
initializeCountingFunctionInserterPass(Registry);
initializeUnreachableBlockElimLegacyPassPass(Registry);
+ initializeExpandReductionsPass(Registry);
#ifdef LINK_POLLY_INTO_TOOLS
polly::initializePollyPasses(Registry);