[flang-commits] [clang] [flang] [lld] [llvm] Test entry-points for pass-plugins with Bye in clang, flang and lld (PR #172463)
Stefan Gränitz via flang-commits
flang-commits at lists.llvm.org
Tue Dec 16 07:24:54 PST 2025
================
@@ -0,0 +1,62 @@
+! REQUIRES: plugins, examples
+
+! Entry-points in default and -O0 pipeline
+!
+! RUN: %flang -fpass-plugin=%llvmshlibdir/Bye%pluginext \
+! RUN: -Xflang -load -Xflang %llvmshlibdir/Bye%pluginext \
+! RUN: -mllvm -print-ep-callbacks -o /dev/null -S %s | FileCheck --check-prefix=EP %s
+!
+! RUN: %flang -fpass-plugin=%llvmshlibdir/Bye%pluginext -flto=full -O0 \
+! RUN: -Xflang -load -Xflang %llvmshlibdir/Bye%pluginext \
+! RUN: -mllvm -print-ep-callbacks -o /dev/null -S %s | FileCheck --check-prefix=EP %s
+!
+! RUN: %flang -fpass-plugin=%llvmshlibdir/Bye%pluginext -flto=thin -O0 \
+! RUN: -Xflang -load -Xflang %llvmshlibdir/Bye%pluginext \
+! RUN: -mllvm -print-ep-callbacks -o /dev/null -S %s | FileCheck --check-prefix=EP %s
+!
+! EP: PipelineStart
+! EP: PipelineEarlySimplification
+! EP-NOT: Peephole
+! EP: ScalarOptimizerLate
+! EP-NOT: Peephole
+! EP: OptimizerEarly
+! EP: VectorizerStart
+! EP: VectorizerEnd
+! EP: OptimizerLast
----------------
weliveindetail wrote:
I think it can be surprising that Flang runs optimizier and vectorizer callbacks in its default pipeline, while Clang doesn't do that.
https://github.com/llvm/llvm-project/pull/172463
More information about the flang-commits
mailing list