clang  10.0.0svn
Public Member Functions | List of all members
clang::driver::toolchains::WebAssembly Class Referencefinal

#include "/opt/doxygen-docs/src/llvm/tools/clang/lib/Driver/ToolChains/WebAssembly.h"

Inheritance diagram for clang::driver::toolchains::WebAssembly:
Inheritance graph
[legend]
Collaboration diagram for clang::driver::toolchains::WebAssembly:
Collaboration graph
[legend]

Public Member Functions

 WebAssembly (const Driver &D, const llvm::Triple &Triple, const llvm::opt::ArgList &Args)
 
- Public Member Functions inherited from clang::driver::ToolChain
virtual ~ToolChain ()
 
const DrivergetDriver () const
 
llvm::vfs::FileSystem & getVFS () const
 
const llvm::Triple & getTriple () const
 
virtual const llvm::Triple * getAuxTriple () const
 Get the toolchain's aux triple, if it has one. More...
 
virtual std::string getInputFilename (const InputInfo &Input) const
 Some toolchains need to modify the file name, for example to replace the extension for object files with .cubin for OpenMP offloading to Nvidia GPUs. More...
 
llvm::Triple::ArchType getArch () const
 
StringRef getArchName () const
 
StringRef getPlatform () const
 
StringRef getOS () const
 
StringRef getDefaultUniversalArchName () const
 Provide the default architecture name (as expected by -arch) for this toolchain. More...
 
std::string getTripleString () const
 
const llvm::Triple & getEffectiveTriple () const
 Get the toolchain's effective clang triple. More...
 
path_listgetLibraryPaths ()
 
const path_listgetLibraryPaths () const
 
path_listgetFilePaths ()
 
const path_listgetFilePaths () const
 
path_listgetProgramPaths ()
 
const path_listgetProgramPaths () const
 
const MultilibSetgetMultilibs () const
 
const MultilibgetMultilib () const
 
const SanitizerArgsgetSanitizerArgs () const
 
const XRayArgsgetXRayArgs () const
 
const llvm::opt::Arg * getRTTIArg () const
 
RTTIMode getRTTIMode () const
 
virtual llvm::opt::DerivedArgList * TranslateArgs (const llvm::opt::DerivedArgList &Args, StringRef BoundArch, Action::OffloadKind DeviceOffloadKind) const
 TranslateArgs - Create a new derived argument list for any argument translations this ToolChain may wish to perform, or 0 if no tool chain specific translations are needed. More...
 
virtual llvm::opt::DerivedArgList * TranslateOpenMPTargetArgs (const llvm::opt::DerivedArgList &Args, bool SameTripleAsHost, SmallVectorImpl< llvm::opt::Arg *> &AllocatedArgs) const
 TranslateOpenMPTargetArgs - Create a new derived argument list for that contains the OpenMP target specific flags passed via -Xopenmp-target -opt=val OR -Xopenmp-target=<triple> -opt=val. More...
 
virtual ToolSelectTool (const JobAction &JA) const
 Choose a tool to use to handle the action JA. More...
 
std::string GetFilePath (const char *Name) const
 
std::string GetProgramPath (const char *Name) const
 
std::string GetLinkerPath () const
 Returns the linker path, respecting the -fuse-ld= argument to determine the linker suffix or name. More...
 
virtual void printVerboseInfo (raw_ostream &OS) const
 Dispatch to the specific toolchain for verbose printing. More...
 
virtual bool isCrossCompiling () const
 Returns true if the toolchain is targeting a non-native architecture. More...
 
virtual types::ID LookupTypeForExtension (StringRef Ext) const
 LookupTypeForExtension - Return the default language type to use for the given extension. More...
 
virtual bool IsBlocksDefault () const
 IsBlocksDefault - Does this tool chain enable -fblocks by default. More...
 
virtual bool useIntegratedAs () const
 Check if the toolchain should use the integrated assembler. More...
 
virtual bool IsEncodeExtendedBlockSignatureDefault () const
 IsEncodeExtendedBlockSignatureDefault - Does this tool chain enable -fencode-extended-block-signature by default. More...
 
