https://github.com/echristo updated https://github.com/llvm/llvm-project/pull/213809
>From fdb11e9ae70158208198fdac28b4c8d96089a55a Mon Sep 17 00:00:00 2001 From: Eric Christopher <[email protected]> Date: Mon, 27 Jul 2026 20:27:16 -0700 Subject: [PATCH 1/2] [FileCheck] Avoid matching IR keywords in source filenames Anchor checks for declare, define, and comdat to the start of IR lines so source paths in module headers cannot satisfy or invalidate them. --- clang/test/CodeGen/openacc-noop-decl.c | 4 ++-- clang/test/Modules/codegen-opt.test | 2 +- llvm/test/tools/llvm-reduce/remove-dso-local.ll | 4 ++-- llvm/test/tools/llvm-reduce/remove-function-attributes.ll | 2 +- llvm/test/tools/llvm-reduce/remove-module-data.ll | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/clang/test/CodeGen/openacc-noop-decl.c b/clang/test/CodeGen/openacc-noop-decl.c index 41f756d835aa5..f2a2690e23572 100644 --- a/clang/test/CodeGen/openacc-noop-decl.c +++ b/clang/test/CodeGen/openacc-noop-decl.c @@ -5,11 +5,11 @@ void name(); void foo() { #pragma acc declare - // CHECK-NOT: declare + // CHECK-NOT: {{^}}declare #pragma acc routine(name) worker // CHECK-NOT: routine } #pragma acc declare - // CHECK-NOT: declare + // CHECK-NOT: {{^}}declare #pragma acc routine(name) worker // CHECK-NOT: routine diff --git a/clang/test/Modules/codegen-opt.test b/clang/test/Modules/codegen-opt.test index eafd47ae1ee3a..15a953b06e7f4 100644 --- a/clang/test/Modules/codegen-opt.test +++ b/clang/test/Modules/codegen-opt.test @@ -56,7 +56,7 @@ BAR-OPT-NOT: {{define|declare}} USE-OPT: @_ZZ3foovE1i = linkonce_odr global i32 0, comdat -USE-CMN-NOT: {{comdat|define|declare}} +USE-CMN-NOT: {{^(comdat|define|declare)}} USE-CMN: define{{.*}} i32 @main() USE-CMN-NOT: {{define|declare}} USE: declare void @_Z3barv() diff --git a/llvm/test/tools/llvm-reduce/remove-dso-local.ll b/llvm/test/tools/llvm-reduce/remove-dso-local.ll index dd9398bd9e434..e8aacf566fc4a 100644 --- a/llvm/test/tools/llvm-reduce/remove-dso-local.ll +++ b/llvm/test/tools/llvm-reduce/remove-dso-local.ll @@ -3,7 +3,7 @@ ; RUN: llvm-reduce --abort-on-invalid-reduction --delta-passes=global-values --test FileCheck --test-arg --check-prefixes=CHECK-INTERESTINGNESS --test-arg %s --test-arg --input-file %s -o %t ; RUN: FileCheck --check-prefix=CHECK-FINAL %s < %t -; CHECK-INTERESTINGNESS: declare +; CHECK-INTERESTINGNESS: {{^}}declare ; CHECK-INTERESTINGNESS-SAME: void @f0 ; CHECK-INTERESTINGNESS-SAME: i32 ; CHECK-INTERESTINGNESS-SAME: i32 @@ -12,7 +12,7 @@ declare dso_local void @f0(i32, i32) -; CHECK-INTERESTINGNESS: declare +; CHECK-INTERESTINGNESS: {{^}}declare ; CHECK-INTERESTINGNESS-SAME: dso_local ; CHECK-INTERESTINGNESS-SAME: void @f1 ; CHECK-INTERESTINGNESS-SAME: i32 diff --git a/llvm/test/tools/llvm-reduce/remove-function-attributes.ll b/llvm/test/tools/llvm-reduce/remove-function-attributes.ll index 4f254d24eca2d..43005dd3cf75c 100644 --- a/llvm/test/tools/llvm-reduce/remove-function-attributes.ll +++ b/llvm/test/tools/llvm-reduce/remove-function-attributes.ll @@ -3,7 +3,7 @@ ; RUN: llvm-reduce --test FileCheck --test-arg --check-prefixes=CHECK-INTERESTINGNESS --test-arg %s --test-arg --input-file %s -o %t ; RUN: FileCheck --check-prefix=CHECK-FINAL %s < %t -; CHECK-INTERESTINGNESS: declare +; CHECK-INTERESTINGNESS: {{^}}declare ; CHECK-INTERESTINGNESS-SAME: "attr0" ; CHECK-INTERESTINGNESS-SAME: void @f0 ; CHECK-INTERESTINGNESS-SAME: i32 diff --git a/llvm/test/tools/llvm-reduce/remove-module-data.ll b/llvm/test/tools/llvm-reduce/remove-module-data.ll index 50105a05c0ecb..f6352f6992769 100644 --- a/llvm/test/tools/llvm-reduce/remove-module-data.ll +++ b/llvm/test/tools/llvm-reduce/remove-module-data.ll @@ -4,7 +4,7 @@ ; RUN: llvm-reduce -abort-on-invalid-reduction --test FileCheck --test-arg --check-prefixes=CHECK-INTERESTINGNESS --test-arg %s --test-arg --input-file %s -o %t ; RUN: FileCheck --check-prefix=CHECK-FINAL %s < %t -; CHECK-INTERESTINGNESS: declare +; CHECK-INTERESTINGNESS: {{^}}declare ; CHECK-FILE: ModuleID ; CHECK-FILE: source_filename >From 86d7e09b982f6cce63326b4f28071345667cd861 Mon Sep 17 00:00:00 2001 From: Eric Christopher <[email protected]> Date: Mon, 3 Aug 2026 22:27:50 -0700 Subject: [PATCH 2/2] Revert this test back to what it was testing and add a triple line to avoid the problem of branches with declare in the name by anchoring a different way. --- clang/test/CodeGen/openacc-noop-decl.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/clang/test/CodeGen/openacc-noop-decl.c b/clang/test/CodeGen/openacc-noop-decl.c index f2a2690e23572..9ff69b99cf9e5 100644 --- a/clang/test/CodeGen/openacc-noop-decl.c +++ b/clang/test/CodeGen/openacc-noop-decl.c @@ -1,15 +1,16 @@ // RUN: %clang_cc1 %s -emit-llvm -o - | FileCheck %s +// CHECK: target triple // Check to ensure these are no-ops/don't really do anything. void name(); void foo() { #pragma acc declare - // CHECK-NOT: {{^}}declare + // CHECK-NOT: declare #pragma acc routine(name) worker // CHECK-NOT: routine } #pragma acc declare - // CHECK-NOT: {{^}}declare + // CHECK-NOT: declare #pragma acc routine(name) worker // CHECK-NOT: routine _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
