Changeset View
Changeset View
Standalone View
Standalone View
llvm/test/Other/opt-pipeline-vector-passes.ll
; RUN: opt -disable-verify -debug-pass-manager -passes='default<O1>' -force-vector-width=4 -S %s 2>&1 | FileCheck %s --check-prefixes=O1 | ; RUN: opt -disable-verify -debug-pass-manager -passes='default<O1>' -force-vector-width=4 -S %s 2>&1 | FileCheck %s --check-prefixes=O1 | ||||
; RUN: opt -disable-verify -debug-pass-manager -passes='default<O2>' -force-vector-width=4 -S %s 2>&1 | FileCheck %s --check-prefixes=O2 | ; RUN: opt -disable-verify -debug-pass-manager -passes='default<O2>' -force-vector-width=4 -S %s 2>&1 | FileCheck %s --check-prefixes=O2 | ||||
; RUN: opt -disable-verify -debug-pass-manager -passes='default<O2>' -force-vector-width=4 -extra-vectorizer-passes -S %s 2>&1 | FileCheck %s --check-prefixes=O2_EXTRA | ; RUN: opt -disable-verify -debug-pass-manager -passes='default<O2>' -force-vector-width=4 -extra-vectorizer-passes -S %s 2>&1 | FileCheck %s --check-prefixes=O2_EXTRA | ||||
aeubanks: this should check that we actually don't run the extra passes when there's no vectorization, e. | |||||
Yes, the original test doesn't really check for that. I'll push a commit to improve the test in that regard separately and will also include the vector loop. fhahn: Yes, the original test doesn't really check for that. I'll push a commit to improve the test in… | |||||
; When the loop doesn't get vectorized, no extra vector passes should run. | |||||
; RUN: opt -disable-verify -debug-pass-manager -passes='default<O2>' -force-vector-width=0 -extra-vectorizer-passes -S %s 2>&1 | FileCheck %s --check-prefixes=O2 | |||||
; REQUIRES: asserts | ; REQUIRES: asserts | ||||
; The loop vectorizer still runs at both -O1/-O2 even with the | ; The loop vectorizer still runs at both -O1/-O2 even with the | ||||
; debug flag, but it only works on loops explicitly annotated | ; debug flag, but it only works on loops explicitly annotated | ||||
; with pragmas. | ; with pragmas. | ||||
; SLP does not run at -O1. Loop vectorization runs, but it only | ; SLP does not run at -O1. Loop vectorization runs, but it only | ||||
; works on loops explicitly annotated with pragmas. | ; works on loops explicitly annotated with pragmas. | ||||
▲ Show 20 Lines • Show All 42 Lines • Show Last 20 Lines |
this should check that we actually don't run the extra passes when there's no vectorization, e.g.
O2-NOT: Running pass: ...