Lines Matching refs:info
270 unsigned execution_mode = ctx->s->info.float_controls_execution_mode;
365 const nir_op_info *info = &nir_op_infos[alu->op];
366 struct ir3_instruction **dst, *src[info->num_inputs];
367 unsigned bs[info->num_inputs]; /* bit size */
390 for (int i = 0; i < info->num_inputs; i++) {
426 for (int i = 0; i < info->num_inputs; i++) {
860 if (nir_alu_type_get_base_type(info->output_type) == nir_type_bool) {
966 const_state->offsets.ubo + (ctx->s->info.num_ubos * ptrsz));
1353 struct tex_src_info info = {0};
1359 info.flags |= IR3_INSTR_B;
1364 info.tex_base = nir_intrinsic_desc_set(bindless_tex);
1367 info.tex_idx = nir_src_as_uint(bindless_tex->src[0]);
1368 info.samp_idx = 0;
1371 if (tex_const && info.tex_idx < 256) {
1372 if (info.tex_idx < 16) {
1374 info.base = info.tex_base;
1376 info.base = info.tex_base;
1377 info.a1_val = info.tex_idx << 3;
1378 info.flags |= IR3_INSTR_A1EN;
1380 info.samp_tex = NULL;
1382 info.flags |= IR3_INSTR_S2EN;
1383 info.base = info.tex_base;
1390 info.samp_tex = ir3_collect(b, texture, sampler);
1393 info.flags |= IR3_INSTR_S2EN;
1401 info.samp_tex = ir3_collect(b, sampler, texture);
1404 return info;
1408 emit_sam(struct ir3_context *ctx, opc_t opc, struct tex_src_info info,
1413 if (info.flags & IR3_INSTR_A1EN) {
1414 addr = ir3_get_addr1(ctx, info.a1_val);
1416 sam = ir3_SAM(ctx->block, opc, type, wrmask, info.flags, info.samp_tex, src0,
1418 if (info.flags & IR3_INSTR_A1EN) {
1421 if (info.flags & IR3_INSTR_B) {
1422 sam->cat5.tex_base = info.base;
1423 sam->cat5.samp = info.samp_idx;
1424 sam->cat5.tex = info.tex_idx;
1453 struct tex_src_info info = get_image_ssbo_samp_tex_src(ctx, &intr->src[0]);
1460 info.flags |= flags;
1477 sam = emit_sam(ctx, OPC_ISAM, info, type, 0b1111,
1495 struct tex_src_info info = get_image_ssbo_samp_tex_src(ctx, &intr->src[0]);
1500 info.flags |= flags;
1503 sam = emit_sam(ctx, OPC_GETSIZE, info, dst_type, 0b1111, lod, NULL);
1548 struct tex_src_info info = get_image_ssbo_samp_tex_src(ctx, &intr->src[0]);
1552 emit_sam(ctx, OPC_ISAM, info, utype_for_size(intr->dest.ssa.bit_size),
2038 const nir_intrinsic_info *info = &nir_intrinsic_infos[intr->intrinsic];
2045 if (info->has_dest) {
2686 if (info->has_dest)
2787 struct tex_src_info info = {0};
2794 info.flags |= IR3_INSTR_B;
2797 info.flags |= IR3_INSTR_NONUNIF;
2808 info.tex_base = nir_intrinsic_desc_set(bindless_tex);
2811 info.tex_idx = nir_src_as_uint(bindless_tex->src[0]);
2817 info.tex_idx = 0;
2825 info.samp_base = nir_intrinsic_desc_set(bindless_samp);
2828 info.samp_idx = nir_src_as_uint(bindless_samp->src[0]);
2831 info.samp_idx = 0;
2835 if (tex_const && samp_const && info.tex_idx < 256 &&
2836 info.samp_idx < 256) {
2837 if (info.tex_idx < 16 && info.samp_idx < 16 &&
2839 info.tex_base == info.samp_base)) {
2841 info.base = info.tex_base;
2843 info.base = info.tex_base;
2844 info.a1_val = info.tex_idx << 3 | info.samp_base;
2845 info.flags |= IR3_INSTR_A1EN;
2847 info.samp_tex = NULL;
2849 info.flags |= IR3_INSTR_S2EN;
2854 info.tex_base == info.samp_base) {
2855 info.base = info.tex_base;
2857 info.base = info.tex_base;
2858 info.a1_val = info.samp_base;
2859 info.flags |= IR3_INSTR_A1EN;
2878 info.samp_tex = ir3_collect(b, texture, sampler);
2881 info.flags |= IR3_INSTR_S2EN;
2896 info.tex_idx = tex->texture_index;
2904 info.samp_idx = tex->texture_index;
2907 info.samp_tex = ir3_collect(b, sampler, texture);
2910 return info;
2920 struct tex_src_info info = {0};
3163 info.samp_tex = ir3_collect(
3166 info.flags = IR3_INSTR_S2EN;
3170 info = get_tex_samp_tex_src(ctx, tex);
3205 sam->flags = flags | (info.flags & IR3_INSTR_B);
3206 sam->prefetch.tex = info.tex_idx;
3207 sam->prefetch.samp = info.samp_idx;
3208 sam->prefetch.tex_base = info.tex_base;
3209 sam->prefetch.samp_base = info.samp_base;
3211 info.flags |= flags;
3212 sam = emit_sam(ctx, opc, info, type, MASK(ncomp), col0, col1);
3267 sam = ir3_SAM(b, opc, type, 0b1000, flags | info.flags, info.samp_tex,
3302 struct tex_src_info info = get_tex_samp_tex_src(ctx, tex);
3306 sam = emit_sam(ctx, OPC_GETINFO, info, dst_type, 1 << idx, NULL, NULL);
3330 struct tex_src_info info = get_tex_samp_tex_src(ctx, tex);
3333 info.flags |= flags;
3349 sam = emit_sam(ctx, OPC_GETSIZE, info, dst_type, 0b1111, lod, NULL);
3356 sam = emit_sam(ctx, OPC_GETBUF, info, dst_type, 0b1111, NULL, NULL);
4141 if (!ctx->s->info.fs.color_is_dual_source) {
4386 BITSET_LAST_BIT(ctx->s->info.textures_used) + ctx->s->info.num_images;
4393 MASK(ctx->s->info.clip_distance_array_size);
4394 ctx->so->cull_mask = MASK(ctx->s->info.cull_distance_array_size)
4395 << ctx->s->info.clip_distance_array_size;
4398 ctx->so->shared_size = ctx->s->info.shared_size;
4628 so->local_size[0] = ctx->s->info.workgroup_size[0];
4629 so->local_size[1] = ctx->s->info.workgroup_size[1];
4630 so->local_size[2] = ctx->s->info.workgroup_size[2];
4631 so->local_size_variable = ctx->s->info.workgroup_size_variable;
4955 if (ctx->compiler->gen == 4 && ctx->s->info.uses_texture_gather)
4985 ctx->s->info.fs.needs_quad_helper_invocations)
4989 !ctx->s->info.fs.early_fragment_tests)
4990 ctx->so->no_earlyz |= ctx->s->info.writes_memory;