]> granicus.if.org Git - clang/commitdiff
Eliminate TargetInfo::getDefaultLangOptions, this kind of logic is better done
authorDaniel Dunbar <daniel@zuster.org>
Tue, 17 Nov 2009 09:15:44 +0000 (09:15 +0000)
committerDaniel Dunbar <daniel@zuster.org>
Tue, 17 Nov 2009 09:15:44 +0000 (09:15 +0000)
in the driver.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89073 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/Basic/TargetInfo.h
lib/Basic/Targets.cpp
tools/clang-cc/Options.cpp

index d2f7399b7061df44ebcd8e587b2df56a91add99c..695f51d2c4c92baaebeeb83f0b0ba1c28843665f 100644 (file)
@@ -342,11 +342,6 @@ public:
     return "";
   }
 
-  /// getDefaultLangOptions - Allow the target to specify default settings for
-  /// various language options.  These may be overridden by command line
-  /// options.
-  virtual void getDefaultLangOptions(LangOptions &Opts) {}
-
   /// setForcedLangOptions - Set forced language options.
   /// Apply changes to the target information with respect to certain
   /// language options which change the target configuration.
index 3a4d115db20237cef95520dd5db9f3130a38836b..07c2bb960bcf01362a779897fd361144b9f2566d 100644 (file)
@@ -155,24 +155,6 @@ static void getDarwinIPhoneOSDefines(std::vector<char> &Defs,
          iPhoneOSStr);
 }
 
-/// GetDarwinLanguageOptions - Set the default language options for darwin.
-static void GetDarwinLanguageOptions(LangOptions &Opts,
-                                     const llvm::Triple &Triple) {
-  unsigned MajorVersion = Triple.getDarwinMajorNumber();
-
-  // Blocks and stack protectors default to on for 10.6 (darwin10) and beyond.
-  if (MajorVersion > 9) {
-    Opts.Blocks = 1;
-    Opts.setStackProtectorMode(LangOptions::SSPOn);
-  }
-
-  // Non-fragile ABI (in 64-bit mode) default to on for 10.5 (darwin9) and
-  // beyond.
-  if (MajorVersion >= 9 && Opts.ObjC1 &&
-      Triple.getArch() == llvm::Triple::x86_64)
-    Opts.ObjCNonFragileABI = 1;
-}
-
 namespace {
 template<typename Target>
 class DarwinTargetInfo : public OSTargetInfo<Target> {
@@ -183,12 +165,6 @@ protected:
     getDarwinOSXDefines(Defines, Triple);
   }
 
-  /// getDefaultLangOptions - Allow the target to specify default settings for
-  /// various language options.  These may be overridden by command line
-  /// options.
-  virtual void getDefaultLangOptions(LangOptions &Opts) {
-    GetDarwinLanguageOptions(Opts, TargetInfo::getTriple());
-  }
 public:
   DarwinTargetInfo(const std::string& triple) :
     OSTargetInfo<Target>(triple) {
index 9c4216749ecca3b858d3999e5e1cad34fb49f3ae..b5190ebcae54ba26d7e41304f92dfb9cb3d7909b 100644 (file)
@@ -1121,9 +1121,6 @@ void clang::InitializeLangOptions(LangOptions &Options,
   Options.setVisibilityMode(SymbolVisibility);
   Options.OverflowChecking = OverflowChecking;
 
-  // Allow the target to set the default the language options as it sees fit.
-  Target.getDefaultLangOptions(Options);
-
   if (LangStd == lang_unspecified) {
     // Based on the base language, pick one.
     switch (IK) {