[all-commits] [llvm/llvm-project] 889020: [HLSL] Default and Relaxed Availability Diagnostic...
Helena Kotas via All-commits
all-commits at lists.llvm.org
Wed May 29 21:52:43 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 8890209ead2246461985f49c4c9c01cc2371ac09
https://github.com/llvm/llvm-project/commit/8890209ead2246461985f49c4c9c01cc2371ac09
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2024-05-29 (Wed, 29 May 2024)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/SemaHLSL.h
M clang/lib/AST/DeclBase.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaAvailability.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/SemaHLSL/Availability/attr-availability-compute.hlsl
M clang/test/SemaHLSL/Availability/attr-availability-mesh.hlsl
M clang/test/SemaHLSL/Availability/attr-availability-pixel.hlsl
A clang/test/SemaHLSL/Availability/avail-diag-default-compute.hlsl
A clang/test/SemaHLSL/Availability/avail-diag-default-lib.hlsl
A clang/test/SemaHLSL/Availability/avail-diag-relaxed-compute.hlsl
A clang/test/SemaHLSL/Availability/avail-diag-relaxed-lib.hlsl
A clang/test/SemaHLSL/Availability/avail-lib-multiple-stages.hlsl
M clang/test/SemaHLSL/WaveBuiltinAvailability.hlsl
Log Message:
-----------
[HLSL] Default and Relaxed Availability Diagnostics (#92704)
Implements HLSL availability diagnostics' default and relaxed mode.
HLSL availability diagnostics emits errors or warning when unavailable
shader APIs are used. Unavailable shader APIs are APIs that are exposed
in HLSL code but are not available in the target shader stage or shader
model version.
In the default mode the compiler emits an error when an unavailable API
is found in a code that is reachable from the shader entry point
function. In the future this check will also extended to exported
library functions (#92073). The relaxed diagnostic mode is the same
except the compiler emits a warning. This mode is enabled by
``-Wno-error=hlsl-availability``.
See HLSL Availability Diagnostics design doc
[here](https://github.com/llvm/llvm-project/blob/main/clang/docs/HLSL/AvailabilityDiagnostics.rst)
for more details.
Fixes #90095
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list