forked from OSchip/llvm-project
Eliminate TargetInfo::getDefaultLangOptions, this kind of logic is better done
in the driver. llvm-svn: 89073
This commit is contained in:
parent
fba0b44d35
commit
2208c57116
|
@ -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.
|
||||
|
|
|
@ -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) {
|
||||
|
|
|
@ -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) {
|
||||
|
|
Loading…
Reference in New Issue