[cfe-commits] r62145 - in /cfe/trunk/tools/ccc/ccclib: Driver.py HostInfo.py

Daniel Dunbar daniel at zuster.org
Mon Jan 12 20:05:43 PST 2009


Author: ddunbar
Date: Mon Jan 12 22:05:40 2009
New Revision: 62145

URL: http://llvm.org/viewvc/llvm-project?rev=62145&view=rev
Log:
ccc: Allow host to over-ride default arch based on command line
arguments (e.g., -m32 and -m64).

Modified:
    cfe/trunk/tools/ccc/ccclib/Driver.py
    cfe/trunk/tools/ccc/ccclib/HostInfo.py

Modified: cfe/trunk/tools/ccc/ccclib/Driver.py
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/ccc/ccclib/Driver.py?rev=62145&r1=62144&r2=62145&view=diff

==============================================================================
--- cfe/trunk/tools/ccc/ccclib/Driver.py (original)
+++ cfe/trunk/tools/ccc/ccclib/Driver.py Mon Jan 12 22:05:40 2009
@@ -466,7 +466,7 @@
                 hasDashM = arg
 
         if not archs:
-            archs.append(args.makeSeparateArg(self.hostInfo.getArchName(),
+            archs.append(args.makeSeparateArg(self.hostInfo.getArchName(args),
                                               self.parser.archOption))
 
         actions = self.buildNormalPipeline(args)

Modified: cfe/trunk/tools/ccc/ccclib/HostInfo.py
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/ccc/ccclib/HostInfo.py?rev=62145&r1=62144&r2=62145&view=diff

==============================================================================
--- cfe/trunk/tools/ccc/ccclib/HostInfo.py (original)
+++ cfe/trunk/tools/ccc/ccclib/HostInfo.py Mon Jan 12 22:05:40 2009
@@ -8,7 +8,7 @@
     def __init__(self, driver):
         self.driver = driver
 
-    def getArchName(self):
+    def getArchName(self, args):
         abstract
 
     def useDriverDriver(self):
@@ -38,7 +38,7 @@
         return True
 
     def getToolChain(self):
-        return self.getToolChainForArch(self.getArchName())
+        return self.getToolChainForArch(self.getArchName(None))
 
     def getToolChainForArch(self, arch):
         if arch in ('i386', 'x86_64'):
@@ -49,19 +49,27 @@
         return ToolChain.Generic_GCC_ToolChain(self.driver)
 
 class DarwinPPCHostInfo(DarwinHostInfo):
-    def getArchName(self):
+    def getArchName(self, args):
+        if args and args.getLastArg(args.parser.m_64Option):
+            return 'ppc64'
         return 'ppc'
 
 class DarwinPPC_64HostInfo(DarwinHostInfo):
-    def getArchName(self):
+    def getArchName(self, args):
+        if args and args.getLastArg(args.parser.m_32Option):
+            return 'ppc'
         return 'ppc64'
 
 class DarwinX86HostInfo(DarwinHostInfo):
-    def getArchName(self):
+    def getArchName(self, args):
+        if args and args.getLastArg(args.parser.m_64Option):
+            return 'x86_64'
         return 'i386'
 
 class DarwinX86_64HostInfo(DarwinHostInfo):
-    def getArchName(self):
+    def getArchName(self, args):
+        if args and args.getLastArg(args.parser.m_32Option):
+            return 'i386'
         return 'x86_64'
 
 def getDarwinHostInfo(driver):





More information about the cfe-commits mailing list