summaryrefslogtreecommitdiffstats
path: root/source
diff options
context:
space:
mode:
authorArielG-NV <159081215+ArielG-NV@users.noreply.github.com>2024-06-27 07:53:00 -0400
committerGitHub <noreply@github.com>2024-06-27 04:53:00 -0700
commit4dd41de7558b2b3b7fe99b4b624dc91969031abe (patch)
treeb3f3ccacdd7e4d0afb5a7c5f2709a25f51babd6e /source
parentde454b0e84ae160678698609b4754242159ae566 (diff)
Remove returned-array-legalization pass for metal (#4478)
* disable return array optimization pass for metal targets fixes: #4468
Diffstat (limited to 'source')
-rw-r--r--source/slang/slang-emit.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/source/slang/slang-emit.cpp b/source/slang/slang-emit.cpp
index bb6bab0ab..d8f0686d5 100644
--- a/source/slang/slang-emit.cpp
+++ b/source/slang/slang-emit.cpp
@@ -1269,7 +1269,8 @@ Result linkAndOptimizeIR(
// Rewrite functions that return arrays to return them via `out` parameter,
// since our target languages doesn't allow returning arrays.
- legalizeArrayReturnType(irModule);
+ if(!isMetalTarget(targetRequest))
+ legalizeArrayReturnType(irModule);
if (isKhronosTarget(targetRequest) || target == CodeGenTarget::HLSL)
{