freedreno/afuc: Fix printing preemptleave on a5xx
[mesa.git] / src / freedreno / ir3 / ir3.h
index 0a7ab7316435e71cd1a11aad1261c0095f9d3baa..cb42636f285c3096c68d8158b7c15fdce5d24752 100644 (file)
@@ -65,6 +65,9 @@ struct ir3_info {
        uint16_t sstall;
 
        uint16_t last_baryf;     /* instruction # of last varying fetch */
+
+       /* Number of instructions of a given category: */
+       uint16_t instrs_per_cat[8];
 };
 
 struct ir3_register {
@@ -1409,14 +1412,14 @@ create_uniform(struct ir3_block *block, unsigned n)
 }
 
 static inline struct ir3_instruction *
-create_uniform_indirect(struct ir3_block *block, int n,
+create_uniform_indirect(struct ir3_block *block, int n, type_t type,
                struct ir3_instruction *address)
 {
        struct ir3_instruction *mov;
 
        mov = ir3_instr_create(block, OPC_MOV);
-       mov->cat1.src_type = TYPE_U32;
-       mov->cat1.dst_type = TYPE_U32;
+       mov->cat1.src_type = type;
+       mov->cat1.dst_type = type;
        __ssa_dst(mov);
        ir3_reg_create(mov, 0, IR3_REG_CONST | IR3_REG_RELATIV)->array.offset = n;