diff options
author | Joshua Batista <jbatista@microsoft.com> | 2024-11-14 17:00:58 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-14 17:00:58 -0800 |
commit | 478c24b5f86911d14256bad71c85ed0ff061070a (patch) | |
tree | f1ea395aea161a0a2125beab2a463f0b6041177b /llvm/lib/CodeGen/MachineModuleSlotTracker.cpp | |
parent | 2f55de4e317ee93cdca839558acf8be2b5ac2b46 (diff) | |
download | llvm-478c24b5f86911d14256bad71c85ed0ff061070a.zip llvm-478c24b5f86911d14256bad71c85ed0ff061070a.tar.gz llvm-478c24b5f86911d14256bad71c85ed0ff061070a.tar.bz2 |
[HLSL] Add implicit resource element type concepts to AST (#112600)
This PR is step one on the journey to implement resource element type
validation via C++20 concepts. The PR sets up the infrastructure for
injecting implicit concept decls / concept specialization expressions
into the AST, which will then be evaluated after template arguments are
instantiated. This is not meant to be a complete implementation of the
desired validation for HLSL,
there are a couple of missing elements:
1. We need the __builtin_hlsl_is_typed_resource_element_compatible
builtin to be implemented.
2. We need other constraints, like is_intangible
3. We need to put the first 2 points together, and construct a finalized
constraint expression, which should differ between typed and raw buffers
This is just an initial PR that puts some of the core infrastructure in
place.
Diffstat (limited to 'llvm/lib/CodeGen/MachineModuleSlotTracker.cpp')
0 files changed, 0 insertions, 0 deletions