[Mesa-dev] [PATCH 2/2] freedreno: take reg->num out of union in ir3_register

Hyunjun Ko zzoon at igalia.com
Thu Oct 25 08:26:19 UTC 2018


To avoid wrong result when identifying the type of register.
Ie. If the reg is an array, it might be identified as address or
predicate register.
---
 src/gallium/drivers/freedreno/ir3/ir3.h | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/src/gallium/drivers/freedreno/ir3/ir3.h b/src/gallium/drivers/freedreno/ir3/ir3.h
index 3055c10f1d..1f47cef7e0 100644
--- a/src/gallium/drivers/freedreno/ir3/ir3.h
+++ b/src/gallium/drivers/freedreno/ir3/ir3.h
@@ -95,12 +95,13 @@ struct ir3_register {
 		IR3_REG_ARRAY  = 0x8000,
 
 	} flags;
+
+	/* normal registers:
+	 * the component is in the low two bits of the reg #, so
+	 * rN.x becomes: (N << 2) | x
+	 */
+	int   num;
 	union {
-		/* normal registers:
-		 * the component is in the low two bits of the reg #, so
-		 * rN.x becomes: (N << 2) | x
-		 */
-		int   num;
 		/* immediate: */
 		int32_t  iim_val;
 		uint32_t uim_val;
-- 
2.17.1



More information about the mesa-dev mailing list