1 // RUN: %clang -target x86_64-apple-darwin10 --analyze %s -o /dev/null -Xclang -analyzer-checker=debug.ConfigDumper -Xclang -analyzer-max-loop -Xclang 34 > %t 2>&1 2 // RUN: FileCheck --input-file=%t %s 3 4 void bar() {} 5 void foo() { 6 // Call bar 33 times so max-times-inline-large is met and 7 // min-blocks-for-inline-large is checked 8 for (int i = 0; i < 34; ++i) { 9 bar(); 10 } 11 } 12 13 class Foo { 14 public: 15 void bar() {} 16 void foo() { bar(); } 17 }; 18 19 // CHECK: [config] 20 // CHECK-NEXT: c++-container-inlining = false 21 // CHECK-NEXT: c++-inlining = destructors 22 // CHECK-NEXT: c++-shared_ptr-inlining = false 23 // CHECK-NEXT: c++-stdlib-inlining = true 24 // CHECK-NEXT: c++-template-inlining = true 25 // CHECK-NEXT: cfg-conditional-static-initializers = true 26 // CHECK-NEXT: cfg-temporary-dtors = false 27 // CHECK-NEXT: faux-bodies = true 28 // CHECK-NEXT: graph-trim-interval = 1000 29 // CHECK-NEXT: inline-lambdas = true 30 // CHECK-NEXT: ipa = dynamic-bifurcate 31 // CHECK-NEXT: ipa-always-inline-size = 3 32 // CHECK-NEXT: leak-diagnostics-reference-allocation = false 33 // CHECK-NEXT: max-inlinable-size = 50 34 // CHECK-NEXT: max-nodes = 150000 35 // CHECK-NEXT: max-times-inline-large = 32 36 // CHECK-NEXT: min-cfg-size-treat-functions-as-large = 14 37 // CHECK-NEXT: mode = deep 38 // CHECK-NEXT: region-store-small-struct-limit = 2 39 // CHECK-NEXT: widen-loops = false 40 // CHECK-NEXT: [stats] 41 // CHECK-NEXT: num-entries = 20 42