Lines Matching refs:i3
566 * @i3: third move description
569 * As tcg_out_movext, for all of @i1, @i2 and @i3, caring for overlap
574 const TCGMovExtend *i2, const TCGMovExtend *i3,
579 TCGReg src3 = i3->src;
583 tcg_out_movext2(s, i2, i3, scratch);
588 tcg_out_movext2(s, i1, i3, scratch);
591 if (i3->dst != src1 && i3->dst != src2) {
592 tcg_out_movext1(s, i3);
602 if (i1->dst == src2 && i2->dst == src3 && i3->dst == src1) {
605 tcg_out_xchg(s, MAX(i2->src_type, i3->src_type), src2, src3);
609 tcg_out_movext1_new_src(s, i3, i3->dst);
613 tcg_out_movext1(s, i3);
617 } else if (i1->dst == src3 && i2->dst == src1 && i3->dst == src2) {
619 if (tcg_out_xchg(s, MAX(i2->src_type, i3->src_type), src2, src3)) {
624 tcg_out_movext1_new_src(s, i3, i3->dst);
629 tcg_out_movext1(s, i3);