1 // RUN: %clang_cc1 -triple x86_64-linux-gnu -fsanitize=address -emit-llvm -O3 -fdebug-pass-manager -fexperimental-new-pass-manager -o - %s 2>&1 | FileCheck %s 2 // RUN: %clang_cc1 -triple x86_64-linux-gnu -fsanitize=thread -emit-llvm -O3 -fdebug-pass-manager -fexperimental-new-pass-manager -o - %s 2>&1 | FileCheck %s 3 // RUN: %clang_cc1 -triple x86_64-linux-gnu -fsanitize=memory -emit-llvm -O3 -fdebug-pass-manager -fexperimental-new-pass-manager -o - %s 2>&1 | FileCheck %s 4 5 // This is regression test for PR42877 6 7 typedef struct a *b; 8 struct a { 9 int c; 10 }; 11 int d; 12 b e; 13 static void f(b g) { 14 for (d = g->c;;) 15 ; 16 } 17 void h() { f(e); } 18 19 // CHECK: Running pass: {{.*}}SanitizerPass 20 // CHECK-NOT: Running pass: LoopSimplifyPass on {{.*}}san.module_ctor 21 // CHECK: Running analysis: DominatorTreeAnalysis on {{.*}}san.module_ctor 22