virtual bool useRelaxRelocations () const
 Check whether to enable x86 relax relocations by default. More...
 
virtual unsigned GetDefaultStackProtectorLevel (bool KernelOrKext) const
 GetDefaultStackProtectorLevel - Get the default stack protector level for this tool chain (0=off, 1=on, 2=strong, 3=all). More...
 
virtual LangOptions::TrivialAutoVarInitKind GetDefaultTrivialAutoVarInit () const
 Get the default trivial automatic variable initialization. More...
 
virtual CXXStdlibType GetDefaultCXXStdlibType () const
 
virtual UnwindLibType GetDefaultUnwindLibType () const
 
virtual std::string getCompilerRTPath () const
 
virtual std::string getCompilerRT (const llvm::opt::ArgList &Args, StringRef Component, FileType Type=ToolChain::FT_Static) const
 
const char * getCompilerRTArgString (const llvm::opt::ArgList &Args, StringRef Component, FileType Type=ToolChain::FT_Static) const
 
virtual Optional< std::string > getRuntimePath () const
 
virtual Optional< std::string > getCXXStdlibPath () const
 
std::string getArchSpecificLibPath () const
 
StringRef getOSLibName () const
 
virtual bool IsUnwindTablesDefault (const llvm::opt::ArgList &Args) const
 IsUnwindTablesDefault - Does this tool chain use -funwind-tables by default. More...
 
virtual bool isNoExecStackDefault () const
 Test whether this toolchaind defaults to non-executable stacks. More...
 
virtual void CheckObjCARC () const
 Complain if this tool chain doesn't support Objective-C ARC. More...
 
virtual codegenoptions::DebugInfoFormat getDefaultDebugFormat () const
 Get the default debug info format. Typically, this is DWARF. More...
 
virtual bool UseDwarfDebugFlags () const
 UseDwarfDebugFlags - Embed the compile options to clang into the Dwarf compile unit information. More...
 
virtual unsigned GetDefaultDwarfVersion () const
 
virtual bool GetDefaultStandaloneDebug () const
 
virtual llvm::DebuggerKind getDefaultDebuggerTuning () const
 
virtual bool supportsDebugInfoOption (const llvm::opt::Arg *) const
 Does this toolchain supports given debug info option or not. More...
 
virtual void adjustDebugInfoKind (codegenoptions::DebugInfoKind &DebugInfoKind, const llvm::opt::ArgList &Args) const
 Adjust debug information kind considering all passed options. More...
 
virtual llvm::ExceptionHandling GetExceptionModel (const llvm::opt::ArgList &Args) const
 GetExceptionModel - Return the tool chain exception model. More...
 
virtual bool SupportsEmbeddedBitcode () const
 SupportsEmbeddedBitcode - Does this tool chain support embedded bitcode. More...
 
virtual std::string getThreadModel () const
 getThreadModel() - Which thread model does this target use? More...
 
virtual bool isThreadModelSupported (const StringRef Model) const
 isThreadModelSupported() - Does this target support a thread model? More...
 
virtual std::string ComputeLLVMTriple (const llvm::opt::ArgList &Args, types::ID InputType=types::TY_INVALID) const
 ComputeLLVMTriple - Return the LLVM target triple to use, after taking command line arguments into account. More...
 
virtual std::string ComputeEffectiveClangTriple (const llvm::opt::ArgList &Args, types::ID InputType=types::TY_INVALID) const
 ComputeEffectiveClangTriple - Return the Clang triple to use for this target, which may take into account the command line arguments. More...
 
virtual ObjCRuntime getDefaultObjCRuntime (bool isNonFragile) const
 getDefaultObjCRuntime - Return the default Objective-C runtime for this platform. More...
 
virtual void addClangWarningOptions (llvm::opt::ArgStringList &CC1Args) const
 Add warning options that need to be passed to cc1 for this target. More...
 
virtual RuntimeLibType GetRuntimeLibType (const llvm::opt::ArgList &Args) const
 
virtual UnwindLibType GetUnwindLibType (const llvm::opt::ArgList &Args) const
 
