summaryrefslogtreecommitdiff
path: root/lib/rendercopy_gen8.c
diff options
context:
space:
mode:
authorDamien Lespiau <damien.lespiau@intel.com>2013-11-22 18:11:03 +0000
committerDamien Lespiau <damien.lespiau@intel.com>2013-11-28 14:33:37 +0000
commite824fdd0339f5a649aaf54a74694836f55bb0e9c (patch)
tree88575333c32ef434eb32617bd495c1cb7b9adbfc /lib/rendercopy_gen8.c
parentffff68f08a63cb27fb558b54c7240b9bc4571f96 (diff)
rendercopy/bdw: Fix the various 3DSTATE_CONSTANT_* instruction length
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Diffstat (limited to 'lib/rendercopy_gen8.c')
-rw-r--r--lib/rendercopy_gen8.c48
1 files changed, 31 insertions, 17 deletions
diff --git a/lib/rendercopy_gen8.c b/lib/rendercopy_gen8.c
index 30f5ff50..4f748f36 100644
--- a/lib/rendercopy_gen8.c
+++ b/lib/rendercopy_gen8.c
@@ -557,9 +557,7 @@ gen8_emit_cc(struct intel_batchbuffer *batch) {
static void
gen8_emit_multisample(struct intel_batchbuffer *batch) {
- OUT_BATCH(GEN8_3DSTATE_MULTISAMPLE | 2);
- OUT_BATCH(0);
- OUT_BATCH(0);
+ OUT_BATCH(GEN8_3DSTATE_MULTISAMPLE);
OUT_BATCH(0);
OUT_BATCH(GEN6_3DSTATE_SAMPLE_MASK);
@@ -567,14 +565,18 @@ gen8_emit_multisample(struct intel_batchbuffer *batch) {
}
static void
-gen7_emit_vs(struct intel_batchbuffer *batch) {
+gen8_emit_vs(struct intel_batchbuffer *batch) {
OUT_BATCH(GEN7_3DSTATE_BINDING_TABLE_POINTERS_VS);
OUT_BATCH(0);
OUT_BATCH(GEN7_3DSTATE_SAMPLER_STATE_POINTERS_VS);
OUT_BATCH(0);
- OUT_BATCH(GEN6_3DSTATE_CONSTANT_VS | (7-2));
+ OUT_BATCH(GEN6_3DSTATE_CONSTANT_VS | (11 - 2));
+ OUT_BATCH(0);
+ OUT_BATCH(0);
+ OUT_BATCH(0);
+ OUT_BATCH(0);
OUT_BATCH(0);
OUT_BATCH(0);
OUT_BATCH(0);
@@ -591,8 +593,12 @@ gen7_emit_vs(struct intel_batchbuffer *batch) {
}
static void
-gen7_emit_hs(struct intel_batchbuffer *batch) {
- OUT_BATCH(GEN7_3DSTATE_CONSTANT_HS | (7-2));
+gen8_emit_hs(struct intel_batchbuffer *batch) {
+ OUT_BATCH(GEN7_3DSTATE_CONSTANT_HS | (11 - 2));
+ OUT_BATCH(0);
+ OUT_BATCH(0);
+ OUT_BATCH(0);
+ OUT_BATCH(0);
OUT_BATCH(0);
OUT_BATCH(0);
OUT_BATCH(0);
@@ -616,8 +622,12 @@ gen7_emit_hs(struct intel_batchbuffer *batch) {
}
static void
-gen7_emit_gs(struct intel_batchbuffer *batch) {
- OUT_BATCH(GEN7_3DSTATE_CONSTANT_GS | (7-2));
+gen8_emit_gs(struct intel_batchbuffer *batch) {
+ OUT_BATCH(GEN7_3DSTATE_CONSTANT_GS | (11 - 2));
+ OUT_BATCH(0);
+ OUT_BATCH(0);
+ OUT_BATCH(0);
+ OUT_BATCH(0);
OUT_BATCH(0);
OUT_BATCH(0);
OUT_BATCH(0);
@@ -641,8 +651,12 @@ gen7_emit_gs(struct intel_batchbuffer *batch) {
}
static void
-gen7_emit_ds(struct intel_batchbuffer *batch) {
- OUT_BATCH(GEN7_3DSTATE_CONSTANT_DS | (7-2));
+gen8_emit_ds(struct intel_batchbuffer *batch) {
+ OUT_BATCH(GEN7_3DSTATE_CONSTANT_DS | (11 - 2));
+ OUT_BATCH(0);
+ OUT_BATCH(0);
+ OUT_BATCH(0);
+ OUT_BATCH(0);
OUT_BATCH(0);
OUT_BATCH(0);
OUT_BATCH(0);
@@ -665,15 +679,15 @@ gen7_emit_ds(struct intel_batchbuffer *batch) {
}
static void
-gen7_emit_null_state(struct intel_batchbuffer *batch) {
- gen7_emit_hs(batch);
+gen8_emit_null_state(struct intel_batchbuffer *batch) {
+ gen8_emit_hs(batch);
OUT_BATCH(GEN7_3DSTATE_TE | (4-2));
OUT_BATCH(0);
OUT_BATCH(0);
OUT_BATCH(0);
- gen7_emit_gs(batch);
- gen7_emit_ds(batch);
- gen7_emit_vs(batch);
+ gen8_emit_gs(batch);
+ gen8_emit_ds(batch);
+ gen8_emit_vs(batch);
}
static void
@@ -907,7 +921,7 @@ void gen8_render_copyfunc(struct intel_batchbuffer *batch,
gen8_emit_multisample(batch);
- gen7_emit_null_state(batch);
+ gen8_emit_null_state(batch);
OUT_BATCH(GEN7_3DSTATE_STREAMOUT | 1);
OUT_BATCH(0);