Lines Matching refs:idx
220 INT idx;
238 INT idx;
294 DUMP("+%i]", param->idx);
296 sm1_dump_reg(param->file, param->idx);
323 DUMP("+%i]", param->idx);
325 sm1_dump_reg(param->file, param->idx);
429 INT idx;
558 static struct ureg_src nine_float_constant_src(struct shader_translator *tx, int idx)
563 idx = tx->slot_map[idx];
569 if (tx->info->swvp_on && idx >= 4096) {
571 src = ureg_src_register(TGSI_FILE_CONSTANT, idx - 4096);
574 src = ureg_src_register(TGSI_FILE_CONSTANT, idx);
579 tx->slots_used[idx] = TRUE;
580 if (tx->info->const_float_slots < (idx + 1))
581 tx->info->const_float_slots = idx + 1;
582 if (tx->num_slots < (idx + 1))
583 tx->num_slots = idx + 1;
588 static struct ureg_src nine_integer_constant_src(struct shader_translator *tx, int idx)
593 src = ureg_src_register(TGSI_FILE_CONSTANT, idx);
596 unsigned slot_idx = tx->info->const_i_base + idx;
602 tx->info->int_slots_used[idx] = TRUE;
607 if (tx->info->const_int_slots < (idx + 1))
608 tx->info->const_int_slots = idx + 1;
613 static struct ureg_src nine_boolean_constant_src(struct shader_translator *tx, int idx)
617 char r = idx / 4;
618 char s = idx & 3;
630 tx->info->bool_slots_used[idx] = TRUE;
636 if (tx->info->const_bool_slots < (idx + 1))
637 tx->info->const_bool_slots = idx + 1;
652 if (tx->lconstf[i].idx == index) {
669 if (tx->lconsti[i].idx == index) {
686 if (tx->lconstb[i].idx == index) {
702 if (tx->lconstf[n].idx == index)
713 tx->lconstf[n].idx = index;
726 if (tx->lconsti[n].idx == index)
738 tx->lconsti[n].idx = index;
751 if (tx->lconstb[n].idx == index)
763 tx->lconstb[n].idx = index;
798 tx_temp_alloc(struct shader_translator *tx, INT idx)
800 assert(idx >= 0);
801 if (idx >= tx->num_temp) {
803 unsigned n = idx + 1;
811 if (ureg_dst_is_undef(tx->regs.r[idx]))
812 tx->regs.r[idx] = ureg_DECL_temporary(tx->ureg);
816 tx_addr_alloc(struct shader_translator *tx, INT idx)
818 assert(idx == 0);
828 struct ureg_src src1, INT idx)
833 if (!(tx->info->fetch4 & (1 << idx)))
855 struct ureg_src src, INT idx)
858 unsigned dim = 1 + ((tx->info->projected >> (2 * idx)) & 3);
873 struct ureg_src src1, INT idx)
875 unsigned dim = 1 + ((tx->info->projected >> (2 * idx)) & 3);
877 boolean shadow = !!(tx->info->sampler_mask_shadow & (1 << idx));
889 apply_ps1x_projection(tx, tmp, src0, idx);
895 tx_texcoord_alloc(struct shader_translator *tx, INT idx)
898 assert(idx >= 0 && idx < ARRAY_SIZE(tx->regs.vT));
899 if (ureg_src_is_undef(tx->regs.vT[idx]))
900 tx->regs.vT[idx] = ureg_DECL_fs_input(tx->ureg, tx->texcoord_sn, idx,
1018 tx_temp_alloc(tx, param->idx);
1019 src = ureg_src(tx->regs.r[param->idx]);
1024 assert(param->idx == 0);
1038 src = ureg_src(tx->regs.tS[param->idx]);
1040 tx_texcoord_alloc(tx, param->idx);
1041 src = tx->regs.vT[param->idx];
1047 src = ureg_src_register(TGSI_FILE_INPUT, param->idx);
1051 ureg, TGSI_SEMANTIC_COLOR, param->idx,
1078 src = ureg_src_array_offset(tx->regs.v_consecutive, param->idx);
1080 assert(param->idx < ARRAY_SIZE(tx->regs.v));
1081 src = tx->regs.v[param->idx];
1099 src = ureg_DECL_sampler(ureg, param->idx);
1102 if (param->rel || !tx_lconstf(tx, &src, param->idx)) {
1103 src = nine_float_constant_src(tx, param->idx);
1126 if (!tx_lconsti(tx, &src, param->idx))
1127 src = nine_integer_constant_src(tx, param->idx);
1130 if (!tx_lconstb(tx, &src, param->idx))
1131 src = nine_boolean_constant_src(tx, param->idx);
1143 switch (param->idx) {
1292 tx_temp_alloc(tx, param->idx);
1293 dst = tx->regs.r[param->idx];
1299 if (ureg_dst_is_undef(tx->regs.tS[param->idx]))
1300 tx->regs.tS[param->idx] = ureg_DECL_temporary(tx->ureg);
1301 dst = tx->regs.tS[param->idx];
1304 tx_texcoord_alloc(tx, param->idx);
1305 dst = ureg_dst(tx->regs.vT[param->idx]);
1307 tx_addr_alloc(tx, param->idx);
1313 switch (param->idx) {
1340 dst = ureg_DECL_output(tx->ureg, tx->texcoord_sn, param->idx);
1343 assert(param->idx < ARRAY_SIZE(tx->regs.o));
1344 dst = tx->regs.o[param->idx];
1349 assert(param->idx >= 0 && param->idx < 4);
1351 tx->info->rt_mask |= 1 << param->idx;
1352 if (ureg_dst_is_undef(tx->regs.oCol[param->idx])) {
1354 if (!IS_VS && tx->version.major < 3 && param->idx == 0) {
1357 tx->regs.oCol[param->idx] =
1358 ureg_DECL_output(tx->ureg, TGSI_SEMANTIC_COLOR, param->idx);
1361 dst = tx->regs.oCol[param->idx];
1442 src = ureg_src_register(TGSI_FILE_INPUT, param->idx);
1445 assert(param->idx < ARRAY_SIZE(tx->regs.v));
1446 src = tx->regs.v[param->idx];
1491 src_mat->idx++;
1766 assert(tx->insn.src[0].idx < tx->num_inst_labels);
1767 ureg_CAL(tx->ureg, &tx->inst_labels[tx->insn.src[0].idx]);
1780 ureg_CAL(ureg, &tx->inst_labels[tx->insn.src[0].idx]);
1864 unsigned n = tx->insn.src[0].idx;
2267 const unsigned m = 1 << sem.reg.idx;
2268 ureg_DECL_sampler(ureg, sem.reg.idx);
2270 tx->sampler_targets[sem.reg.idx] = (tx->info->sampler_mask_shadow & m) ?
2280 ureg_DECL_vs_input(ureg, sem.reg.idx);
2281 assert(sem.reg.idx < ARRAY_SIZE(tx->info->input_map));
2282 tx->info->input_map[sem.reg.idx] = sm1_to_nine_declusage(&sem);
2283 tx->info->num_inputs = MAX2(tx->info->num_inputs, sem.reg.idx + 1);
2291 assert(sem.reg.idx < ARRAY_SIZE(tx->regs.o));
2292 assert(ureg_dst_is_undef(tx->regs.o[sem.reg.idx]) && "Nine doesn't support yet packing");
2293 tx->regs.o[sem.reg.idx] = ureg_DECL_output_masked(
2295 nine_record_outputs(tx, sem.usage, sem.usage_idx, sem.reg.mask, sem.reg.idx);
2297 tx->regs.oPos_out = tx->regs.o[sem.reg.idx];
2298 tx->regs.o[sem.reg.idx] = ureg_DECL_temporary(ureg);
2299 tx->regs.oPos = tx->regs.o[sem.reg.idx];
2303 tx->regs.o[sem.reg.idx] = ureg_DECL_temporary(ureg);
2304 tx->regs.oPts = tx->regs.o[sem.reg.idx];
2311 assert(sem.reg.idx < ARRAY_SIZE(tx->regs.v));
2312 assert(ureg_src_is_undef(tx->regs.v[sem.reg.idx]) && "Nine doesn't support yet packing");
2322 tx->regs.v[sem.reg.idx] = nine_get_position_input(tx);
2330 tx->regs.v[sem.reg.idx] = ureg_DECL_fs_input_centroid(
2347 tx_set_lconstf(tx, tx->insn.dst[0].idx, tx->insn.src[0].imm.f);
2353 tx_set_lconstb(tx, tx->insn.dst[0].idx, tx->insn.src[0].imm.b);
2359 tx_set_lconsti(tx, tx->insn.dst[0].idx, tx->insn.src[0].imm.i);
2497 const unsigned s = tx->insn.dst[0].idx;
2527 tx_texcoord_alloc(tx, tx->insn.dst[0].idx);
2528 reg = tx->regs.vT[tx->insn.dst[0].idx];
2545 const int m = tx->insn.dst[0].idx;
2622 const int m = tx->insn.dst[0].idx;
2623 ASSERTED const int n = tx->insn.src[0].idx;
2639 const int m = tx->insn.dst[0].idx;
2640 ASSERTED const int n = tx->insn.src[0].idx;
2661 const int m = tx->insn.dst[0].idx - 1;
2662 ASSERTED const int n = tx->insn.src[0].idx;
2692 const int m = tx->insn.dst[0].idx - 2;
2693 ASSERTED const int n = tx->insn.src[0].idx;
2733 const int m = tx->insn.dst[0].idx;
2734 ASSERTED const int n = tx->insn.src[0].idx;
2751 const int m = tx->insn.dst[0].idx;
2752 ASSERTED const int n = tx->insn.src[0].idx;
2773 const int m = tx->insn.dst[0].idx - 1;
2774 ASSERTED const int n = tx->insn.src[0].idx;
2805 const int m = tx->insn.dst[0].idx;
2806 ASSERTED const int n = tx->insn.src[0].idx;
2823 const int m = tx->insn.dst[0].idx - 2;
2824 ASSERTED const int n = tx->insn.src[0].idx;
2880 assert(tx->insn.dst[0].idx == 5); /* instruction must get r5 here */
2908 const int m = tx->insn.dst[0].idx;
2951 assert(tx->insn.src[1].idx >= 0 &&
2952 tx->insn.src[1].idx < ARRAY_SIZE(tx->sampler_targets));
2953 target = tx->sampler_targets[tx->insn.src[1].idx];
2955 if (TEX_if_fetch4(tx, dst, target, src[0], src[1], tx->insn.src[1].idx))
2980 const unsigned s = tx->insn.dst[0].idx;
2992 const unsigned s = tx->insn.dst[0].idx;
3018 assert(tx->insn.src[1].idx >= 0 &&
3019 tx->insn.src[1].idx < ARRAY_SIZE(tx->sampler_targets));
3020 target = tx->sampler_targets[tx->insn.src[1].idx];
3022 if (TEX_if_fetch4(tx, dst, target, src[0], src[1], tx->insn.src[1].idx))
3037 assert(tx->insn.src[1].idx >= 0 &&
3038 tx->insn.src[1].idx < ARRAY_SIZE(tx->sampler_targets));
3039 target = tx->sampler_targets[tx->insn.src[1].idx];
3041 if (TEX_if_fetch4(tx, dst, target, src[0], src[1], tx->insn.src[1].idx))
3351 dst->idx = tok & D3DSP_REGNUM_MASK;
3366 src->idx = tok & D3DSP_REGNUM_MASK;
3372 case D3DSPR_CONST2: src->file = D3DSPR_CONST; src->idx += 2048; break;
3373 case D3DSPR_CONST3: src->file = D3DSPR_CONST; src->idx += 4096; break;
3374 case D3DSPR_CONST4: src->file = D3DSPR_CONST; src->idx += 6144; break;
3385 imm->idx = INT_MIN;
4077 if (tx->lconstf[i].idx < tx->lconstf[k].idx)
4080 indices[n] = tx->lconstf[k].idx;
4082 tx->lconstf[k].idx = INT_MAX;