class HexagonToolChain
Declaration
class HexagonToolChain : public Linux { /* full declaration omitted */ };
Description
Generic_GCC - A tool chain using the 'gcc' command to perform all subcommands; this relies on gcc translating the majority of command line options.
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:61
Inherits from: Linux
Member Variables
- protected clang::driver::toolchains::Generic_GCC::GCCVersion GCCLibAndIncVersion
Inherited from Linux:
Inherited from Generic_GCC:
Inherited from ToolChain:
Method Overview
- public void AddCXXStdlibLibArgs(const llvm::opt::ArgList & Args, llvm::opt::ArgStringList & CmdArgs) const
- public void AddClangSystemIncludeArgs(const llvm::opt::ArgList & DriverArgs, llvm::opt::ArgStringList & CC1Args) const
- public clang::driver::ToolChain::CXXStdlibType GetCXXStdlibType(const llvm::opt::ArgList & Args) const
- public static llvm::StringRef GetDefaultCPU()
- public llvm::StringRef GetGCCLibAndIncVersion() const
- public static llvm::StringRef GetTargetCPUVersion(const llvm::opt::ArgList & Args)
- public HexagonToolChain(const clang::driver::Driver & D, const llvm::Triple & Triple, const llvm::opt::ArgList & Args)
- public void addClangTargetOptions(const llvm::opt::ArgList & DriverArgs, llvm::opt::ArgStringList & CC1Args, Action::OffloadKind DeviceOffloadKind) const
- public void addLibCxxIncludePaths(const llvm::opt::ArgList & DriverArgs, llvm::opt::ArgStringList & CC1Args) const
- public void addLibStdCxxIncludePaths(const llvm::opt::ArgList & DriverArgs, llvm::opt::ArgStringList & CC1Args) const
- protected clang::driver::Tool * buildAssembler() const
- protected clang::driver::Tool * buildLinker() const
- public std::string getCompilerRTPath() const
- public const char * getDefaultLinker() const
- public void getHexagonLibraryPaths(const llvm::opt::ArgList & Args, ToolChain::path_list & LibPaths) const
- public std::string getHexagonTargetDir(const std::string & InstalledDir, const SmallVectorImpl<std::string> & PrefixDirs) const
- protected unsigned int getOptimizationLevel(const llvm::opt::ArgList & DriverArgs) const
- public static Optional<unsigned int> getSmallDataThreshold(const llvm::opt::ArgList & Args)
- public static bool isAutoHVXEnabled(const llvm::opt::ArgList & Args)
- public ~HexagonToolChain()
Inherited from Linux:
- public AddClangSystemIncludeArgs
- public AddCudaIncludeArgs
- public AddHIPIncludeArgs
- public AddHIPRuntimeLibArgs
- public AddIAMCUIncludeArgs
- public GetDefaultCXXStdlibType
- public GetDefaultDwarfVersion
- public GetDefaultRuntimeLibType
- public HasNativeLLVMSupport
- public IsAArch64OutlineAtomicsDefault
- public IsMathErrnoDefault
- public addExtraOpts
- public addLibStdCxxIncludePaths
- public addProfileRTLibs
- protected buildAssembler
- protected buildLinker
- protected buildStaticLibTool
- public computeSysRoot
- public getDefaultDenormalModeForType
- public getDynamicLinker
- public getMultiarchTriple
- public getSupportedSanitizers
- public isPIEDefault
Inherited from Generic_ELF:
Inherited from Generic_GCC:
- protected AddClangCXXStdlibIncludeArgs
- protected AddMultiarchPaths
- protected AddMultilibIncludeArgs
- protected AddMultilibPaths
- public IsIntegratedAssemblerDefault
- public IsUnwindTablesDefault
- protected PushPPaths
- public TranslateArgs
- protected addGCCLibStdCxxIncludePaths
- protected addLibCxxIncludePaths
- protected addLibStdCXXIncludePaths
- protected addLibStdCxxIncludePaths
- protected buildAssembler
- protected buildLinker
- protected getTool
- public isPICDefault
- public isPICDefaultForced
- public isPIEDefault
- protected isTarget32Bit
- protected isTarget64Bit
- public printVerboseInfo
Inherited from ToolChain:
- public AddCCKextLibArgs
- public AddCXXStdlibLibArgs
- public AddClangCXXStdlibIncludeArgs
- public AddClangCXXStdlibIsystemArgs
- public AddClangSystemIncludeArgs
- public AddCudaIncludeArgs
- public AddFilePathLibArgs
- public AddHIPIncludeArgs
- public AddHIPRuntimeLibArgs
- public AddIAMCUIncludeArgs
- public CheckObjCARC
- public ComputeEffectiveClangTriple
- public ComputeLLVMTriple
- public GetCXXStdlibType
- public GetDefaultCXXStdlibType
- public GetDefaultDwarfVersion
- public GetDefaultRuntimeLibType
- public GetDefaultStackProtectorLevel
- public GetDefaultStandaloneDebug
- public GetDefaultTrivialAutoVarInit
- public GetDefaultUnwindLibType
- public GetExceptionModel
- public GetFilePath
- public GetGlobalDebugPathRemapping
- public GetLinkerPath
- public GetProgramPath
- public GetRuntimeLibType
- public GetStaticLibToolPath
- public GetUnwindLibType
- public HasNativeLLVMSupport
- public IsAArch64OutlineAtomicsDefault
- public IsBlocksDefault
- public IsEncodeExtendedBlockSignatureDefault
- public IsIntegratedAssemblerDefault
- public IsIntegratedBackendDefault
- public IsIntegratedBackendSupported
- public IsMathErrnoDefault
- public IsNonIntegratedBackendSupported
- public IsObjCNonFragileABIDefault
- public IsUnwindTablesDefault
- public LookupTypeForExtension
- public SelectTool
- public ShouldLinkCXXStdlib
- public SupportsEmbeddedBitcode
- public SupportsProfiling
- public TranslateArgs
- public TranslateOpenMPTargetArgs
- public TranslateXarchArgs
- public TranslateXarchArgs
- public UseDwarfDebugFlags
- public UseObjCMixedDispatch
- public addClangTargetOptions
- public addClangWarningOptions
- protected addExternCSystemInclude
- protected addExternCSystemIncludeIfExists
- public addFastMathRuntimeIfAvailable
- public addProfileRTLibs
- protected addSystemInclude
- protected addSystemIncludes
- public adjustDebugInfoKind
- protected buildAssembler
- protected buildCompilerRTBasename
- protected buildLinker
- protected buildStaticLibTool
- public canSplitThinLTOUnit
- public computeMSVCVersion
- public computeSysRoot
- protected concat
- public defaultToIEEELongDouble
- public detectLibcxxVersion
- public getArch
- public getArchName
- public getArchSpecificLibPath
- public getAuxTriple
- public getCompilerRT
- public getCompilerRTArgString
- public getCompilerRTBasename
- public getCompilerRTPath
- public getDefaultDebugFormat
- public getDefaultDebuggerTuning
- public getDefaultDenormalModeForType
- public getDefaultLinker
- public getDefaultObjCRuntime
- public getDefaultSanitizers
- public getDefaultUniversalArchName
- public getDriver
- public getEffectiveTriple
- public getFilePaths
- public getFilePaths
- public getHIPDeviceLibs
- public getInputFilename
- public getLibraryPaths
- public getLibraryPaths
- public getMaxDwarfVersion
- public getMultiarchTriple
- public getMultilib
- public getMultilibs
- public getOS
- public getOSLibName
- public getOpenMPTriple
- public getPlatform
- public getProgramPaths
- public getProgramPaths
- public getRTTIArg
- public getRTTIMode
- public getRuntimePaths
- public getSanitizerArgs
- public getStdlibPaths
- public getSupportedSanitizers
- public getTargetAndModeFromProgramName
- public getTargetVariantTriple
- public getThreadModel
- protected getTool
- public getTriple
- public getTripleString
- public getVFS
- public getXRayArgs
- public hasBlocksRuntime
- public isCrossCompiling
- public isFastMathRuntimeAvailable
- public isPICDefault
- public isPICDefaultForced
- public isPIEDefault
- public isThreadModelSupported
- public needsGCovInstrumentation
- public needsProfileRT
- public parseInlineAsmUsingAsmParser
- public printVerboseInfo
- protected setTripleEnvironment
- public supportsDebugInfoOption
- public useIntegratedAs
- public useIntegratedBackend
- public useRelaxRelocations
Methods
¶void AddCXXStdlibLibArgs(
const llvm::opt::ArgList& Args,
llvm::opt::ArgStringList& CmdArgs) const
void AddCXXStdlibLibArgs(
const llvm::opt::ArgList& Args,
llvm::opt::ArgStringList& CmdArgs) const
Description
AddCXXStdlibLibArgs - Add the system specific linker arguments to use for the given C++ standard library type.
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:93
Parameters
- const llvm::opt::ArgList& Args
- llvm::opt::ArgStringList& CmdArgs
¶void AddClangSystemIncludeArgs(
const llvm::opt::ArgList& DriverArgs,
llvm::opt::ArgStringList& CC1Args) const
void AddClangSystemIncludeArgs(
const llvm::opt::ArgList& DriverArgs,
llvm::opt::ArgStringList& CC1Args) const
Description
Add the clang cc1 arguments for system include paths. This routine is responsible for adding the necessary cc1 arguments to include headers from standard system header directories.
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:78
Parameters
- const llvm::opt::ArgList& DriverArgs
- llvm::opt::ArgStringList& CC1Args
¶clang::driver::ToolChain::CXXStdlibType
GetCXXStdlibType(
const llvm::opt::ArgList& Args) const
clang::driver::ToolChain::CXXStdlibType
GetCXXStdlibType(
const llvm::opt::ArgList& Args) const
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:91
Parameters
- const llvm::opt::ArgList& Args
¶static llvm::StringRef GetDefaultCPU()
static llvm::StringRef GetDefaultCPU()
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:107
¶llvm::StringRef GetGCCLibAndIncVersion() const
llvm::StringRef GetGCCLibAndIncVersion() const
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:96
¶static llvm::StringRef GetTargetCPUVersion(
const llvm::opt::ArgList& Args)
static llvm::StringRef GetTargetCPUVersion(
const llvm::opt::ArgList& Args)
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:108
Parameters
- const llvm::opt::ArgList& Args
¶HexagonToolChain(const clang::driver::Driver& D,
const llvm::Triple& Triple,
const llvm::opt::ArgList& Args)
HexagonToolChain(const clang::driver::Driver& D,
const llvm::Triple& Triple,
const llvm::opt::ArgList& Args)
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:70
Parameters
- const clang::driver::Driver& D
- const llvm::Triple& Triple
- const llvm::opt::ArgList& Args
¶void addClangTargetOptions(
const llvm::opt::ArgList& DriverArgs,
llvm::opt::ArgStringList& CC1Args,
Action::OffloadKind DeviceOffloadKind) const
void addClangTargetOptions(
const llvm::opt::ArgList& DriverArgs,
llvm::opt::ArgStringList& CC1Args,
Action::OffloadKind DeviceOffloadKind) const
Description
Add options that need to be passed to cc1 for this target.
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:74
Parameters
- const llvm::opt::ArgList& DriverArgs
- llvm::opt::ArgStringList& CC1Args
- Action::OffloadKind DeviceOffloadKind
¶void addLibCxxIncludePaths(
const llvm::opt::ArgList& DriverArgs,
llvm::opt::ArgStringList& CC1Args) const
void addLibCxxIncludePaths(
const llvm::opt::ArgList& DriverArgs,
llvm::opt::ArgStringList& CC1Args) const
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:84
Parameters
- const llvm::opt::ArgList& DriverArgs
- llvm::opt::ArgStringList& CC1Args
¶void addLibStdCxxIncludePaths(
const llvm::opt::ArgList& DriverArgs,
llvm::opt::ArgStringList& CC1Args) const
void addLibStdCxxIncludePaths(
const llvm::opt::ArgList& DriverArgs,
llvm::opt::ArgStringList& CC1Args) const
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:80
Parameters
- const llvm::opt::ArgList& DriverArgs
- llvm::opt::ArgStringList& CC1Args
¶clang::driver::Tool* buildAssembler() const
clang::driver::Tool* buildAssembler() const
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:64
¶clang::driver::Tool* buildLinker() const
clang::driver::Tool* buildLinker() const
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:65
¶std::string getCompilerRTPath() const
std::string getCompilerRTPath() const
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:104
¶const char* getDefaultLinker() const
const char* getDefaultLinker() const
Description
GetDefaultLinker - Get the default linker to use.
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:87
¶void getHexagonLibraryPaths(
const llvm::opt::ArgList& Args,
ToolChain::path_list& LibPaths) const
void getHexagonLibraryPaths(
const llvm::opt::ArgList& Args,
ToolChain::path_list& LibPaths) const
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:101
Parameters
- const llvm::opt::ArgList& Args
- ToolChain::path_list& LibPaths
¶std::string getHexagonTargetDir(
const std::string& InstalledDir,
const SmallVectorImpl<std::string>&
PrefixDirs) const
std::string getHexagonTargetDir(
const std::string& InstalledDir,
const SmallVectorImpl<std::string>&
PrefixDirs) const
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:98
Parameters
- const std::string& InstalledDir
- const SmallVectorImpl<std::string>& PrefixDirs
¶unsigned int getOptimizationLevel(
const llvm::opt::ArgList& DriverArgs) const
unsigned int getOptimizationLevel(
const llvm::opt::ArgList& DriverArgs) const
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:67
Parameters
- const llvm::opt::ArgList& DriverArgs
¶static Optional<unsigned int>
getSmallDataThreshold(
const llvm::opt::ArgList& Args)
static Optional<unsigned int>
getSmallDataThreshold(
const llvm::opt::ArgList& Args)
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:110
Parameters
- const llvm::opt::ArgList& Args
¶static bool isAutoHVXEnabled(
const llvm::opt::ArgList& Args)
static bool isAutoHVXEnabled(
const llvm::opt::ArgList& Args)
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:106
Parameters
- const llvm::opt::ArgList& Args
¶~HexagonToolChain()
~HexagonToolChain()
Description
@ }
Declared at: clang/lib/Driver/ToolChains/Hexagon.h:72