Home
last modified time | relevance | path

Searched refs:Inst (Results 1 - 25 of 266) sorted by relevance

1234567891011

/arkcompiler/runtime_core/static_core/compiler/optimizer/ir/
H A Danalysis.h26 class Inst;
29 Inst *InstStoredValue(Inst *inst, Inst **secondValue);
30 Inst *InstStoredValue(Inst *inst);
32 template <typename T = Inst>
34 bool HasTryBlockBetween(Inst *dominateInst, Inst *inst);
35 bool IsSuitableForImplicitNullCheck(const Inst *ins
[all...]
H A Dgraph_checker.h82 void CheckUserOfInt32(BasicBlock *block, Inst *inst, User &user);
83 void CheckInstUsers(Inst *inst, [[maybe_unused]] BasicBlock *block);
84 void CheckPhiInputs(Inst *phiInst);
91 bool CheckInstHasInput(Inst *inst, Inst *input);
92 bool CheckInstHasUser(Inst *inst, Inst *user);
95 bool FindCaller(Inst *caller, BasicBlock *domBlock, ArenaStack<Inst *> *inlinedCalls);
96 void CheckSpillFillHolder(Inst *ins
[all...]
/arkcompiler/runtime_core/static_core/compiler/optimizer/optimizations/
H A Dchecks_elimination.h33 using GroupedBoundsChecks = ArenaVector<std::tuple<Inst *, InstVector, int64_t, int64_t>>;
35 using LoopNotFullyRedundantBoundsCheck = ArenaVector<std::pair<Inst *, GroupedBoundsChecks>>;
38 using InstPair = std::pair<Inst *, Inst *>;
39 using InstTriple = std::tuple<Inst *, Inst *, Inst *>;
43 using LoopInfo = std::tuple<CountableLoopInfo, Inst *, Inst *, Inst *, ConditionCod
[all...]
H A Dmemory_coalescing.h29 Inst *first;
30 Inst *second;
70 static void RemoveAddI(Inst *inst);
74 void ReplacePair(Inst *first, Inst *second, Inst *insertAfter);
76 Inst *ReplaceLoadArray(Inst *first, Inst *second, Inst *insertAfte
[all...]
H A Dpeepholes.h68 static void VisitSafePoint([[maybe_unused]] GraphVisitor *v, Inst *inst);
69 static void VisitNeg([[maybe_unused]] GraphVisitor *v, Inst *inst);
70 static void VisitAbs([[maybe_unused]] GraphVisitor *v, Inst *inst);
71 static void VisitNot([[maybe_unused]] GraphVisitor *v, Inst *inst);
72 static void VisitAdd([[maybe_unused]] GraphVisitor *v, Inst *inst);
73 static void VisitAddFinalize([[maybe_unused]] GraphVisitor *v, Inst *inst, Inst *input0, Inst *input1);
74 static void VisitSub([[maybe_unused]] GraphVisitor *v, Inst *inst);
75 static void VisitSubFinalize([[maybe_unused]] GraphVisitor *v, Inst *ins
[all...]
H A Dconst_folding.h21 bool ConstFoldingCast(Inst *inst);
22 bool ConstFoldingNeg(Inst *inst);
23 bool ConstFoldingAbs(Inst *inst);
24 bool ConstFoldingNot(Inst *inst);
25 bool ConstFoldingAdd(Inst *inst);
26 bool ConstFoldingSub(Inst *inst);
27 bool ConstFoldingMul(Inst *inst);
28 bool ConstFoldingBinaryMathWithNan(Inst *inst);
29 bool ConstFoldingDiv(Inst *inst);
30 bool ConstFoldingDivWithNan(Inst *ins
[all...]
H A Dsimplify_string_builder.h71 Inst *instance {nullptr}; // NOLINT(misc-non-private-member-variables-in-classes)
72 Inst *ctorCall {nullptr}; // NOLINT(misc-non-private-member-variables-in-classes)
73 Inst *toStringCall {nullptr}; // NOLINT(misc-non-private-member-variables-in-classes)
83 void FixBrokenSaveStates(Inst *source, Inst *target);
87 size_t appendCount, Inst *before);
89 void RemoveStringBuilderInstance(Inst *instance);
146 Inst *initialValue {nullptr}; // NOLINT(misc-non-private-member-variables-in-classes)
149 Inst *instance {nullptr}; // NOLINT(misc-non-private-member-variables-in-classes)
150 Inst *ctorCal
[all...]
H A Dmemory_barriers.h62 void VisitDefault([[maybe_unused]] Inst *inst) override
68 void CheckAllInputs(Inst *inst);
69 void CheckInput(Inst *input);
70 void CheckTwoInputs(Inst *input1, Inst *input2);
72 static void VisitCallStatic(GraphVisitor *v, Inst *inst);
73 static void VisitCallIndirect(GraphVisitor *v, Inst *inst);
74 static void VisitCall(GraphVisitor *v, Inst *inst);
75 static void VisitCallResolvedStatic(GraphVisitor *v, Inst *inst);
76 static void VisitCallVirtual(GraphVisitor *v, Inst *ins
[all...]
H A Descape.h49 using StateOwner = std::variant<Inst *, PhiState *, const ZeroInst *>;
50 using MaterializationSite = std::variant<Inst *, BasicBlock *>;
120 static bool IsAllocInst(Inst *inst) in IsAllocInst()
126 static void Visit##InstName(GraphVisitor *v, Inst *inst) \
133 static void Visit##InstName(GraphVisitor *v, Inst *inst) \
161 static void VisitCallStatic([[maybe_unused]] GraphVisitor *v, [[maybe_unused]] Inst *inst) in VisitCallStatic()
165 static void VisitCallVirtual([[maybe_unused]] GraphVisitor *v, [[maybe_unused]] Inst *inst) in VisitCallVirtual()
169 static void VisitCompare([[maybe_unused]] GraphVisitor *v, [[maybe_unused]] Inst *inst) in VisitCompare()
173 static void VisitIf([[maybe_unused]] GraphVisitor *v, [[maybe_unused]] Inst *inst) in VisitIf()
177 static void VisitPhi([[maybe_unused]] GraphVisitor *v, [[maybe_unused]] Inst *ins in VisitIf()
[all...]
H A Dstring_builder_utils.h28 bool IsStringBuilderInstance(Inst *inst);
29 bool IsMethodStringConcat(Inst *inst);
30 bool IsMethodStringBuilderConstructorWithStringArg(Inst *inst);
31 bool IsMethodStringBuilderConstructorWithCharArrayArg(Inst *inst);
32 bool IsStringBuilderToString(Inst *inst);
33 bool IsMethodStringBuilderDefaultConstructor(Inst *inst);
34 void InsertBeforeWithSaveState(Inst *inst, Inst *before);
35 void InsertAfterWithSaveState(Inst *inst, Inst *afte
[all...]
H A Dscheduler.h58 void AddDep(uint32_t *prio, Inst *from, Inst *to, uint32_t latency, Inst *barrier);
62 void ProcessInst(Inst *inst, uint32_t *numInst, uint32_t *numBetween, uint32_t *numSpecial, Inst **lastBarrier);
63 void ProcessMemory(Inst *inst, uint32_t *prio, Inst *lastBarrier);
64 void ProcessSpecial(Inst *inst, uint32_t *prio, Inst *lastBarrier);
65 void ProcessSpecialBoundsCheckI(Inst *ins
[all...]
H A Dcleanup.h66 void MarkInlinedCaller(Marker liveMrk, Inst *saveState);
67 bool IsRemovableCall(Inst *inst);
69 void MarkLiveRec(Marker liveMrk, Inst *inst);
73 void MarkOneLiveInst(Marker deadMrk, Marker liveMrk, Inst *inst);
77 bool TryToRemoveNonLiveInst(Inst *inst, BasicBlock *bb, ArenaSet<BasicBlock *> *newEmptyBlocks, Marker liveMrk);
79 void SetLiveRec(Inst *inst, Marker mrk, Marker liveMrk);
80 void LiveUserSearchRec(Inst *inst, Marker mrk, Marker liveMrk, Marker deadMrk);
83 void TryMarkInstIsDead(Inst *inst, Marker deadMrk, Marker mrk, Marker liveMrk);
91 void BuildDominatorsVisitPhi(Inst *inst, size_t &amount);
106 ArenaUnorderedMap<Inst *, uint32_
[all...]
H A Dlocations_builder.h52 static Location GetLocationForReturn(Inst *inst);
54 static void VisitResolveStatic(GraphVisitor *visitor, Inst *inst);
55 static void VisitCallResolvedStatic(GraphVisitor *visitor, Inst *inst);
56 static void VisitCallStatic(GraphVisitor *visitor, Inst *inst);
57 static void VisitCallVirtual(GraphVisitor *visitor, Inst *inst);
58 static void VisitCallLaunchStatic(GraphVisitor *visitor, Inst *inst);
59 static void VisitCallLaunchVirtual(GraphVisitor *visitor, Inst *inst);
60 static void VisitCallResolvedLaunchStatic(GraphVisitor *visitor, Inst *inst);
61 static void VisitCallResolvedLaunchVirtual(GraphVisitor *visitor, Inst *inst);
62 static void VisitResolveVirtual(GraphVisitor *visitor, Inst *ins
[all...]
H A Dlowering.h58 * For example, suppose that we want to test if IR-subtree rooted by some Inst matches add or sub instruction
61 * Inst* inst = ...;
93 Inst *Get(size_t i) in Get()
99 void Set(size_t i, Inst *inst)
137 std::array<Inst *, MAX_OPERANDS> operands_;
143 void Add(Inst *inst) in Add()
195 std::array<Inst *, MAX_INSTS> insts_ {};
202 static bool Capture(Inst *inst, OperandsCapture<MAX_OPERANDS> &args, InstructionsCapture<MAX_INSTS> &insts) in Capture()
227 static bool Capture(Inst *inst, OperandsCapture<MAX_OPERANDS> &args, InstructionsCapture<MAX_INSTS> &insts) in Capture()
243 static bool Capture(Inst *ins
[all...]
H A Dmemory_barriers.cpp37 bool OptimizeMemoryBarriers::CheckInst(Inst *inst) in CheckInst()
42 void OptimizeMemoryBarriers::CheckAllInputs(Inst *inst) in CheckAllInputs()
52 void OptimizeMemoryBarriers::CheckInput(Inst *input) in CheckInput()
59 void OptimizeMemoryBarriers::CheckTwoInputs(Inst *input1, Inst *input2) in CheckTwoInputs()
66 void OptimizeMemoryBarriers::VisitCallStatic(GraphVisitor *v, Inst *inst) in VisitCallStatic()
74 void OptimizeMemoryBarriers::VisitCallIndirect(GraphVisitor *v, Inst *inst) in VisitCallIndirect()
79 void OptimizeMemoryBarriers::VisitCall(GraphVisitor *v, Inst *inst) in VisitCall()
84 void OptimizeMemoryBarriers::VisitCallResolvedStatic(GraphVisitor *v, Inst *inst) in VisitCallResolvedStatic()
92 void OptimizeMemoryBarriers::VisitCallVirtual(GraphVisitor *v, Inst *ins
[all...]
/arkcompiler/runtime_core/static_core/compiler/optimizer/code_generator/
H A Dencode_visitor.h75 static void VisitMov(GraphVisitor *visitor, Inst *inst);
76 static void VisitNeg(GraphVisitor *visitor, Inst *inst);
77 static void VisitAbs(GraphVisitor *visitor, Inst *inst);
78 static void VisitNot(GraphVisitor *visitor, Inst *inst);
79 static void VisitSqrt(GraphVisitor *visitor, Inst *inst);
82 static void VisitAdd(GraphVisitor *visitor, Inst *inst);
83 static void VisitSub(GraphVisitor *visitor, Inst *inst);
84 static void VisitMul(GraphVisitor *visitor, Inst *inst);
85 static void VisitShl(GraphVisitor *visitor, Inst *inst);
86 static void VisitAShr(GraphVisitor *visitor, Inst *ins
[all...]
/arkcompiler/runtime_core/static_core/libllvmbackend/lowering/
H A Dllvm_ir_constructor.h32 bool IsSafeCast(Inst *inst, unsigned int index);
33 bool TryEmitIntrinsic(Inst *inst, RuntimeInterface::IntrinsicId arkId);
37 bool EmitFastPath(Inst *inst, RuntimeInterface::EntrypointId eid, uint32_t numArgs);
38 bool EmitStringEquals(Inst *inst);
39 bool EmitStringBuilderBool(Inst *inst);
40 bool EmitStringBuilderChar(Inst *inst);
41 bool EmitStringBuilderString(Inst *inst);
42 bool EmitStringConcat2(Inst *inst);
43 bool EmitStringConcat3(Inst *inst);
44 bool EmitStringConcat4(Inst *ins
[all...]
/arkcompiler/runtime_core/static_core/irtoc/backend/compiler/
H A Ddangling_pointers_checker.h51 ArenaVector<const Inst *> objectsUsers_;
53 ArenaVector<Inst *> phiInsts_;
54 ArenaSet<Inst *> objectInsts_;
55 Inst *accLivein_ {nullptr};
56 Inst *accTagLivein_ {nullptr};
57 Inst *frameLivein_ {nullptr};
58 Inst *threadLivein_ {nullptr};
59 Inst *lastAccDef_ {nullptr};
60 Inst *lastAccTagDef_ {nullptr};
61 Inst *lastFrameDef
[all...]
/arkcompiler/runtime_core/static_core/compiler/optimizer/analysis/
H A Dalias_analysis.h65 Pointer(PointerType type, const Inst *base, const Inst *idx, uint64_t imm, const void *typePtr) in Pointer()
71 static Pointer CreateObject(const Inst *base) in CreateObject()
86 static Pointer CreateObjectField(const Inst *base, uint32_t typeId, const void *typePtr = nullptr) in CreateObjectField()
91 static Pointer CreateArrayElement(const Inst *array, const Inst *idx, uint64_t imm = 0) in CreateArrayElement()
96 static Pointer CreateDictionaryElement(const Inst *array, const Inst *idx, uint64_t imm = 0) in CreateDictionaryElement()
106 const Inst *GetBase() const in GetBase()
111 const Inst *GetId
[all...]
/arkcompiler/runtime_core/compiler/optimizer/optimizations/
H A Dcleanup.h62 void MarkLiveRec(Marker live_mrk, Inst *inst);
65 void SetLiveRec(Inst *inst, Marker mrk, Marker live_mrk);
66 void LiveUserSearchRec(Inst *inst, Marker mrk, Marker live_mrk, Marker dead_mrk);
87 ArenaUnorderedMap<Inst *, uint32_t> map_;
89 Inst *fake_root_ {nullptr};
94 inline uint32_t GetInstId(Inst *inst) const in GetInstId()
103 void SetIdom(Inst *inst, Inst *idom) in SetIdom()
107 Inst *GetIdom(Inst *ins in SetIdom()
[all...]
/arkcompiler/runtime_core/libark_defect_scan_aux/
H A Dgraph.cpp28 bool Inst::operator==(const Inst &inst) const in operator ==()
33 bool Inst::operator!=(const Inst &inst) const in operator !=()
38 InstType Inst::GetType() const in GetType()
43 bool Inst::IsInstStLexVar() const in IsInstStLexVar()
49 bool Inst::IsInstLdLexVar() const in IsInstLdLexVar()
55 bool Inst::IsInstStGlobal() const in IsInstStGlobal()
62 bool Inst::IsInstLdGlobal() const in IsInstLdGlobal()
68 uint16_t Inst
[all...]
/arkcompiler/runtime_core/static_core/bytecode_optimizer/
H A Dcodegen.h33 using compiler::Inst;
106 void AddLineNumber(const Inst *inst, size_t idx);
107 void AddColumnNumber(const Inst *inst, uint32_t idx);
108 void AddLineAndColumnNumber(const Inst *inst, size_t idx);
114 static void VisitSpillFill(GraphVisitor *v, Inst *inst);
115 static void VisitConstant(GraphVisitor *v, Inst *inst);
116 static void VisitCallStatic(GraphVisitor *visitor, Inst *inst);
117 static void VisitCallVirtual(GraphVisitor *visitor, Inst *inst);
118 static void VisitInitObject(GraphVisitor *visitor, Inst *inst);
119 static void VisitCatchPhi(GraphVisitor *visitor, Inst *ins
[all...]
H A Dreg_encoder.h97 using ark::compiler::Inst;
118 void Check4Width(compiler::Inst *inst);
119 void Check8Width(compiler::Inst *inst);
126 static void VisitSpillFill([[maybe_unused]] GraphVisitor *v, [[maybe_unused]] Inst *inst);
127 static void VisitConstant([[maybe_unused]] GraphVisitor *v, [[maybe_unused]] Inst *inst);
128 static void VisitCatchPhi([[maybe_unused]] GraphVisitor *v, [[maybe_unused]] Inst *inst);
129 static void VisitCallStatic(GraphVisitor *v, Inst *inst);
130 static void VisitCallVirtual(GraphVisitor *v, Inst *inst);
131 static void VisitInitObject(GraphVisitor *v, Inst *inst);
132 static void VisitIntrinsic(GraphVisitor *v, Inst *ins
[all...]
/arkcompiler/runtime_core/compiler/optimizer/ir/
H A Dgraph_checker.h62 void CheckPhiInputs(Inst *phi_inst);
69 bool CheckInstHasInput(Inst *inst, Inst *input);
70 bool CheckInstHasUser(Inst *inst, Inst *user);
72 void CheckSpillFillHolder(Inst *inst);
73 bool CheckInstRegUsageSaved(const Inst *inst, Register reg) const;
86 void CheckObjectRec(const Inst *object, const Inst *user, const BasicBlock *block, Inst *start_fro
[all...]
H A Dinst.cpp23 void Inst::ReserveInputs(size_t capacity) in ReserveInputs()
29 Inst *User::GetInst() in GetInst()
33 return *reinterpret_cast<Inst **>(this + GetIndex() + 1); in GetInst()
40 return reinterpret_cast<Inst *>(p); in GetInst()
43 void Inst::InsertBefore(Inst *inst) in InsertBefore()
49 void Inst::InsertAfter(Inst *inst) in InsertAfter()
63 auto size = new_capacity * (sizeof(User) + sizeof(Inst *)) + sizeof(Inst *); in Reallocate()
[all...]

Completed in 9 milliseconds

1234567891011