[cfe-commits] r110024 - in /cfe/trunk: include/clang/Driver/HostInfo.h include/clang/Driver/ToolChain.h lib/Driver/Driver.cpp lib/Driver/HostInfo.cpp lib/Driver/ToolChain.cpp lib/Driver/ToolChains.cpp lib/Driver/ToolChains.h
Daniel Dunbar
daniel at zuster.org
Sun Aug 1 22:43:56 PDT 2010
Author: ddunbar
Date: Mon Aug 2 00:43:56 2010
New Revision: 110024
URL: http://llvm.org/viewvc/llvm-project?rev=110024&view=rev
Log:
Driver: Move HostInfo::lookupTypeForExtension to ToolChain::LookupTypeForExtension.
Modified:
cfe/trunk/include/clang/Driver/HostInfo.h
cfe/trunk/include/clang/Driver/ToolChain.h
cfe/trunk/lib/Driver/Driver.cpp
cfe/trunk/lib/Driver/HostInfo.cpp
cfe/trunk/lib/Driver/ToolChain.cpp
cfe/trunk/lib/Driver/ToolChains.cpp
cfe/trunk/lib/Driver/ToolChains.h
Modified: cfe/trunk/include/clang/Driver/HostInfo.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Driver/HostInfo.h?rev=110024&r1=110023&r2=110024&view=diff
==============================================================================
--- cfe/trunk/include/clang/Driver/HostInfo.h (original)
+++ cfe/trunk/include/clang/Driver/HostInfo.h Mon Aug 2 00:43:56 2010
@@ -10,7 +10,6 @@
#ifndef CLANG_DRIVER_HOSTINFO_H_
#define CLANG_DRIVER_HOSTINFO_H_
-#include "clang/Driver/Types.h"
#include "llvm/ADT/Triple.h"
#include <string>
@@ -48,10 +47,6 @@
/// this host and support -arch, -Xarch, etc.
virtual bool useDriverDriver() const = 0;
- /// lookupTypeForExtension - Return the default language type to use for the
- /// given extension.
- virtual types::ID lookupTypeForExtension(const char *Ext) const = 0;
-
/// CreateToolChain - Construct the toolchain to use for this host (which the
/// host retains ownership of).
///
Modified: cfe/trunk/include/clang/Driver/ToolChain.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Driver/ToolChain.h?rev=110024&r1=110023&r2=110024&view=diff
==============================================================================
--- cfe/trunk/include/clang/Driver/ToolChain.h (original)
+++ cfe/trunk/include/clang/Driver/ToolChain.h Mon Aug 2 00:43:56 2010
@@ -10,6 +10,7 @@
#ifndef CLANG_DRIVER_TOOLCHAIN_H_
#define CLANG_DRIVER_TOOLCHAIN_H_
+#include "clang/Driver/Types.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/Triple.h"
#include "llvm/System/Path.h"
@@ -89,6 +90,10 @@
// Platform defaults information
+ /// LookupTypeForExtension - Return the default language type to use for the
+ /// given extension.
+ virtual types::ID LookupTypeForExtension(const char *Ext) const;
+
/// IsBlocksDefault - Does this tool chain enable -fblocks by default.
virtual bool IsBlocksDefault() const { return false; }
Modified: cfe/trunk/lib/Driver/Driver.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Driver.cpp?rev=110024&r1=110023&r2=110024&view=diff
==============================================================================
--- cfe/trunk/lib/Driver/Driver.cpp (original)
+++ cfe/trunk/lib/Driver/Driver.cpp Mon Aug 2 00:43:56 2010
@@ -662,7 +662,7 @@
// found. We use a host hook here because Darwin at least has its own
// idea of what .s is.
if (const char *Ext = strrchr(Value, '.'))
- Ty = Host->lookupTypeForExtension(Ext + 1);
+ Ty = TC.LookupTypeForExtension(Ext + 1);
if (Ty == types::TY_INVALID)
Ty = types::TY_Object;
Modified: cfe/trunk/lib/Driver/HostInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/HostInfo.cpp?rev=110024&r1=110023&r2=110024&view=diff
==============================================================================
--- cfe/trunk/lib/Driver/HostInfo.cpp (original)
+++ cfe/trunk/lib/Driver/HostInfo.cpp Mon Aug 2 00:43:56 2010
@@ -53,17 +53,6 @@
virtual bool useDriverDriver() const;
- virtual types::ID lookupTypeForExtension(const char *Ext) const {
- types::ID Ty = types::lookupTypeForExtension(Ext);
-
- // Darwin always preprocesses assembly files (unless -x is used
- // explicitly).
- if (Ty == types::TY_PP_Asm)
- return types::TY_Asm;
-
- return Ty;
- }
-
virtual ToolChain *CreateToolChain(const ArgList &Args,
const char *ArchName) const;
};
@@ -170,15 +159,6 @@
virtual bool useDriverDriver() const;
- virtual types::ID lookupTypeForExtension(const char *Ext) const {
- types::ID Ty = types::lookupTypeForExtension(Ext);
-
- if (Ty == types::TY_PP_Asm)
- return types::TY_Asm;
-
- return Ty;
- }
-
virtual ToolChain *CreateToolChain(const ArgList &Args,
const char *ArchName) const;
};
@@ -212,10 +192,6 @@
virtual bool useDriverDriver() const;
- virtual types::ID lookupTypeForExtension(const char *Ext) const {
- return types::lookupTypeForExtension(Ext);
- }
-
virtual ToolChain *CreateToolChain(const ArgList &Args,
const char *ArchName) const;
};
@@ -279,10 +255,6 @@
virtual bool useDriverDriver() const;
- virtual types::ID lookupTypeForExtension(const char *Ext) const {
- return types::lookupTypeForExtension(Ext);
- }
-
virtual ToolChain *CreateToolChain(const ArgList &Args,
const char *ArchName) const;
};
@@ -330,10 +302,6 @@
virtual bool useDriverDriver() const;
- virtual types::ID lookupTypeForExtension(const char *Ext) const {
- return types::lookupTypeForExtension(Ext);
- }
-
virtual ToolChain *CreateToolChain(const ArgList &Args,
const char *ArchName) const;
};
@@ -379,10 +347,6 @@
virtual bool useDriverDriver() const;
- virtual types::ID lookupTypeForExtension(const char *Ext) const {
- return types::lookupTypeForExtension(Ext);
- }
-
virtual ToolChain *CreateToolChain(const ArgList &Args,
const char *ArchName) const;
};
@@ -439,10 +403,6 @@
virtual bool useDriverDriver() const;
- virtual types::ID lookupTypeForExtension(const char *Ext) const {
- return types::lookupTypeForExtension(Ext);
- }
-
virtual ToolChain *CreateToolChain(const ArgList &Args,
const char *ArchName) const;
};
@@ -491,10 +451,6 @@
virtual bool useDriverDriver() const;
- virtual types::ID lookupTypeForExtension(const char *Ext) const {
- return types::lookupTypeForExtension(Ext);
- }
-
virtual ToolChain *CreateToolChain(const ArgList &Args,
const char *ArchName) const;
};
@@ -540,10 +496,6 @@
virtual bool useDriverDriver() const;
- virtual types::ID lookupTypeForExtension(const char *Ext) const {
- return types::lookupTypeForExtension(Ext);
- }
-
virtual ToolChain *CreateToolChain(const ArgList &Args,
const char *ArchName) const;
};
Modified: cfe/trunk/lib/Driver/ToolChain.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/ToolChain.cpp?rev=110024&r1=110023&r2=110024&view=diff
==============================================================================
--- cfe/trunk/lib/Driver/ToolChain.cpp (original)
+++ cfe/trunk/lib/Driver/ToolChain.cpp Mon Aug 2 00:43:56 2010
@@ -34,3 +34,7 @@
std::string ToolChain::GetProgramPath(const char *Name, bool WantFile) const {
return Host.getDriver().GetProgramPath(Name, *this, WantFile);
}
+
+types::ID ToolChain::LookupTypeForExtension(const char *Ext) const {
+ return types::lookupTypeForExtension(Ext);
+}
Modified: cfe/trunk/lib/Driver/ToolChains.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/ToolChains.cpp?rev=110024&r1=110023&r2=110024&view=diff
==============================================================================
--- cfe/trunk/lib/Driver/ToolChains.cpp (original)
+++ cfe/trunk/lib/Driver/ToolChains.cpp Mon Aug 2 00:43:56 2010
@@ -40,6 +40,16 @@
<< _DarwinVersion[1];
}
+types::ID Darwin::LookupTypeForExtension(const char *Ext) const {
+ types::ID Ty = types::lookupTypeForExtension(Ext);
+
+ // Darwin always preprocesses assembly files (unless -x is used explicitly).
+ if (Ty == types::TY_PP_Asm)
+ return types::TY_Asm;
+
+ return Ty;
+}
+
// FIXME: Can we tablegen this?
static const char *GetArmArchForMArch(llvm::StringRef Value) {
if (Value == "armv6k")
Modified: cfe/trunk/lib/Driver/ToolChains.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/ToolChains.h?rev=110024&r1=110023&r2=110024&view=diff
==============================================================================
--- cfe/trunk/lib/Driver/ToolChains.h (original)
+++ cfe/trunk/lib/Driver/ToolChains.h Mon Aug 2 00:43:56 2010
@@ -147,6 +147,8 @@
/// @name ToolChain Implementation
/// {
+ virtual types::ID LookupTypeForExtension(const char *Ext) const;
+
virtual DerivedArgList *TranslateArgs(const DerivedArgList &Args,
const char *BoundArch) const;
More information about the cfe-commits
mailing list