clang 19.0.0git
Static Public Member Functions | Protected Member Functions | List of all members
clang::driver::JobAction Class Reference

#include "clang/Driver/Action.h"

Inheritance diagram for clang::driver::JobAction:
Inheritance graph

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 , MigrateJobClass ,
  CompileJobClass , BackendJobClass , AssembleJobClass , LinkJobClass ,
  IfsMergeJobClass , LipoJobClass , DsymutilJobClass , VerifyDebugInfoJobClass ,
  VerifyPCHJobClass , OffloadBundlingJobClass , OffloadUnbundlingJobClass , OffloadPackagerJobClass ,
  LinkerWrapperJobClass , StaticLibJobClass , BinaryAnalyzeJobClass , JobClassFirst = PreprocessJobClass ,
  JobClassLast = BinaryAnalyzeJobClass
enum  OffloadKind {
  OFK_None = 0x00 , OFK_Host = 0x01 , OFK_Cuda = 0x02 , OFK_OpenMP = 0x04 ,
  OFK_HIP = 0x08
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
ActionListgetInputs ()
const ActionListgetInputs () 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 ToolChaingetOffloadingToolChain () 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 ToolChainOffloadingToolChain = nullptr
 The Offloading toolchain associated with this device action.

Detailed Description

Definition at line 399 of file Action.h.

Constructor & Destructor Documentation

◆ JobAction() [1/2]

JobAction::JobAction ( ActionClass  Kind,
Action Input,
types::ID  Type 

Definition at line 338 of file Action.cpp.

◆ JobAction() [2/2]

JobAction::JobAction ( ActionClass  Kind,
const ActionList Inputs,
types::ID  Type 

Definition at line 341 of file Action.cpp.

Member Function Documentation

◆ classof()

static bool clang::driver::JobAction::classof ( const Action A)

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