/arkcompiler/ets_frontend/ts2panda/src/expression/ |
D | objectLiteralExpression.ts | 34 let objReg = pandaGen.getTemp(); 40 pandaGen.storeAccumulator(expr, objReg); 41 pandaGen.freeTemps(objReg); 49 createObject(expr, pandaGen, objReg, literalBuffer, hasMethod, compiler); 52 setUncompiledProperties(compiler, pandaGen, properties, objReg); 54 pandaGen.loadAccumulator(expr, objReg); 55 pandaGen.freeTemps(objReg); 110 function createObject(expr: ts.ObjectLiteralExpression, pandaGen: PandaGen, objReg: VReg, 118 pandaGen.storeAccumulator(expr, objReg); 147 function compileAccessorProperty(pandaGen: PandaGen, compiler: Compiler, objReg: VReg, prop: Proper… [all …]
|
D | memberAccessExpression.ts | 26 let objReg = pandaGen.getTemp(); 29 let { obj: obj, prop: property } = getObjAndProp(node, objReg, propReg, compiler); 44 pandaGen.freeTemps(objReg, propReg); 48 … objReg: VReg, propReg: VReg, compiler: Compiler): { obj: VReg; prop: any; } { 50 let obj = objReg; 56 pandaGen.storeAccumulator(node.expression, objReg);
|
/arkcompiler/ets_frontend/ts2panda/tests/expression/ |
D | elementAccess.test.ts | 45 let objReg = new VReg(); variable 50 new Sta(objReg), 51 new Lda(objReg), 63 let objReg = new VReg(); variable 70 new Mov(objReg, tempObj), 72 new Stobjbyname(new Imm(2), "property", objReg), 84 let objReg = new VReg(); variable 90 new Sta(objReg), 97 new Ldobjbyvalue(new Imm(3), objReg)
|
D | propertyAccess.test.ts | 48 let objReg = new VReg(); variable 52 new Sta(objReg), 53 new Lda(objReg), 67 let objReg = new VReg(); variable 73 new Mov(objReg, tempObj), 75 new Stobjbyname(new Imm(2), "property", objReg),
|
D | delete.test.ts | 42 let objReg = new VReg(); variable 47 new Sta(objReg), 65 let objReg = new VReg(); variable 71 new Sta(objReg),
|
D | templateExpression.test.ts | 76 let objReg = new VReg(); variable 80 insns.push(new Sta(objReg)); 85 insns.push(new Stobjbyvalue(new Imm(icSize + 1), objReg, indexReg)); 89 insns.push(new Stobjbyvalue(new Imm(icSize + 3), objReg, indexReg)); 90 insns.push(new Lda(objReg));
|
D | binary.test.ts | 362 let objReg = new VReg(); variable 372 new Mov(objReg, tempObj), 375 new Stobjbyname(new Imm(2), "b", objReg),
|
/arkcompiler/ets_frontend/es2panda/ir/expressions/ |
D | memberExpression.cpp | 57 compiler::VReg objReg = pg->AllocReg(); in Compile() local 58 Compile(pg, objReg); in Compile() 61 void MemberExpression::Compile(compiler::PandaGen *pg, compiler::VReg objReg) const in Compile() 63 CompileObject(pg, objReg); in Compile() 67 pg->LoadSuperProperty(this, objReg, prop); in Compile() 69 pg->LoadObjProperty(this, objReg, prop); in Compile()
|
D | objectExpression.cpp | 342 compiler::VReg objReg) const in CompileRemainingProperties() 357 pg->CopyDataProperties(spread, objReg); in CompileRemainingProperties() 376 pg->LoadAccumulator(prop->Value(), objReg); in CompileRemainingProperties() 386 … pg->DefineGetterSetterByValue(this, objReg, key, getter, setter, prop->IsComputed()); in CompileRemainingProperties() 394 pg->LoadAccumulator(prop->Value(), objReg); in CompileRemainingProperties() 407 pg->StoreOwnProperty(this, objReg, key, nameSetting); in CompileRemainingProperties() 415 pg->SetObjectWithProto(this, proto, objReg); in CompileRemainingProperties() 424 pg->LoadAccumulator(this, objReg); in CompileRemainingProperties() 438 compiler::VReg objReg = pg->AllocReg(); in Compile() local 440 pg->StoreAccumulator(this, objReg); in Compile() [all …]
|
D | memberExpression.h | 82 void Compile(compiler::PandaGen *pg, compiler::VReg objReg) const;
|
D | objectExpression.h | 92 …iningProperties(compiler::PandaGen *pg, const util::BitSet *compiled, compiler::VReg objReg) const;
|
/arkcompiler/ets_frontend/ts2panda/src/base/ |
D | lreference.ts | 157 let objReg = pandaGen.getTemp(); variable 159 … let { obj: object, prop: property } = getObjAndProp(realNode, objReg, propReg, compiler); 161 pandaGen.freeTemps(objReg, propReg);
|
/arkcompiler/ets_frontend/ts2panda/src/statement/ |
D | classStatement.ts | 676 function setClassAccessor(pandaGen: PandaGen, compiler: Compiler, objReg: VReg, prop: Property): vo… 689 flag = createClassMethodOrAccessor(compiler, objReg, tmpVreg, getterReg, getter); 694 flag = createClassMethodOrAccessor(compiler, objReg, tmpVreg, setterReg, setter); 701 …pandaGen.defineGetterSetterByValue(accessor!, flag ? tmpVreg : objReg, propReg, getterReg, setterR… 703 …pandaGen.defineGetterSetterByValue(accessor, flag ? tmpVreg : objReg, propReg, getterReg, getVregi… 705 …pandaGen.defineGetterSetterByValue(accessor!, flag ? tmpVreg : objReg, propReg, getVregisterCache(…
|
/arkcompiler/ets_frontend/ts2panda/src/ |
D | compiler.ts | 1012 let objReg: VReg; 1024 objReg = getVregisterCache(pandaGen, CacheList.GLOBAL); 1026 pandaGen.deleteObjProperty(expr, objReg); 1036 objReg = pandaGen.getTemp(); 1041 pandaGen.freeTemps(objReg, propReg); 1045 …ndProp(<ts.PropertyAccessExpression | ts.ElementAccessExpression>unaryExpr, objReg, propReg, this); 1058 pandaGen.deleteObjProperty(expr, objReg); 1059 pandaGen.freeTemps(objReg, propReg);
|
D | pandagen.ts | 1114 defineMethod(node: ts.FunctionLikeDeclaration, name: string, objReg: VReg): void { 1118 loadAccumulator(objReg),
|