mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-17 07:00:20 +01:00
freedreno/computerator: C++ proofing
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22148>
This commit is contained in:
parent
5d2ddce99f
commit
6826a0ab14
4 changed files with 31 additions and 24 deletions
|
|
@ -164,7 +164,8 @@ emit_const(struct fd_ringbuffer *ring, struct kernel *kernel, uint32_t constid,
|
|||
assert((constid % 4) == 0);
|
||||
|
||||
/* Overwrite appropriate entries with buffer addresses */
|
||||
struct fd_bo **replacements = calloc(sizedwords, sizeof(struct fd_bo *));
|
||||
struct fd_bo **replacements =
|
||||
(struct fd_bo **)calloc(sizedwords, sizeof(struct fd_bo *));
|
||||
for (int i = 0; i < MAX_BUFS; i++) {
|
||||
if (kernel->buf_addr_regs[i] != INVALID_REG) {
|
||||
int idx = kernel->buf_addr_regs[i];
|
||||
|
|
@ -278,7 +279,8 @@ a4xx_emit_grid(struct kernel *kernel, uint32_t grid[3],
|
|||
struct fd_submit *submit)
|
||||
{
|
||||
struct fd_ringbuffer *ring = fd_submit_new_ringbuffer(
|
||||
submit, 0, FD_RINGBUFFER_PRIMARY | FD_RINGBUFFER_GROWABLE);
|
||||
submit, 0,
|
||||
(enum fd_ringbuffer_flags)(FD_RINGBUFFER_PRIMARY | FD_RINGBUFFER_GROWABLE));
|
||||
|
||||
cs_program_emit(ring, kernel);
|
||||
cs_const_emit(ring, kernel, grid);
|
||||
|
|
@ -333,7 +335,8 @@ a4xx_emit_grid(struct kernel *kernel, uint32_t grid[3],
|
|||
struct backend *
|
||||
a4xx_init(struct fd_device *dev, const struct fd_dev_id *dev_id)
|
||||
{
|
||||
struct a4xx_backend *a4xx_backend = calloc(1, sizeof(*a4xx_backend));
|
||||
struct a4xx_backend *a4xx_backend =
|
||||
(struct a4xx_backend *)calloc(1, sizeof(*a4xx_backend));
|
||||
|
||||
a4xx_backend->base = (struct backend){
|
||||
.assemble = a4xx_assemble,
|
||||
|
|
@ -341,8 +344,8 @@ a4xx_init(struct fd_device *dev, const struct fd_dev_id *dev_id)
|
|||
.emit_grid = a4xx_emit_grid,
|
||||
};
|
||||
|
||||
a4xx_backend->compiler = ir3_compiler_create(dev, dev_id,
|
||||
&(struct ir3_compiler_options) {});
|
||||
struct ir3_compiler_options compiler_options = {};
|
||||
a4xx_backend->compiler = ir3_compiler_create(dev, dev_id, &compiler_options);
|
||||
a4xx_backend->dev = dev;
|
||||
|
||||
return &a4xx_backend->base;
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@ cs_ibo_emit(struct fd_ringbuffer *ring, struct fd_submit *submit,
|
|||
unsigned width = sz & MASK(15);
|
||||
unsigned height = sz >> 15;
|
||||
|
||||
OUT_RING(state, A6XX_TEX_CONST_0_FMT(FMT6_32_UINT) | A6XX_TEX_CONST_0_TILE_MODE(0));
|
||||
OUT_RING(state, A6XX_TEX_CONST_0_FMT(FMT6_32_UINT) | A6XX_TEX_CONST_0_TILE_MODE(TILE6_LINEAR));
|
||||
OUT_RING(state, A6XX_TEX_CONST_1_WIDTH(width) | A6XX_TEX_CONST_1_HEIGHT(height));
|
||||
OUT_RING(state, A6XX_TEX_CONST_2_PITCH(0) |
|
||||
A6XX_TEX_CONST_2_STRUCTSIZETEXELS(1) |
|
||||
|
|
@ -402,7 +402,8 @@ a6xx_emit_grid(struct kernel *kernel, uint32_t grid[3],
|
|||
struct ir3_kernel *ir3_kernel = to_ir3_kernel(kernel);
|
||||
struct a6xx_backend *a6xx_backend = to_a6xx_backend(ir3_kernel->backend);
|
||||
struct fd_ringbuffer *ring = fd_submit_new_ringbuffer(
|
||||
submit, 0, FD_RINGBUFFER_PRIMARY | FD_RINGBUFFER_GROWABLE);
|
||||
submit, 0,
|
||||
(enum fd_ringbuffer_flags)(FD_RINGBUFFER_PRIMARY | FD_RINGBUFFER_GROWABLE));
|
||||
|
||||
cs_program_emit(ring, kernel);
|
||||
cs_const_emit(ring, kernel, grid);
|
||||
|
|
@ -519,7 +520,8 @@ a6xx_read_perfcntrs(struct backend *b, uint64_t *results)
|
|||
struct a6xx_backend *a6xx_backend = to_a6xx_backend(b);
|
||||
|
||||
fd_bo_cpu_prep(a6xx_backend->query_mem, NULL, FD_BO_PREP_READ);
|
||||
struct fd6_query_sample *samples = fd_bo_map(a6xx_backend->query_mem);
|
||||
struct fd6_query_sample *samples =
|
||||
(struct fd6_query_sample *)fd_bo_map(a6xx_backend->query_mem);
|
||||
|
||||
for (unsigned i = 0; i < a6xx_backend->num_perfcntrs; i++) {
|
||||
results[i] = samples[i].result;
|
||||
|
|
@ -529,7 +531,8 @@ a6xx_read_perfcntrs(struct backend *b, uint64_t *results)
|
|||
struct backend *
|
||||
a6xx_init(struct fd_device *dev, const struct fd_dev_id *dev_id)
|
||||
{
|
||||
struct a6xx_backend *a6xx_backend = calloc(1, sizeof(*a6xx_backend));
|
||||
struct a6xx_backend *a6xx_backend =
|
||||
(struct a6xx_backend *)calloc(1, sizeof(*a6xx_backend));
|
||||
|
||||
a6xx_backend->base = (struct backend){
|
||||
.assemble = a6xx_assemble,
|
||||
|
|
@ -539,8 +542,8 @@ a6xx_init(struct fd_device *dev, const struct fd_dev_id *dev_id)
|
|||
.read_perfcntrs = a6xx_read_perfcntrs,
|
||||
};
|
||||
|
||||
a6xx_backend->compiler = ir3_compiler_create(dev, dev_id,
|
||||
&(struct ir3_compiler_options){});
|
||||
struct ir3_compiler_options compiler_options = {};
|
||||
a6xx_backend->compiler = ir3_compiler_create(dev, dev_id, &compiler_options);
|
||||
a6xx_backend->dev = dev;
|
||||
|
||||
a6xx_backend->info = fd_dev_info(dev_id);
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@
|
|||
struct ir3_kernel *
|
||||
ir3_asm_assemble(struct ir3_compiler *c, FILE *in)
|
||||
{
|
||||
struct ir3_kernel *kernel = calloc(1, sizeof(*kernel));
|
||||
struct ir3_kernel *kernel = (struct ir3_kernel *)calloc(1, sizeof(*kernel));
|
||||
struct ir3_shader *shader = ir3_parse_asm(c, &kernel->info, in);
|
||||
if (!shader)
|
||||
errx(-1, "assembler failed");
|
||||
|
|
@ -62,5 +62,5 @@ ir3_asm_assemble(struct ir3_compiler *c, FILE *in)
|
|||
void
|
||||
ir3_asm_disassemble(struct ir3_kernel *k, FILE *out)
|
||||
{
|
||||
ir3_shader_disasm(k->v, k->bin, out);
|
||||
ir3_shader_disasm(k->v, (uint32_t *)k->bin, out);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -175,7 +175,7 @@ parse_perfcntrs(const struct fd_dev_id *dev_id, const char *perfcntrstr,
|
|||
unsigned cnt = 0;
|
||||
|
||||
groups = fd_perfcntrs(dev_id, &num_groups);
|
||||
enabled_counters = calloc(num_groups, sizeof(enabled_counters[0]));
|
||||
enabled_counters = (uint32_t *) calloc(num_groups, sizeof(enabled_counters[0]));
|
||||
|
||||
cnames = strdup(perfcntrstr);
|
||||
while ((s = strstr(cnames, ","))) {
|
||||
|
|
@ -183,12 +183,13 @@ parse_perfcntrs(const struct fd_dev_id *dev_id, const char *perfcntrstr,
|
|||
s[0] = '\0';
|
||||
cnames = &s[1];
|
||||
|
||||
counters = realloc(counters, ++cnt * sizeof(counters[0]));
|
||||
counters =
|
||||
(struct perfcntr *)realloc(counters, ++cnt * sizeof(counters[0]));
|
||||
setup_counter(name, &counters[cnt - 1]);
|
||||
}
|
||||
|
||||
char *name = cnames;
|
||||
counters = realloc(counters, ++cnt * sizeof(counters[0]));
|
||||
counters = (struct perfcntr *)realloc(counters, ++cnt * sizeof(counters[0]));
|
||||
setup_counter(name, &counters[cnt - 1]);
|
||||
|
||||
*num_perfcntrs = cnt;
|
||||
|
|
@ -222,17 +223,21 @@ main(int argc, char **argv)
|
|||
break;
|
||||
case 'g':
|
||||
ret = sscanf(optarg, "%u,%u,%u", &grid[0], &grid[1], &grid[2]);
|
||||
if (ret != 3)
|
||||
goto usage;
|
||||
if (ret != 3) {
|
||||
usage(argv[0]);
|
||||
return -1;
|
||||
}
|
||||
break;
|
||||
case 'h':
|
||||
goto usage;
|
||||
usage(argv[0]);
|
||||
return -1;
|
||||
case 'p':
|
||||
perfcntrstr = optarg;
|
||||
break;
|
||||
default:
|
||||
printf("unrecognized arg: %c\n", opt);
|
||||
goto usage;
|
||||
usage(argv[0]);
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -305,8 +310,4 @@ main(int argc, char **argv)
|
|||
}
|
||||
|
||||
return 0;
|
||||
|
||||
usage:
|
||||
usage(argv[0]);
|
||||
return -1;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue