/external/tensorflow/tensorflow/compiler/xla/service/gpu/ |
D | thunk_schedule.h | 52 const std::vector<Thunk*>& TotalOrder() const { return thunk_total_order_; } in TotalOrder() 55 const std::list<const Thunk*>& DependsOn(const Thunk* thunk) const; 57 bool Depended(const Thunk* thunk) const { return depended_by_.count(thunk); } in Depended() 77 const Thunk& thunk, const HloInstruction& operand, 78 const std::unordered_map<const HloInstruction*, Thunk*>& hlo_to_thunk); 81 std::vector<Thunk*> thunk_total_order_; 83 std::unordered_map<const Thunk*, std::list<const Thunk*>> depends_on_; 84 std::set<const Thunk*> depended_by_; 85 std::list<const Thunk*> empty_thunk_list_;
|
D | thunk_schedule.cc | 25 const Thunk& thunk, const HloInstruction& operand, in AddDependenciesOnTransitiveOperands() 26 const std::unordered_map<const HloInstruction*, Thunk*>& hlo_to_thunk) { in AddDependenciesOnTransitiveOperands() 51 std::unordered_map<const HloInstruction*, Thunk*> hlo_to_thunk; in ThunkSchedule() 62 for (const Thunk* thunk : thunk_total_order_) { in ThunkSchedule() 81 std::unordered_map<const Thunk*, int> thunk_to_total_order; in RemoveRedundantDependencyEdges() 108 for (const Thunk* dst : thunk_total_order_) { in RemoveRedundantDependencyEdges() 115 std::list<const Thunk*>& sources = FindOrDie(depends_on_, dst); in RemoveRedundantDependencyEdges() 117 const Thunk* src = *iter; in RemoveRedundantDependencyEdges() 135 const std::list<const Thunk*>& ThunkSchedule::DependsOn( in DependsOn() 136 const Thunk* thunk) const { in DependsOn() [all …]
|
D | thunk.h | 41 class Thunk { 62 explicit Thunk(Kind kind, const HloInstruction* hlo_instruction) in Thunk() function 64 virtual ~Thunk() {} in ~Thunk() 65 Thunk(const Thunk&) = delete; 66 Thunk& operator=(const Thunk&) = delete; 114 using ThunkSequence = std::vector<std::unique_ptr<Thunk>>;
|
D | ir_emitter_unnested.h | 94 std::unique_ptr<Thunk> BuildThunk(const HloInstruction* hlo); 157 std::unique_ptr<Thunk> BuildKernelThunk(const HloInstruction* inst); 160 std::unique_ptr<Thunk> BuildFftThunk(const HloInstruction* inst); 164 std::unique_ptr<Thunk> BuildGemmThunk(const HloInstruction* inst); 167 std::unique_ptr<Thunk> BuildHostToDeviceCopyThunk(const HloInstruction* inst); 170 std::unique_ptr<Thunk> BuildDeviceToDeviceCopyThunk( 175 std::unique_ptr<Thunk> BuildInfeedThunk(const HloInstruction* inst); 179 std::unique_ptr<Thunk> BuildWhileThunk(const HloInstruction* hlo); 183 std::unique_ptr<Thunk> BuildForThunk(const HloInstruction* hlo, 189 std::unique_ptr<Thunk> BuildConditionalThunk(const HloInstruction* hlo); [all …]
|
D | sequential_thunk.h | 32 class SequentialThunk : public Thunk { 34 SequentialThunk(std::vector<std::unique_ptr<Thunk>>&& thunks, 39 const std::vector<std::unique_ptr<Thunk>>& thunks() const { return thunks_; } in thunks() 48 std::vector<std::unique_ptr<Thunk>> thunks_;
|
D | cudnn_batchnorm_thunk.cc | 85 : Thunk(Thunk::Kind::kCudnnBatchNormForwardInference, hlo), in CudnnBatchNormForwardInferenceThunk() 141 : Thunk(Thunk::Kind::kCudnnBatchNormForwardTraining, hlo), in CudnnBatchNormForwardTrainingThunk() 219 : Thunk(Thunk::Kind::kCudnnBatchNormBackward, hlo), in CudnnBatchNormBackwardThunk()
|
D | cudnn_batchnorm_thunk.h | 46 class CudnnBatchNormForwardInferenceThunk : public Thunk { 76 class CudnnBatchNormForwardTrainingThunk : public Thunk { 107 class CudnnBatchNormBackwardThunk : public Thunk {
|
D | sequential_thunk.cc | 23 SequentialThunk::SequentialThunk(std::vector<std::unique_ptr<Thunk>>&& thunks, in SequentialThunk() 25 : Thunk(Kind::kSequential, hlo), thunks_(std::move(thunks)) {} in SequentialThunk()
|
D | tuple_thunk.h | 34 class TupleThunk : public Thunk { 40 : Thunk(Kind::kTuple, hlo_instruction), in TupleThunk()
|
D | copy_thunk.h | 30 class HostToDeviceCopyThunk : public Thunk { 53 class DeviceToDeviceCopyThunk : public Thunk {
|
D | copy_thunk.cc | 27 : Thunk(Kind::kCopy, hlo_instruction), in HostToDeviceCopyThunk() 45 : Thunk(Kind::kCopy, hlo_instruction), in DeviceToDeviceCopyThunk()
|
D | gpu_executable.cc | 166 std::map<int32, const Thunk*> last_blocking_thunk_for_stream; in ExecuteThunks() 167 std::map<const Thunk*, std::unique_ptr<se::Event>> thunk_to_finish_event; in ExecuteThunks() 168 for (Thunk* thunk : thunk_schedule_->TotalOrder()) { in ExecuteThunks() 175 for (const Thunk* dependency : thunk_schedule_->DependsOn(thunk)) { in ExecuteThunks()
|
D | ir_emitter_unnested.cc | 120 void UpdateLaunchDimensions(const LaunchDimensions& launch_dims, Thunk* thunk, in UpdateLaunchDimensions() 122 CHECK(Thunk::Kind::kKernel == thunk->kind()); in UpdateLaunchDimensions() 501 std::vector<std::unique_ptr<Thunk>> thunks; in HandleFusion() 588 CHECK(Thunk::Kind::kKernel == LastThunk()->kind()); in HandleFusion() 1115 CHECK(LastThunk()->kind() == Thunk::Kind::kSequential); in EmitReductionToScalar() 1285 CHECK(LastThunk()->kind() == Thunk::Kind::kSequential); in EmitColumnReduction() 1555 CHECK(LastThunk()->kind() == Thunk::Kind::kSequential); in EmitRowReduction() 1671 std::vector<std::unique_ptr<Thunk>> thunks; in HandleReduce() 1743 std::vector<std::unique_ptr<Thunk>> thunks; in HandleSelectAndScatter() 2072 std::unique_ptr<Thunk> IrEmitterUnnested::BuildKernelThunk( in BuildKernelThunk() [all …]
|
D | infeed_thunk.h | 32 class InfeedThunk : public Thunk {
|
D | for_thunk.h | 31 class ForThunk : public Thunk {
|
D | while_thunk.h | 38 class WhileThunk : public Thunk {
|
D | for_thunk.cc | 28 : Thunk(Kind::kWhile, hlo), in ForThunk()
|
D | conditional_thunk.h | 38 class ConditionalThunk : public Thunk {
|
D | kernel_thunk.h | 44 class KernelThunk : public Thunk {
|
D | gemm_thunk.h | 35 class GemmThunk : public Thunk {
|
/external/clang/lib/CodeGen/ |
D | CGVTables.cpp | 36 const ThunkInfo &Thunk) { in GetAddrOfThunk() argument 44 Thunk.This, Out); in GetAddrOfThunk() 46 getCXXABI().getMangleContext().mangleThunk(MD, Thunk, Out); in GetAddrOfThunk() 54 const ThunkInfo &Thunk, llvm::Function *Fn) { in setThunkVisibility() argument 58 static void setThunkProperties(CodeGenModule &CGM, const ThunkInfo &Thunk, in setThunkProperties() argument 63 !Thunk.Return.isEmpty()); in setThunkProperties() 67 setThunkVisibility(CGM, MD, Thunk, ThunkFn); in setThunkProperties() 85 const ThunkInfo &Thunk) { in PerformReturnAdjustment() argument 109 Thunk.Return); in PerformReturnAdjustment() 146 GlobalDecl GD, const ThunkInfo &Thunk) { in GenerateVarArgsThunk() argument [all …]
|
D | CGVTables.h | 53 void emitThunk(GlobalDecl GD, const ThunkInfo &Thunk, bool ForVTable); 57 void maybeEmitThunkForVTable(GlobalDecl GD, const ThunkInfo &Thunk);
|
/external/clang/lib/AST/ |
D | VTableBuilder.cpp | 877 void AddThunk(const CXXMethodDecl *MD, const ThunkInfo &Thunk); 1066 const ThunkInfo &Thunk) { in AddThunk() argument 1073 if (std::find(ThunksVector.begin(), ThunksVector.end(), Thunk) != in AddThunk() 1077 ThunksVector.push_back(Thunk); in AddThunk() 1165 const ThunkInfo &Thunk = TI.second; in ComputeThisAdjustments() local 1183 AddThunk(MD, Thunk); in ComputeThisAdjustments() 1955 ThunkInfo Thunk = VTableThunks.lookup(I); in dumpLayout() local 1956 if (!Thunk.isEmpty()) { in dumpLayout() 1958 if (!Thunk.Return.isEmpty()) { in dumpLayout() 1960 Out << Thunk.Return.NonVirtual << " non-virtual"; in dumpLayout() [all …]
|
/external/llvm/lib/DebugInfo/CodeView/ |
D | SymbolDumper.cpp | 104 void CVSymbolDumperImpl::visitThunk32Sym(SymbolKind Kind, Thunk32Sym &Thunk) { in visitThunk32Sym() argument 106 W.printNumber("Parent", Thunk.Header.Parent); in visitThunk32Sym() 107 W.printNumber("End", Thunk.Header.End); in visitThunk32Sym() 108 W.printNumber("Next", Thunk.Header.Next); in visitThunk32Sym() 109 W.printNumber("Off", Thunk.Header.Off); in visitThunk32Sym() 110 W.printNumber("Seg", Thunk.Header.Seg); in visitThunk32Sym() 111 W.printNumber("Len", Thunk.Header.Len); in visitThunk32Sym() 112 W.printEnum("Ordinal", Thunk.Header.Ord, getThunkOrdinalNames()); in visitThunk32Sym()
|
/external/llvm/include/llvm/DebugInfo/PDB/ |
D | PDBSymbolThunk.h | 26 DECLARE_PDB_SYMBOL_CONCRETE_TYPE(PDB_SymType::Thunk)
|