void AddClangCXXStdlibIsystemArgs (const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CC1Args) const
 AddClangCXXStdlibIsystemArgs - Add the clang -cc1 level arguments to set the specified include paths for the C++ standard library. More...
 
bool ShouldLinkCXXStdlib (const llvm::opt::ArgList &Args) const
 Returns if the C++ standard library should be linked in. More...
 
void AddFilePathLibArgs (const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs) const
 AddFilePathLibArgs - Add each thing in getFilePaths() as a "-L" option. More...
 
virtual void AddCCKextLibArgs (const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs) const
 AddCCKextLibArgs - Add the system specific linker arguments to use for kernel extensions (Darwin-specific). More...
 
virtual bool AddFastMathRuntimeIfAvailable (const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs) const
 AddFastMathRuntimeIfAvailable - If a runtime library exists that sets global flags for unsafe floating point math, add it and return true. More...
 
virtual void addProfileRTLibs (const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs) const
 addProfileRTLibs - When -fprofile-instr-profile is specified, try to pass a suitable profile runtime library to the linker. More...
 
virtual void AddCudaIncludeArgs (const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CC1Args) const
 Add arguments to use system-specific CUDA includes. More...
 
virtual void AddIAMCUIncludeArgs (const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CC1Args) const
 Add arguments to use MCU GCC toolchain includes. More...
 
virtual VersionTuple computeMSVCVersion (const Driver *D, const llvm::opt::ArgList &Args) const
 On Windows, returns the MSVC compatibility version. More...
 
virtual SanitizerMask getDefaultSanitizers () const
 Return sanitizers which are enabled by default. More...
 

Additional Inherited Members

- Public Types inherited from clang::driver::ToolChain
enum  CXXStdlibType { CST_Libcxx, CST_Libstdcxx }
 
enum  RuntimeLibType { RLT_CompilerRT, RLT_Libgcc }
 
enum  UnwindLibType { UNW_None, UNW_CompilerRT, UNW_Libgcc }
 
enum  RTTIMode { RM_Enabled, RM_Disabled }
 
enum  FileType { FT_Object, FT_Static, FT_Shared }
 
using path_list = SmallVector< std::string, 16 >
 
- Static Public Member Functions inherited from clang::driver::ToolChain
static ParsedClangName getTargetAndModeFromProgramName (StringRef ProgName)
 Return any implicit target and/or mode flag for an invocation of the compiler driver as ProgName. More...
 
static bool needsProfileRT (const llvm::opt::ArgList &Args)
 needsProfileRT - returns true if instrumentation profile is on. More...
 
static bool needsGCovInstrumentation (const llvm::opt::ArgList &Args)
 Returns true if gcov instrumentation (-fprofile-arcs or –coverage) is on. More...
 
- Protected Member Functions inherited from clang::driver::ToolChain
 ToolChain (const Driver &D, const llvm::Triple &T, const llvm::opt::ArgList &Args)
 
void setTripleEnvironment (llvm::Triple::EnvironmentType Env)
 
virtual ToolbuildAssembler () const
 
virtual ToolgetTool (Action::ActionClass AC) const
 
- Static Protected Member Functions inherited from clang::driver::ToolChain
static void addSystemInclude (const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CC1Args, const Twine &Path)
 Utility function to add a system include directory to CC1 arguments. More...
 
static void addExternCSystemInclude (const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CC1Args, const Twine &Path)
 Utility function to add a system include directory with extern "C" semantics to CC1 arguments. More...
 
static void addExternCSystemIncludeIfExists (const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CC1Args, const Twine &Path)
 
static void addSystemIncludes (const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CC1Args, ArrayRef< StringRef > Paths)
 Utility function to add a list of system include directories to CC1. More...
 
- Protected Attributes inherited from clang::driver::ToolChain
MultilibSet Multilibs
 
Multilib SelectedMultilib
 

Detailed Description

Definition at line 39 of file WebAssembly.h.

Constructor & Destructor Documentation

◆ WebAssembly()

clang::driver::toolchains::WebAssembly::WebAssembly ( const Driver D,
const llvm::Triple &  Triple,
const llvm::opt::ArgList &  Args 
)

The documentation for this class was generated from the following file: