clang 22.0.0git
|
#include "clang/Driver/Action.h"
Static Public Member Functions | |
static bool | classof (const Action *A) |
Static Public Member Functions inherited from clang::driver::Action | |
static const char * | getClassName (ActionClass AC) |
static std::string | GetOffloadingFileNamePrefix (OffloadKind Kind, StringRef NormalizedTriple, bool CreatePrefixForHost=false) |
Return a string that can be used as prefix in order to generate unique files for each offloading kind. | |
static StringRef | GetOffloadKindName (OffloadKind Kind) |
Return a string containing a offload kind name. |
Protected Member Functions | |
JobAction (ActionClass Kind, Action *Input, types::ID Type) | |
JobAction (ActionClass Kind, const ActionList &Inputs, types::ID Type) | |
Protected Member Functions inherited from clang::driver::Action | |
Action (ActionClass Kind, types::ID Type) | |
Action (ActionClass Kind, Action *Input, types::ID Type) | |
Action (ActionClass Kind, Action *Input) | |
Action (ActionClass Kind, const ActionList &Inputs, types::ID Type) |
Additional Inherited Members | |
Public Types inherited from clang::driver::Action | |
enum | ActionClass { InputClass = 0 , BindArchClass , OffloadClass , PreprocessJobClass , PrecompileJobClass , ExtractAPIJobClass , AnalyzeJobClass , CompileJobClass , BackendJobClass , AssembleJobClass , LinkJobClass , IfsMergeJobClass , LipoJobClass , DsymutilJobClass , VerifyDebugInfoJobClass , VerifyPCHJobClass , OffloadBundlingJobClass , OffloadUnbundlingJobClass , OffloadPackagerJobClass , LinkerWrapperJobClass , StaticLibJobClass , BinaryAnalyzeJobClass , BinaryTranslatorJobClass , ObjcopyJobClass , JobClassFirst = PreprocessJobClass , JobClassLast = ObjcopyJobClass } |
enum | OffloadKind { OFK_None = 0x00 , OFK_Host = 0x01 , OFK_Cuda = 0x02 , OFK_OpenMP = 0x04 , OFK_HIP = 0x08 , OFK_SYCL = 0x10 } |
using | size_type = ActionList::size_type |
using | input_iterator = ActionList::iterator |
using | input_const_iterator = ActionList::const_iterator |
using | input_range = llvm::iterator_range<input_iterator> |
using | input_const_range = llvm::iterator_range<input_const_iterator> |
Public Member Functions inherited from clang::driver::Action | |
virtual | ~Action () |
const char * | getClassName () const |
ActionClass | getKind () const |
types::ID | getType () const |
ActionList & | getInputs () |
const ActionList & | getInputs () const |
size_type | size () const |
input_iterator | input_begin () |
input_iterator | input_end () |
input_range | inputs () |
input_const_iterator | input_begin () const |
input_const_iterator | input_end () const |
input_const_range | inputs () const |
void | setCannotBeCollapsedWithNextDependentAction () |
Mark this action as not legal to collapse. | |
bool | isCollapsingWithNextDependentActionLegal () const |
Return true if this function can be collapsed with others. | |
std::string | getOffloadingKindPrefix () const |
Return a string containing the offload kind of the action. | |
void | propagateDeviceOffloadInfo (OffloadKind OKind, const char *OArch, const ToolChain *OToolChain) |
Set the device offload info of this action and propagate it to its dependences. | |
void | propagateHostOffloadInfo (unsigned OKinds, const char *OArch) |
Append the host offload info of this action and propagate it to its dependences. | |
void | setHostOffloadInfo (unsigned OKinds, const char *OArch) |
void | propagateOffloadInfo (const Action *A) |
Set the offload info of this action to be the same as the provided action, and propagate it to its dependences. | |
unsigned | getOffloadingHostActiveKinds () const |
OffloadKind | getOffloadingDeviceKind () const |
const char * | getOffloadingArch () const |
const ToolChain * | getOffloadingToolChain () const |
bool | isHostOffloading (unsigned int OKind) const |
Check if this action have any offload kinds. | |
bool | isDeviceOffloading (OffloadKind OKind) const |
bool | isOffloading (OffloadKind OKind) const |
Protected Attributes inherited from clang::driver::Action | |
unsigned | ActiveOffloadKindMask = 0u |
Offload information. | |
OffloadKind | OffloadingDeviceKind = OFK_None |
Offloading kind of the device. | |
const char * | OffloadingArch = nullptr |
The Offloading architecture associated with this action. | |
const ToolChain * | OffloadingToolChain = nullptr |
The Offloading toolchain associated with this device action. |
|
protected |
Definition at line 348 of file Action.cpp.
References clang::driver::Action::Action().
Referenced by clang::driver::AnalyzeJobAction::AnalyzeJobAction(), clang::driver::AssembleJobAction::AssembleJobAction(), clang::driver::BackendJobAction::BackendJobAction(), clang::driver::BinaryAnalyzeJobAction::BinaryAnalyzeJobAction(), clang::driver::BinaryTranslatorJobAction::BinaryTranslatorJobAction(), clang::driver::CompileJobAction::CompileJobAction(), clang::driver::DsymutilJobAction::DsymutilJobAction(), clang::driver::ExtractAPIJobAction::ExtractAPIJobAction(), clang::driver::IfsMergeJobAction::IfsMergeJobAction(), clang::driver::LinkerWrapperJobAction::LinkerWrapperJobAction(), clang::driver::LinkJobAction::LinkJobAction(), clang::driver::LipoJobAction::LipoJobAction(), clang::driver::ObjcopyJobAction::ObjcopyJobAction(), clang::driver::OffloadBundlingJobAction::OffloadBundlingJobAction(), clang::driver::OffloadPackagerJobAction::OffloadPackagerJobAction(), clang::driver::OffloadUnbundlingJobAction::OffloadUnbundlingJobAction(), clang::driver::PrecompileJobAction::PrecompileJobAction(), clang::driver::PrecompileJobAction::PrecompileJobAction(), clang::driver::PreprocessJobAction::PreprocessJobAction(), clang::driver::StaticLibJobAction::StaticLibJobAction(), and clang::driver::VerifyJobAction::VerifyJobAction().
|
protected |
Definition at line 351 of file Action.cpp.
References clang::driver::Action::Action().
Definition at line 409 of file Action.h.
References clang::driver::Action::Action(), clang::driver::Action::getKind(), clang::driver::Action::JobClassFirst, and clang::driver::Action::JobClassLast.