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) constDescription
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) constDescription
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) constDeclared 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() constDeclared 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) constDescription
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) constDeclared 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) constDeclared 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() constDeclared at: clang/lib/Driver/ToolChains/Hexagon.h:64
¶clang::driver::Tool* buildLinker() const
clang::driver::Tool* buildLinker() constDeclared at: clang/lib/Driver/ToolChains/Hexagon.h:65
¶std::string getCompilerRTPath() const
std::string getCompilerRTPath() constDeclared at: clang/lib/Driver/ToolChains/Hexagon.h:104
¶const char* getDefaultLinker() const
const char* getDefaultLinker() constDescription
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) constDeclared 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) constDeclared 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) constDeclared 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