class HIPSPVToolChain

Declaration

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

Description

ToolChain - Access to tools for a single platform.

Declared at: clang/lib/Driver/ToolChains/HIPSPV.h:46

Inherits from: ToolChain

Member Variables

public const clang::driver::ToolChain& HostTC

Inherited from ToolChain:

protected Multilibs
protected SelectedMultilib

Method Overview

Inherited from ToolChain:

Methods

void AddClangCXXStdlibIncludeArgs(
    const llvm::opt::ArgList& Args,
    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/HIPSPV.h:64

Parameters

const llvm::opt::ArgList& Args
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/HIPSPV.h:62

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/HIPSPV.h:69

Parameters

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

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

Description

Add arguments to use MCU GCC toolchain includes.

Declared at: clang/lib/Driver/ToolChains/HIPSPV.h:67

Parameters

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

clang::driver::ToolChain::CXXStdlibType
GetCXXStdlibType(
    const llvm::opt::ArgList& Args) const

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

Parameters

const llvm::opt::ArgList& Args

HIPSPVToolChain(
    const clang::driver::Driver& D,
    const llvm::Triple& Triple,
    const clang::driver::ToolChain& HostTC,
    const llvm::opt::ArgList& Args)

Declared at: clang/lib/Driver/ToolChains/HIPSPV.h:48

Parameters

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

bool IsIntegratedAssemblerDefault() const

Description

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

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

bool IsMathErrnoDefault() const

Description

IsMathErrnoDefault - Does this tool chain use -fmath-errno by default.

Declared at: clang/lib/Driver/ToolChains/HIPSPV.h:83

bool SupportsProfiling() const

Description

SupportsProfiling - Does this tool chain support -pg.

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

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/HIPSPV.h:56

Parameters

const llvm::opt::ArgList& DriverArgs
llvm::opt::ArgStringList& CC1Args
Action::OffloadKind DeviceOffloadKind

void addClangWarningOptions(
    llvm::opt::ArgStringList& CC1Args) const

Description

Add warning options that need to be passed to cc1 for this target.

Declared at: clang/lib/Driver/ToolChains/HIPSPV.h:59

Parameters

llvm::opt::ArgStringList& CC1Args

void adjustDebugInfoKind(
    codegenoptions::DebugInfoKind& DebugInfoKind,
    const llvm::opt::ArgList& Args) const

Description

Adjust debug information kind considering all passed options.

Declared at: clang/lib/Driver/ToolChains/HIPSPV.h:80

Parameters

codegenoptions::DebugInfoKind& DebugInfoKind
const llvm::opt::ArgList& Args

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

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

llvm::VersionTuple computeMSVCVersion(
    const clang::driver::Driver* D,
    const llvm::opt::ArgList& Args) const

Description

On Windows, returns the MSVC compatibility version.

Declared at: clang/lib/Driver/ToolChains/HIPSPV.h:77

Parameters

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

const llvm::Triple* getAuxTriple() const

Description

Get the toolchain's aux triple, if it has one. Exactly what the aux triple represents depends on the toolchain, but for example when compiling CUDA code for the GPU, the triple might be NVPTX, while the aux triple is the host (CPU) toolchain, e.g. x86-linux-gnu.

Declared at: clang/lib/Driver/ToolChains/HIPSPV.h:51

llvm::SmallVector<BitCodeLibraryInfo, 12>
getHIPDeviceLibs(
    const llvm::opt::ArgList& Args) const

Description

Get paths of HIP device libraries.

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

Parameters

const llvm::opt::ArgList& Args

clang::SanitizerMask getSupportedSanitizers()
    const

Description

Return sanitizers which are available in this toolchain.

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

bool isCrossCompiling() const

Description

Returns true if the toolchain is targeting a non-native architecture.

Declared at: clang/lib/Driver/ToolChains/HIPSPV.h:85

bool isPICDefault() const

Description

Test whether this toolchain defaults to PIC.

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

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/HIPSPV.h:90

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

Description

Test whether this toolchain defaults to PIE.

Declared at: clang/lib/Driver/ToolChains/HIPSPV.h:87

Parameters

const llvm::opt::ArgList& Args

bool useIntegratedAs() const

Description

Check if the toolchain should use the integrated assembler.

Declared at: clang/lib/Driver/ToolChains/HIPSPV.h:84