/arkcompiler/runtime_core/static_core/compiler/optimizer/code_generator/ |
H A D | spill_fill_encoder.h | 37 static bool CanCombineSpillFills(SpillFillData pred, SpillFillData succ, const Graph *graph); 38 static void SortSpillFillData(ArenaVector<SpillFillData> *spillFills); 59 size_t EncodeImmToX(const SpillFillData &sf); 60 size_t EncodeRegisterToX(const SpillFillData &sf, const SpillFillData *next, int consecutiveOpsHint = 0); 61 size_t EncodeStackToX(const SpillFillData &sf, const SpillFillData *next, int consecutiveOpsHint = 0); 62 static bool AreConsecutiveOps(const SpillFillData &pred, const SpillFillData [all...] |
H A D | spill_fill_encoder.cpp | 23 bool SpillFillEncoder::AreConsecutiveOps(const SpillFillData &pred, const SpillFillData &succ) in AreConsecutiveOps() 50 bool SpillFillEncoder::CanCombineSpillFills(SpillFillData pred, SpillFillData succ, const Graph *graph) in CanCombineSpillFills() 64 void SpillFillEncoder::SortSpillFillData(ArenaVector<SpillFillData> *spillFills) in SortSpillFillData() 75 // Sort spill fills only within group of consecutive SpillFillData elements sharing the same spill-fill type. in SortSpillFillData() 76 // SpillFillData elements could not be reordered within whole spill_fills array, because some of these elements in SortSpillFillData() 121 SpillFillData *next = nextIt == end ? nullptr : &(*nextIt); in EncodeSpillFill() 126 // find how many consecutive SpillFillData have the same type, source and destination type in EncodeSpillFill() 182 size_t SpillFillEncoder::EncodeImmToX(const SpillFillData [all...] |
H A D | encode_visitor.h | 66 // For each group of SpillFillData representing spill or fill operations and 68 static void SortSpillFillData(ArenaVector<SpillFillData> *spillFills); 70 static bool CanCombineSpillFills(SpillFillData pred, SpillFillData succ, const CFrameLayout &fl,
|
/arkcompiler/runtime_core/compiler/optimizer/ir/ |
H A D | spill_fill_data.h | 27 class SpillFillData { class 29 SpillFillData() = default; 30 SpillFillData(LocationType src_type, LocationType dst_type, unsigned src_val, unsigned dst_val, DataType::Type tp) in SpillFillData() function in panda::compiler::SpillFillData 34 SpillFillData(Location src, Location dst, DataType::Type type) : src_(src), dst_(dst), type_(type) {} in SpillFillData() function in panda::compiler::SpillFillData 96 static_assert(sizeof(SpillFillData) <= sizeof(uint64_t)); 101 inline auto ToString(const SpillFillData &sf, Arch arch) in ToString()
|
H A D | inst.h | 1784 void SetLocationData(SpillFillData location_data) in SetLocationData() 1806 SpillFillData location_data_ {}; 2194 void AddSpillFill(const SpillFillData &spill_fill) in AddSpillFill() 2201 spill_fills_.emplace_back(SpillFillData {src.GetKind(), dst.GetKind(), src.GetValue(), dst.GetValue(), type}); in AddSpillFill() 2204 const ArenaVector<SpillFillData> &GetSpillFills() const in GetSpillFills() 2209 ArenaVector<SpillFillData> &GetSpillFills() in GetSpillFills() 2214 const SpillFillData &GetSpillFill(size_t n) const in GetSpillFill() 2220 SpillFillData &GetSpillFill(size_t n) 2260 ArenaVector<SpillFillData> spill_fills_;
|
/arkcompiler/runtime_core/static_core/compiler/optimizer/ir/ |
H A D | spill_fill_data.h | 27 class SpillFillData { class 29 SpillFillData() = default; 30 SpillFillData(LocationType srcType, LocationType dstType, unsigned srcVal, unsigned dstVal, DataType::Type tp) in SpillFillData() function in ark::compiler::SpillFillData 34 SpillFillData(Location src, Location dst, DataType::Type type) : src_(src), dst_(dst), type_(type) {} in SpillFillData() function in ark::compiler::SpillFillData 95 static_assert(sizeof(SpillFillData) <= sizeof(uint64_t)); 99 inline auto ToString(const SpillFillData &sf, Arch arch) in ToString()
|
H A D | graph.cpp | 660 SpillFillData Graph::GetDataForNativeParam(DataType::Type type) in GetDataForNativeParam() 685 return SpillFillData(SpillFillData {loc, LocationType::INVALID, reg.GetId(), INVALID_REG, regType}); in GetDataForNativeParam() 697 return SpillFillData( in GetDataForNativeParam() 698 SpillFillData {LocationType::STACK_PARAMETER, LocationType::INVALID, slot, INVALID_REG, regType}); in GetDataForNativeParam()
|
H A D | inst.h | 2675 void SetLocationData(SpillFillData locationData) 2697 SpillFillData locationData_ {}; 3573 void AddSpillFill(const SpillFillData &spillFill) in AddSpillFill() 3580 spillFills_.emplace_back(SpillFillData {src.GetKind(), dst.GetKind(), src.GetValue(), dst.GetValue(), type}); in AddSpillFill() 3583 const ArenaVector<SpillFillData> &GetSpillFills() const in GetSpillFills() 3588 ArenaVector<SpillFillData> &GetSpillFills() in GetSpillFills() 3593 const SpillFillData &GetSpillFill(size_t n) const in GetSpillFill() 3599 SpillFillData &GetSpillFill(size_t n) 3649 ArenaVector<SpillFillData> spillFills_;
|
H A D | graph.h | 1018 SpillFillData GetDataForNativeParam(DataType::Type type);
|
/arkcompiler/runtime_core/static_core/compiler/tests/ |
H A D | reg_alloc_resolver_test.cpp | 22 static bool operator==(const SpillFillData &lhs, const SpillFillData &rhs) in operator ==() 130 std::vector<SpillFillData> expectedSf { in TEST_F() 131 SpillFillData {LocationType::REGISTER, LocationType::REGISTER, 0U, 1U, DataType::UINT64}, in TEST_F() 132 SpillFillData {LocationType::STACK, LocationType::REGISTER, 0U, 0U, in TEST_F()
|
H A D | spill_fill_encoder_test.cpp | 22 bool operator==(const SpillFillData &left, const SpillFillData &right) in operator ==() 31 ArenaVector<SpillFillData> spillFills { in TEST_F() 48 ArenaVector<SpillFillData> expectedOrder { in TEST_F()
|
H A D | reg_alloc_linear_scan_test.cpp | 29 static bool operator==(const SpillFillData &lhs, const SpillFillData &rhs) in operator ==() 353 auto iter = std::find_if(spillFills.begin(), spillFills.end(), [zeroReg, phiReg](const SpillFillData &sf) { in TEST_F() 1134 SpillFillData expectedSf {LocationType::REGISTER, LocationType::REGISTER, param0->GetReg(), REG_FOR_SPLIT, in TEST_F() 1239 SpillFillData expectedSf {LocationType::REGISTER, LocationType::REGISTER, REG_FOR_SPLIT, INS(6U).GetDstReg(), in TEST_F() 1324 SpillFillData {LocationType::REGISTER, LocationType::REGISTER, SPLIT_REG, catchPhiReg, in TEST_F() 1331 SpillFillData {LocationType::REGISTER, LocationType::REGISTER, ins4Reg, catchPhiReg, in TEST_F()
|
H A D | reg_alloc_graph_coloring_test.cpp | 28 SpillFillData GetParameterSpillFilll(Inst *param) in GetParameterSpillFilll()
|
/arkcompiler/runtime_core/compiler/optimizer/optimizations/regalloc/ |
H A D | spill_fills_resolver.h | 80 bool NeedToResolve(const ArenaVector<SpillFillData> &spill_fills); 130 ArenaVector<SpillFillData> pre_moves_; 132 ArenaVector<SpillFillData> post_moves_;
|
H A D | spill_fills_resolver.cpp | 124 bool SpillFillsResolver::NeedToResolve(const ArenaVector<SpillFillData> &spill_fills) in NeedToResolve()
|
/arkcompiler/runtime_core/static_core/compiler/optimizer/optimizations/regalloc/ |
H A D | spill_fills_resolver.h | 81 bool NeedToResolve(const ArenaVector<SpillFillData> &spillFills); 131 ArenaVector<SpillFillData> preMoves_; 133 ArenaVector<SpillFillData> postMoves_;
|
H A D | spill_fills_resolver.cpp | 125 bool SpillFillsResolver::NeedToResolve(const ArenaVector<SpillFillData> &spillFills) in NeedToResolve()
|
/arkcompiler/runtime_core/bytecode_optimizer/ |
H A D | codegen.h | 94 void EncodeSpillFillData(const compiler::SpillFillData &sf);
|
H A D | codegen.cpp | 153 void BytecodeGen::EncodeSpillFillData(const compiler::SpillFillData &sf) in EncodeSpillFillData()
|
/arkcompiler/runtime_core/compiler/tests/ |
H A D | reg_alloc_graph_coloring_test.cpp | 27 SpillFillData GetParameterSpillFilll(Inst *param) in GetParameterSpillFilll()
|
/arkcompiler/runtime_core/static_core/bytecode_optimizer/ |
H A D | codegen.h | 104 void EncodeSpillFillData(const compiler::SpillFillData &sf);
|
H A D | codegen.cpp | 200 void BytecodeGen::EncodeSpillFillData(const compiler::SpillFillData &sf) in EncodeSpillFillData()
|