diff options
| author | Darren Wihandi <65404740+fairywreath@users.noreply.github.com> | 2025-03-21 11:52:28 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-03-21 15:52:28 +0000 |
| commit | 844d8d2212d11f3d28a55c81f234c99db2c26250 (patch) | |
| tree | f541932dc6fca77f8b0f5ad869644a674d60fccf /source/slang/slang-type-layout.cpp | |
| parent | 16ac0efa3e1e834e3b12af8ac34cf47a6418bb34 (diff) | |
Emit errors for missing returns on unsupported targets (#6633)
* initial wip
* more WIP
* preserve old lower behavior
* remove unnecessary includes
* add test
* add no target case in test
* fix broken test
---------
Co-authored-by: Ellie Hermaszewska <ellieh@nvidia.com>
Diffstat (limited to 'source/slang/slang-type-layout.cpp')
| -rw-r--r-- | source/slang/slang-type-layout.cpp | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/source/slang/slang-type-layout.cpp b/source/slang/slang-type-layout.cpp index e6729ca85..63bcd1ba2 100644 --- a/source/slang/slang-type-layout.cpp +++ b/source/slang/slang-type-layout.cpp @@ -2508,9 +2508,9 @@ bool isMetalTarget(TargetRequest* targetReq) } } -bool isKhronosTarget(TargetRequest* targetReq) +bool isKhronosTarget(CodeGenTarget target) { - switch (targetReq->getTarget()) + switch (target) { default: return false; @@ -2522,6 +2522,11 @@ bool isKhronosTarget(TargetRequest* targetReq) } } +bool isKhronosTarget(TargetRequest* targetReq) +{ + return isKhronosTarget(targetReq->getTarget()); +} + bool isCPUTarget(TargetRequest* targetReq) { return ArtifactDescUtil::isCpuLikeTarget( @@ -2541,9 +2546,9 @@ bool isCUDATarget(TargetRequest* targetReq) } } -bool isWGPUTarget(TargetRequest* targetReq) +bool isWGPUTarget(CodeGenTarget target) { - switch (targetReq->getTarget()) + switch (target) { default: return false; @@ -2555,6 +2560,11 @@ bool isWGPUTarget(TargetRequest* targetReq) } } +bool isWGPUTarget(TargetRequest* targetReq) +{ + return isWGPUTarget(targetReq->getTarget()); +} + SourceLanguage getIntermediateSourceLanguageForTarget(TargetProgram* targetProgram) { // If we are emitting directly, there is no intermediate source language |
