Home | History | Annotate | Download | only in Driver
      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