diff options
author | Eric Anholt <[email protected]> | 2015-07-31 11:46:56 -0700 |
---|---|---|
committer | Eric Anholt <[email protected]> | 2015-08-04 17:19:01 -0700 |
commit | cc8fb2904673588d31b660dbfaf692615b5202dd (patch) | |
tree | 9eb8039f76db45555999e01939ce7a932c5398a6 /src/gallium/drivers/vc4/vc4_context.h | |
parent | 9b403c0756ecf806a8ff768bd73a4cbf42986bdb (diff) |
vc4: Make r4-writes implicitly move to a temp, and allocate temps to r4.
Previously, SFU values always moved to a temporary, and TLB color reads
and texture reads always lived in r4. Instead, we can have these results
just be normal temporaries, and the register allocator can leave the
values in r4 when they don't interfere with anything else using r4.
shader-db results:
total instructions in shared programs: 100809 -> 100040 (-0.76%)
instructions in affected programs: 42383 -> 41614 (-1.81%)
Diffstat (limited to 'src/gallium/drivers/vc4/vc4_context.h')
-rw-r--r-- | src/gallium/drivers/vc4/vc4_context.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gallium/drivers/vc4/vc4_context.h b/src/gallium/drivers/vc4/vc4_context.h index 30fb285eefe..654c46f3c0d 100644 --- a/src/gallium/drivers/vc4/vc4_context.h +++ b/src/gallium/drivers/vc4/vc4_context.h @@ -270,6 +270,7 @@ struct vc4_context { struct ra_regs *regs; unsigned int reg_class_any; + unsigned int reg_class_r4_or_a; unsigned int reg_class_a; uint8_t prim_mode; |