Lines Matching full:action

1 //===- Action.cpp - Abstract compilation steps ----------------------------===//
9 #include "clang/Driver/Action.h"
18 Action::~Action() = default;
20 const char *Action::getClassName(ActionClass AC) {
58 void Action::propagateDeviceOffloadInfo(OffloadKind OKind, const char *OArch,
60 // Offload action set its own kinds on their dependences.
69 assert(!ActiveOffloadKindMask && "Setting a device kind in a host action??");
78 void Action::propagateHostOffloadInfo(unsigned OKinds, const char *OArch) {
79 // Offload action set its own kinds on their dependences.
84 "Setting a host kind in a device action.");
92 void Action::propagateOffloadInfo(const Action *A) {
101 std::string Action::getOffloadingKindPrefix() const {
144 Action::GetOffloadingFileNamePrefix(OffloadKind Kind,
160 StringRef Action::GetOffloadKindName(OffloadKind Kind) {
183 : Action(InputClass, _Type), Input(_Input), Id(_Id.str()) {}
187 BindArchAction::BindArchAction(Action *Input, StringRef ArchName)
188 : Action(BindArchClass, Input), ArchName(ArchName) {}
193 : Action(OffloadClass, HDep.getAction()), HostTC(HDep.getToolChain()) {
201 : Action(OffloadClass, DDeps.getActions(), Ty),
207 // If all inputs agree on the same kind, use it also for this action.
222 : Action(OffloadClass, HDep.getAction()), HostTC(HDep.getToolChain()),
224 // We use the kinds of the host dependence for this action.
238 // If this action is used to forward single dependency, set the toolchain.
248 assert(!getInputs().empty() && "No dependencies for offload action??");
264 "Sizes of action dependences and toolchains are not consistent!");
266 // Skip host action
290 Action *OffloadAction::getHostDependence() const {
292 assert(!getInputs().empty() && "No dependencies for offload action??");
303 Action *
312 void OffloadAction::DeviceDependences::add(Action &A, const ToolChain &TC,
321 void OffloadAction::DeviceDependences::add(Action &A, const ToolChain &TC,
334 OffloadAction::HostDependence::HostDependence(Action &A, const ToolChain &TC,
344 JobAction::JobAction(ActionClass Kind, Action *Input, types::ID Type)
345 : Action(Kind, Input, Type) {}
348 : Action(Kind, Inputs, Type) {}
352 PreprocessJobAction::PreprocessJobAction(Action *Input, types::ID OutputType)
357 PrecompileJobAction::PrecompileJobAction(Action *Input, types::ID OutputType)
360 PrecompileJobAction::PrecompileJobAction(ActionClass Kind, Action *Input,
363 assert(isa<PrecompileJobAction>((Action*)this) && "invalid action kind");
368 ExtractAPIJobAction::ExtractAPIJobAction(Action *Inputs, types::ID OutputType)
373 AnalyzeJobAction::AnalyzeJobAction(Action *Input, types::ID OutputType)
378 MigrateJobAction::MigrateJobAction(Action *Input, types::ID OutputType)
383 CompileJobAction::CompileJobAction(Action *Input, types::ID OutputType)
388 BackendJobAction::BackendJobAction(Action *Input, types::ID OutputType)
393 AssembleJobAction::AssembleJobAction(Action *Input, types::ID OutputType)
418 VerifyJobAction::VerifyJobAction(ActionClass Kind, Action *Input,
427 VerifyDebugInfoJobAction::VerifyDebugInfoJobAction(Action *Input,
433 VerifyPCHJobAction::VerifyPCHJobAction(Action *Input, types::ID Type)
443 OffloadUnbundlingJobAction::OffloadUnbundlingJobAction(Action *Input)
465 BinaryAnalyzeJobAction::BinaryAnalyzeJobAction(Action *Input, types::ID Type)