mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-06-07 06:08:16 +02:00
vtn: Fix vtn_mediump_downconvert_value() for transposed matrices
We forgot to set the actual value. This meant that whenever we actually needed to use the transposed matrix we would immediately segfault. Cc: mesa-stable Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40017>
This commit is contained in:
parent
b596611749
commit
048d2a0c68
1 changed files with 5 additions and 5 deletions
|
|
@ -141,11 +141,12 @@ vtn_mediump_downconvert_value(struct vtn_builder *b, struct vtn_ssa_value *src)
|
|||
if (!src)
|
||||
return src;
|
||||
|
||||
struct vtn_ssa_value *srcmp = vtn_create_ssa_value(b, src->type);
|
||||
|
||||
if (src->transposed) {
|
||||
srcmp->transposed = vtn_mediump_downconvert_value(b, src->transposed);
|
||||
struct vtn_ssa_value *transposed =
|
||||
vtn_mediump_downconvert_value(b, src->transposed);
|
||||
return vtn_ssa_transpose(b, transposed);
|
||||
} else {
|
||||
struct vtn_ssa_value *srcmp = vtn_create_ssa_value(b, src->type);
|
||||
enum glsl_base_type base_type = glsl_get_base_type(src->type);
|
||||
|
||||
if (glsl_type_is_vector_or_scalar(src->type)) {
|
||||
|
|
@ -155,9 +156,8 @@ vtn_mediump_downconvert_value(struct vtn_builder *b, struct vtn_ssa_value *src)
|
|||
for (int i = 0; i < glsl_get_matrix_columns(src->type); i++)
|
||||
srcmp->elems[i]->def = vtn_mediump_downconvert(b, base_type, src->elems[i]->def);
|
||||
}
|
||||
return srcmp;
|
||||
}
|
||||
|
||||
return srcmp;
|
||||
}
|
||||
|
||||
static struct vtn_ssa_value *
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue