summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r600/r700_asm.c
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2010-09-08 14:09:40 +1000
committerDave Airlie <airlied@redhat.com>2010-09-08 14:12:21 +1000
commitbf346f065c65e15e5757d5b1a14dbc6638051860 (patch)
treeeaa1e5bdec0cce3c5e38d4a7a218fa755a9ef8cb /src/gallium/drivers/r600/r700_asm.c
parent48e789d71e01b0a7185555735b4a26b1a53d0825 (diff)
r600g: add initial bank swizzle support.
this is ported from r600c mostly, bank swizzling is real messy and I don't think I got enough sleep last night to fully understand it.
Diffstat (limited to 'src/gallium/drivers/r600/r700_asm.c')
-rw-r--r--src/gallium/drivers/r600/r700_asm.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/gallium/drivers/r600/r700_asm.c b/src/gallium/drivers/r600/r700_asm.c
index aaeaff5963..7f7ce5a4ba 100644
--- a/src/gallium/drivers/r600/r700_asm.c
+++ b/src/gallium/drivers/r600/r700_asm.c
@@ -51,7 +51,7 @@ int r700_bc_alu_build(struct r600_bc *bc, struct r600_bc_alu *alu, unsigned id)
S_SQ_ALU_WORD1_OP3_SRC2_CHAN(alu->src[2].chan) |
S_SQ_ALU_WORD1_OP3_SRC2_NEG(alu->src[2].neg) |
S_SQ_ALU_WORD1_OP3_ALU_INST(alu->inst) |
- S_SQ_ALU_WORD1_BANK_SWIZZLE(0);
+ S_SQ_ALU_WORD1_BANK_SWIZZLE(alu->bank_swizzle);
} else {
bc->bytecode[id++] = S_SQ_ALU_WORD1_DST_GPR(alu->dst.sel) |
S_SQ_ALU_WORD1_DST_CHAN(alu->dst.chan) |
@@ -61,7 +61,7 @@ int r700_bc_alu_build(struct r600_bc *bc, struct r600_bc_alu *alu, unsigned id)
S_SQ_ALU_WORD1_OP2_SRC1_ABS(alu->src[1].abs) |
S_SQ_ALU_WORD1_OP2_WRITE_MASK(alu->dst.write) |
S_SQ_ALU_WORD1_OP2_ALU_INST(alu->inst) |
- S_SQ_ALU_WORD1_BANK_SWIZZLE(0) |
+ S_SQ_ALU_WORD1_BANK_SWIZZLE(alu->bank_swizzle) |
S_SQ_ALU_WORD1_OP2_UPDATE_EXECUTE_MASK(alu->predicate) |
S_SQ_ALU_WORD1_OP2_UPDATE_PRED(alu->predicate);
}