aboutsummaryrefslogtreecommitdiffstats
path: root/src/freedreno/ir3/ir3.h
diff options
context:
space:
mode:
authorRob Clark <[email protected]>2019-02-23 11:14:32 -0500
committerRob Clark <[email protected]>2019-02-26 13:19:44 -0500
commitcb884d8ab210b4793eb55852b4f07642c71a99a5 (patch)
tree44c89a11ff1b83dc3c6b6b1b3e3f323dcd6ddf0b /src/freedreno/ir3/ir3.h
parent04c2520d91920725d91a7be6e415d6ab56aeeaab (diff)
freedreno/ir3: use nopN encoding when possible
Use the (nopN) encoding for slightly denser shaders.. this lets us fold nop instructions into the previous alu instruction in certain cases. Shouldn't change the # of cycles a shader takes to execute, but reduces the size. (ex: glmark2 refract goes from 168 to 116 instructions) Currently only enabled for a6xx, but I think we could enable this for a5xx and possibly a4xx. Signed-off-by: Rob Clark <[email protected]>
Diffstat (limited to 'src/freedreno/ir3/ir3.h')
-rw-r--r--src/freedreno/ir3/ir3.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/freedreno/ir3/ir3.h b/src/freedreno/ir3/ir3.h
index 36d645f0b50..27a52c54ad4 100644
--- a/src/freedreno/ir3/ir3.h
+++ b/src/freedreno/ir3/ir3.h
@@ -212,7 +212,8 @@ struct ir3_instruction {
IR3_INSTR_MARK = 0x1000,
IR3_INSTR_UNUSED= 0x2000,
} flags;
- int repeat;
+ uint8_t repeat;
+ uint8_t nop;
#ifdef DEBUG
unsigned regs_max;
#endif