clang 20.0.0git
|
#include "Clang.h"
#include "AMDGPU.h"
#include "Arch/AArch64.h"
#include "Arch/ARM.h"
#include "Arch/CSKY.h"
#include "Arch/LoongArch.h"
#include "Arch/M68k.h"
#include "Arch/Mips.h"
#include "Arch/PPC.h"
#include "Arch/RISCV.h"
#include "Arch/Sparc.h"
#include "Arch/SystemZ.h"
#include "Arch/VE.h"
#include "Arch/X86.h"
#include "CommonArgs.h"
#include "Hexagon.h"
#include "MSP430.h"
#include "PS4CPU.h"
#include "SYCL.h"
#include "clang/Basic/CLWarnings.h"
#include "clang/Basic/CharInfo.h"
#include "clang/Basic/CodeGenOptions.h"
#include "clang/Basic/HeaderInclude.h"
#include "clang/Basic/LangOptions.h"
#include "clang/Basic/MakeSupport.h"
#include "clang/Basic/ObjCRuntime.h"
#include "clang/Basic/Version.h"
#include "clang/Config/config.h"
#include "clang/Driver/Action.h"
#include "clang/Driver/Distro.h"
#include "clang/Driver/DriverDiagnostic.h"
#include "clang/Driver/InputInfo.h"
#include "clang/Driver/Options.h"
#include "clang/Driver/SanitizerArgs.h"
#include "clang/Driver/Types.h"
#include "clang/Driver/XRayArgs.h"
#include "llvm/ADT/ScopeExit.h"
#include "llvm/ADT/SmallSet.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/BinaryFormat/Magic.h"
#include "llvm/Config/llvm-config.h"
#include "llvm/Frontend/Debug/Options.h"
#include "llvm/Object/ObjectFile.h"
#include "llvm/Option/ArgList.h"
#include "llvm/Support/CodeGen.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/Compression.h"
#include "llvm/Support/Error.h"
#include "llvm/Support/FileSystem.h"
#include "llvm/Support/Path.h"
#include "llvm/Support/Process.h"
#include "llvm/Support/YAMLParser.h"
#include "llvm/TargetParser/AArch64TargetParser.h"
#include "llvm/TargetParser/ARMTargetParserCommon.h"
#include "llvm/TargetParser/Host.h"
#include "llvm/TargetParser/LoongArchTargetParser.h"
#include "llvm/TargetParser/PPCTargetParser.h"
#include "llvm/TargetParser/RISCVISAInfo.h"
#include "llvm/TargetParser/RISCVTargetParser.h"
#include <cctype>
Go to the source code of this file.
Functions | |
static void | CheckPreprocessingOptions (const Driver &D, const ArgList &Args) |
static void | CheckCodeGenerationOptions (const Driver &D, const ArgList &Args) |
static void | forAllAssociatedToolChains (Compilation &C, const JobAction &JA, const ToolChain &RegularToolChain, llvm::function_ref< void(const ToolChain &)> Work) |
Apply Work on the current tool chain RegularToolChain and any other offloading tool chain that is associated with the current action JA. | |
static bool | getRefinementStep (StringRef In, const Driver &D, const Arg &A, size_t &Position) |
This is a helper function for validating the optional refinement step parameter in reciprocal argument strings. | |
static void | ParseMRecip (const Driver &D, const ArgList &Args, ArgStringList &OutStrings) |
The -mrecip flag requires processing of many optional parameters. | |
static void | ParseMPreferVectorWidth (const Driver &D, const ArgList &Args, ArgStringList &CmdArgs) |
The -mprefer-vector-width option accepts either a positive integer or the string "none". | |
static bool | shouldUseExceptionTablesForObjCExceptions (const ObjCRuntime &runtime, const llvm::Triple &Triple) |
static bool | addExceptionArgs (const ArgList &Args, types::ID InputType, const ToolChain &TC, bool KernelOrKext, const ObjCRuntime &objcRuntime, ArgStringList &CmdArgs) |
Adds exception related arguments to the driver command arguments. | |
static bool | ShouldEnableAutolink (const ArgList &Args, const ToolChain &TC, const JobAction &JA) |
static const char * | addDebugCompDirArg (const ArgList &Args, ArgStringList &CmdArgs, const llvm::vfs::FileSystem &VFS) |
Add a CC1 option to specify the debug compilation directory. | |
static void | addDebugObjectName (const ArgList &Args, ArgStringList &CmdArgs, const char *DebugCompilationDir, const char *OutputFileName) |
static void | addDebugPrefixMapArg (const Driver &D, const ToolChain &TC, const ArgList &Args, ArgStringList &CmdArgs) |
Add a CC1 and CC1AS option to specify the debug file path prefix map. | |
static void | addMacroPrefixMapArg (const Driver &D, const ArgList &Args, ArgStringList &CmdArgs) |
Add a CC1 and CC1AS option to specify the macro file path prefix map. | |
static void | addCoveragePrefixMapArg (const Driver &D, const ArgList &Args, ArgStringList &CmdArgs) |
Add a CC1 and CC1AS option to specify the coverage file path prefix map. | |
static bool | shouldEnableVectorizerAtOLevel (const ArgList &Args, bool isSlpVec) |
Vectorize at all optimization levels greater than 1 except for -Oz. | |
static void | addDashXForInput (const ArgList &Args, const InputInfo &Input, ArgStringList &CmdArgs) |
Add -x lang to CmdArgs for Input . | |
static void | addPGOAndCoverageFlags (const ToolChain &TC, Compilation &C, const JobAction &JA, const InputInfo &Output, const ArgList &Args, SanitizerArgs &SanArgs, ArgStringList &CmdArgs) |
static void | RenderDebugEnablingArgs (const ArgList &Args, ArgStringList &CmdArgs, llvm::codegenoptions::DebugInfoKind DebugInfoKind, unsigned DwarfVersion, llvm::DebuggerKind DebuggerTuning) |
static bool | checkDebugInfoOption (const Arg *A, const ArgList &Args, const Driver &D, const ToolChain &TC) |
static void | RenderDebugInfoCompressionArgs (const ArgList &Args, ArgStringList &CmdArgs, const Driver &D, const ToolChain &TC) |
static void | handleAMDGPUCodeObjectVersionOptions (const Driver &D, const ArgList &Args, ArgStringList &CmdArgs, bool IsCC1As=false) |
static bool | maybeHasClangPchSignature (const Driver &D, StringRef Path) |
static bool | gchProbe (const Driver &D, StringRef Path) |
static bool | isSignedCharDefault (const llvm::Triple &Triple) |
static bool | hasMultipleInvocations (const llvm::Triple &Triple, const ArgList &Args) |
static bool | checkRemarksOptions (const Driver &D, const ArgList &Args, const llvm::Triple &Triple) |
static void | renderRemarksOptions (const ArgList &Args, ArgStringList &CmdArgs, const llvm::Triple &Triple, const InputInfo &Input, const InputInfo &Output, const JobAction &JA) |
void | AddAAPCSVolatileBitfieldArgs (const ArgList &Args, ArgStringList &CmdArgs) |
static void | handlePAuthABI (const ArgList &DriverArgs, ArgStringList &CC1Args) |
static void | CollectARMPACBTIOptions (const ToolChain &TC, const ArgList &Args, ArgStringList &CmdArgs, bool isAArch64) |
static bool | CheckARMImplicitITArg (StringRef Value) |
static void | AddARMImplicitITArgs (const ArgList &Args, ArgStringList &CmdArgs, StringRef Value) |
static void | CollectArgsForIntegratedAssembler (Compilation &C, const ArgList &Args, ArgStringList &CmdArgs, const Driver &D) |
static std::string | ComplexRangeKindToStr (LangOptions::ComplexRangeKind Range) |
static std::string | ComplexArithmeticStr (LangOptions::ComplexRangeKind Range) |
static void | EmitComplexRangeDiag (const Driver &D, std::string str1, std::string str2) |
static std::string | RenderComplexRangeOption (LangOptions::ComplexRangeKind Range) |
static void | RenderFloatingPointOptions (const ToolChain &TC, const Driver &D, bool OFastEnabled, const ArgList &Args, ArgStringList &CmdArgs, const JobAction &JA) |
static void | RenderAnalyzerOptions (const ArgList &Args, ArgStringList &CmdArgs, const llvm::Triple &Triple, const InputInfo &Input) |
static bool | isValidSymbolName (StringRef S) |
static void | RenderSSPOptions (const Driver &D, const ToolChain &TC, const ArgList &Args, ArgStringList &CmdArgs, bool KernelOrKext) |
static void | RenderSCPOptions (const ToolChain &TC, const ArgList &Args, ArgStringList &CmdArgs) |
static void | RenderTrivialAutoVarInitOptions (const Driver &D, const ToolChain &TC, const ArgList &Args, ArgStringList &CmdArgs) |
static void | RenderOpenCLOptions (const ArgList &Args, ArgStringList &CmdArgs, types::ID InputType) |
static void | RenderHLSLOptions (const ArgList &Args, ArgStringList &CmdArgs, types::ID InputType) |
static void | RenderOpenACCOptions (const Driver &D, const ArgList &Args, ArgStringList &CmdArgs, types::ID InputType) |
static void | RenderARCMigrateToolOptions (const Driver &D, const ArgList &Args, ArgStringList &CmdArgs) |
static void | RenderBuiltinOptions (const ToolChain &TC, const llvm::Triple &T, const ArgList &Args, ArgStringList &CmdArgs) |
static bool | RenderModulesOptions (Compilation &C, const Driver &D, const ArgList &Args, const InputInfo &Input, const InputInfo &Output, bool HaveStd20, ArgStringList &CmdArgs) |
static void | RenderCharacterOptions (const ArgList &Args, const llvm::Triple &T, ArgStringList &CmdArgs) |
static void | RenderObjCOptions (const ToolChain &TC, const Driver &D, const llvm::Triple &T, const ArgList &Args, ObjCRuntime &Runtime, bool InferCovariantReturns, const InputInfo &Input, ArgStringList &CmdArgs) |
static void | RenderDiagnosticsOptions (const Driver &D, const ArgList &Args, ArgStringList &CmdArgs) |
static void | renderDwarfFormat (const Driver &D, const llvm::Triple &T, const ArgList &Args, ArgStringList &CmdArgs, unsigned DwarfVersion) |
static void | renderDebugOptions (const ToolChain &TC, const Driver &D, const llvm::Triple &T, const ArgList &Args, bool IRInput, ArgStringList &CmdArgs, const InputInfo &Output, llvm::codegenoptions::DebugInfoKind &DebugInfoKind, DwarfFissionKind &DwarfFission) |
static void | ProcessVSRuntimeLibrary (const ToolChain &TC, const ArgList &Args, ArgStringList &CmdArgs) |
static bool | maybeConsumeDash (const std::string &EH, size_t &I) |
static EHFlags | parseClangCLEHFlags (const Driver &D, const ArgList &Args, bool isWindowsMSVC) |
/EH controls whether to run destructor cleanups when exceptions are thrown. | |
void AddAAPCSVolatileBitfieldArgs | ( | const ArgList & | Args, |
ArgStringList & | CmdArgs | ||
) |
|
static |
Definition at line 2535 of file Clang.cpp.
Referenced by CollectArgsForIntegratedAssembler().
|
static |
|
static |
Add -x lang to CmdArgs
for Input
.
Definition at line 548 of file Clang.cpp.
References clang::driver::InputInfo::getType(), and clang::driver::types::getTypeName().
Referenced by clang::driver::tools::Clang::ConstructJob(), and clang::driver::tools::Flang::ConstructJob().
|
static |
Add a CC1 option to specify the debug compilation directory.
Definition at line 412 of file Clang.cpp.
References Path.
Referenced by clang::driver::tools::ClangAs::ConstructJob(), and renderDebugOptions().
|
static |
Definition at line 430 of file Clang.cpp.
Referenced by clang::driver::tools::ClangAs::ConstructJob(), and renderDebugOptions().
|
static |
Add a CC1 and CC1AS option to specify the debug file path prefix map.
Definition at line 464 of file Clang.cpp.
References D, and clang::driver::ToolChain::GetGlobalDebugPathRemapping().
Referenced by clang::driver::tools::ClangAs::ConstructJob(), and renderDebugOptions().
|
static |
Adds exception related arguments to the driver command arguments.
There's a main flag, -fexceptions and also language specific flags to enable/disable C++ and Objective-C exceptions. This makes it possible to for example disable C++ exceptions but enable Objective-C exceptions.
Definition at line 319 of file Clang.cpp.
References clang::driver::ToolChain::getTriple(), clang::driver::types::isCXX(), clang::driver::types::isObjC(), and shouldUseExceptionTablesForObjCExceptions().
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
|
static |
Definition at line 578 of file Clang.cpp.
References clang::C, D, clang::driver::InputInfo::getBaseInput(), clang::driver::ToolChain::getCompilerRTBasename(), clang::driver::ToolChain::getDriver(), clang::driver::tools::getLastCSProfileGenerateArg(), clang::driver::tools::getLastProfileSampleUseArg(), clang::driver::tools::getLastProfileUseArg(), clang::driver::ToolChain::getTriple(), clang::driver::ToolChain::needsGCovInstrumentation(), Path, and v.
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 2530 of file Clang.cpp.
Referenced by CollectArgsForIntegratedAssembler().
|
static |
Definition at line 90 of file Clang.cpp.
References D.
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 877 of file Clang.cpp.
References D, clang::driver::ToolChain::getTripleString(), and clang::driver::ToolChain::supportsDebugInfoOption().
Referenced by clang::driver::tools::ClangAs::ConstructJob(), RenderDebugInfoCompressionArgs(), and renderDebugOptions().
|
static |
|
static |
Definition at line 1377 of file Clang.cpp.
References D, and hasMultipleInvocations().
Referenced by clang::driver::tools::Clang::ConstructJob(), and clang::driver::tools::darwin::Linker::ConstructJob().
|
static |
Definition at line 2541 of file Clang.cpp.
References AddARMImplicitITArgs(), clang::C, CheckARMImplicitITArg(), D, clang::driver::tools::DwarfVersionNum(), clang::Equal, RenderDebugEnablingArgs(), and clang::Set.
Referenced by clang::driver::tools::Clang::ConstructJob(), and clang::driver::tools::ClangAs::ConstructJob().
|
static |
Definition at line 1553 of file Clang.cpp.
References D, clang::driver::ToolChain::getDriver(), clang::driver::ToolChain::getEffectiveTriple(), and clang::Scope::Scope().
|
static |
Definition at line 2868 of file Clang.cpp.
References ComplexRangeKindToStr(), clang::LangOptionsBase::CX_None, and Range.
Referenced by RenderFloatingPointOptions().
|
static |
Definition at line 2849 of file Clang.cpp.
References clang::LangOptionsBase::CX_Basic, clang::LangOptionsBase::CX_Full, clang::LangOptionsBase::CX_Improved, clang::LangOptionsBase::CX_Promoted, and Range.
Referenced by ComplexArithmeticStr(), RenderComplexRangeOption(), and RenderFloatingPointOptions().
|
static |
Definition at line 2874 of file Clang.cpp.
References D.
Referenced by RenderFloatingPointOptions().
|
static |
Apply Work on the current tool chain RegularToolChain and any other offloading tool chain that is associated with the current action JA.
Definition at line 102 of file Clang.cpp.
References clang::C, clang::driver::Action::isDeviceOffloading(), clang::driver::Action::isHostOffloading(), clang::driver::Action::OFK_Cuda, clang::driver::Action::OFK_HIP, clang::driver::Action::OFK_Host, clang::driver::Action::OFK_OpenMP, and clang::driver::Action::OFK_SYCL.
Referenced by clang::driver::tools::LinkerWrapper::ConstructJob().
Definition at line 959 of file Clang.cpp.
References D, maybeHasClangPchSignature(), and Path.
|
static |
This is a helper function for validating the optional refinement step parameter in reciprocal argument strings.
Return false if there is an error parsing the refinement step. Otherwise, return true and set the Position of the refinement step in the input string.
Definition at line 142 of file Clang.cpp.
References D.
Referenced by ParseMRecip().
|
static |
Definition at line 919 of file Clang.cpp.
References D, clang::driver::tools::getAMDGPUCodeObjectVersion(), and clang::driver::tools::haveAMDGPUCodeObjectVersionArgument().
Referenced by clang::driver::tools::Clang::ConstructJob(), and clang::driver::tools::ClangAs::ConstructJob().
|
static |
|
static |
Definition at line 1366 of file Clang.cpp.
Referenced by checkRemarksOptions().
|
static |
Definition at line 1331 of file Clang.cpp.
Referenced by RenderCharacterOptions().
|
static |
Definition at line 8331 of file Clang.cpp.
Referenced by parseClangCLEHFlags().
|
static |
/EH controls whether to run destructor cleanups when exceptions are thrown.
There are three modifiers:
Definition at line 8352 of file Clang.cpp.
References D, E, and maybeConsumeDash().
|
static |
The -mprefer-vector-width option accepts either a positive integer or the string "none".
Definition at line 279 of file Clang.cpp.
References D.
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
The -mrecip flag requires processing of many optional parameters.
Definition at line 170 of file Clang.cpp.
References D, and getRefinementStep().
Referenced by RenderFloatingPointOptions().
|
static |
Definition at line 4960 of file Clang.cpp.
References clang::driver::ToolChain::getTriple().
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 3522 of file Clang.cpp.
References clang::driver::InputInfo::getType(), and clang::driver::types::isCXX().
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 3953 of file Clang.cpp.
References D.
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 4025 of file Clang.cpp.
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 4309 of file Clang.cpp.
References isSignedCharDefault(), and clang::T.
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 2882 of file Clang.cpp.
References ComplexRangeKindToStr(), and Range.
Referenced by RenderFloatingPointOptions().
|
static |
Definition at line 851 of file Clang.cpp.
References clang::driver::tools::addDebugInfoKind().
Referenced by CollectArgsForIntegratedAssembler(), clang::driver::tools::ClangAs::ConstructJob(), and renderDebugOptions().
|
static |
Definition at line 887 of file Clang.cpp.
References checkDebugInfoOption(), and D.
Referenced by clang::driver::tools::ClangAs::ConstructJob(), and renderDebugOptions().
|
static |
Definition at line 4582 of file Clang.cpp.
References addDebugCompDirArg(), addDebugObjectName(), addDebugPrefixMapArg(), clang::driver::ToolChain::adjustDebugInfoKind(), checkDebugInfoOption(), D, clang::driver::tools::debugLevelToInfoKind(), clang::driver::tools::getDebugFissionKind(), clang::driver::ToolChain::getDefaultDebugFormat(), clang::driver::ToolChain::getDefaultDebuggerTuning(), clang::driver::ToolChain::GetDefaultStandaloneDebug(), clang::driver::tools::getDwarfNArg(), clang::driver::tools::getDwarfVersion(), clang::driver::InputInfo::getFilename(), clang::driver::tools::getLastProfileSampleUseArg(), clang::driver::ToolChain::getMaxDwarfVersion(), clang::driver::ToolChain::getTriple(), clang::driver::ToolChain::getTripleString(), clang::driver::InputInfo::isFilename(), clang::driver::tools::None, RenderDebugEnablingArgs(), RenderDebugInfoCompressionArgs(), renderDwarfFormat(), clang::T, clang::driver::ToolChain::useIntegratedAs(), v, and clang::driver::willEmitRemarks().
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 4438 of file Clang.cpp.
References D, and clang::driver::tools::handleColorDiagnosticsArgs().
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 4558 of file Clang.cpp.
Referenced by clang::driver::tools::ClangAs::ConstructJob(), and renderDebugOptions().
|
static |
Definition at line 2889 of file Clang.cpp.
References ComplexArithmeticStr(), ComplexRangeKindToStr(), clang::LangOptionsBase::CX_Basic, clang::LangOptionsBase::CX_Full, clang::LangOptionsBase::CX_Improved, clang::LangOptionsBase::CX_None, clang::LangOptionsBase::CX_Promoted, D, EmitComplexRangeDiag(), clang::driver::ToolChain::getArch(), clang::driver::ToolChain::getDefaultDenormalModeForType(), clang::driver::Action::isDeviceOffloading(), clang::driver::ToolChain::IsMathErrnoDefault(), clang::driver::Action::isOffloading(), clang::driver::Action::OFK_Cuda, clang::driver::Action::OFK_HIP, ParseMRecip(), Range, and RenderComplexRangeOption().
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 3914 of file Clang.cpp.
References clang::driver::types::isHLSL().
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 4081 of file Clang.cpp.
References clang::C, D, clang::driver::InputInfo::getBaseInput(), clang::driver::tools::getCXX20NamedModuleOutputPath(), clang::driver::Driver::getDefaultModuleCachePath(), clang::driver::InputInfo::getFilename(), clang::driver::InputInfo::getType(), clang::driver::types::isCXX(), and Path.
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 4345 of file Clang.cpp.
References clang::ObjCRuntime::allowsWeak(), clang::driver::ToolChain::CheckObjCARC(), clang::driver::ToolChain::CST_Libcxx, D, clang::ObjCRuntime::FragileMacOSX, clang::driver::ToolChain::getArch(), clang::driver::ToolChain::GetCXXStdlibType(), clang::ObjCRuntime::getKind(), clang::driver::InputInfo::getType(), clang::driver::types::isCXX(), clang::ObjCRuntime::isLegacyDispatchDefaultForArch(), clang::ObjCRuntime::isNeXTFamily(), clang::ObjCRuntime::isNonFragile(), clang::driver::types::isObjC(), clang::driver::tools::isObjCAutoRefCount(), clang::T, and clang::driver::ToolChain::UseObjCMixedDispatch().
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 3936 of file Clang.cpp.
References D.
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 3870 of file Clang.cpp.
References clang::driver::types::isOpenCL(), and clang::driver::types::isSrcFile().
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 1393 of file Clang.cpp.
References clang::driver::InputInfo::getBaseInput(), clang::driver::InputInfo::getFilename(), clang::driver::Action::getOffloadingArch(), clang::driver::Action::getOffloadingDeviceKind(), clang::driver::Action::GetOffloadingFileNamePrefix(), clang::driver::Action::isDeviceOffloading(), clang::driver::InputInfo::isFilename(), clang::driver::Action::OFK_Host, and clang::driver::Action::OFK_None.
Referenced by clang::driver::tools::Clang::ConstructJob(), clang::driver::tools::darwin::Linker::ConstructJob(), and clang::driver::tools::Flang::ConstructJob().
|
static |
Definition at line 3782 of file Clang.cpp.
References clang::driver::ToolChain::getEffectiveTriple().
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 3601 of file Clang.cpp.
References D, clang::driver::ToolChain::GetDefaultStackProtectorLevel(), clang::driver::ToolChain::getEffectiveTriple(), clang::driver::tools::arm::isHardTPSupported(), isValidSymbolName(), clang::LangOptionsBase::SSPOff, clang::LangOptionsBase::SSPOn, clang::LangOptionsBase::SSPReq, and clang::LangOptionsBase::SSPStrong.
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 3799 of file Clang.cpp.
References D, clang::driver::ToolChain::GetDefaultTrivialAutoVarInit(), clang::LangOptionsBase::Pattern, clang::LangOptionsBase::Uninitialized, and clang::LangOptionsBase::Zero.
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 395 of file Clang.cpp.
References clang::Default, clang::driver::ToolChain::getTriple(), clang::driver::Action::isDeviceOffloading(), clang::driver::Action::OFK_Cuda, clang::driver::Action::OFK_HIP, and clang::driver::ToolChain::useIntegratedAs().
Referenced by clang::driver::tools::Clang::ConstructJob().
Vectorize at all optimization levels greater than 1 except for -Oz.
For -Oz the loop vectorizer is disabled, while the slp vectorizer is enabled.
Definition at line 517 of file Clang.cpp.
Referenced by clang::driver::tools::Clang::ConstructJob().
|
static |
Definition at line 299 of file Clang.cpp.
References clang::ObjCRuntime::isNonFragile().
Referenced by addExceptionArgs().