Home | History | Annotate | Download | only in codeflinger

Lines Matching refs:parts

190     fragment_parts_t parts;
196 build_scanline_prolog(parts, needs);
209 MOV(AL, 0, parts.count.reg,
210 reg_imm(parts.count.reg, ROR, GGL_DITHER_ORDER_SHIFT));
211 ADD(AL, 0, parts.count.reg, parts.count.reg,
213 MOV(AL, 0, parts.count.reg,
214 reg_imm(parts.count.reg, ROR, 32 - GGL_DITHER_ORDER_SHIFT));
223 build_depth_test(parts, Z_TEST|Z_WRITE);
227 build_depth_test(parts, Z_TEST);
234 build_textures(parts, regs);
248 load(parts.cbPtr, mDstPixel);
256 if (directTex | parts.packed) {
259 pixel = directTex ? parts.texel[directTex-1] : parts.iterated;
265 parts.dither = reg_t(regs.obtain());
266 AND(AL, 0, parts.dither.reg, parts.count.reg, imm(mask));
267 ADDR_ADD(AL, 0, parts.dither.reg, ctxtReg, parts.dither.reg);
268 LDRB(AL, parts.dither.reg, parts.dither.reg,
275 build_component(pixel, parts, GGLFormat::ALPHA, regs);
280 build_depth_test(parts, Z_WRITE);
283 build_component(pixel, parts, GGLFormat::RED, regs);
284 build_component(pixel, parts, GGLFormat::GREEN, regs);
285 build_component(pixel, parts, GGLFormat::BLUE, regs);
307 store(parts.cbPtr, pixel, WRITE_BACK);
315 if (parts.reload != 3) {
316 build_smooth_shade(parts);
320 build_iterate_z(parts);
323 build_iterate_f(parts);
325 SUB(AL, S, parts.count.reg, parts.count.reg, imm(1<<16));
333 build_iterate_texture_coordinates(parts);
336 build_smooth_shade(parts);
337 build_iterate_z(parts);
338 build_iterate_f(parts);
340 ADDR_ADD(AL, 0, parts.cbPtr.reg, parts.cbPtr.reg, imm(parts.cbPtr.size>>3));
342 SUB(AL, S, parts.count.reg, parts.count.reg, imm(1<<16));
353 fragment_parts_t& parts, const needs_t& needs)
360 parts.count.setTo(obtainReg());
364 CONTEXT_LOAD(parts.count.reg, iterators.xr);
367 // parts.count = iterators.xr - Rx
368 SUB(AL, 0, parts.count.reg, parts.count.reg, Rx);
369 SUB(AL, 0, parts.count.reg, parts.count.reg, imm(1));
372 // parts.count.reg = 0xNNNNXXDD
382 ORR(AL, 0, parts.count.reg, tx, reg_imm(parts.count.reg, LSL, 16));
384 // parts.count.reg = 0xNNNN0000
386 MOV(AL, 0, parts.count.reg, reg_imm(parts.count.reg, LSL, 16));
394 parts.cbPtr.setTo(obtainReg(), cb_bits);
396 CONTEXT_ADDR_LOAD(parts.cbPtr.reg, state.buffers.color.data);
398 base_offset(parts.cbPtr, parts.cbPtr, Rs);
418 parts.z = reg_t(obtainReg());
422 int ydzdy = parts.z.reg;
425 MLA(AL, 0, parts.z.reg, Rx, dzdx, ydzdy);
427 // we're going to index zbase of parts.count
434 ADD(AL, 0, Rs, Rs, reg_imm(parts.count.reg, LSR, 16));
440 init_textures(parts.coords, reg_t(Rx), reg_t(Ry));
444 init_iterated_color(parts, reg_t(Rx));
448 parts.covPtr.setTo(obtainReg(), 16);
449 CONTEXT_ADDR_LOAD(parts.covPtr.reg, state.buffers.coverage);
450 ADDR_ADD(AL, 0, parts.covPtr.reg, parts.covPtr.reg, reg_imm(Rx, LSL, 1));
457 const fragment_parts_t& parts,
470 parts, component, scratches, regs);
478 downshift(pixel, component, temp, parts.dither);
485 const fragment_parts_t& parts,
510 (parts.texel[i].component_size(component) < dst_size)) {
536 build_iterated_color(fragment, parts, component, regs);
539 build_texture_environment(fragment, parts, component, regs);
563 build_coverage_application(fragment, parts, regs);
566 build_alpha_test(fragment, parts);
605 temp = component_t(parts.iterated, component);
611 temp = component_t(parts.texel[i], component);
630 void GGLAssembler::build_smooth_shade(const fragment_parts_t& parts)
632 if (mSmooth && !parts.iterated_packed) {
637 const int reload = parts.reload;
642 int c = parts.argb[i].reg;
643 int dx = parts.argb_dx[i].reg;
672 const fragment_parts_t& parts, Scratch& regs)
684 LDRH(AL, cf, parts.covPtr.reg, immed8_post(2));
698 const fragment_parts_t& /*parts*/)
725 const fragment_parts_t& parts, uint32_t mask)
767 int z = parts.z.reg;
770 ADDR_SUB(AL, 0, zbase, zbase, reg_imm(parts.count.reg, LSR, 15));
789 void GGLAssembler::build_iterate_z(const fragment_parts_t& parts)
796 ADD(AL, 0, parts.z.reg, parts.z.reg, dzdx);
800 void GGLAssembler::build_iterate_f(const fragment_parts_t& /*parts*/)