[clang] [llvm] [llvm][fatlto] Add FatLTOCleanup pass (PR #125911)

Nikita Popov via cfe-commits cfe-commits at lists.llvm.org
Mon Feb 10 06:31:50 PST 2025


================
@@ -1,21 +1,24 @@
 // REQUIRES: x86-registered-target
 
+// RUN: rm -rf %t && split-file %s %t
 // RUN: %clang_cc1 -triple x86_64-unknown-fuchsia -O2 -flto -ffat-lto-objects \
-// RUN:          -fsanitize=cfi-icall -fsanitize-trap=cfi-icall -fvisibility=hidden  -emit-llvm -o - %s \
+// RUN:          -fsanitize=cfi-icall -fsanitize-trap=cfi-icall -fvisibility=hidden \
+// RUN:          -emit-llvm -o - %t/a.cpp \
 // RUN:   | FileCheck %s --check-prefix=TYPE_TEST
 
+//--- a.cpp
 // TYPE_TEST: llvm.embedded.object
 // TYPE_TEST-SAME: section ".llvm.lto"
 
+// COM: The FatLTO pipeline should remove all llvm.type.test instructions.
 // TYPE_TEST-LABEL: define hidden void @foo
-//      TYPE_TEST: entry:
-// TYPE_TEST-NEXT:   %cmp14.not = icmp eq i64 %len, 0
-// TYPE_TEST-NEXT:   br i1 %cmp14.not, label %for.end7, label %for.cond1.preheader.preheader
-//      TYPE_TEST: for.cond1.preheader.preheader:                    ; preds = %entry
-// TYPE_TEST-NEXT:   %arrayidx.1 = getelementptr inbounds nuw i8, ptr %ptr, i64 4
-// TYPE_TEST-NEXT:   br label %for.cond1.preheader
-
-// TYPE_TEST-NOT: @llvm.type.test
+//   TYPE_TEST-NOT: @llvm.type.test
+//  TYPE_TEST-NEXT: entry:
+//  TYPE_TEST-NEXT:   %cmp14.not = icmp eq i64 %len, 0
+//  TYPE_TEST-NEXT:   br i1 %cmp14.not, label %for.end7, label %for.cond1.preheader.preheader
+// TYPE_TEST-LABEL: for.cond1.preheader.preheader:                    ; preds = %entry
+//  TYPE_TEST-NEXT:   %arrayidx.1 = getelementptr inbounds nuw i8, ptr %ptr, i64 4
+//  TYPE_TEST-NEXT:   br label %for.cond1.preheader
----------------
nikic wrote:

Please left-align check lines.

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


More information about the cfe-commits mailing list