| /arkcompiler/ets_runtime/ecmascript/compiler/builtins/ |
| D | containers_stub_builder.cpp | 22 GateRef numArgs, Variable* result, Label *exit, Label *slowPath, ContainersType type) in ContainersCommonFuncCall() 31 Label valueIsJSAPIVector(env); in ContainersCommonFuncCall() 32 Label valueNotJSAPIVector(env); in ContainersCommonFuncCall() 33 Label objIsJSProxy(env); in ContainersCommonFuncCall() 34 Label objNotJSProxy(env); in ContainersCommonFuncCall() 35 Label objIsJSAPIVector(env); in ContainersCommonFuncCall() 36 Label thisArgUndefined(env); in ContainersCommonFuncCall() 37 Label thisArgNotUndefined(env); in ContainersCommonFuncCall() 38 Label callbackUndefined(env); in ContainersCommonFuncCall() 39 Label callbackNotUndefined(env); in ContainersCommonFuncCall() [all …]
|
| D | builtins_stubs.cpp | 66 Label entry(env); in GetArg() 69 Label validIndex(env); in GetArg() 70 Label exit(env); in GetArg() 88 Label entry(env); in CallSlowPath() 90 Label exit(env); in CallSlowPath() 91 Label callThis0(env); in CallSlowPath() 92 Label notcallThis0(env); in CallSlowPath() 93 Label notcallThis1(env); in CallSlowPath() 94 Label callThis1(env); in CallSlowPath() 95 Label callThis2(env); in CallSlowPath() [all …]
|
| D | builtins_string_stub_builder.cpp | 25 Label entry(env); in StringAt() 29 Label exit(env); in StringAt() 30 Label isUtf16(env); in StringAt() 31 Label isUtf8(env); in StringAt() 32 Label doIntOp(env); in StringAt() 33 Label leftIsNumber(env); in StringAt() 34 Label rightIsNumber(env); in StringAt() 58 Label entry(env); in CreateFromEcmaString() 64 Label exit(env); in CreateFromEcmaString() 65 Label isUtf16(env); in CreateFromEcmaString() [all …]
|
| /arkcompiler/ets_runtime/ecmascript/compiler/ |
| D | ic_stub_builder.h | 46 void LoadICByName(Variable* result, Label* tryFastPath, Label *slowPath, Label *success); 47 void StoreICByName(Variable* result, Label* tryFastPath, Label *slowPath, Label *success); 48 void LoadICByValue(Variable* result, Label* tryFastPath, Label *slowPath, Label *success); 49 void StoreICByValue(Variable* result, Label* tryFastPath, Label *slowPath, Label *success); 50 … void TryLoadGlobalICByName(Variable* result, Label* tryFastPath, Label *slowPath, Label *success); 51 …void TryStoreGlobalICByName(Variable* result, Label* tryFastPath, Label *slowPath, Label *success); 53 void NamedICAccessor(Variable* cachedHandler, Label *tryICHandler); 54 void ValuedICAccessor(Variable* cachedHandler, Label *tryICHandler, Label* tryElementIC); 55 void SetLabels(Label* tryFastPath, Label *slowPath, Label *success) in SetLabels() 69 Label *tryFastPath_ {nullptr}; [all …]
|
| D | operations_stub_builder.cpp | 25 Label entry(env); in Equal() 27 Label exit(env); in Equal() 28 Label isHole(env); in Equal() 47 Label entry(env); in NotEqual() 49 Label exit(env); in NotEqual() 53 Label isHole(env); in NotEqual() 54 Label notHole(env); in NotEqual() 64 Label resultIsTrue(env); in NotEqual() 65 Label resultNotTrue(env); in NotEqual() 87 Label entry(env); in Less() [all …]
|
| D | stub_builder.cpp | 30 void StubBuilder::Jump(Label *label) in Jump() argument 32 ASSERT(label); in Jump() 37 label->AppendPredecessor(currentLabel); in Jump() 38 label->MergeControl(currentLabel->GetControl()); in Jump() 42 void StubBuilder::Branch(GateRef condition, Label *trueLabel, Label *falseLabel) in Branch() 57 void StubBuilder::Switch(GateRef index, Label *defaultLabel, int64_t *keysValue, Label *keysLabel, … in Switch() 78 void StubBuilder::LoopBegin(Label *loopHead) in LoopBegin() 88 void StubBuilder::LoopEnd(Label *loopHead) in LoopEnd() 108 Label subEntry(env); in FindElementWithCache() 112 Label exit(env); in FindElementWithCache() [all …]
|
| D | ic_stub_builder.cpp | 19 void ICStubBuilder::NamedICAccessor(Variable* cachedHandler, Label *tryICHandler) in NamedICAccessor() 22 Label receiverIsHeapObject(env); in NamedICAccessor() 23 Label tryIC(env); in NamedICAccessor() 31 Label isHeapObject(env); in NamedICAccessor() 32 Label notHeapObject(env); in NamedICAccessor() 38 Label tryPoly(env); in NamedICAccessor() 57 void ICStubBuilder::ValuedICAccessor(Variable* cachedHandler, Label *tryICHandler, Label* tryElemen… in ValuedICAccessor() 60 Label receiverIsHeapObject(env); in ValuedICAccessor() 65 Label tryIC(env); in ValuedICAccessor() 69 Label isHeapObject(env); in ValuedICAccessor() [all …]
|
| D | access_object_stub_builder.cpp | 27 Label entry(env); in LoadObjByName() 29 Label exit(env); in LoadObjByName() 30 Label tryFastPath(env); in LoadObjByName() 31 Label slowPath(env); in LoadObjByName() 61 Label entry(env); in DeprecatedLoadObjByName() 63 Label exit(env); in DeprecatedLoadObjByName() 64 Label fastPath(env); in DeprecatedLoadObjByName() 65 Label slowPath(env); in DeprecatedLoadObjByName() 90 Label entry(env); in StoreObjByName() 92 Label exit(env); in StoreObjByName() [all …]
|
| D | new_object_stub_builder.cpp | 28 void NewObjectStubBuilder::NewLexicalEnv(Variable *result, Label *exit, GateRef numSlots, GateRef p… in NewLexicalEnv() 34 Label afterAllocate(env); in NewLexicalEnv() 38 Label hasPendingException(env); in NewLexicalEnv() 39 Label noException(env); in NewLexicalEnv() 46 Label afterInitialize(env); in NewLexicalEnv() 62 void NewObjectStubBuilder::NewJSObject(Variable *result, Label *exit, GateRef hclass) in NewJSObject() 67 Label afterAllocate(env); in NewJSObject() 71 Label hasPendingException(env); in NewJSObject() 72 Label noException(env); in NewJSObject() 78 Label isTS(env); in NewJSObject() [all …]
|
| D | new_object_stub_builder.h | 43 void NewLexicalEnv(Variable *result, Label *exit, GateRef numSlots, GateRef parent); 44 void NewJSObject(Variable *result, Label *exit, GateRef hclass); 45 …void NewArgumentsList(Variable *result, Label *exit, GateRef sp, GateRef startIdx, GateRef numArgs… 46 void NewArgumentsObj(Variable *result, Label *exit, GateRef argumentsList, GateRef numArgs); 47 void AllocStringObject(Variable *result, Label *exit, GateRef length, bool compressed); 48 void HeapAlloc(Variable *result, Label *exit, RegionSpaceFlag spaceType); 49 …void NewJSArrayLiteral(Variable *result, Label *exit, RegionSpaceFlag spaceType, GateRef obj, Gate… 51 …void InitializeWithSpeicalValue(Label *exit, GateRef object, GateRef value, GateRef start, GateRef… 55 void AllocateInYoung(Variable *result, Label *exit); 56 void InitializeTaggedArrayWithSpeicalValue(Label *exit,
|
| D | interpreter_stub.cpp | 243 Label newArgumentsObj(env); in DECLARE_ASM_HANDLER() 244 Label checkException(env); in DECLARE_ASM_HANDLER() 245 Label dispatch(env); in DECLARE_ASM_HANDLER() 246 Label slowPath(env); in DECLARE_ASM_HANDLER() 249 Label afterArgumentsList(env); in DECLARE_ASM_HANDLER() 254 Label afterArgumentsObj(env); in DECLARE_ASM_HANDLER() 562 Label dispatch(env); in DECLARE_ASM_HANDLER() 563 Label slowPath(env); in DECLARE_ASM_HANDLER() 576 Label dispatch(env); in DECLARE_ASM_HANDLER() 577 Label slowPath(env); in DECLARE_ASM_HANDLER() [all …]
|
| /arkcompiler/runtime_core/libpandafile/tests/ |
| D | bytecode_emitter_tests.cpp | 105 Label label = emitter.CreateLabel(); variable 106 emitter.Bind(label); 111 emitter.Jmp(label); 125 Label label = emitter.CreateLabel(); variable 126 emitter.Jmp(label); 133 emitter.Bind(label); 149 Label label = emitter.CreateLabel(); variable 150 emitter.Bind(label); 155 emitter.Jmp(label); 167 Label label = emitter.CreateLabel(); variable [all …]
|
| /arkcompiler/ets_frontend/merge_abc/src/ |
| D | assemblyLabelProto.cpp | 19 void Label::Serialize(const panda::pandasm::Label &label, protoPanda::Label &protoLabel) in Serialize() argument 21 protoLabel.set_name(label.name); in Serialize() 22 const auto &fileLocation = label.file_location; in Serialize() 29 void Label::Deserialize(const protoPanda::Label &protoLabel, panda::pandasm::Label &label) in Deserialize() argument 31 label.name = protoLabel.name(); in Deserialize() 34 FileLocation::Deserialize(protoLocation, label.file_location); in Deserialize()
|
| D | assemblyLabelProto.h | 24 class Label { 26 static void Serialize(const panda::pandasm::Label &label, protoPanda::Label &protoLabel); 27 static void Deserialize(const protoPanda::Label &protoLabel, panda::pandasm::Label &label);
|
| /arkcompiler/runtime_core/disassembler/tests/sources/ |
| D | instructions.pa | 49 label: 50 jmp label 65 jeqz label 66 jnez label 67 jltz label 68 jgtz label 69 jlez label 70 jgez label 72 jeq v2, label 73 jne v2, label [all …]
|
| /arkcompiler/ets_frontend/ts2panda/tests/statements/ |
| D | tryCatch.test.ts | 27 Label, 44 let tryBeginLabel = new Label(); 45 let tryEndLabel = new Label(); 46 let catchBeginLabel = new Label(); 47 let catchEndLabel = new Label(); 73 let tryBeginLabel = new Label(); 74 let tryEndLabel = new Label(); 75 let catchBeginLabel = new Label(); 76 let catchEndLabel = new Label(); 104 let tryBeginLabel = new Label(); [all …]
|
| D | forOf.test.ts | 34 Label, 58 let loopStartLabel = new Label(); 59 let loopEndLabel = new Label(); 60 let tryBeginLabel = new Label(); 61 let tryEndLabel = new Label(); 62 let catchBeginLabel = new Label(); 63 let isDone = new Label(); 141 let loopStartLabel = new Label(); 142 let loopEndLabel = new Label(); 143 let tryBeginLabel = new Label(); [all …]
|
| /arkcompiler/runtime_core/libpandafile/ |
| D | bytecode_emitter.h | 33 * Label represents a branch target. 35 * BytecodeEmitter.Bind(const Label& label) method. 38 * Lifetime of a label must match lifetime of the emitter. 40 class Label { 42 explicit Label(std::list<uint32_t>::iterator pc) : pc_(pc) {} in Label() function 80 Label CreateLabel() in CreateLabel() 83 return Label(pc_list_.begin()); in CreateLabel() 87 * Bind the label with the current place in the final bytecode. 89 void Bind(const Label &label); 117 bool operator()(const Label &l1, const Label &l2) const in operator() [all …]
|
| D | bytecode_emitter.cpp | 123 void BytecodeEmitter::Bind(const Label &label) in Bind() argument 125 *label.pc_ = pc_; in Bind() 126 targets_.insert(label); in Bind() 154 * next: # This label is inserted just after previous instruction. 159 std::map<uint32_t, Label> new_branches; in ReserveSpaceForOffsets() 163 auto label = it->second; in ReserveSpaceForOffsets() local 168 … const auto REAL_IMM_SIZE = GetBitLengthSigned(EstimateMaxDistance(insn_pc, label.GetPc(), bias)); in ReserveSpaceForOffsets() 180 new_branches.insert(std::make_pair(new_target, label)); in ReserveSpaceForOffsets() 225 for (std::pair<const uint32_t, Label> &branch : branches_) { in UpdateBranches() 227 Label label = branch.second; in UpdateBranches() local [all …]
|
| /arkcompiler/ets_frontend/es2panda/compiler/core/ |
| D | labelTarget.h | 42 explicit LabelTarget(const util::StringView &label) : LabelTarget(nullptr, label) {} in LabelTarget() argument 43 explicit LabelTarget(Label *target, const util::StringView &label) in LabelTarget() argument 44 : LabelPair(target, nullptr), breakLabel_(label), continueLabel_(label) in LabelTarget() 58 Label *BreakTarget() const in BreakTarget() 63 void SetBreakTarget(Label *label) in SetBreakTarget() argument 65 begin_ = label; in SetBreakTarget() 73 Label *ContinueTarget() const in ContinueTarget()
|
| /arkcompiler/ets_frontend/ts2panda/src/statement/ |
| D | loopStatement.ts | 31 import { Label, VReg } from "../irnodes"; 42 let loopStartLabel = new Label(); 43 let loopEndLabel = new Label(); 44 let conditionLabel = new Label(); 50 pandaGen.label(stmt, loopStartLabel); 56 pandaGen.label(stmt, conditionLabel); 64 pandaGen.label(stmt, loopEndLabel); 82 let loopStartLabel = new Label(); 83 let loopEndLabel = new Label(); 88 pandaGen.label(stmt, loopStartLabel); [all …]
|
| /arkcompiler/ets_frontend/ts2panda/src/ |
| D | compilerUtils.ts | 29 Label, 76 let tryBeginLabel = new Label(); 77 let tryEndLabel = new Label(); 78 let catchBeginLabel = new Label(); 79 let catchEndLabel = new Label(); 80 let normalClose = new Label(); 81 let endLabel = new Label(); 89 pandaGen.label(arr, tryBeginLabel); 129 let getDefaultLabel = new Label(); 130 let getUndefinedLabel = new Label(); [all …]
|
| /arkcompiler/ets_frontend/ts2panda/src/function/ |
| D | generatorFunctionBuilder.ts | 22 Label, 92 let loopStartLabel = new Label(); 93 let callreturnLabel = new Label(); 94 let callthrowLabel = new Label(); 95 let iteratorCompletionLabel = new Label(); 96 let exitLabel_return = new Label(); 97 let exitLabel_throw = new Label(); 98 let exitLabel_value = new Label(); 99 let exitLabel_TypeError = new Label(); 113 pandaGen.label(expr, loopStartLabel); [all …]
|
| /arkcompiler/runtime_core/tests/cts-generator/cts-template/ |
| D | jlez.yaml | 46 jlez label 49 label: 96 jlez label # 2-byte instruction 99 label: 106 label: 113 jlez label 120 jlez label # 3-byte instruction 125 label: 132 label: 140 jlez label [all …]
|
| D | jgez.yaml | 46 jgez label 49 label: 96 jgez label # 2-byte instruction 99 label: 106 label: 113 jgez label 119 jgez label # 3-byte instruction 124 label: 131 label: 139 jgez label [all …]
|