Mesa (master): freedreno/ir3: take reg->num out of union in ir3_register
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Thu Oct 25 23:52:29 UTC 2018
Module: Mesa
Branch: master
Commit: 703271c22a9b3ac85e9aef38be288e4ce9ba5e3a
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=703271c22a9b3ac85e9aef38be288e4ce9ba5e3a
Author: Hyunjun Ko <zzoon at igalia.com>
Date: Thu Oct 25 17:26:19 2018 +0900
freedreno/ir3: take reg->num out of union in ir3_register
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.
Fixes: dEQP-GLES31.functional.ssbo.layout.random.arrays_of_arrays.6
Signed-off-by: Rob Clark <robdclark at gmail.com>
---
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;
More information about the mesa-commit
mailing list