| /arkcompiler/runtime_core/static_core/docs/ |
| D | PBC2IR.md | 150 | ldarr.8 | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, i8 LoadArray | 151 | ldarru.8 | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, u8 LoadArray | 152 | ldarr.16 | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, i16 LoadArray | 153 | ldarru.16 | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, u16 LoadArray | 154 | ldarr | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, i32 LoadArray | 155 | ldarr.64 | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, i64 LoadArray | 156 | fldarr.32 | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, f32 LoadArray | 157 | fldarr.64 | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, f64 LoadArray | 158 | ldarr.obj | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, ref LoadArray | 159 | starr.8 | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, i8 StoreArray | [all …]
|
| /arkcompiler/runtime_core/docs/ |
| D | PBC2IR.md | 150 | ldarr.8 | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, i8 LoadArray | 151 | ldarru.8 | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, u8 LoadArray | 152 | ldarr.16 | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, i16 LoadArray | 153 | ldarru.16 | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, u16 LoadArray | 154 | ldarr | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, i32 LoadArray | 155 | ldarr.64 | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, i64 LoadArray | 156 | fldarr.32 | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, f32 LoadArray | 157 | fldarr.64 | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, f64 LoadArray | 158 | ldarr.obj | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, ref LoadArray | 159 | starr.8 | SaveState, ref NullCheck, i32 LenArray, i32 BoundsCheck, i8 StoreArray | [all …]
|
| /arkcompiler/runtime_core/static_core/compiler/docs/ |
| D | bridges.md | 1 # SaveState Bridges 11 …e of `SaveStates` and if in this case GC is triggered between incorrect SaveState and usage then w… 22 …nSS`. It inserts `source` instruction into `SaveStates` on path in each SaveState between `source`… 24 …d on this path enters the object into the SaveState inputs if it is not there. Delete object from … 26 …SaveState on path to `target`, which don't have `source` instruction in input. Return `ArenaVector… 36 … is not recorded in the intermediate SaveState. This is an incorrect graph, because after SaveStat… 40 4. SaveState ... 42 7. SaveState ... 47 ### After `SaveState Bridges`: 48 Here the tool corrected SaveState thus restored the object's safety. [all …]
|
| D | memory_barriers_doc.md | 74 1. SaveState v0(vr0) -> (v2) 76 3. SaveState v0(vr0), v2(vr1) -> (v5, v4) 79 6. SaveState v0(vr0), v2(vr1), v5(vr2) -> (v7, v12) 81 8. SaveState v0(vr0), v2(vr1), v5(vr2) -> (v9, v10) 84 11. SaveState v0(vr0), v2(vr1), v5(vr2), v10(vr3)
|
| /arkcompiler/runtime_core/static_core/plugins/ets/tests/checked/ |
| D | ets_stringbuilder.ets | 23 //! INST_NEXT /SaveState/ 33 //! INST_NEXT /SaveState/ 43 //! INST_NEXT /SaveState/ 46 //! INST_NEXT /SaveState/ 49 //! INST_NEXT /SaveState/ 54 //! INST_NEXT /SaveState/ 57 //! INST_NEXT_NOT /SaveState/ 64 //! INST_NEXT /SaveState/ 67 //! INST_NEXT /SaveState/ 72 //! INST_NEXT /SaveState/ [all …]
|
| /arkcompiler/runtime_core/static_core/plugins/ets/compiler/optimizer/ir_builder/js_interop/ |
| D | js_interop_inst_builder.cpp | 67 intrinsic->AppendInput(inputs[N], DataType::NO_TYPE); // SaveState input in BuildInteropIntrinsic() 72 …lder::BuildInitJSCallClass(RuntimeInterface::MethodPtr method, size_t pc, SaveStateInst *saveState) in BuildInitJSCallClass() argument 77 … BuildLoadStaticInst(pc, DataType::UINT32, GetRuntime()->GetFieldId(cpOffsetField), saveState); in BuildInitJSCallClass() 82 IntrinsicCompilerInitJSCallClassForCtx::Build(this, pc, loadAndInitJSCallClass, saveState); in BuildInitJSCallClass() 90 SaveStateInst *saveState) in BuildResolveInteropCallIntrinsic() argument 96 jsFn = IntrinsicCompilerConvertJSValueToLocal::Build(this, pc, arg0, saveState); in BuildResolveInteropCallIntrinsic() 97 jsThis = IntrinsicCompilerConvertJSValueToLocal::Build(this, pc, arg1, saveState); in BuildResolveInteropCallIntrinsic() 100 auto jsVal = IntrinsicCompilerConvertJSValueToLocal::Build(this, pc, arg0, saveState); in BuildResolveInteropCallIntrinsic() 105 …sicCompilerResolveQualifiedJSCall::Build(this, pc, jsVal, arg1, arg2, cpOffsetForClass, saveState); in BuildResolveInteropCallIntrinsic() 107 jsFn = IntrinsicCompilerLoadResolvedJSCallFunction::Build(this, pc, jsThis, saveState); in BuildResolveInteropCallIntrinsic() [all …]
|
| /arkcompiler/runtime_core/static_core/compiler/tests/ |
| D | inst_generator.cpp | 58 case Opcode::SaveState: in GenerateGraph() 198 case Opcode::SaveState: in DataTypeByOpcode() 259 auto saveState = graph->CreateInstSaveState()->CastToSaveState(); in PopulateReturnInlined() local 260 saveState->SetMethod(reinterpret_cast<RuntimeInterface::MethodPtr>(runtime_.METHOD)); in PopulateReturnInlined() 261 block->AppendInst(saveState); in PopulateReturnInlined() 266 callInst->SetInputs(&allocator_, {{saveState, DataType::NO_TYPE}}); in PopulateReturnInlined() 269 inst->SetInput(0U, saveState); in PopulateReturnInlined() 270 SetNumVRegsArgs(0U, saveState->GetInputsCount()); in PopulateReturnInlined() 271 graph->SetVRegsCount(saveState->GetInputsCount() + 1U); in PopulateReturnInlined() 278 auto saveState = graph->CreateInstSaveState()->CastToSaveState(); in PopulateCall() local [all …]
|
| D | analysis_test.cpp | 32 INST(2U, Opcode::SaveState).NoVregs(); in TEST_F() 37 INST(3U, Opcode::SaveState).NoVregs(); in TEST_F() 43 INST(5U, Opcode::SaveState).NoVregs(); in TEST_F() 54 INST(2U, Opcode::SaveState).Inputs(1U).SrcVregs({VirtualRegister::BRIDGE}); in TEST_F() 58 INST(3U, Opcode::SaveState).NoVregs(); in TEST_F() 63 INST(5U, Opcode::SaveState).NoVregs(); in TEST_F() 80 INST(2U, Opcode::SaveState).NoVregs(); in TEST_F() 86 INST(3U, Opcode::SaveState).NoVregs(); in TEST_F() 92 INST(5U, Opcode::SaveState).NoVregs(); in TEST_F() 103 INST(2U, Opcode::SaveState).NoVregs(); in TEST_F() [all …]
|
| D | escape_analysis_test.cpp | 64 INST(1U, Opcode::SaveState); in TEST_F() 80 INST(1U, Opcode::SaveState); in TEST_F() 97 INST(1U, Opcode::SaveState); in TEST_F() 113 INST(1U, Opcode::SaveState); in TEST_F() 132 INST(2U, Opcode::SaveState).SrcVregs({0U}).Inputs(0U); in SRC_GRAPH() 159 INST(2U, Opcode::SaveState).SrcVregs({0U}).Inputs(0U); in OUT_GRAPH() 196 INST(2U, Opcode::SaveState).SrcVregs({0U}).Inputs(0U); in SRC_GRAPH() 223 INST(2U, Opcode::SaveState).SrcVregs({0U}).Inputs(0U); in OUT_GRAPH() 260 INST(2U, Opcode::SaveState).SrcVregs({0U}).Inputs(0U); in SRC_GRAPH() 268 INST(6U, Opcode::SaveState).SrcVregs({0U, 1U}).Inputs(0U, 4U); in SRC_GRAPH() [all …]
|
| D | licm_test.cpp | 148 INST(20U, Opcode::SaveState).NoVregs(); in TEST_F() 332 INST(2U, Opcode::SaveState).NoVregs(); in BuildGraphLicmResolver() 335 INST(5U, Opcode::SaveState).NoVregs(); in BuildGraphLicmResolver() 338 … // We can safely hoist ResolveVirtual (INST[8]) into BLOCK[5] and link it to SaveState (INST[5]) in BuildGraphLicmResolver() 344 INST(7U, Opcode::SaveState).NoVregs(); in BuildGraphLicmResolver() 349 INST(10U, Opcode::SaveState).NoVregs(); in BuildGraphLicmResolver() 376 INST(2U, Opcode::SaveState).NoVregs(); in TEST_F() 379 INST(5U, Opcode::SaveState).NoVregs(); in TEST_F() 386 INST(7U, Opcode::SaveState).NoVregs(); in TEST_F() 390 INST(10U, Opcode::SaveState).NoVregs(); in TEST_F() [all …]
|
| D | monitor_analysis_test.cpp | 29 INST(4U, Opcode::SaveState).Inputs(0U).SrcVregs({0U}); in TEST_F() 31 INST(5U, Opcode::SaveState).Inputs(0U).SrcVregs({0U}); in TEST_F() 62 INST(11U, Opcode::SaveState).Inputs(0U, 1U).SrcVregs({0U, 1U}); in TEST_F() 74 INST(12U, Opcode::SaveState).Inputs(0U, 1U).SrcVregs({0U, 1U}); in TEST_F() 113 INST(14U, Opcode::SaveState).Inputs(0U, 1U, 2U).SrcVregs({0U, 1U, 2U}); in SRC_GRAPH() 115 INST(15U, Opcode::SaveState).Inputs(0U, 1U, 2U).SrcVregs({0U, 1U, 2U}); in SRC_GRAPH() 117 INST(16U, Opcode::SaveState).Inputs(0U, 1U, 2U).SrcVregs({0U, 1U, 2U}); in SRC_GRAPH() 129 INST(17U, Opcode::SaveState).Inputs(0U, 1U, 2U).SrcVregs({0U, 1U, 2U}); in SRC_GRAPH() 172 INST(12U, Opcode::SaveState).Inputs(0U, 1U).SrcVregs({0U, 1U}); in SRC_GRAPH() 179 INST(13U, Opcode::SaveState).Inputs(0U, 1U).SrcVregs({0U, 1U}); in SRC_GRAPH() [all …]
|
| /arkcompiler/runtime_core/static_core/compiler/optimizer/ir_builder/ |
| D | inst_builder-inl.h | 59 saveState_ = Builder()->CreateSaveState(Opcode::SaveState, pc_); in BuildCallHelper() 75 // Add SaveState in BuildCallHelper() 243 auto saveState = CreateSaveState(Opcode::SaveState, GetPc(bcInst->GetAddress())); in BuildMonitor() local 245 AddInstruction(saveState); in BuildMonitor() 250 …ck = graph_->CreateInstNullCheck(DataType::REFERENCE, GetPc(bcInst->GetAddress()), def, saveState); in BuildMonitor() 255 inst->SetInput(1, saveState); in BuildMonitor() 270 // If an intrinsic may call runtime then we need a SaveState in BuildDefaultStaticIntrinsic() 271 … saveState_ = call_->RequireState() ? Builder()->CreateSaveState(Opcode::SaveState, pc_) : nullptr; in BuildDefaultStaticIntrinsic() 365 auto saveState = CreateSaveState(Opcode::SaveState, bcAddr); in BuildStringLengthIntrinsic() local 368 …>CreateInstNullCheck(DataType::REFERENCE, bcAddr, GetArgDefinition(bcInst, 0, accRead), saveState); in BuildStringLengthIntrinsic() [all …]
|
| /arkcompiler/runtime_core/static_core/compiler/optimizer/optimizations/ |
| D | optimize_string_concat.cpp | 86 Inst *CreateInstructionStringBuilderInstance(Graph *graph, uint32_t pc, SaveStateInst *saveState) in CreateInstructionStringBuilderInstance() argument 94 graph->CreateInstLoadAndInitClass(DataType::REFERENCE, pc, CopySaveState(graph, saveState), in CreateInstructionStringBuilderInstance() 96 …t = graph->CreateInstNewObject(DataType::REFERENCE, pc, loadClass, CopySaveState(graph, saveState), in CreateInstructionStringBuilderInstance() 103 SaveStateInst *saveState) in CreateStringBuilderAppendStringIntrinsic() argument 109 auto saveStateClone = CopySaveState(graph, saveState); in CreateStringBuilderAppendStringIntrinsic() 117 …cInst *CreateStringBuilderToStringIntrinsic(Graph *graph, Inst *instance, SaveStateInst *saveState) in CreateStringBuilderToStringIntrinsic() argument 123 auto saveStateClone = CopySaveState(graph, saveState); in CreateStringBuilderToStringIntrinsic() 130 … *CreateStringBuilderDefaultConstructorCall(Graph *graph, Inst *instance, SaveStateInst *saveState) in CreateStringBuilderDefaultConstructorCall() argument 139 auto saveStateClone = CopySaveState(graph, saveState); in CreateStringBuilderDefaultConstructorCall() 168 …ptimizeStringConcat::CreateAppendArgsIntrinsic(Inst *instance, Inst *arg, SaveStateInst *saveState) in CreateAppendArgsIntrinsic() argument [all …]
|
| D | deoptimize_elimination.cpp | 176 auto savestate = inst->GetInput(1).GetInst(); in RemoveDeoptimizeIf() local 185 if (savestate->GetUsers().Empty()) { in RemoveDeoptimizeIf() 186 savestate->GetBasicBlock()->ReplaceInst(savestate, graph->CreateInstNOP()); in RemoveDeoptimizeIf() 187 savestate->RemoveInputs(); in RemoveDeoptimizeIf() 189 …COMPILER_LOG(DEBUG, DEOPTIMIZE_ELIM) << "SaveState " << savestate->GetId() << " without users is d… in RemoveDeoptimizeIf() 190 …etEventWriter().EventDeoptimizeElimination(GetOpcodeString(savestate->GetOpcode()), savestate->Get… in RemoveDeoptimizeIf() 191 savestate->GetPc()); in RemoveDeoptimizeIf()
|
| /arkcompiler/runtime_core/static_core/plugins/ets/compiler/optimizer/ir_builder/ |
| D | ets_inst_builder.cpp | 69 // Create SaveState instruction in BuildLdObjByName() 70 auto saveState = CreateSaveState(Opcode::SaveState, pc); in BuildLdObjByName() local 74 …graph_->CreateInstNullCheck(DataType::REFERENCE, pc, GetDefinition(bcInst->GetVReg(0)), saveState); in BuildLdObjByName() 78 intrinsic->AppendInput(saveState); in BuildLdObjByName() 81 AddInstruction(saveState); in BuildLdObjByName() 168 // Create SaveState instruction in BuildStObjByName() 169 auto saveState = CreateSaveState(Opcode::SaveState, pc); in BuildStObjByName() local 172 …graph_->CreateInstNullCheck(DataType::REFERENCE, pc, GetDefinition(bcInst->GetVReg(0)), saveState); in BuildStObjByName() 176 intrinsic->AppendInput(saveState); in BuildStObjByName() 177 AddInstruction(saveState); in BuildStObjByName() [all …]
|
| /arkcompiler/runtime_core/compiler/docs/ |
| D | draw_cfg.md | 70 …6. SaveState -> (v5) … 78 …11. SaveState -> (v10) … 84 …13. SaveState -> (v12) … 91 …17. SaveState -> (v16) … 93 …19. SaveState -> (v18) … 95 …21. SaveState -> (v20) … 97 …23. SaveState -> (v22) …
|
| /arkcompiler/runtime_core/static_core/compiler/optimizer/optimizations/regalloc/ |
| D | reg_alloc_resolver.h | 67 void PropagateCallerMasks(SaveStateInst *saveState); 69 void FillSaveStateRootsMask(SaveStateInst *saveState, Inst *user, SaveStateInst *targetSs); 73 …static inline void AddLocationToRoots(Location location, SaveStateInst *saveState, const Graph *gr… in AddLocationToRoots() argument 76 saveState->GetRootsRegsMask().set(location.GetValue()); in AddLocationToRoots() 78 saveState->GetRootsStackMask()->SetBit(location.GetValue()); in AddLocationToRoots() 82 saveState->GetRootsStackMask()->SetBit(location.GetValue() + slotOffset); in AddLocationToRoots()
|
| /arkcompiler/runtime_core/static_core/plugins/ets/tests/interop_js/tests/compiler/ |
| D | interop_intrinsics_opt_test.cpp | 53 INST(ssId, Opcode::SaveState).NoVregs(); in BuildCall() 89 INST(4U, Opcode::SaveState).NoVregs(); in SingleBlockBuildInitialGraph() 94 INST(9U, Opcode::SaveState).Inputs(8U).SrcVregs({0U}); in SingleBlockBuildInitialGraph() 99 INST(12U, Opcode::SaveState).Inputs(8U).SrcVregs({0U}); in SingleBlockBuildInitialGraph() 123 INST(4U, Opcode::SaveState).NoVregs(); in SingleBlockBuildExpectedGraph() 130 INST(12U, Opcode::SaveState).NoVregs(); in SingleBlockBuildExpectedGraph() 148 // SaveStateOptimization removes SaveState user of ConvertLocalToJSValue in TEST_F() 166 INST(4U, Opcode::SaveState).NoVregs(); in TEST_F() 171 INST(9U, Opcode::SaveState).Inputs(8U).SrcVregs({0U}); in TEST_F() 174 INST(19U, Opcode::SaveState).NoVregs(); in TEST_F() [all …]
|
| D | interop_peepholes_test.cpp | 38 INST(1U, Opcode::SaveState).Inputs(0U).SrcVregs({0U}); in TEST_F() 40 INST(3U, Opcode::SaveState).Inputs(0U, 2U).SrcVregs({0U, 1U}); in TEST_F() 60 INST(1U, Opcode::SaveState).Inputs(0U).SrcVregs({0U}); in TEST_F() 62 INST(3U, Opcode::SaveState).Inputs(0U, 2U).SrcVregs({0U, 1U}); in TEST_F() 80 INST(1U, Opcode::SaveState).Inputs(0U).SrcVregs({0U}); in TEST_F() 82 INST(3U, Opcode::SaveState).Inputs(0U, 2U).SrcVregs({0U, 1U}); in TEST_F() 110 INST(2U, Opcode::SaveState).Inputs(0U, 1U).SrcVregs({0U, 1U}); in SetPropertyStringBuildInitialGraph() 115 INST(4U, Opcode::SaveState).Inputs(0U, 1U).SrcVregs({0U, 1U}); in SetPropertyStringBuildInitialGraph() 118 INST(6U, Opcode::SaveState).Inputs(0U, 1U, 5U).SrcVregs({0U, 1U, 2U}); in SetPropertyStringBuildInitialGraph() 142 INST(2U, Opcode::SaveState).Inputs(0U, 1U).SrcVregs({0U, 1U}); in SetPropertyStringBuildExpectedGraph() [all …]
|
| /arkcompiler/runtime_core/bytecode_optimizer/tests/ |
| D | const_array_resolver_test.cpp | 31 INST(20, Opcode::SaveState).NoVregs(); in TEST_F() 54 INST(20, Opcode::SaveState).NoVregs(); in TEST_F() 56 INST(22, Opcode::SaveState).NoVregs(); in TEST_F() 74 INST(20, Opcode::SaveState).NoVregs(); in TEST_F() 108 INST(3, Opcode::SaveState).NoVregs(); in TEST_F() 142 INST(20, Opcode::SaveState).NoVregs(); in TEST_F() 171 INST(4, Opcode::SaveState).NoVregs(); in TEST_F() 199 INST(4, Opcode::SaveState).NoVregs(); in TEST_F() 201 INST(11, Opcode::SaveState).NoVregs(); in TEST_F() 222 INST(4, Opcode::SaveState).NoVregs(); in TEST_F() [all …]
|
| /arkcompiler/runtime_core/static_core/bytecode_optimizer/tests/ |
| D | reg_encoder_test.cpp | 139 INST(33U, Opcode::SaveState).NoVregs(); in TEST_F() 141 INST(36U, Opcode::SaveState).NoVregs(); in TEST_F() 143 INST(39U, Opcode::SaveState).NoVregs(); in TEST_F() 148 INST(45U, Opcode::SaveState).NoVregs(); in TEST_F() 158 INST(48U, Opcode::SaveState).NoVregs(); in TEST_F() 203 INST(33U, Opcode::SaveState).NoVregs(); in TEST_F() 205 INST(36U, Opcode::SaveState).NoVregs(); in TEST_F() 207 INST(39U, Opcode::SaveState).NoVregs(); in TEST_F() 212 INST(45U, Opcode::SaveState).NoVregs(); in TEST_F() 225 INST(48U, Opcode::SaveState).NoVregs(); in TEST_F() [all …]
|
| D | bytecodeopt_peepholes_test.cpp | 102 INST(0U, Opcode::SaveState).NoVregs(); in TEST_F() 105 INST(3U, Opcode::SaveState).NoVregs(); in TEST_F() 122 INST(0U, Opcode::SaveState).NoVregs(); in TEST_F() 124 INST(3U, Opcode::SaveState).NoVregs(); in TEST_F() 147 INST(0U, Opcode::SaveState).NoVregs(); in TEST_F() 150 INST(3U, Opcode::SaveState).NoVregs(); in TEST_F() 173 INST(0U, Opcode::SaveState).NoVregs(); in TEST_F() 176 INST(3U, Opcode::SaveState).NoVregs(); in TEST_F() 200 INST(0U, Opcode::SaveState).NoVregs(); in TEST_F() 204 INST(4U, Opcode::SaveState).NoVregs(); in TEST_F() [all …]
|
| D | const_array_resolver_test.cpp | 34 INST(20U, Opcode::SaveState).NoVregs(); in TEST_F() 58 INST(20U, Opcode::SaveState).NoVregs(); in TEST_F() 60 INST(22U, Opcode::SaveState).NoVregs(); in TEST_F() 79 INST(20U, Opcode::SaveState).NoVregs(); in TEST_F() 110 INST(20U, Opcode::SaveState).NoVregs(); in TEST_F() 151 INST(3U, Opcode::SaveState).NoVregs(); in TEST_F() 185 INST(20U, Opcode::SaveState).NoVregs(); in TEST_F() 214 INST(4U, Opcode::SaveState).NoVregs(); in TEST_F() 242 INST(4U, Opcode::SaveState).NoVregs(); in TEST_F() 244 INST(11U, Opcode::SaveState).NoVregs(); in TEST_F() [all …]
|
| /arkcompiler/runtime_core/static_core/compiler/optimizer/templates/intrinsics/ |
| D | generate_operations_intrinsic_graph.inl.erb | 44 auto saveState = graph->CreateInstSaveState(); 45 saveState->SetMethod(reinterpret_cast<RuntimeInterface::MethodPtr>(runtime_.METHOD)); 46 block->AppendInst(saveState); 47 inst->AppendInput(saveState);
|
| /arkcompiler/runtime_core/static_core/tests/checked/ |
| D | ss_ir_builder.pa | 16 #! CHECKER Check SaveState in IrBuilder is correct create 21 #! INST_NEXT /SaveState.*v3\(ACC\)/ 24 #! INST_NEXT /SaveState.*[^v3\(ACC\)]/
|