10 #ifndef LLVM_CLANG_DRIVER_ACTION_H
11 #define LLVM_CLANG_DRIVER_ACTION_H
15 #include "llvm/ADT/SmallVector.h"
86 : Kind(Kind), Type(Type), Inputs(Inputs) {}
108 virtual void anchor();
109 const llvm::opt::Arg &Input;
122 virtual void anchor();
125 const char *ArchName;
138 virtual void anchor();
140 const char *GpuArchName;
163 virtual void anchor();
175 virtual void anchor();
188 void anchor()
override;
198 void anchor()
override;
208 void anchor()
override;
218 void anchor()
override;
228 void anchor()
override;
238 void anchor()
override;
248 void anchor()
override;
258 void anchor()
override;
268 void anchor()
override;
278 void anchor()
override;
288 void anchor()
override;
298 void anchor()
override;
307 void anchor()
override;
AssembleJobAction(Action *Input, types::ID OutputType)
PrecompileJobAction(Action *Input, types::ID OutputType)
BackendJobAction(Action *Input, types::ID OutputType)
static bool classof(const Action *A)
Action(ActionClass Kind, Action *Input, types::ID Type)
bool isAtTopLevel() const
const char * getGpuArchName() const
MigrateJobAction(Action *Input, types::ID OutputType)
static bool classof(const Action *A)
const ActionList & getDeviceActions() const
The base class of the type hierarchy.
static bool classof(const Action *A)
LinkJobAction(ActionList &Inputs, types::ID Type)
Action(ActionClass Kind, types::ID Type)
ActionList::iterator iterator
types::ID getType() const
VerifyJobAction(ActionClass Kind, Action *Input, types::ID Type)
const char * getComputeArchName() const
Gets the compute_XX that corresponds to getGpuArchName().
VerifyDebugInfoJobAction(Action *Input, types::ID Type)
CompileJobAction(Action *Input, types::ID OutputType)
CudaDeviceAction(Action *Input, const char *ArchName, bool AtTopLevel)
JobAction(ActionClass Kind, Action *Input, types::ID Type)
LipoJobAction(ActionList &Inputs, types::ID Type)
static bool classof(const Action *A)
const_iterator end() const
ActionClass getKind() const
Action - Represent an abstract compilation step to perform.
static bool classof(const Action *A)
static bool IsValidGpuArchName(llvm::StringRef ArchName)
static bool classof(const Action *A)
ActionList::size_type size_type
DsymutilJobAction(ActionList &Inputs, types::ID Type)
PreprocessJobAction(Action *Input, types::ID OutputType)
static bool classof(const Action *A)
static bool classof(const Action *A)
static bool classof(const Action *A)
VerifyPCHJobAction(Action *Input, types::ID Type)
static bool classof(const Action *A)
CudaHostAction(Action *Input, const ActionList &DeviceActions)
ActionList::const_iterator const_iterator
const ActionList & getInputs() const
const TemplateArgument * iterator
static bool classof(const Action *A)
AnalyzeJobAction(Action *Input, types::ID OutputType)
const char * getArchName() const
SmallVector< Action *, 3 > ActionList
ActionList - Type used for lists of actions.
static bool classof(const Action *A)
const char * getClassName() const
const_iterator begin() const
BindArchAction(Action *Input, const char *ArchName)
static bool classof(const Action *A)
static bool classof(const Action *A)
static bool classof(const Action *A)
static bool classof(const Action *A)
static bool classof(const Action *A)