aboutsummaryrefslogtreecommitdiffstats
path: root/src/freedreno/ir3/ir3.h
diff options
context:
space:
mode:
authorConnor Abbott <[email protected]>2020-04-15 14:18:03 +0200
committerMarge Bot <[email protected]>2020-04-15 22:38:20 +0000
commitabcfb6437062f469335d27d5ef60ecf20272dc26 (patch)
treeb6c5ba91f6668837dc3d9447a5b952939dc647b3 /src/freedreno/ir3/ir3.h
parent2d489f76f48095799392a915dcedc074bbb5e52a (diff)
ir3: Fix LDC offset units
I had missed that LDC actually uses vec4 units for its offset. This means that we have to create a new instruction, and lower it in ir3_nir_lower_io_offsets, similar to the existing SSBO instructions. Unfortunately we can't assume that loads are always vec4-aligned, so we have to use the alignment information that NIR gives us. Unfortunately, it's currently woefully inadequate, and will have to be fixed to give us good codegen in the future. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4568>
Diffstat (limited to 'src/freedreno/ir3/ir3.h')
-rw-r--r--src/freedreno/ir3/ir3.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/freedreno/ir3/ir3.h b/src/freedreno/ir3/ir3.h
index 54d740e75db..351490aecf7 100644
--- a/src/freedreno/ir3/ir3.h
+++ b/src/freedreno/ir3/ir3.h
@@ -267,7 +267,7 @@ struct ir3_instruction {
int src_offset;
int dst_offset;
int iim_val : 3; /* for ldgb/stgb, # of components */
- unsigned d : 3;
+ unsigned d : 3; /* for ldc, component offset */
bool typed : 1;
unsigned base : 3;
} cat6;