ra: Use struct ra_class in the public API.
All these unsigned ints are awful to keep track of. Use pointers so we get some type checking. Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9437>
This commit is contained in:
@@ -517,28 +517,21 @@ vir_init_reg_sets(struct v3d_compiler *compiler)
|
||||
|
||||
for (int i = PHYS_INDEX;
|
||||
i < PHYS_INDEX + (PHYS_COUNT >> threads); i++) {
|
||||
ra_class_add_reg(compiler->regs,
|
||||
compiler->reg_class_phys_or_acc[threads], i);
|
||||
ra_class_add_reg(compiler->regs,
|
||||
compiler->reg_class_phys[threads], i);
|
||||
ra_class_add_reg(compiler->regs,
|
||||
compiler->reg_class_any[threads], i);
|
||||
ra_class_add_reg(compiler->reg_class_phys_or_acc[threads], i);
|
||||
ra_class_add_reg(compiler->reg_class_phys[threads], i);
|
||||
ra_class_add_reg(compiler->reg_class_any[threads], i);
|
||||
}
|
||||
|
||||
for (int i = ACC_INDEX + 0; i < ACC_INDEX + ACC_COUNT - 1; i++) {
|
||||
ra_class_add_reg(compiler->regs,
|
||||
compiler->reg_class_phys_or_acc[threads], i);
|
||||
ra_class_add_reg(compiler->regs,
|
||||
compiler->reg_class_any[threads], i);
|
||||
ra_class_add_reg(compiler->reg_class_phys_or_acc[threads], i);
|
||||
ra_class_add_reg(compiler->reg_class_any[threads], i);
|
||||
}
|
||||
/* r5 can only store a single 32-bit value, so not much can
|
||||
* use it.
|
||||
*/
|
||||
ra_class_add_reg(compiler->regs,
|
||||
compiler->reg_class_r5[threads],
|
||||
ra_class_add_reg(compiler->reg_class_r5[threads],
|
||||
ACC_INDEX + 5);
|
||||
ra_class_add_reg(compiler->regs,
|
||||
compiler->reg_class_any[threads],
|
||||
ra_class_add_reg(compiler->reg_class_any[threads],
|
||||
ACC_INDEX + 5);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user