diff options
| author | Tim Foley <tfoleyNV@users.noreply.github.com> | 2020-09-01 18:37:54 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-09-01 18:37:54 -0700 |
| commit | c2873f406d544057e0ec61e61fb8580ca768e493 (patch) | |
| tree | 8abc78e053566f22bfa3748ce24b148c0f642a4c /tools/render-test/shader-input-layout.cpp | |
| parent | 5c56479c7b742f94ebf4a97d93826b2a5e4f279d (diff) | |
Mark f32tof16 and f16tof32 as HLSL intrinsics (#1526)
Fixes GitLab issue 85
These functions are intrinsic for HLSL, but were not marked as such, leading to emitting code that manually loops for the vector case. The looping code resulted in lower performance for some users, because apparently dxc was unable (or unwilling?) to unroll the loop, and ended up generating temporary ("stack-allocated") arrays for the vectors produced.
As a longer-term solution, we may need to consider how the `VECTOR_MAP...` and `MATRIX_MAP...` idioms used in the stdlib get lowered, so that we can emit fully-unrolled versions in cases where the vector/matrix shape is known at the time we generate code. This PR does not attempt to address that larger issue.
Diffstat (limited to 'tools/render-test/shader-input-layout.cpp')
0 files changed, 0 insertions, 0 deletions
