class MinGW

Declaration

class MinGW : public ToolChain { /* full declaration omitted */ };

Description

ToolChain - Access to tools for a single platform.

Declared at: clang/lib/Driver/ToolChains/MinGW.h:58

Inherits from: ToolChain

Member Variables

private clang::driver::CudaInstallationDetector CudaInstallation
private clang::driver::RocmInstallationDetector RocmInstallation
private std::string Base
private std::string GccLibDir
private clang::driver::toolchains::Generic_GCC::GCCVersion GccVer
private std::string Ver
private std::string SubdirName
private std::unique_ptr<tools::gcc::Preprocessor> Preprocessor
private std::unique_ptr<tools::gcc::Compiler> Compiler
private bool NativeLLVMSupport

Inherited from ToolChain:

protected Multilibs
protected SelectedMultilib

Method Overview

Inherited from ToolChain:

Methods

void AddClangCXXStdlibIncludeArgs(
    const llvm::opt::ArgList& DriverArgs,
    llvm::opt::ArgStringList& CC1Args) const

Description

AddClangCXXStdlibIncludeArgs - Add the clang -cc1 level arguments to set the include paths to use for the given C++ standard library type.

Declared at: clang/lib/Driver/ToolChains/MinGW.h:82

Parameters

const llvm::opt::ArgList& DriverArgs
llvm::opt::ArgStringList& CC1Args

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/MinGW.h:80

Parameters

const llvm::opt::ArgList& DriverArgs
llvm::opt::ArgStringList& CC1Args

void AddCudaIncludeArgs(
    const llvm::opt::ArgList& DriverArgs,
    llvm::opt::ArgStringList& CC1Args) const

Description

Add arguments to use system-specific CUDA includes.

Declared at: clang/lib/Driver/ToolChains/MinGW.h:86

Parameters

const llvm::opt::ArgList& DriverArgs
llvm::opt::ArgStringList& CC1Args

void AddHIPIncludeArgs(
    const llvm::opt::ArgList& DriverArgs,
    llvm::opt::ArgStringList& CC1Args) const

Description

Add arguments to use system-specific HIP includes.

Declared at: clang/lib/Driver/ToolChains/MinGW.h:88

Parameters

const llvm::opt::ArgList& DriverArgs
llvm::opt::ArgStringList& CC1Args

unsigned int GetDefaultDwarfVersion() const

Declared at: clang/lib/Driver/ToolChains/MinGW.h:93

llvm::ExceptionHandling GetExceptionModel(
    const llvm::opt::ArgList& Args) const

Description

GetExceptionModel - Return the tool chain exception model.

Declared at: clang/lib/Driver/ToolChains/MinGW.h:76

Parameters

const llvm::opt::ArgList& Args

bool HasNativeLLVMSupport() const

Description

HasNativeLTOLinker - Check whether the linker and related tools have native LLVM support.

Declared at: clang/lib/Driver/ToolChains/MinGW.h:66

bool IsIntegratedAssemblerDefault() const

Description

IsIntegratedAssemblerDefault - Does this tool chain enable -integrated-as by default.

Declared at: clang/lib/Driver/ToolChains/MinGW.h:68

bool IsUnwindTablesDefault(
    const llvm::opt::ArgList& Args) const

Description

IsUnwindTablesDefault - Does this tool chain use -funwind-tables by default.

Declared at: clang/lib/Driver/ToolChains/MinGW.h:69

Parameters

const llvm::opt::ArgList& Args

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

Declared at: clang/lib/Driver/ToolChains/MinGW.h:60

Parameters

const clang::driver::Driver& D
const llvm::Triple& Triple
const llvm::opt::ArgList& Args

clang::driver::Tool* buildAssembler() const

Declared at: clang/lib/Driver/ToolChains/MinGW.h:98

clang::driver::Tool* buildLinker() const

Declared at: clang/lib/Driver/ToolChains/MinGW.h:97

void findGccLibDir()

Declared at: clang/lib/Driver/ToolChains/MinGW.h:111

static void fixTripleArch(
    const clang::driver::Driver& D,
    llvm::Triple& Triple,
    const llvm::opt::ArgList& Args)

Declared at: clang/lib/Driver/ToolChains/MinGW.h:63

Parameters

const clang::driver::Driver& D
llvm::Triple& Triple
const llvm::opt::ArgList& Args

clang::SanitizerMask getSupportedSanitizers()
    const

Description

Return sanitizers which are available in this toolchain.

Declared at: clang/lib/Driver/ToolChains/MinGW.h:74

clang::driver::Tool* getTool(
    Action::ActionClass AC) const

Declared at: clang/lib/Driver/ToolChains/MinGW.h:96

Parameters

Action::ActionClass AC

bool isPICDefault() const

Description

Test whether this toolchain defaults to PIC.

Declared at: clang/lib/Driver/ToolChains/MinGW.h:70

bool isPICDefaultForced() const

Description

Tests whether this toolchain forces its default for PIC, PIE or non-PIC. If this returns true, any PIC related flags should be ignored and instead the results of \c isPICDefault() and \c isPIEDefault(const llvm::opt::ArgList &Args ) are used exclusively.

Declared at: clang/lib/Driver/ToolChains/MinGW.h:72

bool isPIEDefault(
    const llvm::opt::ArgList& Args) const

Description

Test whether this toolchain defaults to PIE.

Declared at: clang/lib/Driver/ToolChains/MinGW.h:71

Parameters

const llvm::opt::ArgList& Args

void printVerboseInfo(llvm::raw_ostream& OS) const

Description

Dispatch to the specific toolchain for verbose printing. This is used when handling the verbose option to print detailed, toolchain-specific information useful for understanding the behavior of the driver on a specific platform.

Declared at: clang/lib/Driver/ToolChains/MinGW.h:91

Parameters

llvm::raw_ostream& OS