Home
last modified time | relevance | path

Searched full:instruction (Results 1 – 25 of 710) sorted by relevance

12345678910>>...29

/arkcompiler/runtime_core/libabckit/include/cpp/headers/
Ddynamic_isa.h19 #include "instruction.h"
70 …* @brief Creates instruction with opcode LOAD_STRING. This instruction loads the string `string` i…
71 * @return Instruction
74 Instruction CreateLoadString(std::string_view string) &&;
77 …* @brief Creates instruction with opcode SUB2. This instruction computes the binary operation `inp…
78 * stores the result in returned instruction.
79 * @return Instruction
83 Instruction CreateSub2(Instruction acc, Instruction input0) &&;
87 * @return Instruction
90 core::Module GetModule(Instruction inst) &&;
[all …]
Ddynamic_isa_impl.h32 inline core::Module DynamicIsa::GetModule(Instruction inst) && in GetModule()
40 inline Instruction DynamicIsa::SetModule(Instruction inst, core::Module mdl) && in SetModule()
48 inline AbckitIsaApiDynamicConditionCode DynamicIsa::GetConditionCode(Instruction inst) && in GetConditionCode()
56 inline Instruction DynamicIsa::SetConditionCode(Instruction inst, AbckitIsaApiDynamicConditionCode … in SetConditionCode()
64 inline AbckitIsaApiDynamicOpcode DynamicIsa::GetOpcode(Instruction inst) && in GetOpcode()
72 inline core::ImportDescriptor DynamicIsa::GetImportDescriptor(Instruction inst) && in GetImportDescriptor()
80 inline Instruction DynamicIsa::SetImportDescriptor(Instruction inst, core::ImportDescriptor descr) … in SetImportDescriptor()
88 inline core::ExportDescriptor DynamicIsa::GetExportDescriptor(Instruction inst) && in GetExportDescriptor()
96 inline Instruction DynamicIsa::SetExportDescriptor(Instruction inst, core::ExportDescriptor descr) … in SetExportDescriptor()
104 inline Instruction DynamicIsa::CreateLoadString(std::string_view string) && in CreateLoadString()
[all …]
Dinstruction.h29 * @brief Instruction
31 class Instruction final : public ViewInResource<AbckitInst *, const Graph *> {
41 /// @brief abckit::DefaultHash<Instruction>
42 friend class abckit::DefaultHash<Instruction>;
48 * @brief Construct a new empty Instruction object
50 Instruction() : ViewInResource(nullptr), conf_(nullptr) in Instruction() function
56 * @brief Construct a new Instruction object
59 Instruction(const Instruction &other) = default;
64 * @return Instruction
66 Instruction &operator=(const Instruction &other) = default;
[all …]
Dinstruction_impl.h20 #include "instruction.h"
32 inline Instruction Instruction::InsertAfter(Instruction inst) const in InsertAfter()
37 return Instruction(GetView(), GetApiConfig(), GetResource()); in InsertAfter()
40 inline Instruction Instruction::InsertBefore(Instruction inst) const in InsertBefore()
45 return Instruction(GetView(), GetApiConfig(), GetResource()); in InsertBefore()
48 inline void Instruction::Remove() const in Remove()
54 inline int64_t Instruction::GetConstantValueI64() const in GetConstantValueI64()
61 inline std::string Instruction::GetString() const in GetString()
71 inline Instruction Instruction::GetNext() const in GetNext()
76 return Instruction(inst, conf, GetResource()); in GetNext()
[all …]
Dgraph.h22 #include "instruction.h"
139 * @brief Returns parameter instruction under given `index` of a `graph`.
140 * @return Parameter instruction under given `index` of a `graph`.
144 Instruction GetParameter(uint32_t index) const;
147 * @brief Returns number of instruction parameters under a `graph`.
148 * @return uint32_t corresponding to number of instruction parameters.
177 … * @brief Creates I32 constant instruction and inserts it in start basic block of current `Graph`.
178 * @return Created `Instruction`.
179 * @param [ in ] val - value of created constant instruction.
182 Instruction FindOrCreateConstantI32(int32_t val) const;
[all …]
/arkcompiler/runtime_core/static_core/compiler/optimizer/ir_builder/
Dinst_templates.yaml18 % raise "Wrong binop instruction" unless opc
20 …auto inst = graph_->CreateInst<%= opc %>(<%= get_type(inst.dtype) %>, GetPc(instruction->GetAddres…
25 auto inst_save_state = CreateSaveState(Opcode::SaveState, GetPc(instruction->GetAddress()));
26 …auto inst_check = graph_->CreateInstZeroCheck(<%= get_type(inst.dtype) %>, GetPc(instruction->GetA…
29 …inst_check->SetInput(0, FindOrCreate32BitConstant(instruction->GetImm<<%= inst.get_format %>, 0>()…
35 inst_check->SetInput(0, GetDefinition(instruction->GetVReg<<%=inst.get_format%>, 1>()));
41 …auto inst = graph_->CreateInst<%= opc %>(<%= get_type(inst.dtype) %>, GetPc(instruction->GetAddres…
47 inst->SetInput(0, GetDefinition(instruction->GetVReg<<%=inst.get_format%>, 0>()));
48 UpdateDefinition(instruction->GetVReg<<%=inst.get_format%>, 0>(), inst);
54 UpdateDefinition(instruction->GetVReg<<%=inst.get_format%>, 0>(), inst);
[all …]
/arkcompiler/runtime_core/static_core/libllvmbackend/transforms/passes/
Dgep_propagation.h27 class Instruction; variable
43 …sing SelectorSplitMap = llvm::DenseMap<llvm::Instruction *, std::pair<llvm::Instruction *, llvm::I…
45 void AddToVector(llvm::Instruction *inst, llvm::SmallVector<llvm::Instruction *> *toExpand,
46 llvm::SmallVector<llvm::Instruction *> *selectors);
50 …void SplitGepSelectors(llvm::Function *function, llvm::SmallVector<llvm::Instruction *> *selectors,
51 llvm::DenseMap<llvm::Instruction *, llvm::Instruction *> *sgeps);
53 … std::pair<llvm::Value *, llvm::Value *> GenerateInput(llvm::Value *input, llvm::Instruction *inst,
54 … llvm::Instruction *inPoint, const SelectorSplitMap &mapping);
56 void GenerateSelectorInputs(llvm::Instruction *inst, const SelectorSplitMap &mapping);
62 llvm::Value *GetConstantInput(llvm::Instruction *inst);
[all …]
Dgep_propagation.cpp41 using llvm::Instruction;
64 void GepPropagation::AddToVector(Instruction *inst, SmallVector<Instruction *> *toExpand, in AddToVector()
65 SmallVector<Instruction *> *selectors) in AddToVector()
69 case Instruction::GetElementPtr: in AddToVector()
75 case Instruction::PtrToInt: in AddToVector()
76 case Instruction::AddrSpaceCast: in AddToVector()
81 case Instruction::Select: in AddToVector()
82 case Instruction::PHI: in AddToVector()
95 SmallVector<Instruction *> toExpand; in Propagate()
96 SmallVector<Instruction *> selectors; in Propagate()
[all …]
Daarch64_fixup_sdiv.cpp32 bool AArch64FixupSDiv::ReplaceSelect(llvm::Instruction *selectInst) in ReplaceSelect()
34 auto cmp = llvm::cast<llvm::Instruction>(selectInst->getOperand(0U)); in ReplaceSelect()
38 // sub instruction may be replaced with value in ReplaceSelect()
39 auto sdivInst = llvm::cast<llvm::Instruction>(sdiv); in ReplaceSelect()
49 if (sub->uses().empty() && llvm::isa<llvm::Instruction>(sub)) { in ReplaceSelect()
50 auto subInst = llvm::cast<llvm::Instruction>(sub); in ReplaceSelect()
66 llvm::SmallVector<llvm::Instruction *> selectInsts; in run()
67 for (auto &instruction : basicBlock) { in run() local
68 if (instruction.hasMetadata(LLVMArkInterface::AARCH64_SDIV_INST)) { in run()
69 ASSERT(instruction.getOpcode() == llvm::Instruction::Select); in run()
[all …]
/arkcompiler/runtime_core/compiler/optimizer/ir/
Dinstructions.yaml16 Opcode of the instruction
19 Describes signature of the instruction. Properties of the operands are separated by '-' symbol.
26 …C++ base that represent this opcode. In far future if we managed to generate also instruction clas…
30 Properties of the instruction, such as: arithmetic, binop, throw, etc
33 Modes which the instruction can be used in
36 # Templates aim to reduce boilerplate in instruction description.
122 description: Phi instruction
128 description: Pseudo instruction that inserted by Register Allocator.
155 description: Pseudo instruction, inserted in the beginning of try-block.
163 …Pseudo instruction, which is inserted in the Catch handler basic block, and defines virtual regist…
[all …]
/arkcompiler/runtime_core/compiler/optimizer/ir_builder/
Dinst_templates.yaml18 % raise "Wrong binop instruction" unless opc
20 …auto inst = graph_->CreateInst<%= opc %>(<%= get_type(inst.dtype) %>, GetPc(instruction->GetAddres…
25 auto inst_save_state = CreateSaveState(Opcode::SaveState, GetPc(instruction->GetAddress()));
26 …auto inst_check = graph_->CreateInstZeroCheck(<%= get_type(inst.dtype) %>, GetPc(instruction->GetA…
29 …inst_check->SetInput(0, FindOrCreate32BitConstant(instruction->GetImm<<%= inst.get_format %>, 0>()…
37 …auto inst = graph_->CreateInst<%= opc %>(<%= get_type(inst.dtype) %>, GetPc(instruction->GetAddres…
45 … auto inst = graph_->CreateInstAdd(<%= get_type(inst.dtype) %>, GetPc(instruction->GetAddress()));
46 inst->SetInput(0, GetDefinition(instruction->GetVReg<<%=inst.get_format%>, 0>()));
48 … inst->SetInput(1, FindOrCreate32BitConstant(instruction->GetImm<<%=inst.get_format%>, 0>()));
50 inst->SetInput(1, FindOrCreateConstant(instruction->GetImm<<%=inst.get_format%>, 0>()));
[all …]
/arkcompiler/ets_frontend/testTs/instype/
Drecordthis-expected.txt2 (instruction order, type): (-2, 111), (-1, 106),
4 (instruction order, type): (-2, 111), (-1, 102),
6 (instruction order, type): (-2, 111), (-1, 103),
8 (instruction order, type): (-2, 111), (-1, 104),
10 (instruction order, type): (-2, 111), (-1, 105),
12 (instruction order, type): (-2, 111), (-1, 107), (16, 4),
14 (instruction order, type): (-2, 101), (-1, 108),
16 (instruction order, type): (-2, 111), (-1, 109),
18 (instruction order, type): (-2, 111), (-1, 110),
20 (instruction order, type): (-1, 112), (9, 1),
[all …]
Drecordimport-expected.txt2 (instruction order, type): (-1, 101),
4 (instruction order, type): (-2, 105),
6 (instruction order, type): (-1, 103),
8 (instruction order, type): (-1, 104),
10 (instruction order, type): (8, 101), (10, 1), (12, 103), (14, 104), (16, 1), (18, 1), (20, 1), (22,…
12 (instruction order, type): (5, 101), (8, 105), (19, 107), (22, 102), (25, 103), (31, 104), (37, 106…
/arkcompiler/runtime_core/libabckit/src/irbuilder_dynamic/templates/
Dinst_templates.yaml18 % raise "Wrong binop instruction" unless opc
20 …auto inst = graph_->CreateInst<%= opc %>(<%= get_type(inst.dtype) %>, GetPc(instruction->GetAddres…
25 …auto instSaveState = CreateSaveState(compiler::Opcode::SaveState, GetPc(instruction->GetAddress())…
26 …auto instCheck = graph_->CreateInstZeroCheck(<%= get_type(inst.dtype) %>, GetPc(instruction->GetAd…
28 …instCheck->SetInput(0, FindOrCreate32BitConstant(instruction->GetImm<<%= inst.get_format %>, 0>())…
33 …auto inst = graph_->CreateInst<%= opc %>(<%= get_type(inst.dtype) %>, GetPc(instruction->GetAddres…
41 … auto inst = graph_->CreateInstAdd(<%= get_type(inst.dtype) %>, GetPc(instruction->GetAddress()));
42 inst->SetInput(0, GetDefinition(instruction->GetVReg()));
43 inst->SetInput(1, FindOrCreate32BitConstant(instruction->GetImm<<%=inst.get_format%>, 0>()));
45 UpdateDefinition(instruction->GetVReg(), inst);
[all …]
/arkcompiler/runtime_core/panda_guard/obfuscate/
Dgraph_analyzer.h31 * Get Related Lda.Str instruction
39 * Get Related instruction of DefineMethod
47 * Get Related instruction of definepropertybyname
62 * @param inIns defineclasswithbuffer instruction
68 * get stmodulevar bind define instruction
70 * @param defineIns bind define instruction
75 * get stobjbyname bind define instruction
77 * @param defineIns bind define instruction
82 …* Get the predecessor instruction associated with the stobjbyname instruction and check if it is o…
84 * pre-instruction information
[all …]
/arkcompiler/runtime_core/libabckit/include/c/isa/
Disa_dynamic.h360 …* @brief Creates instruction with opcode LOAD_STRING. This instruction loads the string `str` into…
362 * @param [ in ] graph - Graph where instruction will be inserted.
372 * @brief Creates instruction with opcode LDNAN. This instruction loads the `nan` into `acc`.
374 * @param [ in ] graph - Graph where instruction will be inserted.
382 …* @brief Creates instruction with opcode LDINFINITY. This instruction loads the `infinity` into `a…
384 * @param [ in ] graph - Graph where instruction will be inserted.
392 …* @brief Creates instruction with opcode LDUNDEFINED. This instruction loads the `undefined` into …
394 * @param [ in ] graph - Graph where instruction will be inserted.
402 * @brief Creates instruction with opcode LDNULL. This instruction loads the `null` into `acc`.
404 * @param [ in ] graph - Graph where instruction will be inserted.
[all …]
/arkcompiler/runtime_core/static_core/plugins/ets/compiler/optimizer/ir_builder/
Dets_inst_templates.yaml19 BuildLdObjByName<true>(instruction, <%= get_type(inst.dtype) %>);
21 BuildLdObjByName<false>(instruction, <%= get_type(inst.dtype) %>);
25 BuildStObjByName<true>(instruction, <%= get_type(inst.type(0)) %>);
27 BuildStObjByName<false>(instruction, <%= get_type(inst.type(0)) %>);
31 BuildCallByName<<%= is_range ? 'true' : 'false' %>>(instruction);
35 …UpdateDefinition(instruction->GetVReg<<%=inst.get_format%>, 0>(), graph_->GetOrCreateUniqueObjectI…
37 BuildIsNullValue(instruction);
39 BuildEquals<true>(instruction);
41 BuildEquals(instruction);
43 BuildTypeof(instruction);
[all …]
/arkcompiler/runtime_core/static_core/compiler/docs/
Dir_builder.md18 - some instructions don't specify its type, f.e. `mov` instruction may produce int32 as well as flo…
22 - if constant is `0` and it is used in instruction that expects object(f.e. `mov.obj`), we need to …
23 constant instruction `NullPtr` to handle this situation.
53 4. Get next bytecode instruction from the current basic block.
54 5. Build the Panda IR instruction from the bytecode instruction:
58 6. If instruction is a terminator, goto 1, else goto 4.
60 `Virtual register map` is a map, where key is virtual register, value is an IR instruction that cur…
66 …or all constants that are used in instructions with different types, split constant instruction and
99 # Next instruction starts new basic block
125 Example of the case for the `ADD` bytecode instruction in autogenerated `BuildInstruction` function.
[all …]
/arkcompiler/runtime_core/compiler/docs/
Dir_builder.md18 - some instructions don't specify its type, f.e. `mov` instruction may produce int32 as well as flo…
22 - if constant is `0` and it is used in instruction that expects object(f.e. `mov.obj`), we need to …
23 constant instruction `NullPtr` to handle this situation.
53 4. Get next bytecode instruction from the current basic block.
54 5. Build the Panda IR instruction from the bytecode instruction:
58 6. If instruction is a terminator, goto 1, else goto 4.
60 `Virtual register map` is a map, where key is virtual register, value is an IR instruction that cur…
66 …or all constants that are used in instructions with different types, split constant instruction and
99 # Next instruction starts new basic block
125 Example of the case for the `ADD` bytecode instruction in autogenerated `BuildInstruction` function.
[all …]
/arkcompiler/runtime_core/libabckit/include/c/
Dir_core.h139 * @brief Returns parameter instruction under given `index` of the given `graph`.
149 * @brief Returns number of instruction parameters under given `graph`.
150 * @return uint32_t corresponding to number of instruction parameters.
185 * @brief Creates I32 constant instruction and inserts it in start basic block of given `graph`.
187 * @param [ in ] graph - Graph in which instruction is inserted.
188 * @param [ in ] value - value of created constant instruction.
195 * @brief Creates I64 constant instruction and inserts it in start basic block of given `graph`.
197 * @param [ in ] graph - Graph in which instruction is inserted.
198 * @param [ in ] value - value of created constant instruction.
205 * @brief Creates U64 constant instruction and inserts it in start basic block of given `graph`.
[all …]
/arkcompiler/runtime_core/docs/
Dir_format.md7 * Compiler overhead about 100000 native instructions per a bytecode instruction(standard for JIT co…
65 ## Instruction set
76 …le to do arm specific optimizations. For this, need to support ARMv8-M Instruction Set(only those …
81 In the first step, Panda bytecode is converted to high level instruction and architecturally indepe…
87 …f 'native' instructions(ARM) that are spent compiling a single 'guest' instruction(from Bytecode).…
178 **Inst** is a base class with main information about an instruction.
179 * Opcode(name) of the instruction
180 * pc(address) instruction in bytecode/file
181 * Type of instruction(bool, uint8, uint32, float, double e.t.c)
189 Class **FixedInputsInst** inherits from **Inst** for instruction with a fixed number of inputs(oper…
[all …]
/arkcompiler/runtime_core/tests/cts-generator/cts-template/
Djnez.obj.yaml24 …Transfer execution to an instruction at offset bytes from the beginning of the current instruction
26 instruction address.
44 description: Check 'jnez.obj' instruction with invalid offset.
68 description: Check 'jnez.obj' instruction with uninitialized accumulator.
84 description: Check 'jnez.obj' instruction with invalid branch target.
132 … description: Check 'jnez.obj' instruction with prohibited branch target in PandaAssembly context.
209 … description: Check 'jnez.obj' instruction with prohibited branch target in PandaAssembly context.
281 description: Check 'jnez.obj' instruction with invalid accumulator value
389 …Transfer execution to an instruction at offset bytes from the beginning of the current instruction
391 instruction address.
[all …]
Djeqz.obj.yaml24 …Transfer execution to an instruction at offset bytes from the beginning of the current instruction
26 instruction address.
44 description: Check 'jeqz.obj' instruction with invalid offset.
68 description: Check 'jeqz.obj' instruction with uninitialized accumulator.
84 description: Check 'jeqz.obj' instruction with invalid branch target.
132 … description: Check 'jeqz.obj' instruction with prohibited branch target in PandaAssembly context.
209 … description: Check 'jeqz.obj' instruction with prohibited branch target in PandaAssembly context.
281 description: Check 'jeqz.obj' instruction with invalid accumulator value
389 …Transfer execution to an instruction at offset bytes from the beginning of the current instruction
391 instruction address.
[all …]
/arkcompiler/runtime_core/static_core/tests/cts-generator/cts-template/
Djnez.obj.yaml20 …Transfer execution to an instruction at offset bytes from the beginning of the current instruction
22 instruction address.
39 description: Check 'jnez.obj' instruction with invalid offset.
62 description: Check 'jnez.obj' instruction with uninitialized accumulator.
77 description: Check 'jnez.obj' instruction with invalid branch target.
119 description: Check 'jnez.obj' instruction with prohibited branch target.
188 description: Check 'jnez.obj' instruction with invalid accumulator value
295 …Transfer execution to an instruction at offset bytes from the beginning of the current instruction
297 instruction address.
298 description: Check 'jnez.obj' instruction with valid null value.
[all …]
Djeqz.obj.yaml20 …Transfer execution to an instruction at offset bytes from the beginning of the current instruction
22 instruction address.
39 description: Check 'jeqz.obj' instruction with invalid offset.
62 description: Check 'jeqz.obj' instruction with uninitialized accumulator.
77 description: Check 'jeqz.obj' instruction with invalid branch target.
119 description: Check 'jeqz.obj' instruction with prohibited branch target.
188 description: Check 'jeqz.obj' instruction with invalid accumulator value
295 …Transfer execution to an instruction at offset bytes from the beginning of the current instruction
297 instruction address.
298 description: Check 'jeqz.obj' instruction with valid null value.
[all …]

12345678910>>...29