aboutsummaryrefslogtreecommitdiffstats
path: root/src/broadcom/compiler/v3d_compiler.h
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2018-07-20 14:27:09 -0700
committerEric Anholt <[email protected]>2018-07-23 10:21:43 -0700
commit6b73a97f84f86f4c3d3bbbbadf963c20b8e52b57 (patch)
tree6c8701d6c84c1478f7e829a08e5bb141777846e5 /src/broadcom/compiler/v3d_compiler.h
parent79e0f042bcd6a1956015cf332c2232ade2c2321f (diff)
v3d: Implement a small immediates optimization, based on VC4's.
We can do one per instruction, and we have to be careful not to overwrite raddr_b, but this greatly reduces the pressure on uniform loads (particularly around ldvpm/stvpm instructions). total instructions in shared programs: 90768 -> 88220 (-2.81%) instructions in affected programs: 82711 -> 80163 (-3.08%)
Diffstat (limited to 'src/broadcom/compiler/v3d_compiler.h')
-rw-r--r--src/broadcom/compiler/v3d_compiler.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/broadcom/compiler/v3d_compiler.h b/src/broadcom/compiler/v3d_compiler.h
index 9dc19248aa6..a02b5a6404a 100644
--- a/src/broadcom/compiler/v3d_compiler.h
+++ b/src/broadcom/compiler/v3d_compiler.h
@@ -115,6 +115,7 @@ static inline struct qreg vir_reg(enum qfile file, uint32_t index)
*/
struct qpu_reg {
bool magic;
+ bool smimm;
int index;
};