Lines Matching refs:r_src

33 LIR* X86Mir2Lir::OpFpRegCopy(RegStorage r_dest, RegStorage r_src) {  in OpFpRegCopy()  argument
36 DCHECK(r_dest.IsFloat() || r_src.IsFloat()); in OpFpRegCopy()
37 DCHECK_EQ(r_dest.IsDouble(), r_src.IsDouble()); in OpFpRegCopy()
42 if (r_src.IsSingle()) { in OpFpRegCopy()
48 DCHECK(r_src.IsSingle()) << "Raw: 0x" << std::hex << r_src.GetRawBits(); in OpFpRegCopy()
53 LIR* res = RawLIR(current_dalvik_offset_, opcode, r_dest.GetReg(), r_src.GetReg()); in OpFpRegCopy()
54 if (r_dest == r_src) { in OpFpRegCopy()
309 LIR* X86Mir2Lir::OpMovMemReg(RegStorage r_base, int offset, RegStorage r_src, MoveType move_type) { in OpMovMemReg() argument
311 int src = r_src.IsPair() ? r_src.GetLowReg() : r_src.GetReg(); in OpMovMemReg()
316 CHECK(!r_src.IsFloat()); in OpMovMemReg()
320 CHECK(!r_src.IsFloat()); in OpMovMemReg()
324 CHECK(!r_src.IsFloat()); in OpMovMemReg()
328 CHECK(r_src.IsFloat()); in OpMovMemReg()
332 CHECK(r_src.IsFloat()); in OpMovMemReg()
336 CHECK(r_src.IsFloat()); in OpMovMemReg()
340 CHECK(r_src.IsFloat()); in OpMovMemReg()
344 CHECK(r_src.IsFloat()); in OpMovMemReg()
348 CHECK(r_src.IsFloat()); in OpMovMemReg()
362 LIR* X86Mir2Lir::OpCondRegReg(OpKind op, ConditionCode cc, RegStorage r_dest, RegStorage r_src) { in OpCondRegReg() argument
365 DCHECK_EQ(r_dest.Is64Bit(), r_src.Is64Bit()); in OpCondRegReg()
367 r_src.GetReg(), X86ConditionEncoding(cc)); in OpCondRegReg()
504 LIR* X86Mir2Lir::OpRegRegImm(OpKind op, RegStorage r_dest, RegStorage r_src, int value) { in OpRegRegImm() argument
507 return NewLIR3(opcode, r_dest.GetReg(), r_src.GetReg(), value); in OpRegRegImm()
509 if (value == 0xFF && r_src.Low4()) { in OpRegRegImm()
510 return NewLIR2(kX86Movzx8RR, r_dest.GetReg(), r_src.GetReg()); in OpRegRegImm()
512 return NewLIR2(kX86Movzx16RR, r_dest.GetReg(), r_src.GetReg()); in OpRegRegImm()
515 if (r_dest != r_src) { in OpRegRegImm()
519 r_src.GetReg() /* index */, value /* scale */, 0 /* disp */); in OpRegRegImm()
522r_src.GetReg() /* base */, rs_rX86_SP_32.GetReg()/*r4sib_no_index*/ /* index */, in OpRegRegImm()
525 OpRegCopy(r_dest, r_src); in OpRegRegImm()
792 int displacement, RegStorage r_src, OpSize size, in StoreBaseIndexedDisp() argument
797 bool pair = r_src.IsPair(); in StoreBaseIndexedDisp()
807 if (r_src.IsFloat()) { in StoreBaseIndexedDisp()
821 CHECK_EQ(r_src.IsFloat(), false); in StoreBaseIndexedDisp()
830 if (r_src.IsFloat()) { in StoreBaseIndexedDisp()
832 DCHECK(r_src.IsSingle()); in StoreBaseIndexedDisp()
874 store = NewLIR3(opcode, r_base.GetReg(), displacement + LOWORD_OFFSET, r_src.GetReg()); in StoreBaseIndexedDisp()
876 DCHECK(!r_src.IsFloat()); // Make sure we're not still using a pair here. in StoreBaseIndexedDisp()
877 store = NewLIR3(opcode, r_base.GetReg(), displacement + LOWORD_OFFSET, r_src.GetLowReg()); in StoreBaseIndexedDisp()
878 store2 = NewLIR3(opcode, r_base.GetReg(), displacement + HIWORD_OFFSET, r_src.GetHighReg()); in StoreBaseIndexedDisp()
892 displacement + LOWORD_OFFSET, r_src.GetReg()); in StoreBaseIndexedDisp()
894 DCHECK(!r_src.IsFloat()); // Make sure we're not still using a pair here. in StoreBaseIndexedDisp()
896 displacement + LOWORD_OFFSET, r_src.GetLowReg()); in StoreBaseIndexedDisp()
898 displacement + HIWORD_OFFSET, r_src.GetHighReg()); in StoreBaseIndexedDisp()
905 LIR* X86Mir2Lir::StoreBaseIndexed(RegStorage r_base, RegStorage r_index, RegStorage r_src, in StoreBaseIndexed() argument
907 return StoreBaseIndexedDisp(r_base, r_index, scale, 0, r_src, size); in StoreBaseIndexed()
910 LIR* X86Mir2Lir::StoreBaseDisp(RegStorage r_base, int displacement, RegStorage r_src, OpSize size, in StoreBaseDisp() argument
922 if (!cu_->target64 && !r_src.Low4()) { in StoreBaseDisp()
923 RegStorage r_input = r_src; in StoreBaseDisp()
924 r_src = AllocateByteRegister(); in StoreBaseDisp()
925 OpRegCopy(r_src, r_input); in StoreBaseDisp()
930 LIR* store = StoreBaseIndexedDisp(r_base, RegStorage::InvalidReg(), 0, displacement, r_src, size); in StoreBaseDisp()
939 FreeTemp(r_src); in StoreBaseDisp()