Lines Matching refs:Action

697     const ToolChain *HostTC = C.getSingleOffloadToolChain<Action::OFK_Host>();  in CreateOffloadingDeviceToolChains()
700 auto OFK = Action::OFK_Cuda; in CreateOffloadingDeviceToolChains()
713 const ToolChain *HostTC = C.getSingleOffloadToolChain<Action::OFK_Host>(); in CreateOffloadingDeviceToolChains()
715 auto OFK = Action::OFK_HIP; in CreateOffloadingDeviceToolChains()
774 C.getSingleOffloadToolChain<Action::OFK_Host>(); in CreateOffloadingDeviceToolChains()
781 *this, TT, *HostTC, C.getInputArgs(), Action::OFK_OpenMP); in CreateOffloadingDeviceToolChains()
793 C.addOffloadDeviceToolChain(TC, Action::OFK_OpenMP); in CreateOffloadingDeviceToolChains()
1952 static unsigned PrintActions1(const Compilation &C, Action *A, in PrintActions1()
1953 std::map<Action *, unsigned> &Ids, in PrintActions1() argument
1967 os << Action::getClassName(A->getKind()) << ", ";
1976 [&](Action *A, const ToolChain *TC, const char *BoundArch) { in __anon51bf6f8c0802()
2001 for (Action *PreRequisite : *AL) {
2040 std::map<Action *, unsigned> Ids; in PrintActions()
2041 for (Action *A : C.getActions()) in PrintActions()
2047 static bool ContainsCompileOrAssembleAction(const Action *A) { in ContainsCompileOrAssembleAction()
2052 for (const Action *Input : A->inputs()) in ContainsCompileOrAssembleAction()
2095 for (Action* Act : SingleActions) { in BuildUniversalActions()
2138 Action* LastAction = Actions.back(); in BuildUniversalActions()
2417 Action::OffloadKind AssociatedOffloadKind = Action::OFK_None;
2422 Action::OffloadKind AssociatedOffloadKind) in DeviceActionBuilder()
2439 virtual ActionBuilderReturnCode addDeviceDepences(Action *HostAction) { in addDeviceDepences()
2450 virtual Action* appendLinkHostActions(ActionList &AL) { return nullptr; } in appendLinkHostActions()
2467 Action::OffloadKind getAssociatedOffloadKind() { in getAssociatedOffloadKind()
2502 Action *CudaFatBinary = nullptr;
2524 Action::OffloadKind OFKind) in CudaActionBuilderBase()
2527 ActionBuilderReturnCode addDeviceDepences(Action *HostAction) override { in addDeviceDepences()
2622 auto AddTopLevel = [&](Action *A, TargetID TargetID) { in appendTopLevelActions()
2660 assert(AssociatedOffloadKind == Action::OFK_Cuda || in initialize()
2661 AssociatedOffloadKind == Action::OFK_HIP); in initialize()
2664 if (AssociatedOffloadKind == Action::OFK_Cuda && in initialize()
2665 !C.hasOffloadToolChain<Action::OFK_Cuda>()) in initialize()
2669 if (AssociatedOffloadKind == Action::OFK_HIP && in initialize()
2670 !C.hasOffloadToolChain<Action::OFK_HIP>()) in initialize()
2676 const ToolChain *HostTC = C.getSingleOffloadToolChain<Action::OFK_Host>(); in initialize()
2689 AssociatedOffloadKind == Action::OFK_Cuda in initialize()
2690 ? C.getSingleOffloadToolChain<Action::OFK_Cuda>() in initialize()
2691 : C.getSingleOffloadToolChain<Action::OFK_HIP>()); in initialize()
2775 : CudaActionBuilderBase(C, Args, Inputs, Action::OFK_Cuda) { in CudaActionBuilder()
2831 C, Args, Ph, CudaDeviceActions[I], Action::OFK_Cuda); in getDeviceDependences()
2844 Action *AssembleAction = CudaDeviceActions[I]; in getDeviceDependences()
2848 Action *BackendAction = AssembleAction->getInputs()[0]; in getDeviceDependences()
2853 DDep.add(*A, *ToolChains.front(), GpuArchList[I], Action::OFK_Cuda); in getDeviceDependences()
2866 Action::OFK_Cuda); in getDeviceDependences()
2891 for (Action *&A : CudaDeviceActions) in getDeviceDependences()
2907 : CudaActionBuilderBase(C, Args, Inputs, Action::OFK_HIP) { in HIPActionBuilder()
3038 for (Action *&A : CudaDeviceActions) in getDeviceDependences()
3082 Action* appendLinkHostActions(ActionList &AL) override { return AL.back(); } in appendLinkHostActions()
3099 : DeviceActionBuilder(C, Args, Inputs, Action::OFK_OpenMP) {} in OpenMPActionBuilder()
3130 for (Action *&A : OpenMPDeviceActions) in getDeviceDependences()
3136 ActionBuilderReturnCode addDeviceDepences(Action *HostAction) override { in addDeviceDepences()
3164 ToolChains[I], /*BoundArch=*/StringRef(), Action::OFK_OpenMP); in addDeviceDepences()
3178 *HostAction, *C.getSingleOffloadToolChain<Action::OFK_Host>(), in addDeviceDepences()
3179 /*BoundArch=*/nullptr, Action::OFK_OpenMP); in addDeviceDepences()
3181 for (Action *&A : OpenMPDeviceActions) { in addDeviceDepences()
3184 DDep.add(*A, **TC, /*BoundArch=*/nullptr, Action::OFK_OpenMP); in addDeviceDepences()
3204 Dep.add(*A, **TI, /*BoundArch=*/nullptr, Action::OFK_OpenMP); in appendTopLevelActions()
3223 Action::OFK_OpenMP); in appendLinkDeviceActions()
3231 Action* appendLinkHostActions(ActionList &AL) override { in appendLinkHostActions()
3244 auto OpenMPTCRange = C.getOffloadToolChains<Action::OFK_OpenMP>(); in initialize()
3317 Action *
3318 addDeviceDependencesToHostAction(Action *HostAction, const Arg *InputArg, in addDeviceDependencesToHostAction()
3368 *HostAction, *C.getSingleOffloadToolChain<Action::OFK_Host>(), in addDeviceDependencesToHostAction()
3376 bool addHostDependenceToDeviceActions(Action *&HostAction, in addHostDependenceToDeviceActions()
3394 C.getSingleOffloadToolChain<Action::OFK_Host>(), in addHostDependenceToDeviceActions()
3395 /*BoundArch=*/StringRef(), Action::OFK_Host); in addHostDependenceToDeviceActions()
3421 if (OffloadKind == Action::OFK_None && CanUseBundler) in addHostDependenceToDeviceActions()
3431 bool appendTopLevelActions(ActionList &AL, Action *HostAction, in appendTopLevelActions()
3466 Action* makeHostLinkAction() { in makeHostLinkAction()
3479 Action* HA = nullptr; in makeHostLinkAction()
3492 Action *processHostLinkAction(Action *HostAction) { in processHostLinkAction()
3521 *HostAction, *C.getSingleOffloadToolChain<Action::OFK_Host>(), in processHostLinkAction()
3619 Action *ClangClPch = C.MakeAction<InputAction>(*InputArg, HeaderType); in handleArguments()
3710 Action *Current = C.MakeAction<InputAction>(*InputArg, InputType); in BuildActions()
3758 Action *NewCurrent = ConstructPhaseAction(C, Args, Phase, Current); in BuildActions()
3788 if (Action *Wrapper = OffloadBuilder.makeHostLinkAction()) in BuildActions()
3790 Action *LA; in BuildActions()
3824 Action *Current = C.MakeAction<InputAction>(*InputArg, InputType); in BuildActions()
3867 Action *InputAc = C.MakeAction<InputAction>(*A, types::TY_C); in BuildActions()
3883 Action *Driver::ConstructPhaseAction( in ConstructPhaseAction()
3884 Compilation &C, const ArgList &Args, phases::ID Phase, Action *Input, in ConstructPhaseAction()
3885 Action::OffloadKind TargetDeviceOffloadKind) const { in ConstructPhaseAction()
3966 if (isUsingLTO() && TargetDeviceOffloadKind == Action::OFK_None) { in ConstructPhaseAction()
3972 (TargetDeviceOffloadKind == Action::OFK_HIP && in ConstructPhaseAction()
4009 for (const Action *A : C.getActions()) in BuildJobs()
4011 !(A->getKind() == Action::IfsMergeJobClass || in BuildJobs()
4013 A->getKind() == clang::driver::Action::CompileJobClass && in BuildJobs()
4015 (A->getKind() == Action::BindArchClass && A->getInputs().size() && in BuildJobs()
4016 A->getInputs().front()->getKind() == Action::IfsMergeJobClass))) in BuildJobs()
4042 std::map<std::pair<const Action *, std::string>, InputInfo> CachedResults; in BuildJobs()
4043 for (Action *A : C.getActions()) { in BuildJobs()
4063 /*TargetDeviceOffloadKind*/ Action::OFK_None); in BuildJobs()
4205 Action *CurAction = *Inputs.begin(); in getPrevDependentAction()
4392 for (Action *A : Inputs) { in combineWithPreprocessor()
4414 IsHostSelector = BaseAction->getOffloadingDeviceKind() == Action::OFK_None; in ToolSelector()
4432 const Action *CurAction = ActionChain.back().JA; in getTool()
4476 Action::OffloadKind OffloadKind) { in GetTriplePlusArchString()
4483 TriplePlusArch += Action::GetOffloadKindName(OffloadKind); in GetTriplePlusArchString()
4488 Compilation &C, const Action *A, const ToolChain *TC, StringRef BoundArch, in BuildJobsForAction()
4490 std::map<std::pair<const Action *, std::string>, InputInfo> &CachedResults, in BuildJobsForAction() argument
4491 Action::OffloadKind TargetDeviceOffloadKind) const { in BuildJobsForAction()
4492 std::pair<const Action *, std::string> ActionTC = { in BuildJobsForAction()
4506 Compilation &C, const Action *A, const ToolChain *TC, StringRef BoundArch, in BuildJobsForActionNoCache()
4508 std::map<std::pair<const Action *, std::string>, InputInfo> &CachedResults, in BuildJobsForActionNoCache() argument
4509 Action::OffloadKind TargetDeviceOffloadKind) const { in BuildJobsForActionNoCache()
4513 bool BuildingForOffloadDevice = TargetDeviceOffloadKind != Action::OFK_None; in BuildJobsForActionNoCache()
4519 C.getArgsForToolChain(TC, BoundArch, Action::OFK_None); in BuildJobsForActionNoCache()
4547 OA->doOnEachDeviceDependence([&](Action *DepA, const ToolChain *DepTC, in BuildJobsForActionNoCache()
4563 [&](Action *DepA, const ToolChain *DepTC, const char *DepBoundArch) { in BuildJobsForActionNoCache()
4617 A->getOffloadingDeviceKind() == Action::OFK_OpenMP) { in BuildJobsForActionNoCache()
4640 [&](Action *DepA, const ToolChain *DepTC, const char *DepBoundArch) { in BuildJobsForActionNoCache()
4649 for (const Action *Input : Inputs) { in BuildJobsForActionNoCache()
4699 assert(UI.DependentOffloadKind != Action::OFK_None && in BuildJobsForActionNoCache()
4706 std::string OffloadingPrefix = Action::GetOffloadingFileNamePrefix( in BuildJobsForActionNoCache()
4715 UI.DependentOffloadKind == Action::OFK_HIP, in BuildJobsForActionNoCache()
4724 if (TargetDeviceOffloadKind == Action::OFK_HIP) { in BuildJobsForActionNoCache()
4725 if (UI.DependentOffloadKind == Action::OFK_Host) in BuildJobsForActionNoCache()
4739 std::pair<const Action *, std::string> ActionTC = { in BuildJobsForActionNoCache()
4749 std::string OffloadingPrefix = Action::GetOffloadingFileNamePrefix( in BuildJobsForActionNoCache()
4839 static bool HasPreprocessOutput(const Action &JA) { in HasPreprocessOutput()
4975 bool IsHIPNoRDC = JA.getOffloadingDeviceKind() == Action::OFK_HIP && in GetNamedOutputPath()
5015 JA.getOffloadingDeviceKind() == Action::OFK_HIP && in GetNamedOutputPath()