[cfe-commits] r57988 - in /cfe/trunk: Driver/clang.cpp utils/ccc

Chris Lattner sabre at nondot.org
Wed Oct 22 10:29:21 PDT 2008


Author: lattner
Date: Wed Oct 22 12:29:21 2008
New Revision: 57988

URL: http://llvm.org/viewvc/llvm-project?rev=57988&view=rev
Log:
Add support for assembler-with-cpp (preprocessed .S files), patch by
Roman Divacky!

Modified:
    cfe/trunk/Driver/clang.cpp
    cfe/trunk/utils/ccc

Modified: cfe/trunk/Driver/clang.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/Driver/clang.cpp?rev=57988&r1=57987&r2=57988&view=diff

==============================================================================
--- cfe/trunk/Driver/clang.cpp (original)
+++ cfe/trunk/Driver/clang.cpp Wed Oct 22 12:29:21 2008
@@ -207,6 +207,7 @@
   langkind_unspecified,
   langkind_c,
   langkind_c_cpp,
+  langkind_asm_cpp,
   langkind_c_pch,
   langkind_cxx,
   langkind_cxx_cpp,
@@ -219,7 +220,7 @@
 
 /* TODO: GCC also accepts:
    c-header c++-header objective-c-header objective-c++-header
-   assembler  assembler-with-cpp
+   assembler
    ada, f77*, ratfor (!), f95, java, treelang
  */
 static llvm::cl::opt<LangKind>
@@ -231,6 +232,8 @@
                     clEnumValN(langkind_objcxx,"objective-c++","Objective C++"),
                     clEnumValN(langkind_c_cpp,     "c-cpp-output",
                                "Preprocessed C"),
+                    clEnumValN(langkind_asm_cpp,     "assembler-with-cpp",
+                               "Preprocessed asm"),
                     clEnumValN(langkind_cxx_cpp,   "c++-cpp-output",
                                "Preprocessed C++"),                    
                     clEnumValN(langkind_objc_cpp,  "objective-c-cpp-output",
@@ -276,6 +279,8 @@
   // assembler: .S
   if (Ext == "c")
     return langkind_c;
+  else if (Ext == "S" || Ext == "s")
+    return langkind_asm_cpp;
   else if (Ext == "i")
     return langkind_c_cpp;
   else if (Ext == "ii")
@@ -316,6 +321,8 @@
     InitializeCOptions(Options);
     PCH = true;
     break;
+  case langkind_asm_cpp:
+    // FALLTHROUGH
   case langkind_c_cpp:
     NoPreprocess = true;
     // FALLTHROUGH
@@ -458,6 +465,7 @@
     switch (LK) {
     default: assert(0 && "Unknown base language");
     case langkind_c:
+    case langkind_asm_cpp:
     case langkind_c_cpp:
     case langkind_c_pch:
     case langkind_objc:

Modified: cfe/trunk/utils/ccc
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/utils/ccc?rev=57988&r1=57987&r2=57988&view=diff

==============================================================================
--- cfe/trunk/utils/ccc (original)
+++ cfe/trunk/utils/ccc Wed Oct 22 12:29:21 2008
@@ -36,7 +36,7 @@
 CCC_ECHO = checkbool('CCC_ECHO')
 CCC_NATIVE = checkbool('CCC_NATIVE','1')
 CCC_FALLBACK = checkbool('CCC_FALLBACK')
-CCC_LANGUAGES = checkenv('CCC_LANGUAGES','c,c++,c-cpp-output,objective-c,objective-c++,objective-c-cpp-output')
+CCC_LANGUAGES = checkenv('CCC_LANGUAGES','c,c++,c-cpp-output,objective-c,objective-c++,objective-c-cpp-output,assembler-with-cpp')
 if CCC_LANGUAGES:
     CCC_LANGUAGES = set([s.strip() for s in CCC_LANGUAGES.split(',')])
 





More information about the cfe-commits mailing list