Lines Matching refs:reg

40         integer_t fragment(temp.reg, temp.h, temp.flags);
42 temp.reg = regs.obtain();
47 LDRB(AL, fogColor.reg, mBuilderContext.Rctx,
51 CONTEXT_LOAD(factor.reg, generated_vars.f);
55 BIC(AL, 0, factor.reg, factor.reg, reg_imm(factor.reg, ASR, 31));
56 CMP(AL, factor.reg, imm( 0x10000 ));
57 MOV(HS, 0, factor.reg, imm( 0x10000 ));
138 MOV(AL, 0, temp.reg, reg_imm(temp.reg, LSR, temp.l));
142 integer_t fragment(temp.reg, temp.size(), temp.flags);
147 fragment.reg = scratches.obtain();
148 MOV(AL, 0, fragment.reg, reg_imm(temp.reg, LSR, temp.l));
155 temp.reg = regs.obtain();
237 if (scratches.isUsed(src_factor.reg))
238 scratches.recycle(src_factor.reg);
298 RSB(AL, 0, factor.reg, factor.reg, imm((1<<factor.s)));
314 factor.setTo(fragment.reg, 32, CORRUPTIBLE);
317 factor.setTo(fb.reg, 32, CORRUPTIBLE);
331 ADD(AL, 0, factor.reg, fb.reg, reg_imm(fb.reg, LSR, fb.s-1));
336 ADD(AL, 0, factor.reg, fragment.reg,
337 reg_imm(fragment.reg, LSR, fragment.s-1));
342 ADD(AL, 0, factor.reg, src_alpha.reg,
343 reg_imm(src_alpha.reg, LSR, src_alpha.s-1));
349 ADD(AL, 0, factor.reg, factor.reg,
350 reg_imm(factor.reg, LSR, factor.s-1));
365 RSB(AL, 0, factor.reg, factor.reg, imm((1<<factor.s)));
371 MOV(AL, 0, factor.reg, reg_imm(factor.reg, LSR, factor.s-8));
445 fragment.reg : scratches.obtain(), fb.size(), CORRUPTIBLE);
447 if (shift>0) RSB(AL, 0, diff.reg, fb.reg, reg_imm(fragment.reg, LSR, shift));
448 else if (shift<0) RSB(AL, 0, diff.reg, fb.reg, reg_imm(fragment.reg, LSL,-shift));
449 else RSB(AL, 0, diff.reg, fb.reg, fragment.reg);
463 fb.reg : scratches.obtain(), fb.size(), CORRUPTIBLE);
465 if (shift>0) SUB(AL, 0, diff.reg, fb.reg, reg_imm(fragment.reg, LSR, shift));
466 else if (shift<0) SUB(AL, 0, diff.reg, fb.reg, reg_imm(fragment.reg, LSL,-shift));
467 else SUB(AL, 0, diff.reg, fb.reg, fragment.reg);
541 int vreg = v.reg;
542 int freg = f.reg;
544 MOV(AL, 0, d.reg, reg_imm(vreg, LSR, vshift));
545 vreg = d.reg;
548 MOV(AL, 0, d.reg, reg_imm(vreg, LSR, fshift));
549 freg = d.reg;
551 if (smulw) SMULW(AL, xy, d.reg, vreg, freg);
552 else SMUL(AL, xy, d.reg, vreg, freg);
579 integer_t add(a.reg, a.h, a.flags);
593 if (d.reg!=a.reg && d.reg!=v.reg && d.reg!=f.reg) {
594 add.reg = d.reg;
596 add.reg = scratches.obtain();
604 if (vs<16 && fs<16) SMLABB(AL, d.reg, v.reg, f.reg, add.reg);
605 else MLA(AL, 0, d.reg, v.reg, f.reg, add.reg);
607 int temp = d.reg;
608 if (temp == add.reg) {
609 // the mul will modify add.reg, we need an intermediary reg
610 if (v.flags & CORRUPTIBLE) temp = v.reg;
611 else if (f.flags & CORRUPTIBLE) temp = f.reg;
615 if (vs<16 && fs<16) SMULBB(AL, temp, v.reg, f.reg);
616 else MUL(AL, 0, temp, v.reg, f.reg);
619 ADD(AL, 0, d.reg, temp, reg_imm(add.reg, LSL, ms-as));
622 ADD(AL, 0, d.reg, temp, reg_imm(add.reg, LSR, as-ms));
641 ADD(AL, 0, d.reg, src.reg, dst.reg);
643 ADD(AL, 0, d.reg, src.reg, reg_imm(dst.reg, LSL, shift));
658 CMP(AL, v.reg, imm( 1<<v.h ));
660 MOV(HS, 0, v.reg, imm( one ));
662 MVN(HS, 0, v.reg, imm( ~one ));
664 MOV(HS, 0, v.reg, imm( 1<<v.h ));
665 SUB(HS, 0, v.reg, v.reg, imm( 1<<v.l ));