• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Basic binding.
2 // RUN: %clang -target i386-unknown-unknown -ccc-print-bindings %s 2> %t
3 // RUN: grep '"clang", inputs: \[".*bindings.c"\], output: ".*\.s"' %t
4 // RUN: grep '"gcc::Assemble", inputs: \[".*\.s"\], output: ".*\.o"' %t
5 // RUN: grep '"gcc::Link", inputs: \[".*\.o"\], output: "a.out"' %t
6 
7 // RUN: %clang -target i386-unknown-unknown -ccc-print-bindings -ccc-no-clang %s 2> %t
8 // RUN: grep '"gcc::Compile", inputs: \[".*bindings.c"\], output: ".*\.s"' %t
9 // RUN: grep '"gcc::Assemble", inputs: \[".*\.s"\], output: ".*\.o"' %t
10 // RUN: grep '"gcc::Link", inputs: \[".*\.o"\], output: "a.out"' %t
11 
12 // RUN: %clang -target i386-unknown-unknown -ccc-print-bindings -ccc-no-clang -no-integrated-cpp %s 2> %t
13 // RUN: grep '"gcc::Preprocess", inputs: \[".*bindings.c"\], output: ".*\.i"' %t
14 // RUN: grep '"gcc::Compile", inputs: \[".*\.i"\], output: ".*\.s"' %t
15 // RUN: grep '"gcc::Assemble", inputs: \[".*\.s"\], output: ".*\.o"' %t
16 // RUN: grep '"gcc::Link", inputs: \[".*\.o"\], output: "a.out"' %t
17 
18 // RUN: %clang -target i386-unknown-unknown -ccc-print-bindings -ccc-no-clang -x c-header %s 2> %t
19 // RUN: grep '"gcc::Precompile", inputs: \[".*bindings.c"\], output: ".*bindings.c.gch' %t
20 
21 // Clang control options
22 
23 // RUN: %clang -target i386-unknown-unknown -ccc-print-bindings -fsyntax-only %s 2> %t
24 // RUN: grep '"clang", inputs: \[".*bindings.c"\], output: (nothing)' %t
25 // RUN: %clang -target i386-unknown-unknown -ccc-print-bindings -ccc-no-clang -fsyntax-only %s 2> %t
26 // RUN: grep '"gcc::Compile", inputs: \[".*bindings.c"\], output: (nothing)' %t
27 // RUN: %clang -target i386-unknown-unknown -ccc-print-bindings -ccc-no-clang-cxx -fsyntax-only -x c++ %s 2> %t
28 // RUN: grep '"gcc::Compile", inputs: \[".*bindings.c"\], output: (nothing)' %t
29 // RUN: %clang -target i386-unknown-unknown -ccc-print-bindings -ccc-clang-cxx -fsyntax-only -x c++ %s 2> %t
30 // RUN: grep '"clang", inputs: \[".*bindings.c"\], output: (nothing)' %t
31 // RUN: %clang -target i386-unknown-unknown -ccc-print-bindings -ccc-no-clang-cpp -fsyntax-only -no-integrated-cpp %s 2> %t
32 // RUN: grep '"gcc::Preprocess", inputs: \[".*bindings.c"\], output: ".*\.i"' %t
33 // RUN: grep '"clang", inputs: \[".*\.i"\], output: (nothing)' %t
34 // RUN: %clang -target i386-apple-darwin9 -ccc-print-bindings -ccc-clang-archs i386 %s -S -arch ppc 2> %t
35 // RUN: grep '"gcc::Compile", inputs: \[".*bindings.c"\], output: "bindings.s"' %t
36 // RUN: %clang -target i386-apple-darwin9 -ccc-print-bindings -ccc-clang-archs powerpc %s -S -arch ppc 2> %t
37 // RUN: grep '"clang", inputs: \[".*bindings.c"\], output: "bindings.s"' %t
38 
39 // RUN: %clang -target powerpc-unknown-unknown -ccc-print-bindings -ccc-clang-archs "" %s -S 2> %t
40 // RUN: grep '"clang", inputs: \[".*bindings.c"\], output: "bindings.s"' %t
41 // RUN: %clang -target powerpc-unknown-unknown -ccc-print-bindings -ccc-clang-archs "i386" %s -S 2> %t
42 // RUN: grep '"gcc::Compile", inputs: \[".*bindings.c"\], output: "bindings.s"' %t
43 
44 // Darwin bindings
45 // RUN: %clang -target i386-apple-darwin9 -no-integrated-as -ccc-print-bindings %s 2> %t
46 // RUN: grep '"clang", inputs: \[".*bindings.c"\], output: ".*\.s"' %t
47 // RUN: grep '"darwin::Assemble", inputs: \[".*\.s"\], output: ".*\.o"' %t
48 // RUN: grep '"darwin::Link", inputs: \[".*\.o"\], output: "a.out"' %t
49 
50