| /xsrc/external/mit/MesaLib.old/dist/src/freedreno/ir3/ |
| ir3_image.h | 34 unsigned ir3_ssbo_to_ibo(struct ir3_ibo_mapping *mapping, unsigned ssbo); 35 unsigned ir3_ssbo_to_tex(struct ir3_ibo_mapping *mapping, unsigned ssbo);
|
| ir3_image.c | 31 * SSBO/Image to/from IBO/tex hw mapping table: 44 ir3_ssbo_to_ibo(struct ir3_ibo_mapping *mapping, unsigned ssbo) 46 if (mapping->ssbo_to_ibo[ssbo] == IBO_INVALID) { 48 mapping->ssbo_to_ibo[ssbo] = ibo; 49 mapping->ibo_to_image[ibo] = IBO_SSBO | ssbo; 51 return mapping->ssbo_to_ibo[ssbo]; 55 ir3_ssbo_to_tex(struct ir3_ibo_mapping *mapping, unsigned ssbo) 57 if (mapping->ssbo_to_tex[ssbo] == IBO_INVALID) { 59 mapping->ssbo_to_tex[ssbo] = tex; 60 mapping->tex_to_image[tex] = IBO_SSBO | ssbo; [all...] |
| ir3_a4xx.c | 110 * SSBO atomic intrinsics 112 * All of the SSBO atomic memory operations read a value from memory, 119 * 0: The SSBO buffer index. 120 * 1: The offset into the SSBO buffer of the variable that the atomic 130 struct ir3_instruction *atomic, *ssbo, *src0, *src1, *src2, *byte_offset, local 136 ssbo = create_immed(b, ibo_idx); 156 atomic = ir3_ATOMIC_ADD_G(b, ssbo, 0, src0, 0, src1, 0, src2, 0); 159 atomic = ir3_ATOMIC_MIN_G(b, ssbo, 0, src0, 0, src1, 0, src2, 0); 163 atomic = ir3_ATOMIC_MIN_G(b, ssbo, 0, src0, 0, src1, 0, src2, 0); 166 atomic = ir3_ATOMIC_MAX_G(b, ssbo, 0, src0, 0, src1, 0, src2, 0) [all...] |
| /xsrc/external/mit/MesaLib/dist/src/freedreno/ir3/ |
| ir3_image.h | 35 unsigned ir3_ssbo_to_tex(struct ir3_ibo_mapping *mapping, unsigned ssbo);
|
| ir3_image.c | 30 * SSBO/Image to/from IBO/tex hw mapping table: 55 ir3_ssbo_to_tex(struct ir3_ibo_mapping *mapping, unsigned ssbo) 57 if (mapping->ssbo_to_tex[ssbo] == IBO_INVALID) { 59 mapping->ssbo_to_tex[ssbo] = tex; 60 mapping->tex_to_image[tex] = IBO_SSBO | ssbo; 62 return mapping->ssbo_to_tex[ssbo] + mapping->tex_base;
|
| ir3_a4xx.c | 45 struct ir3_instruction *ssbo = ir3_ssbo_to_ibo(ctx, intr->src[0]); local 54 ldgb = ir3_LDGB(b, ssbo, 0, src0, 0, src1, 0); 76 struct ir3_instruction *ssbo = ir3_ssbo_to_ibo(ctx, intr->src[1]); local 88 stgb = ir3_STGB(b, ssbo, 0, src0, 0, src1, 0, src2, 0); 99 * SSBO atomic intrinsics 101 * All of the SSBO atomic memory operations read a value from memory, 108 * 0: The SSBO buffer index. 109 * 1: The byte offset into the SSBO buffer of the variable that the atomic 114 * Non-CompSwap: The dword offset into the SSBO buffer variable. 115 * 4: CompSwap: The dword offset into the SSBO buffer variable 127 struct ir3_instruction *ssbo = ir3_ssbo_to_ibo(ctx, intr->src[0]); local [all...] |
| /xsrc/external/mit/MesaLib/dist/src/gallium/drivers/radeonsi/ |
| gfx10_query.c | 349 struct pipe_shader_buffer ssbo[3]; local 352 ssbo[1].buffer = tmp_buffer; 353 ssbo[1].buffer_offset = tmp_buffer_offset; 354 ssbo[1].buffer_size = 16; 356 ssbo[2] = ssbo[1]; 372 ssbo[0].buffer = &qbuf->buf->b.b; 373 ssbo[0].buffer_offset = begin; 374 ssbo[0].buffer_size = end - begin; 384 ssbo[2].buffer = resource [all...] |
| si_query.c | 1438 struct pipe_shader_buffer ssbo[3]; local 1474 ssbo[1].buffer = tmp_buffer; 1475 ssbo[1].buffer_offset = tmp_buffer_offset; 1476 ssbo[1].buffer_size = 16; 1478 ssbo[2] = ssbo[1]; 1532 ssbo[0].buffer = &qbuf->buf->b.b; 1533 ssbo[0].buffer_offset = params.start_offset; 1534 ssbo[0].buffer_size = qbuf->results_end - params.start_offset; 1537 ssbo[2].buffer = resource [all...] |
| /xsrc/external/mit/MesaLib/dist/src/compiler/nir/ |
| nir_lower_atomics_to_ssbo.c | 35 * Remap atomic counters to SSBOs, starting from the shader's next SSBO slot 95 * 1:1 with ssbo atomics 189 /* replace atomic_uint uniforms with ssbo's: */ 198 nir_variable *ssbo; local 206 ssbo = nir_variable_create(shader, nir_var_mem_ssbo, type, name); 207 ssbo->data.binding = ssbo_offset + var->data.binding; 208 ssbo->data.explicit_binding = var->data.explicit_binding; 211 * active atomic counters, and currently unlike SSBO's they aren't 222 ssbo->data.binding + 1); 230 ssbo->interface_type [all...] |
| nir_opt_load_store_vectorize.c | 27 * ssbo and push constant loads/stores. 77 LOAD(nir_var_mem_ssbo, ssbo, 0, 1, -1) 78 STORE(nir_var_mem_ssbo, ssbo, 1, 2, -1, 0) 85 ATOMIC(nir_var_mem_ssbo, ssbo, add, 0, 1, -1, 2) 86 ATOMIC(nir_var_mem_ssbo, ssbo, imin, 0, 1, -1, 2) 87 ATOMIC(nir_var_mem_ssbo, ssbo, umin, 0, 1, -1, 2) 88 ATOMIC(nir_var_mem_ssbo, ssbo, imax, 0, 1, -1, 2) 89 ATOMIC(nir_var_mem_ssbo, ssbo, umax, 0, 1, -1, 2) 90 ATOMIC(nir_var_mem_ssbo, ssbo, and, 0, 1, -1, 2) 91 ATOMIC(nir_var_mem_ssbo, ssbo, or, 0, 1, -1, 2 [all...] |
| nir_opt_access.c | 107 * Therefore we have to group buffer samplers together with SSBO's. 173 bool ssbo = nir_deref_mode_is(deref, nir_var_mem_ssbo); local 174 gather_buffer_access(state, ssbo ? instr->src[0].ssa : NULL,
|
| /xsrc/external/mit/MesaLib.old/dist/src/compiler/nir/ |
| nir_lower_atomics_to_ssbo.c | 36 * SSBO binding points [0..ssbo_offset) and the original SSBOs are 67 /* easy case, keep same opcode and just remap SSBO buffer index: */ 117 * 1:1 with ssbo atomics 209 /* replace atomic_uint uniforms with ssbo's: */ 218 nir_variable *ssbo; local 226 ssbo = nir_variable_create(shader, nir_var_mem_ssbo, type, name); 227 ssbo->data.binding = var->data.binding; 235 ssbo->interface_type =
|
| /xsrc/external/mit/MesaLib/dist/src/freedreno/isa/ |
| encode.c | 214 struct ir3_register *ssbo = instr->srcs[0]; local 215 if (ssbo->flags & IR3_REG_IMMED) { 226 * the .g (global) variety have SSBO as first src and everything else
|
| /xsrc/external/mit/MesaLib/dist/src/gallium/drivers/r600/ |
| r600_query.c | 1616 struct pipe_shader_buffer ssbo[3]; local 1655 ssbo[1].buffer = tmp_buffer; 1656 ssbo[1].buffer_offset = tmp_buffer_offset; 1657 ssbo[1].buffer_size = 16; 1659 ssbo[2] = ssbo[1]; 1714 ssbo[0].buffer = &qbuf->buf->b.b; 1715 ssbo[0].buffer_offset = params.start_offset & ~0xff; 1716 ssbo[0].buffer_size = qbuf->results_end - ssbo[0].buffer_offset [all...] |
| /xsrc/external/mit/MesaLib.old/dist/src/gallium/drivers/r600/ |
| r600_query.c | 1618 struct pipe_shader_buffer ssbo[3]; local 1657 ssbo[1].buffer = tmp_buffer; 1658 ssbo[1].buffer_offset = tmp_buffer_offset; 1659 ssbo[1].buffer_size = 16; 1661 ssbo[2] = ssbo[1]; 1716 ssbo[0].buffer = &qbuf->buf->b.b; 1717 ssbo[0].buffer_offset = params.start_offset & ~0xff; 1718 ssbo[0].buffer_size = qbuf->results_end - ssbo[0].buffer_offset [all...] |
| /xsrc/external/mit/MesaLib.old/dist/src/gallium/drivers/radeonsi/ |
| si_query.c | 1464 struct pipe_shader_buffer ssbo[3]; local 1501 ssbo[1].buffer = tmp_buffer; 1502 ssbo[1].buffer_offset = tmp_buffer_offset; 1503 ssbo[1].buffer_size = 16; 1505 ssbo[2] = ssbo[1]; 1562 ssbo[0].buffer = &qbuf->buf->b.b; 1563 ssbo[0].buffer_offset = params.start_offset; 1564 ssbo[0].buffer_size = qbuf->results_end - params.start_offset; 1567 ssbo[2].buffer = resource [all...] |
| /xsrc/external/mit/MesaLib/dist/src/compiler/glsl/ |
| ir.h | 329 ir_var_shader_storage, /**< Variable declared as an ssbo. */ 1137 ir_intrinsic_ssbo_store = MAKE_INTRINSIC_FOR_TYPE(store, ssbo), 1138 ir_intrinsic_ssbo_atomic_add = MAKE_INTRINSIC_FOR_TYPE(atomic_add, ssbo), 1139 ir_intrinsic_ssbo_atomic_and = MAKE_INTRINSIC_FOR_TYPE(atomic_and, ssbo), 1140 ir_intrinsic_ssbo_atomic_or = MAKE_INTRINSIC_FOR_TYPE(atomic_or, ssbo), 1141 ir_intrinsic_ssbo_atomic_xor = MAKE_INTRINSIC_FOR_TYPE(atomic_xor, ssbo), 1142 ir_intrinsic_ssbo_atomic_min = MAKE_INTRINSIC_FOR_TYPE(atomic_min, ssbo), 1143 ir_intrinsic_ssbo_atomic_max = MAKE_INTRINSIC_FOR_TYPE(atomic_max, ssbo), 1144 ir_intrinsic_ssbo_atomic_exchange = MAKE_INTRINSIC_FOR_TYPE(atomic_exchange, ssbo), 1145 ir_intrinsic_ssbo_atomic_comp_swap = MAKE_INTRINSIC_FOR_TYPE(atomic_comp_swap, ssbo), [all...] |
| /xsrc/external/mit/MesaLib.old/dist/src/compiler/glsl/ |
| ir.h | 326 ir_var_shader_storage, /**< Variable declared as an ssbo. */ 1111 ir_intrinsic_ssbo_store = MAKE_INTRINSIC_FOR_TYPE(store, ssbo), 1112 ir_intrinsic_ssbo_atomic_add = MAKE_INTRINSIC_FOR_TYPE(atomic_add, ssbo), 1113 ir_intrinsic_ssbo_atomic_and = MAKE_INTRINSIC_FOR_TYPE(atomic_and, ssbo), 1114 ir_intrinsic_ssbo_atomic_or = MAKE_INTRINSIC_FOR_TYPE(atomic_or, ssbo), 1115 ir_intrinsic_ssbo_atomic_xor = MAKE_INTRINSIC_FOR_TYPE(atomic_xor, ssbo), 1116 ir_intrinsic_ssbo_atomic_min = MAKE_INTRINSIC_FOR_TYPE(atomic_min, ssbo), 1117 ir_intrinsic_ssbo_atomic_max = MAKE_INTRINSIC_FOR_TYPE(atomic_max, ssbo), 1118 ir_intrinsic_ssbo_atomic_exchange = MAKE_INTRINSIC_FOR_TYPE(atomic_exchange, ssbo), 1119 ir_intrinsic_ssbo_atomic_comp_swap = MAKE_INTRINSIC_FOR_TYPE(atomic_comp_swap, ssbo), [all...] |
| /xsrc/external/mit/MesaLib/dist/src/broadcom/vulkan/ |
| v3dv_uniforms.c | 64 struct v3dv_bo *ssbo[MAX_TOTAL_STORAGE_BUFFERS]; member in struct:buffer_bo_list 298 buffer_bos->ssbo[index] = descriptor->buffer->mem->bo; 595 if (buffer_bos.ssbo[i]) 596 v3dv_job_add_bo(job, buffer_bos.ssbo[i]);
|
| /xsrc/external/mit/MesaLib/dist/src/gallium/drivers/v3d/ |
| v3d_uniforms.c | 346 &v3d->ssbo[stage].sb[data]; 356 v3d->ssbo[stage].sb[data].buffer_size);
|
| v3dx_draw.c | 198 u_foreach_bit(i, v3d->ssbo[s].enabled_mask) { 199 struct pipe_shader_buffer *sb = &v3d->ssbo[s].sb[i]; 287 u_foreach_bit(i, v3d->ssbo[s].enabled_mask) { 288 struct pipe_shader_buffer *sb = &v3d->ssbo[s].sb[i]; 1026 u_foreach_bit(i, v3d->ssbo[s].enabled_mask) { 1028 v3d->ssbo[s].sb[i].buffer); 1468 u_foreach_bit(i, v3d->ssbo[PIPE_SHADER_COMPUTE].enabled_mask) { 1470 v3d->ssbo[PIPE_SHADER_COMPUTE].sb[i].buffer);
|
| /xsrc/external/mit/MesaLib.old/dist/src/gallium/drivers/v3d/ |
| v3d_uniforms.c | 333 &v3d->ssbo[stage].sb[data]; 343 v3d->ssbo[stage].sb[data].buffer_size);
|
| /xsrc/external/mit/MesaLib/dist/src/gallium/drivers/panfrost/ |
| pan_context.h | 189 struct pipe_shader_buffer ssbo[PIPE_SHADER_TYPES][PIPE_MAX_SHADER_BUFFERS]; member in struct:panfrost_context
|
| /xsrc/external/mit/MesaLib/dist/src/gallium/drivers/iris/ |
| iris_resolve.c | 398 struct pipe_shader_buffer *ssbo = &shs->ssbo[i]; local 399 struct iris_resource *res = (void *)ssbo->buffer;
|
| /xsrc/external/mit/MesaLib/dist/src/gallium/drivers/zink/ |
| zink_context.c | 1164 struct pipe_shader_buffer *ssbo = &ctx->ssbos[p_stage][start_slot + i]; local 1165 struct zink_resource *res = ssbo->buffer ? zink_resource(ssbo->buffer) : NULL; 1179 pipe_resource_reference(&ssbo->buffer, &new_res->base.b); 1181 ssbo->buffer_offset = buffers[i].buffer_offset; 1182 ssbo->buffer_size = MIN2(buffers[i].buffer_size, new_res->base.b.width0 - ssbo->buffer_offset); 1183 util_range_add(&new_res->base.b, &new_res->valid_buffer_range, ssbo->buffer_offset, 1184 ssbo->buffer_offset + ssbo->buffer_size) 3694 const struct pipe_shader_buffer *ssbo = &ctx->ssbos[shader][slot]; local 3807 struct pipe_shader_buffer *ssbo = &ctx->ssbos[shader][slot]; local [all...] |