aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/LoopUtils.cpp
diff options
context:
space:
mode:
authorChris Bieneman <chris.bieneman@me.com>2022-06-16 15:35:48 -0500
committerChris Bieneman <chris.bieneman@me.com>2022-07-05 11:30:29 -0500
commitb8dbc6ffea93976dc0d8569c9d23e9c21e33e317 (patch)
treef17b723597f5a047659b0de213b9cfa2a20dedf1 /llvm/lib/Transforms/Utils/LoopUtils.cpp
parenta2158374ba1a6f81f4cce3eb54d0bc44f3ab75e0 (diff)
downloadllvm-b8dbc6ffea93976dc0d8569c9d23e9c21e33e317.zip
llvm-b8dbc6ffea93976dc0d8569c9d23e9c21e33e317.tar.gz
llvm-b8dbc6ffea93976dc0d8569c9d23e9c21e33e317.tar.bz2
[HLSL] Add ExternalSemaSource & vector alias
HLSL vector types are ext_vector types, but they are also exposed via a template syntax `vector<T, #>`. This is morally equavalent to the code: ```c++ template <typename T, int Size> using vector = T __attribute__((ext_vector_type(Size))) ``` The problem is that templates aren't supported before HLSL 2021, and type aliases still aren't supported in HLSL. To resolve this (and other issues where HLSL can't represent its own types), we rely on an external AST & Sema source being registered for HLSL code. This patch adds the HLSLExternalSemaSource and registers the vector type alias. Depends on D127802 Differential Revision: https://reviews.llvm.org/D128012
Diffstat (limited to 'llvm/lib/Transforms/Utils/LoopUtils.cpp')
0 files changed, 0 insertions, 0 deletions