summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r600/r600_asm.h
diff options
context:
space:
mode:
authorVadim Girlin <[email protected]>2012-01-20 23:24:32 +0400
committerDave Airlie <[email protected]>2012-01-21 12:43:14 +0000
commitd649bf51ec787021f7872e2a4c09fb2188c0891b (patch)
treed9df04c73ee886d62da2fd28bd1286e766ce6a17 /src/gallium/drivers/r600/r600_asm.h
parent261dc72fe3ce969bb4592ac49280147cd72f4414 (diff)
r600g: improve kcache line sets handling v2
Add support for multiple kcache banks (constant buffers). Lock the required lines only. Allow up to 4 kcache line sets in the alu clause by using ALU_EXTENDED on eg+. Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/gallium/drivers/r600/r600_asm.h')
-rw-r--r--src/gallium/drivers/r600/r600_asm.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/gallium/drivers/r600/r600_asm.h b/src/gallium/drivers/r600/r600_asm.h
index 00f7e591ac3..a68b299c713 100644
--- a/src/gallium/drivers/r600/r600_asm.h
+++ b/src/gallium/drivers/r600/r600_asm.h
@@ -32,6 +32,7 @@ struct r600_bytecode_alu_src {
unsigned neg;
unsigned abs;
unsigned rel;
+ unsigned kc_bank;
uint32_t value;
};
@@ -144,8 +145,9 @@ struct r600_bytecode_cf {
unsigned cond;
unsigned pop_count;
unsigned cf_addr; /* control flow addr */
- struct r600_bytecode_kcache kcache[2];
+ struct r600_bytecode_kcache kcache[4];
unsigned r6xx_uses_waterfall;
+ unsigned eg_alu_extended;
struct list_head alu;
struct list_head tex;
struct list_head vtx;