Lines Matching refs:RegLocation

660     RegisterClass LocToRegClass(RegLocation loc);
697 bool IsInexpensiveConstant(RegLocation rl_src);
719 virtual RegLocation NarrowRegLoc(RegLocation loc);
761 virtual void FreeRegLocTemps(RegLocation rl_keep, RegLocation rl_free);
769 void MarkDef(RegLocation rl, LIR *start, LIR *finish);
770 void MarkDefWide(RegLocation rl, LIR *start, LIR *finish);
771 void ResetDefLoc(RegLocation rl);
772 void ResetDefLocWide(RegLocation rl);
778 void MarkLive(RegLocation loc);
783 void MarkClean(RegLocation loc);
784 void MarkDirty(RegLocation loc);
787 virtual RegLocation UpdateLoc(RegLocation loc);
788 virtual RegLocation UpdateLocWide(RegLocation loc);
789 RegLocation UpdateRawLoc(RegLocation loc);
799 virtual RegLocation EvalLocWide(RegLocation loc, int reg_class, bool update);
808 virtual RegLocation EvalLoc(RegLocation loc, int reg_class, bool update);
815 RegLocation GetReturnWide(RegisterClass reg_class);
816 RegLocation GetReturn(RegisterClass reg_class);
822 RegLocation rl_src, RegLocation rl_dest, int lit);
823 bool HandleEasyMultiply(RegLocation rl_src, RegLocation rl_dest, int lit);
841 void GenCompareAndBranch(Instruction::Code opcode, RegLocation rl_src1,
842 RegLocation rl_src2, LIR* taken, LIR* fall_through);
843 void GenCompareZeroAndBranch(Instruction::Code opcode, RegLocation rl_src,
845 virtual void GenIntToLong(RegLocation rl_dest, RegLocation rl_src);
846 void GenIntNarrowing(Instruction::Code opcode, RegLocation rl_dest,
847 RegLocation rl_src);
848 void GenNewArray(uint32_t type_idx, RegLocation rl_dest,
849 RegLocation rl_src);
851 void GenSput(MIR* mir, RegLocation rl_src,
853 void GenSget(MIR* mir, RegLocation rl_dest,
856 RegLocation rl_dest, RegLocation rl_obj, bool is_long_or_double, bool is_object);
858 RegLocation rl_src, RegLocation rl_obj, bool is_long_or_double, bool is_object);
859 void GenArrayObjPut(int opt_flags, RegLocation rl_array, RegLocation rl_index,
860 RegLocation rl_src);
862 void GenConstClass(uint32_t type_idx, RegLocation rl_dest);
863 void GenConstString(uint32_t string_idx, RegLocation rl_dest);
864 void GenNewInstance(uint32_t type_idx, RegLocation rl_dest);
865 void GenThrow(RegLocation rl_src);
866 void GenInstanceof(uint32_t type_idx, RegLocation rl_dest, RegLocation rl_src);
867 void GenCheckCast(uint32_t insn_idx, uint32_t type_idx, RegLocation rl_src);
868 void GenLong3Addr(OpKind first_op, OpKind second_op, RegLocation rl_dest,
869 RegLocation rl_src1, RegLocation rl_src2);
870 virtual void GenShiftOpLong(Instruction::Code opcode, RegLocation rl_dest,
871 RegLocation rl_src1, RegLocation rl_shift);
872 void GenArithOpIntLit(Instruction::Code opcode, RegLocation rl_dest,
873 RegLocation rl_src, int lit);
874 virtual void GenArithOpLong(Instruction::Code opcode, RegLocation rl_dest,
875 RegLocation rl_src1, RegLocation rl_src2);
876 void GenConversionCall(QuickEntrypointEnum trampoline, RegLocation rl_dest, RegLocation rl_src);
881 virtual void GenConstWide(RegLocation rl_dest, int64_t value);
882 virtual void GenArithOpInt(Instruction::Code opcode, RegLocation rl_dest,
883 RegLocation rl_src1, RegLocation rl_src2);
893 void CallRuntimeHelperRegLocation(QuickEntrypointEnum trampoline, RegLocation arg0,
897 void CallRuntimeHelperImmRegLocation(QuickEntrypointEnum trampoline, int arg0, RegLocation arg1,
899 void CallRuntimeHelperRegLocationImm(QuickEntrypointEnum trampoline, RegLocation arg0, int arg1,
909 RegLocation arg2, bool safepoint_pc);
910 void CallRuntimeHelperRegLocationRegLocation(QuickEntrypointEnum trampoline, RegLocation arg0,
911 RegLocation arg1, bool safepoint_pc);
917 RegLocation arg2, bool safepoint_pc);
921 RegLocation arg1, RegLocation arg2,
924 RegLocation arg0, RegLocation arg1,
925 RegLocation arg2,
929 virtual void FlushIns(RegLocation* ArgLocs, RegLocation rl_method);
951 RegLocation InlineTarget(CallInfo* info);
959 RegLocation InlineTargetWide(CallInfo* info);
991 RegLocation LoadCurrMethod();
1013 virtual RegLocation LoadValue(RegLocation rl_src, RegisterClass op_kind);
1015 virtual RegLocation LoadValue(RegLocation rl_src);
1017 virtual RegLocation LoadValueWide(RegLocation rl_src, RegisterClass op_kind);
1019 virtual void LoadValueDirect(RegLocation rl_src, RegStorage r_dest);
1021 virtual void LoadValueDirectFixed(RegLocation rl_src, RegStorage r_dest);
1023 virtual void LoadValueDirectWide(RegLocation rl_src, RegStorage r_dest);
1025 virtual void LoadValueDirectWideFixed(RegLocation rl_src, RegStorage r_dest);
1050 virtual void StoreValue(RegLocation rl_dest, RegLocation rl_src);
1059 virtual void StoreValueWide(RegLocation rl_dest, RegLocation rl_src);
1071 virtual void StoreFinalValue(RegLocation rl_dest, RegLocation rl_src);
1083 virtual void StoreFinalValueWide(RegLocation rl_dest, RegLocation rl_src);
1143 RegLocation rl_src, RegLocation rl_dest, int lit) = 0;
1144 virtual bool EasyMultiply(RegLocation rl_src, RegLocation rl_dest, int lit) = 0;
1215 virtual RegStorage TargetReg(SpecialTargetRegister reg, RegLocation loc) { in TargetReg()
1224 virtual RegLocation GetReturnAlt() = 0;
1225 virtual RegLocation GetReturnWideAlt() = 0;
1226 virtual RegLocation LocCReturn() = 0;
1227 virtual RegLocation LocCReturnRef() = 0;
1228 virtual RegLocation LocCReturnDouble() = 0;
1229 virtual RegLocation LocCReturnFloat() = 0;
1230 virtual RegLocation LocCReturnWide() = 0;
1258 virtual void GenArithImmOpLong(Instruction::Code opcode, RegLocation rl_dest,
1259 RegLocation rl_src1, RegLocation rl_src2) = 0;
1261 RegLocation rl_dest, RegLocation rl_src1,
1262 RegLocation rl_src2) = 0;
1263 virtual void GenArithOpFloat(Instruction::Code opcode, RegLocation rl_dest,
1264 RegLocation rl_src1, RegLocation rl_src2) = 0;
1265 virtual void GenCmpFP(Instruction::Code opcode, RegLocation rl_dest,
1266 RegLocation rl_src1, RegLocation rl_src2) = 0;
1267 virtual void GenConversion(Instruction::Code opcode, RegLocation rl_dest,
1268 RegLocation rl_src) = 0;
1287 virtual RegLocation GenDivRem(RegLocation rl_dest, RegStorage reg_lo, RegStorage reg_hi,
1289 virtual RegLocation GenDivRemLit(RegLocation rl_dest, RegStorage reg_lo, int lit,
1299 virtual RegLocation GenDivRem(RegLocation rl_dest, RegLocation rl_src1,
1300 RegLocation rl_src2, bool is_div, bool check_zero) = 0;
1308 virtual RegLocation GenDivRemLit(RegLocation rl_dest, RegLocation rl_src1, int lit,
1310 virtual void GenCmpLong(RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2) = 0;
1320 virtual void GenEntrySequence(RegLocation* ArgLocs, RegLocation rl_method) = 0;
1322 virtual void GenFillArrayData(DexOffset table_offset, RegLocation rl_src) = 0;
1359 virtual void GenMoveException(RegLocation rl_dest) = 0;
1360 virtual void GenMultiplyByTwoBitMultiplier(RegLocation rl_src, RegLocation rl_result, int lit,
1362 virtual void GenNegDouble(RegLocation rl_dest, RegLocation rl_src) = 0;
1363 virtual void GenNegFloat(RegLocation rl_dest, RegLocation rl_src) = 0;
1366 void GenPackedSwitch(MIR* mir, DexOffset table_offset, RegLocation rl_src);
1367 void GenSparseSwitch(MIR* mir, DexOffset table_offset, RegLocation rl_src);
1371 virtual void GenSmallPackedSwitch(MIR* mir, DexOffset table_offset, RegLocation rl_src);
1372 virtual void GenSmallSparseSwitch(MIR* mir, DexOffset table_offset, RegLocation rl_src);
1374 virtual void GenLargePackedSwitch(MIR* mir, DexOffset table_offset, RegLocation rl_src) = 0;
1375 virtual void GenLargeSparseSwitch(MIR* mir, DexOffset table_offset, RegLocation rl_src) = 0;
1377 virtual void GenArrayGet(int opt_flags, OpSize size, RegLocation rl_array,
1378 RegLocation rl_index, RegLocation rl_dest, int scale) = 0;
1379 virtual void GenArrayPut(int opt_flags, OpSize size, RegLocation rl_array,
1380 RegLocation rl_index, RegLocation rl_src, int scale,
1382 virtual void GenShiftImmOpLong(Instruction::Code opcode, RegLocation rl_dest,
1383 RegLocation rl_src1, RegLocation rl_shift) = 0;
1452 virtual void GenMonitorEnter(int opt_flags, RegLocation rl_src);
1453 virtual void GenMonitorExit(int opt_flags, RegLocation rl_src);
1456 void Workaround7250540(RegLocation rl_dest, RegStorage zero_reg);
1488 bool BadOverlap(RegLocation rl_op1, RegLocation rl_op2);
1495 virtual RegLocation ForceTemp(RegLocation loc);
1502 virtual RegLocation ForceTempWide(RegLocation loc);
1509 RegLocation rl_dest, RegLocation rl_src);
1528 uint32_t type_idx, RegLocation rl_dest,
1529 RegLocation rl_src);
1589 void LoadArgDirect(int in_position, RegLocation rl_dest);
1626 virtual void GenConst(RegLocation rl_dest, int value);
1670 void CheckRegLocationImpl(RegLocation rl, bool fail, bool report) const;
1676 void CheckRegLocation(RegLocation rl) const;