clang 22.0.0git
CommonArgs.h File Reference
#include "clang/Basic/CodeGenOptions.h"
#include "clang/Driver/Driver.h"
#include "clang/Driver/InputInfo.h"
#include "clang/Driver/Multilib.h"
#include "clang/Driver/Tool.h"
#include "clang/Driver/ToolChain.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Option/Arg.h"
#include "llvm/Option/ArgList.h"
#include "llvm/Support/CodeGen.h"

Go to the source code of this file.

Namespaces

namespace  clang
 The JSON file list parser is used to communicate input to InstallAPI.
namespace  clang::driver
namespace  clang::driver::tools

Functions

void clang::driver::tools::addPathIfExists (const Driver &D, const Twine &Path, ToolChain::path_list &Paths)
void clang::driver::tools::AddLinkerInputs (const ToolChain &TC, const InputInfoList &Inputs, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs, const JobAction &JA)
const char * clang::driver::tools::getLDMOption (const llvm::Triple &T, const llvm::opt::ArgList &Args)
void clang::driver::tools::addLinkerCompressDebugSectionsOption (const ToolChain &TC, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs)
void clang::driver::tools::claimNoWarnArgs (const llvm::opt::ArgList &Args)
bool clang::driver::tools::addSanitizerRuntimes (const ToolChain &TC, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs)
void clang::driver::tools::linkSanitizerRuntimeDeps (const ToolChain &TC, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs)
bool clang::driver::tools::addXRayRuntime (const ToolChain &TC, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs)
void clang::driver::tools::linkXRayRuntimeDeps (const ToolChain &TC, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs)
void clang::driver::tools::AddRunTimeLibs (const ToolChain &TC, const Driver &D, llvm::opt::ArgStringList &CmdArgs, const llvm::opt::ArgList &Args)
void clang::driver::tools::AddStaticDeviceLibsLinking (Compilation &C, const Tool &T, const JobAction &JA, const InputInfoList &Inputs, const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CmdArgs, StringRef Arch, StringRef Target, bool isBitCodeSDL)
void clang::driver::tools::AddStaticDeviceLibs (Compilation *C, const Tool *T, const JobAction *JA, const InputInfoList *Inputs, const Driver &D, const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CmdArgs, StringRef Arch, StringRef Target, bool isBitCodeSDL)
const char * clang::driver::tools::SplitDebugName (const JobAction &JA, const llvm::opt::ArgList &Args, const InputInfo &Input, const InputInfo &Output)
void clang::driver::tools::SplitDebugInfo (const ToolChain &TC, Compilation &C, const Tool &T, const JobAction &JA, const llvm::opt::ArgList &Args, const InputInfo &Output, const char *OutFile)
void clang::driver::tools::addLTOOptions (const ToolChain &ToolChain, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs, const InputInfo &Output, const InputInfoList &Inputs, bool IsThinLTO)
const char * clang::driver::tools::RelocationModelName (llvm::Reloc::Model Model)
std::tuple< llvm::Reloc::Model, unsigned, boolclang::driver::tools::ParsePICArgs (const ToolChain &ToolChain, const llvm::opt::ArgList &Args)
bool clang::driver::tools::getStaticPIE (const llvm::opt::ArgList &Args, const ToolChain &TC)
unsigned clang::driver::tools::ParseFunctionAlignment (const ToolChain &TC, const llvm::opt::ArgList &Args)
void clang::driver::tools::addDebugInfoKind (llvm::opt::ArgStringList &CmdArgs, llvm::codegenoptions::DebugInfoKind DebugInfoKind)
llvm::codegenoptions::DebugInfoKind clang::driver::tools::debugLevelToInfoKind (const llvm::opt::Arg &A)
unsigned clang::driver::tools::DwarfVersionNum (StringRef ArgValue)
const llvm::opt::Arg * clang::driver::tools::getDwarfNArg (const llvm::opt::ArgList &Args)
unsigned clang::driver::tools::getDwarfVersion (const ToolChain &TC, const llvm::opt::ArgList &Args)
void clang::driver::tools::AddAssemblerKPIC (const ToolChain &ToolChain, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs)
void clang::driver::tools::addArchSpecificRPath (const ToolChain &TC, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs)
void clang::driver::tools::addOpenMPRuntimeLibraryPath (const ToolChain &TC, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs)
bool clang::driver::tools::addOpenMPRuntime (const Compilation &C, llvm::opt::ArgStringList &CmdArgs, const ToolChain &TC, const llvm::opt::ArgList &Args, bool ForceStaticHostRuntime=false, bool IsOffloadingHost=false, bool GompNeedsRT=false)
 Returns true, if an OpenMP runtime has been added.
void clang::driver::tools::addOpenMPHostOffloadingArgs (const Compilation &C, const JobAction &JA, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs)
 Adds offloading options for OpenMP host compilation to CmdArgs.
void clang::driver::tools::addHIPRuntimeLibArgs (const ToolChain &TC, Compilation &C, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs)
void clang::driver::tools::addAsNeededOption (const ToolChain &TC, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs, bool as_needed)
llvm::opt::Arg * clang::driver::tools::getLastCSProfileGenerateArg (const llvm::opt::ArgList &Args)
llvm::opt::Arg * clang::driver::tools::getLastProfileUseArg (const llvm::opt::ArgList &Args)
llvm::opt::Arg * clang::driver::tools::getLastProfileSampleUseArg (const llvm::opt::ArgList &Args)
bool clang::driver::tools::isObjCAutoRefCount (const llvm::opt::ArgList &Args)
llvm::StringRef clang::driver::tools::getLTOParallelism (const llvm::opt::ArgList &Args, const Driver &D)
bool clang::driver::tools::areOptimizationsEnabled (const llvm::opt::ArgList &Args)
bool clang::driver::tools::isUseSeparateSections (const llvm::Triple &Triple)
bool clang::driver::tools::isTLSDESCEnabled (const ToolChain &TC, const llvm::opt::ArgList &Args)
void clang::driver::tools::addDirectoryList (const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs, const char *ArgName, const char *EnvVar)
 EnvVar is split by system delimiter for environment variables.
