Mesa (staging/20.0): glsl: inline functions with unsupported return type before converting to nir
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Tue Jun 9 18:01:50 UTC 2020
Module: Mesa
Branch: staging/20.0
Commit: 134dbf54166cdf4171cc221ba6d90a14ec75fa75
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=134dbf54166cdf4171cc221ba6d90a14ec75fa75
Author: Danylo Piliaiev <danylo.piliaiev at globallogic.com>
Date: Fri May 29 13:51:32 2020 +0300
glsl: inline functions with unsupported return type before converting to nir
glsl_to_nir doesn't expect non-vector/scalar return types in functions.
Fixes: 7e60d5a501f311fa5e7bca5335adc6013dc1aeb9
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3058
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3060
Signed-off-by: Danylo Piliaiev <danylo.piliaiev at globallogic.com>
Tested-by: Witold Baryluk <witold.baryluk at gmail.com>
Reviewed-by: Witold Baryluk <witold.baryluk at gmail.com>
Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5333>
(cherry picked from commit 9f1cf0e4915262c68e5fb8bd8e87fbd0af30dbe2)
---
.pick_status.json | 2 +-
src/compiler/glsl/glsl_to_nir.cpp | 6 ++++++
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/.pick_status.json b/.pick_status.json
index f390d2e4b5a..0f80b1f31e6 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -373,7 +373,7 @@
"description": "glsl: inline functions with unsupported return type before converting to nir",
"nominated": true,
"nomination_type": 1,
- "resolution": 0,
+ "resolution": 1,
"master_sha": null,
"because_sha": "7e60d5a501f311fa5e7bca5335adc6013dc1aeb9"
},
diff --git a/src/compiler/glsl/glsl_to_nir.cpp b/src/compiler/glsl/glsl_to_nir.cpp
index fdc14bfe507..cbfed2175fa 100644
--- a/src/compiler/glsl/glsl_to_nir.cpp
+++ b/src/compiler/glsl/glsl_to_nir.cpp
@@ -166,6 +166,12 @@ public:
}
}
+ if (!glsl_type_is_vector_or_scalar(ir->return_type) &&
+ !ir->return_type->is_void()) {
+ unsupported = true;
+ return visit_stop;
+ }
+
return visit_continue;
}
More information about the mesa-commit
mailing list