From efad16ad6bfa6450c3b5873f900f64d17d7f675b Mon Sep 17 00:00:00 2001 From: Chandler Carruth Date: Sun, 6 Nov 2011 23:39:37 +0000 Subject: Begin lifting some of the one-off checking logic into generic helper routines on the base toolchain class. llvm-svn: 143900 --- clang/lib/Driver/ToolChains.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'clang/lib/Driver/ToolChains.h') diff --git a/clang/lib/Driver/ToolChains.h b/clang/lib/Driver/ToolChains.h index 5da1bc4eb3c..60453ebca4d 100644 --- a/clang/lib/Driver/ToolChains.h +++ b/clang/lib/Driver/ToolChains.h @@ -118,6 +118,21 @@ public: virtual bool IsUnwindTablesDefault() const; virtual const char *GetDefaultRelocationModel() const; virtual const char *GetForcedPicModel() const; + +protected: + /// \name ToolChain Implementation Helper Functions + /// @{ + + /// \brief Check whether the target triple's architecture is 64-bits. + bool isTarget64Bit() const { + return (getTriple().getArch() == llvm::Triple::x86_64 || + getTriple().getArch() == llvm::Triple::ppc64); + } + /// \brief Check whether the target triple's architecture is 32-bits. + /// FIXME: This should likely do more than just negate the 64-bit query. + bool isTarget32Bit() const { return !isTarget64Bit(); } + + /// @} }; /// Darwin - The base Darwin tool chain. -- cgit v1.2.3