Description
See the Convert() API in the linalg.h header here:
|
Convert(vector<T, N> Vec) { |
And the MakeInterpretedVector() API:
|
InterpretedVector<T, N, DT> MakeInterpretedVector(vector<T, N> Vec) { |
These both need to implement a restriction for the allowed input vector's native HLSL component type based on the ComponentType (or ComponentEnum) enum value for that input vector.
For instance, this check would report an error when using an input vector<float, ...> with ComponentType::PackedS8x32 for that input.
We should also look for any other APIs where this restriction should apply.
Description
See the
Convert()API in thelinalg.hheader here:DirectXShaderCompiler/tools/clang/lib/Headers/hlsl/dx/linalg.h
Line 238 in c763461
And the
MakeInterpretedVector()API:DirectXShaderCompiler/tools/clang/lib/Headers/hlsl/dx/linalg.h
Line 230 in c763461
These both need to implement a restriction for the allowed input vector's native HLSL component type based on the
ComponentType(orComponentEnum) enum value for that input vector.For instance, this check would report an error when using an input
vector<float, ...>withComponentType::PackedS8x32for that input.We should also look for any other APIs where this restriction should apply.