/arkcompiler/ets_runtime/ecmascript/compiler/codegen/maple/maple_be/src/cg/ |
H A D | peep.cpp | 29 /* Check if a regOpnd is live after insn. True if live, otherwise false. */ 30 bool CGPeepPattern::IfOperandIsLiveAfterInsn(const RegOperand ®Opnd, Insn &insn) in IfOperandIsLiveAfterInsn() argument 47 if (tmpRegOpnd->GetRegisterNumber() == regOpnd.GetRegisterNumber()) { in IfOperandIsLiveAfterInsn() 53 if (tmpRegOpnd->GetRegisterNumber() == regOpnd.GetRegisterNumber()) { in IfOperandIsLiveAfterInsn() 59 if (find(opndList.begin(), opndList.end(), ®Opnd) != opndList.end()) { in IfOperandIsLiveAfterInsn() 68 if (opnd.IsRegister() && tmpRegOpnd.GetRegisterNumber() != regOpnd.GetRegisterNumber()) { in IfOperandIsLiveAfterInsn() 79 return FindRegLiveOut(regOpnd, *insn.GetBB()); in IfOperandIsLiveAfterInsn() 82 /* entrance for find if a regOpnd is live-out. */ 83 bool CGPeepPattern::FindRegLiveOut(const RegOperand ®Opnd, const BB &bb) in FindRegLiveOut() argument 97 return CheckOpndLiveinSuccs(regOpnd, b in FindRegLiveOut() 101 CheckOpndLiveinSuccs(const RegOperand ®Opnd, const BB &bb) const CheckOpndLiveinSuccs() argument 133 CheckRegLiveinReturnBB(const RegOperand ®Opnd, const BB &bb) const CheckRegLiveinReturnBB() argument 162 IsOpndLiveinBB(const RegOperand ®Opnd, const BB &bb) const IsOpndLiveinBB() argument 243 IfOperandIsLiveAfterInsn(const RegOperand ®Opnd, Insn &insn) IfOperandIsLiveAfterInsn() argument 296 FindRegLiveOut(const RegOperand ®Opnd, const BB &bb) FindRegLiveOut() argument 314 CheckOpndLiveinSuccs(const RegOperand ®Opnd, const BB &bb) const CheckOpndLiveinSuccs() argument 346 CheckRegLiveinReturnBB(const RegOperand ®Opnd, const BB &bb) const CheckRegLiveinReturnBB() argument 375 IsOpndLiveinBB(const RegOperand ®Opnd, const BB &bb) const IsOpndLiveinBB() argument [all...] |
H A D | optimize_common.cpp | 130 RegOperand *regOpnd = static_cast<RegOperand *>(op); in FoundListOpndRegNum() local 131 if (op->IsRegister() && regOpnd->GetRegisterNumber() == vReg) { in FoundListOpndRegNum() 146 RegOperand *regOpnd = static_cast<RegOperand *>(base); in FoundMemAccessOpndRegNum() local 147 if (regOpnd->GetRegisterNumber() == vReg) { in FoundMemAccessOpndRegNum() 152 RegOperand *regOpnd = static_cast<RegOperand *>(offset); in FoundMemAccessOpndRegNum() local 153 if (regOpnd->GetRegisterNumber() == vReg) { in FoundMemAccessOpndRegNum() 161 bool DotGenerator::FoundNormalOpndRegNum(const RegOperand ®Opnd, const Insn &insnObj, regno_t vReg) in FoundNormalOpndRegNum() argument 164 if (regOpnd.GetRegisterNumber() == vReg) { in FoundNormalOpndRegNum() 190 auto ®Opnd = static_cast<RegOperand &>(opnd); in DumpBBInstructions() local 191 found = FoundNormalOpndRegNum(regOpnd, *ins in DumpBBInstructions() [all...] |
H A D | reg_alloc_lsra.cpp | 331 void LSRALinearScanRegAllocator::RecordPhysRegs(const RegOperand ®Opnd, uint32 insnNum, bool isDef) in RecordPhysRegs() argument 333 RegType regType = regOpnd.GetRegisterType(); in RecordPhysRegs() 334 uint32 regNO = regOpnd.GetRegisterNumber(); in RecordPhysRegs() 394 auto ®Opnd = static_cast<RegOperand &>(opnd); in SetupLiveInterval() local 396 if (!regInfo->IsVirtualRegister(regOpnd)) { in SetupLiveInterval() 397 RecordPhysRegs(regOpnd, insnNum, isDef); in SetupLiveInterval() 400 RegType regType = regOpnd.GetRegisterType(); in SetupLiveInterval() 406 uint32 regNO = regOpnd.GetRegisterNumber(); in SetupLiveInterval() 672 : regOpnd(opnd), regSize(size), opndIdx(idx), isDef(def) in RegOpndInfo() 675 RegOperand ®Opnd; member 690 auto ®Opnd = static_cast<RegOperand &>(opnd); ComputeLiveIntervalForEachOperand() local 760 auto ®Opnd = static_cast<RegOperand &>(opnd); ComputeLoopLiveIntervalPriorityInInsn() local 906 auto ®Opnd = static_cast<RegOperand &>(opnd); LiveIntervalAnalysis() local 1139 auto ®Opnd = static_cast<RegOperand &>(opnd); InsertCallerSave() local 1268 auto ®Opnd = static_cast<RegOperand &>(opnd); SpillOperand() local 1560 const auto *regOpnd = static_cast<RegOperand *>(&opnd); GetReplaceUdOpnd() local 1603 const auto *regOpnd = static_cast<RegOperand *>(&opnd); GetReplaceOpnd() local 1894 auto ®Opnd = static_cast<RegOperand&>(insn->GetOperand(i)); SetStackMapDerivedInfo() local 1975 SolveRegOpndDeoptInfo(const RegOperand ®Opnd, DeoptInfo &deoptInfo, int32 deoptVregNO) const SolveRegOpndDeoptInfo() argument [all...] |
H A D | live.cpp | 240 /* build use and def sets of each BB according to the type of regOpnd. */ 246 auto ®Opnd = static_cast<const RegOperand &>(opnd); in CollectLiveInfo() local 247 regno_t regNO = regOpnd.GetRegisterNumber(); in CollectLiveInfo() 248 RegType regType = regOpnd.GetRegisterType(); in CollectLiveInfo() 262 if (!cgFunc->IsStackMapComputed() && regOpnd.GetBaseRefOpnd() != nullptr) { in CollectLiveInfo() 263 const RegOperand &baseOpnd = *regOpnd.GetBaseRefOpnd(); in CollectLiveInfo()
|
H A D | insn.cpp | 257 auto *regOpnd = static_cast<RegOperand *>(listElem); in ScanReg() local 258 DEBUG_ASSERT(regOpnd != nullptr, "parameter operand must be RegOperand"); in ScanReg() 259 if (regNO == regOpnd->GetRegisterNumber()) { in ScanReg()
|
H A D | isel.cpp | 706 RegOperand ®Opnd = in SelectRegassign() local 709 SelectCopy(regOpnd, opnd0, regType, rhsType); in SelectRegassign() 711 regOpnd.SetIsReference(true); in SelectRegassign() 712 cgFunc->AddReferenceReg(regOpnd.GetRegisterNumber()); in SelectRegassign() 716 cgFunc->SetPregIdx2Opnd(pregIdx, regOpnd); in SelectRegassign() 736 SelectCopy(*dest, regOpnd, preg->GetPrimType(), regType); in SelectRegassign() 784 RegOperand ®Opnd = in SelectDread() local 787 regOpnd.SetIsReference(true); in SelectDread() 788 cgFunc->AddReferenceReg(regOpnd.GetRegisterNumber()); in SelectDread() 791 SelectCopy(regOpnd, symbolMe in SelectDread() [all...] |
/arkcompiler/ets_runtime/ecmascript/compiler/codegen/maple/maple_be/include/cg/ |
H A D | peep.h | 101 bool IfOperandIsLiveAfterInsn(const RegOperand ®Opnd, Insn &insn); 102 bool FindRegLiveOut(const RegOperand ®Opnd, const BB &bb); 103 bool CheckOpndLiveinSuccs(const RegOperand ®Opnd, const BB &bb) const; 104 bool CheckRegLiveinReturnBB(const RegOperand ®Opnd, const BB &bb) const; 105 ReturnType IsOpndLiveinBB(const RegOperand ®Opnd, const BB &bb) const; 126 bool IfOperandIsLiveAfterInsn(const RegOperand ®Opnd, Insn &insn); 127 bool FindRegLiveOut(const RegOperand ®Opnd, const BB &bb); 128 bool CheckOpndLiveinSuccs(const RegOperand ®Opnd, const BB &bb) const; 129 bool CheckRegLiveinReturnBB(const RegOperand ®Opnd, const BB &bb) const; 130 ReturnType IsOpndLiveinBB(const RegOperand ®Opnd, cons [all...] |
H A D | optimize_common.h | 135 static bool FoundNormalOpndRegNum(const RegOperand ®Opnd, const Insn &insnObj, regno_t vReg);
|
H A D | operand.h | 439 void SetBaseRefOpnd(RegOperand ®Opnd) in SetBaseRefOpnd() argument 441 baseRefOpnd = ®Opnd; in SetBaseRefOpnd() 1131 void SetBaseRegister(RegOperand ®Opnd) in SetBaseRegister() argument 1133 baseOpnd = ®Opnd; in SetBaseRegister() 1141 void SetIndexRegister(RegOperand ®Opnd) in SetIndexRegister() argument 1143 indexOpnd = ®Opnd; in SetIndexRegister() 1564 for (auto regOpnd : opndList) { 1565 listOpnd->PushOpnd(*regOpnd->CloneTree(allocator));
|
H A D | reg_alloc_lsra.h | 404 void RecordPhysRegs(const RegOperand ®Opnd, uint32 insnNum, bool isDef); 430 void SolveRegOpndDeoptInfo(const RegOperand ®Opnd, DeoptInfo &deoptInfo, int32 deoptVregNO) const;
|
H A D | reg_info.h | 241 virtual bool IsVirtualRegister(const RegOperand ®Opnd) = 0;
|
/arkcompiler/ets_runtime/ecmascript/compiler/codegen/maple/maple_be/include/cg/x86_64/ |
H A D | x64_proepilog.h | 36 void GeneratePushCalleeSavedRegs(RegOperand ®Opnd, MemOperand &memOpnd, uint32 regSize); 37 void GeneratePopCalleeSavedRegs(RegOperand ®Opnd, MemOperand &memOpnd, uint32 regSize);
|
H A D | x64_reg_info.h | 115 bool IsVirtualRegister(const RegOperand ®Opnd) override 117 return regOpnd.GetRegisterNumber() > x64::kAllRegNum;
|
/arkcompiler/ets_runtime/ecmascript/compiler/codegen/maple/maple_be/src/cg/aarch64/ |
H A D | aarch64_args.cpp | 55 RegOperand ®Opnd = aarFunc->GetOrCreatePhysicalRegisterOperand(reg, GetPrimTypeBitSize(primType), in MoveRegisterArgs() 66 Insn &insn = aarFunc->GetInsnBuilder()->BuildInsn(mOp, regOpnd, *memOpnd); in MoveRegisterArgs() 95 RegOperand *regOpnd = nullptr; in MoveLocalRefVarToRefLocals() local 99 regOpnd = &aarFunc->GetOrCreateVirtualRegisterOperand(aarFunc->GetVirtualRegNOFromPseudoRegIdx(pregIdx)); in MoveLocalRefVarToRefLocals() 101 regOpnd = &aarFunc->GetOrCreateVirtualRegisterOperand(aarFunc->NewVReg(kRegTyInt, k8ByteSize)); in MoveLocalRefVarToRefLocals() 104 aarFunc->GetInsnBuilder()->BuildInsn(aarFunc->PickLdInsn(GetPrimTypeBitSize(stype), stype), *regOpnd, memOpnd); in MoveLocalRefVarToRefLocals() 107 aarFunc->GetInsnBuilder()->BuildInsn(aarFunc->PickStInsn(GetPrimTypeBitSize(stype), stype), *regOpnd, memOpnd1); in MoveLocalRefVarToRefLocals()
|
H A D | aarch64_offset_adjust.cpp | 82 auto ®Opnd = static_cast<RegOperand &>(opnd); in AdjustmentOffsetForOpnd() local 83 if (regOpnd.IsOfVary()) { in AdjustmentOffsetForOpnd() 85 regOpnd = aarchCGFunc->GetOrCreateStackBaseRegOperand(); in AdjustmentOffsetForOpnd() 87 if (regOpnd.GetRegisterNumber() == RFP) { in AdjustmentOffsetForOpnd()
|
H A D | aarch64_fixshortbranch.cpp | 230 auto ®Opnd = static_cast<RegOperand &>(insn->GetOperand(kInsnFirstOpnd)); in FixLdr() local 237 k64BitSize, regOpnd, aarch64CGFunc->CreateImmOperand(0, k32BitSize, false), false); in FixLdr() 238 auto *newRegOpnd = static_cast<RegOperand *>(regOpnd.Clone(*aarch64CGFunc->GetMemoryPool())); in FixLdr()
|
H A D | aarch64_peep.cpp | 32 const RegOperand *regOpnd = static_cast<const RegOperand *>(&opnd); in IsZeroRegister() local 33 return regOpnd->GetRegisterNumber() == RZR; in IsZeroRegister() 344 bool EnhanceStrLdrAArch64::CheckOperandIsDeadFromInsn(const RegOperand ®Opnd, Insn &insn) in CheckOperandIsDeadFromInsn() argument 351 // regOpnd is redefined at curInsn in CheckOperandIsDeadFromInsn() 352 if (static_cast<RegOperand &>(opnd).GetRegisterNumber() == regOpnd.GetRegisterNumber()) { in CheckOperandIsDeadFromInsn() 356 return !IfOperandIsLiveAfterInsn(regOpnd, insn); in CheckOperandIsDeadFromInsn() 540 auto *regOpnd = static_cast<RegOperand *>(listElem); in IsRegNotSameMemUseInInsn() local 541 DEBUG_ASSERT(regOpnd != nullptr, "parameter operand must be RegOperand"); in IsRegNotSameMemUseInInsn() 542 if (curBaseRegNO == regOpnd->GetRegisterNumber()) { in IsRegNotSameMemUseInInsn() 629 /* Check regOpnd fo in FindPrevStrLdr() 1977 RegOperand *regOpnd = nullptr; Run() local [all...] |
H A D | aarch64_cgfunc.cpp | 729 RegOperand *regOpnd = nullptr; in SelectRegassign() local 732 regOpnd = &GetOrCreateSpecialRegisterOperand(-pregIdx, stmt.GetPrimType()); in SelectRegassign() 734 regOpnd = &GetOrCreateVirtualRegisterOperand(GetVirtualRegNOFromPseudoRegIdx(pregIdx)); in SelectRegassign() 738 DEBUG_ASSERT(regOpnd != nullptr, "null ptr check!"); in SelectRegassign() 745 SelectCopy(*regOpnd, stmt.GetPrimType(), *srcOpnd, rhsType, stmt.GetRHS()); in SelectRegassign() 760 GetCurBB()->AppendInsn(GetInsnBuilder()->BuildInsn(PickStInsn(srcBitLength, stype), *regOpnd, *dest)); in SelectRegassign() local 761 } else if (regOpnd->GetRegisterNumber() == R0 || regOpnd->GetRegisterNumber() == R1) { in SelectRegassign() 762 Insn &pseudo = GetInsnBuilder()->BuildInsn(MOP_pseudo_ret_int, *regOpnd); in SelectRegassign() 764 } else if (regOpnd in SelectRegassign() 1046 RegOperand ®Opnd = LoadIntoRegister(*newOpnd0, itype); HandleFmovImm() local 1466 RegOperand ®Opnd = CreateRegisterOperandOfType(primType); SelectAdd() local 1556 RegOperand ®Opnd = CreateRegisterOperandOfType(primType); SelectSub() local [all...] |
H A D | aarch64_obj_emitter.cpp | 431 const RegOperand ®Opnd = static_cast<const RegOperand &>(opnd); in GetOpndMachineValue() local 432 uint32 regNO = regOpnd.GetRegisterNumber(); in GetOpndMachineValue() 436 if (regOpnd.IsOfIntClass()) { in GetOpndMachineValue() 437 if (regOpnd.GetRegisterNumber() == RZR) { in GetOpndMachineValue() 440 if (regOpnd.GetRegisterNumber() == RSP) { in GetOpndMachineValue()
|
H A D | aarch64_emitter.cpp | 516 for (auto *regOpnd : list1.GetOperands()) { in EmitInlineAsm() 517 outOpnds.push_back(regOpnd); in EmitInlineAsm() 521 for (auto *regOpnd : list2.GetOperands()) { in EmitInlineAsm() 522 inOpnds.push_back(regOpnd); in EmitInlineAsm()
|
/arkcompiler/ets_runtime/ecmascript/compiler/codegen/maple/maple_be/src/cg/x86_64/ |
H A D | x64_proepilog.cpp | 65 void X64GenProEpilog::GeneratePushCalleeSavedRegs(RegOperand ®Opnd, MemOperand &memOpnd, uint32 regSize) in GeneratePushCalleeSavedRegs() argument 69 copyInsn.AddOpndChain(regOpnd).AddOpndChain(memOpnd); in GeneratePushCalleeSavedRegs() 73 void X64GenProEpilog::GeneratePopCalleeSavedRegs(RegOperand ®Opnd, MemOperand &memOpnd, uint32 regSize) in GeneratePopCalleeSavedRegs() argument 77 copyInsn.AddOpndChain(memOpnd).AddOpndChain(regOpnd); in GeneratePopCalleeSavedRegs()
|
H A D | x64_args.cpp | 127 RegOperand ®Opnd = x64CGFunc->GetOpndBuilder()->CreatePReg(argInfo.reg, opndSize, argInfo.regType); in GenerateMovInsn() local 144 insn.AddOpndChain(regOpnd).AddOpndChain(*memOpnd); in GenerateMovInsn()
|
H A D | x64_MPIsel.cpp | 171 for (auto [regOpnd, argOpnd, primType] : paramPassByReg) { in SelectParmList() 172 DEBUG_ASSERT(regOpnd != nullptr, "not null check"); in SelectParmList() 174 SelectCopy(*regOpnd, *argOpnd, primType); in SelectParmList() 175 srcOpnds.PushOpnd(*regOpnd); in SelectParmList()
|
/arkcompiler/ets_runtime/ecmascript/compiler/codegen/maple/maple_be/include/cg/aarch64/ |
H A D | aarch64_reg_info.h | 108 bool IsVirtualRegister(const RegOperand ®Opnd) override 110 return regOpnd.GetRegisterNumber() > kAllRegNum;
|
H A D | aarch64_peep.h | 145 bool CheckOperandIsDeadFromInsn(const RegOperand ®Opnd, Insn &insn);
|