You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Implement default and relaxed modes of the availability diagnostic.
The default diagnostic mode performs an AST traversal after the translation unit has been fully parsed, and requires construction of a call graph. An AST visitor will traverse to all CallExpr nodes that are reachable from exported functions (either library exports or entry functions). If the callee of a CallExpr has availability annotations that signify that the API is unavailable for the target shader model and stage the compiler emits an error.
The implementation of the relaxed diagnostic mode matches the default mode, except that when a CallExpr references an unavailable API, the compiler emits a warning. A user enables relaxed mode by passing -Wno-error=hlsl-availability.
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
Implement default and relaxed modes of the availability diagnostic.
The default diagnostic mode performs an AST traversal after the translation unit has been fully parsed, and requires construction of a call graph. An AST visitor will traverse to all CallExpr nodes that are reachable from exported functions (either library exports or entry functions). If the callee of a CallExpr has availability annotations that signify that the API is unavailable for the target shader model and stage the compiler emits an error.
The implementation of the relaxed diagnostic mode matches the default mode, except that when a CallExpr references an unavailable API, the compiler emits a warning. A user enables relaxed mode by passing -Wno-error=hlsl-availability.
Implement default and relaxed modes of the availability diagnostic.
The default diagnostic mode performs an AST traversal after the translation unit has been fully parsed, and requires construction of a call graph. An AST visitor will traverse to all CallExpr nodes that are reachable from exported functions (either library exports or entry functions). If the callee of a CallExpr has availability annotations that signify that the API is unavailable for the target shader model and stage the compiler emits an error.
The implementation of the relaxed diagnostic mode matches the default mode, except that when a CallExpr references an unavailable API, the compiler emits a warning. A user enables relaxed mode by passing -Wno-error=hlsl-availability.
See HLSL Availability Diagnostic spec for more details.
The text was updated successfully, but these errors were encountered: