[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:26:30 PST 2025


================
@@ -1,9 +1,44 @@
 ; REQUIRES: x86, plugins, examples
 ; UNSUPPORTED: target={{.*windows.*}}
-; RUN: opt -module-summary %s -o %t.o
+; RUN: opt %s -o %t.o
+; RUN: opt -module-summary %s -o %t_thin.o
+
 ; RUN: ld.lld -%loadnewpmbye --lto-newpm-passes="goodbye" -mllvm=%loadbye -mllvm=-wave-goodbye %t.o -o /dev/null 2>&1 | FileCheck %s
 ; CHECK: Bye
 
+; Entry-points in pipeline for regular/monolithic LTO
+;
+; RUN: ld.lld -%loadnewpmbye -mllvm=%loadbye -mllvm=-print-ep-callbacks %t.o \
+; RUN:         -shared -o /dev/null | FileCheck --check-prefix=REGULAR %s
+;
+; REGULAR:      FullLinkTimeOptimizationEarly
+; REGULAR-NOT:  PipelineStart
+; REGULAR-NOT:  PipelineEarlySimplification
+; REGULAR:      Peephole
+; REGULAR-NOT:  ScalarOptimizerLate
+; REGULAR-NOT:  OptimizerEarly
+; REGULAR:      VectorizerStart
+; REGULAR:      VectorizerEnd
+; REGULAR-NOT:  OptimizerLast
----------------
weliveindetail wrote:

I think it can be surprising that LLD doesn't exercise the optimizer callbacks around the ones from the vectorizer, while ALL other tools would do that.

https://github.com/llvm/llvm-project/pull/172463


More information about the flang-commits mailing list