Home
last modified time | relevance | path

Searched full:irnode (Results 1 – 25 of 66) sorted by relevance

123

/arkcompiler/ets_frontend/es2panda/compiler/core/
DregAllocator.h78 bool CheckRegIndices(IRNode *ins, const Span<VReg *> &registers,
114 void PushBack(IRNode *ins);
115 void UpdateIcSlot(IRNode *node);
116 void Run(IRNode *ins);
117 void Run(IRNode *ins, size_t argCount);
118 void AdjustInsSpill(const Span<VReg *> &registers, IRNode *ins, ArenaList<IRNode *> &newInsns,
120 void AdjustRangeInsSpill(Span<VReg *> &registers, IRNode *ins, ArenaList<IRNode *> &newInsns);
133 void Add(ArenaList<IRNode *> &insns, const ir::AstNode *node, Args &&... args) in Add()
156 ArenaList<IRNode *> insn_;
DregAllocator.cpp36 void RegAllocator::PushBack(IRNode *ins) in PushBack()
56 void RegAllocator::UpdateIcSlot(IRNode *node) in UpdateIcSlot()
73 void RegAllocator::Run(IRNode *ins) in Run()
76 std::array<VReg *, IRNode::MAX_REG_OPERAND> regs {}; in Run()
92 void RegAllocator::Run(IRNode *ins, size_t argCount) in Run()
95 std::array<VReg *, IRNode::MAX_REG_OPERAND> regs {}; in Run()
119 ArenaList<IRNode *> newInsns(Allocator()->Adapter()); in AdjustInsRegWhenHasSpill()
122 IRNode *ins = *it; in AdjustInsRegWhenHasSpill()
124 std::array<VReg *, IRNode::MAX_REG_OPERAND> regs {}; in AdjustInsRegWhenHasSpill()
153 void RegAllocator::AdjustInsSpill(const Span<VReg *> &registers, IRNode *ins, ArenaList<IRNode *> &… in AdjustInsSpill()
[all …]
DlabelPair.h20 #include <ir/irnode.h>
DswitchBuilder.h19 #include <ir/irnode.h>
/arkcompiler/ets_frontend/es2panda/ir/
Dirnode.h95 class IRNode; variable
105 class IRNode {
107 explicit IRNode(const ir::AstNode *node) : node_(node) {}; in IRNode() function
108 virtual ~IRNode() = default;
110 NO_COPY_SEMANTIC(IRNode);
111 NO_MOVE_SEMANTIC(IRNode);
/arkcompiler/ets_frontend/ets2panda/compiler/core/
DregAllocator.cpp29 void AllocatorBase::PushBack(IRNode *const ins) const in PushBack()
87 std::pair<bool, std::size_t> RegAllocatorBase::RegIndicesValid(const IRNode *const ins, const Span<… in RegIndicesValid()
109 VReg RegAllocatorBase::Spill(IRNode *const ins, const VReg reg) const in Spill()
128 void RegAllocatorBase::Restore(const IRNode *const ins) const in Restore()
145 void RegAllocator::Run(IRNode *const ins, const int32_t spillMax) in Run()
148 std::array<VReg *, IRNode::MAX_REG_OPERAND> regs {}; in Run()
154 std::array<OutVReg, IRNode::MAX_REG_OPERAND> dstRegs {}; in Run()
174 std::vector<IRNode *> dstMoves; in Run()
213 void RangeRegAllocator::Run(IRNode *const ins, VReg rangeStart, const std::size_t argCount) in Run()
218 std::array<VReg *, IRNode::MAX_REG_OPERAND> regs {}; in Run()
DregAllocator.h38 void PushBack(IRNode *ins) const;
88 VReg Spill(IRNode *ins, VReg reg) const;
89 void Restore(const IRNode *ins) const;
91 …[[nodiscard]] static std::pair<bool, std::size_t> RegIndicesValid(const IRNode *ins, const Span<VR…
112 void Run(IRNode *ins, int32_t spillMax);
130 void Run(IRNode *ins, VReg rangeStart, size_t argCount);
DregSpiller.h19 #include "ir/irnode.h"
53 …[[nodiscard]] virtual IRNode *MoveReg(const ir::AstNode *node, VReg vd, VReg vs, bool spillMov) = …
80 … [[nodiscard]] IRNode *MoveReg(const ir::AstNode *node, VReg vd, VReg vs, bool spillMov) override;
97 … [[nodiscard]] IRNode *MoveReg(const ir::AstNode *node, VReg vd, VReg vs, bool spillMov) override;
DcodeGen.h95 [[nodiscard]] virtual IRNode *AllocMov(const ir::AstNode *node, VReg vd, VReg vs) = 0;
96 [[nodiscard]] virtual IRNode *AllocMov(const ir::AstNode *node, OutVReg vd, VReg vs) = 0;
104 [[nodiscard]] ArenaVector<IRNode *> &Insns() noexcept;
105 [[nodiscard]] const ArenaVector<IRNode *> &Insns() const noexcept;
176 ArenaVector<IRNode *> insns_;
DregSpiller.cpp81 IRNode *DynamicRegSpiller::MoveReg(const ir::AstNode *const node, const VReg vd, const VReg vs, in MoveReg()
112 IRNode *StaticRegSpiller::MoveReg(const ir::AstNode *const node, const VReg vd, const VReg vs, cons… in MoveReg()
Demitter.h52 class IRNode; variable
79 void GenInstructionDebugInfo(const IRNode *ins, ark::pandasm::Ins *pandaIns);
Dfunction.h19 #include "ir/irnode.h"
DlabelPair.h20 #include "ir/irnode.h"
DETSfunction.h19 #include "ir/irnode.h"
/arkcompiler/ets_frontend/ets2panda/ir/
Dirnode.h106 class IRNode; variable
113 class IRNode {
115 explicit IRNode(const ir::AstNode *node) : node_(node) {}; in IRNode() function
116 virtual ~IRNode() = default;
118 NO_COPY_SEMANTIC(IRNode);
119 NO_MOVE_SEMANTIC(IRNode);
Dirnode.cpp16 #include "irnode.h"
/arkcompiler/ets_frontend/ets2panda/compiler/templates/
Disa.h.erb28 #include "ir/irnode.h"
33 class Label : public IRNode {
35 explicit Label(const ir::AstNode* node, std::string id) : IRNode(node), id_(std::move(id)) {}
120 % base_class = "IRNode"
/arkcompiler/ets_frontend/es2panda/compiler/base/
Dlexenv.h20 #include <ir/irnode.h>
DoptionalChain.h19 #include <ir/irnode.h>
/arkcompiler/ets_frontend/ets2panda/compiler/base/
DoptionalChain.h19 #include "ir/irnode.h"
Dlexenv.h20 #include "ir/irnode.h"
/arkcompiler/ets_frontend/ets2panda/compiler/function/
DasyncFunctionBuilder.h19 #include "ir/irnode.h"
DasyncGeneratorFunctionBuilder.h19 #include "ir/irnode.h"
/arkcompiler/ets_frontend/es2panda/compiler/function/
DasyncFunctionBuilder.h19 #include <ir/irnode.h>
DasyncGeneratorFunctionBuilder.h19 #include <ir/irnode.h>

123