[Intel-gfx] [PATCH 10/90] assembler: Rename dp_gen7 to gen7_dp and sync it with Mesa's
Damien Lespiau
damien.lespiau at intel.com
Mon Feb 4 16:27:05 CET 2013
The purpose of this commit is to synchronize opcode definitions across
the gen4asm assembler and mesa.
I had to drop how mesa splits msg_control as the current assembly
language gives access the the whole msg_control field.
Recompiling the xorg and the intel driver of libva shaders doesn't show
any difference in the assembly created.
Signed-off-by: Damien Lespiau <damien.lespiau at intel.com>
---
assembler/brw_structs.h | 31 ++++++++++++++++++++-----------
assembler/gram.y | 26 +++++++++++++-------------
2 files changed, 33 insertions(+), 24 deletions(-)
diff --git a/assembler/brw_structs.h b/assembler/brw_structs.h
index e571052..cfb3028 100644
--- a/assembler/brw_structs.h
+++ b/assembler/brw_structs.h
@@ -1536,17 +1536,26 @@ struct brw_instruction
GLuint end_of_thread:1;
} gen6_dp;
- struct {
- GLuint binding_table_index:8;
- GLuint msg_control:6;
- GLuint msg_type:4;
- GLuint category:1;
- GLuint header_present:1;
- GLuint response_length:5;
- GLuint msg_length:4;
- GLuint pad1:2;
- GLuint end_of_thread:1;
- } dp_gen7;
+ /**
+ * Message for any of the Gen7 Data Port caches.
+ *
+ * Most fields are defined in BSpec volume 5c.2 Data Port / Messages /
+ * Data Port Messages / Message Descriptor. Once again, "Slot Group
+ * Select" and "Last Render Target" are part of the 6-bit message
+ * control for Render Target Writes.
+ */
+ struct {
+ GLuint binding_table_index:8;
+ GLuint msg_control:6;
+ GLuint msg_type:4;
+ GLuint category:1;
+ GLuint header_present:1;
+ GLuint response_length:5;
+ GLuint msg_length:4;
+ GLuint pad2:2;
+ GLuint end_of_thread:1;
+ } gen7_dp;
+ /** @} */
struct {
GLuint opcode:1;
diff --git a/assembler/gram.y b/assembler/gram.y
index df26393..1295d60 100644
--- a/assembler/gram.y
+++ b/assembler/gram.y
@@ -1253,9 +1253,9 @@ msgtarget: NULL_TOKEN
$$.bits2.send_gen5.sfid =
BRW_MESSAGE_TARGET_DP_SC;
$$.bits3.generic_gen5.header_present = 1;
- $$.bits3.dp_gen7.binding_table_index = $3;
- $$.bits3.dp_gen7.msg_control = $7;
- $$.bits3.dp_gen7.msg_type = $9;
+ $$.bits3.gen7_dp.binding_table_index = $3;
+ $$.bits3.gen7_dp.msg_control = $7;
+ $$.bits3.gen7_dp.msg_type = $9;
} else if (IS_GENx(6)) {
$$.bits2.send_gen5.sfid =
BRW_MESSAGE_TARGET_DP_SC;
@@ -1287,9 +1287,9 @@ msgtarget: NULL_TOKEN
$$.bits2.send_gen5.sfid =
BRW_MESSAGE_TARGET_DP_RC;
$$.bits3.generic_gen5.header_present = 1;
- $$.bits3.dp_gen7.binding_table_index = $3;
- $$.bits3.dp_gen7.msg_control = $5;
- $$.bits3.dp_gen7.msg_type = $7;
+ $$.bits3.gen7_dp.binding_table_index = $3;
+ $$.bits3.gen7_dp.msg_control = $5;
+ $$.bits3.gen7_dp.msg_type = $7;
} else if (IS_GENx(6)) {
$$.bits2.send_gen5.sfid =
BRW_MESSAGE_TARGET_DP_RC;
@@ -1332,9 +1332,9 @@ msgtarget: NULL_TOKEN
$$.bits2.send_gen5.sfid =
BRW_MESSAGE_TARGET_DP_RC;
$$.bits3.generic_gen5.header_present = ($11 != 0);
- $$.bits3.dp_gen7.binding_table_index = $3;
- $$.bits3.dp_gen7.msg_control = $5;
- $$.bits3.dp_gen7.msg_type = $7;
+ $$.bits3.gen7_dp.binding_table_index = $3;
+ $$.bits3.gen7_dp.msg_control = $5;
+ $$.bits3.gen7_dp.msg_type = $7;
} else if (IS_GENx(6)) {
$$.bits2.send_gen5.sfid =
BRW_MESSAGE_TARGET_DP_RC;
@@ -1459,10 +1459,10 @@ msgtarget: NULL_TOKEN
YYERROR;
}
- $$.bits3.dp_gen7.category = $11;
- $$.bits3.dp_gen7.binding_table_index = $9;
- $$.bits3.dp_gen7.msg_control = $7;
- $$.bits3.dp_gen7.msg_type = $5;
+ $$.bits3.gen7_dp.category = $11;
+ $$.bits3.gen7_dp.binding_table_index = $9;
+ $$.bits3.gen7_dp.msg_control = $7;
+ $$.bits3.gen7_dp.msg_type = $5;
} else if (IS_GENx(6)) {
if ($3 != BRW_MESSAGE_TARGET_DP_SC &&
$3 != BRW_MESSAGE_TARGET_DP_RC &&
--
1.7.7.5
More information about the Intel-gfx
mailing list