void clang::driver::tools::AddTargetFeature (const llvm::opt::ArgList &Args, std::vector< StringRef > &Features, llvm::opt::OptSpecifier OnOpt, llvm::opt::OptSpecifier OffOpt, StringRef FeatureName)
std::string clang::driver::tools::getCPUName (const Driver &D, const llvm::opt::ArgList &Args, const llvm::Triple &T, bool FromAs=false)
void clang::driver::tools::getTargetFeatures (const Driver &D, const llvm::Triple &Triple, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs, bool ForAS, bool IsAux=false)
void clang::driver::tools::handleTargetFeaturesGroup (const Driver &D, const llvm::Triple &Triple, const llvm::opt::ArgList &Args, std::vector< StringRef > &Features, llvm::opt::OptSpecifier Group)
 Iterate Args and convert -mxxx to +xxx and -mno-xxx to -xxx and append it to Features.
SmallVector< StringRef > clang::driver::tools::unifyTargetFeatures (ArrayRef< StringRef > Features)
 If there are multiple +xxx or -xxx features, keep the last one.
SmallString< 128 > clang::driver::tools::getStatsFileName (const llvm::opt::ArgList &Args, const InputInfo &Output, const InputInfo &Input, const Driver &D)
 Handles the -save-stats option and returns the filename to save statistics to.
void clang::driver::tools::addMultilibFlag (bool Enabled, const StringRef Flag, Multilib::flags_list &Flags)
 Flag must be a flag accepted by the driver.
void clang::driver::tools::addX86AlignBranchArgs (const Driver &D, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs, bool IsLTO, const StringRef PluginOptPrefix="")
void clang::driver::tools::checkAMDGPUCodeObjectVersion (const Driver &D, const llvm::opt::ArgList &Args)
unsigned clang::driver::tools::getAMDGPUCodeObjectVersion (const Driver &D, const llvm::opt::ArgList &Args)
bool clang::driver::tools::haveAMDGPUCodeObjectVersionArgument (const Driver &D, const llvm::opt::ArgList &Args)
void clang::driver::tools::addMachineOutlinerArgs (const Driver &D, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs, const llvm::Triple &Triple, bool IsLTO, const StringRef PluginOptPrefix="")
void clang::driver::tools::addOpenMPDeviceRTL (const Driver &D, const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CC1Args, StringRef BitcodeSuffix, const llvm::Triple &Triple, const ToolChain &HostTC)
void clang::driver::tools::addOpenCLBuiltinsLib (const Driver &D, const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CC1Args)
void clang::driver::tools::addOutlineAtomicsArgs (const Driver &D, const ToolChain &TC, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs, const llvm::Triple &Triple)
void clang::driver::tools::addOffloadCompressArgs (const llvm::opt::ArgList &TCArgs, llvm::opt::ArgStringList &CmdArgs)
void clang::driver::tools::addMCModel (const Driver &D, const llvm::opt::ArgList &Args, const llvm::Triple &Triple, const llvm::Reloc::Model &RelocationModel, llvm::opt::ArgStringList &CmdArgs)
void clang::driver::tools::handleColorDiagnosticsArgs (const Driver &D, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs)
 Handle the -f{no}-color-diagnostics and -f{no}-diagnostics-colors options.
void clang::driver::tools::escapeSpacesAndBackslashes (const char *Arg, llvm::SmallVectorImpl< char > &Res)
 Add backslashes to escape spaces and other backslashes.
const char * clang::driver::tools::renderEscapedCommandLine (const ToolChain &TC, const llvm::opt::ArgList &Args)
 Join the args in the given ArgList, escape spaces and backslashes and return the joined string.
bool clang::driver::tools::shouldRecordCommandLine (const ToolChain &TC, const llvm::opt::ArgList &Args, bool &FRecordCommandLine, bool &GRecordCommandLine)
 Check if the command line should be recorded in the object file.
void clang::driver::tools::renderCommonIntegerOverflowOptions (const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs)
bool clang::driver::tools::shouldEnableVectorizerAtOLevel (const llvm::opt::ArgList &Args, bool isSlpVec)
void clang::driver::tools::handleInterchangeLoopsArgs (const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs)
 Enable -floop-interchange based on the optimization level selected.
void clang::driver::tools::handleVectorizeLoopsArgs (const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs)
 Enable -fvectorize based on the optimization level selected.
void clang::driver::tools::handleVectorizeSLPArgs (const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs)
 Enable -fslp-vectorize based on the optimization level selected.
StringRef clang::driver::tools::parseMPreferVectorWidthOption (clang::DiagnosticsEngine &Diags, const llvm::opt::ArgList &Args)
StringRef clang::driver::tools::parseMRecipOption (clang::DiagnosticsEngine &Diags, const llvm::opt::ArgList &Args)
std::string clang::driver::tools::complexRangeKindToStr (LangOptions::ComplexRangeKind Range)
std::string clang::driver::tools::renderComplexRangeOption (LangOptions::ComplexRangeKind Range)
clang::CodeGenOptions::FramePointerKind getFramePointerKind (const llvm::opt::ArgList &Args, const llvm::Triple &Triple)

Function Documentation

◆ getFramePointerKind()