vkd3d-shader/hlsl: Replace register offsets with index paths until split copies. [v4]
Replaces register offsets with component index paths to remove backend-specific offset/size logic from the IR. Also, working with components would allow for implicit size array initializers and properly handle objects which have register size 0.
In vkd3d-shader/hlsl: Replace register offsets with index paths in load initializations.
the transform_deref_paths_into_offsets
pass is introduced and moved forward in the following patches as other compilation passes are translated. The idea is to remove this pass after all the others are translated and then make each shader-model handle register offsets separately.
Patches for translating copy propagation, among other things, are prepared for a following merge request.
Merge request reports
Activity
added 16 commits
-
56c59c17...aae4e31b - 3 commits from branch
wine:master
- 24472f94 - vkd3d-shader/hlsl: Introduce add_load_component().
- dad3edb5 - vkd3d-shader/hlsl: Introduce add_load_index().
- cfd8e679 - vkd3d-shader/hlsl: Unify type minor/major size functions.
- e70e232d - include: Add list_move_after() and list_move_before().
- 923e6a82 - vkd3d-shader/hlsl: Replace register offsets with index paths in load initializations.
- 136f52d5 - vkd3d-shader/hlsl: Print index paths in dump_deref().
- f265d275 - vkd3d-shader/hlsl: Introduce hlsl_new_store_component().
- 8e9a317c - vkd3d-shader/hlsl: Introduce hlsl_new_store_index().
- e63e7c3a - vkd3d-shader/hlsl: Replace register offsets with index paths in resource loads initialization.
- f5345cb9 - vkd3d-shader/hlsl: Move register offset functions to hlsl_codegen.c.
- da326721 - vkd3d-shader/hlsl: Add input and output variables using the same function.
- 3172b0d0 - vkd3d-shader/hlsl: Replace register offsets with index paths in
- 0883aba6 - vkd3d-shader/hlsl: Replace register offsets with index paths in split copies.
Toggle commit list-
56c59c17...aae4e31b - 3 commits from branch
Zebediah Figura (she/her) replied on the mailing list:
I can't approve this, for unclear reasons. Maybe I'm missing some sort of perms? There's no indication in the web UI why I can't approve, and using the `lab` command line tool claims success but doesn't actually do anything. _______________________________________________ wine-gitlab mailing list -- wine-gitlab@winehq.org To unsubscribe send an email to wine-gitlab-leave@winehq.org
added 20 commits
-
0883aba6...4112c360 - 7 commits from branch
wine:master
- 90a07f19 - vkd3d-shader/hlsl: Introduce add_load_component().
- e0dba05d - vkd3d-shader/hlsl: Introduce add_load_index().
- 8dad6d89 - vkd3d-shader/hlsl: Unify type minor/major size functions.
- 298a26fa - include: Add list_move_after() and list_move_before().
- 35d313a8 - vkd3d-shader/hlsl: Replace register offsets with index paths in load initializations.
- ef1aca38 - vkd3d-shader/hlsl: Print index paths in dump_deref().
- 4519334b - vkd3d-shader/hlsl: Introduce hlsl_new_store_component().
- eacb1fdd - vkd3d-shader/hlsl: Introduce hlsl_new_store_index().
- c7668000 - vkd3d-shader/hlsl: Replace register offsets with index paths in resource loads initialization.
- 7b46e20b - vkd3d-shader/hlsl: Move register offset functions to hlsl_codegen.c.
- d65c4353 - vkd3d-shader/hlsl: Add input and output variables using the same function.
- 8cfebdb7 - vkd3d-shader/hlsl: Replace register offsets with index paths in
- e7561b47 - vkd3d-shader/hlsl: Replace register offsets with index paths in split copies.
Toggle commit list-
0883aba6...4112c360 - 7 commits from branch
assigned to @giomasce
unassigned @giomasce
added 13 commits
- a32157f5 - vkd3d-shader/hlsl: Introduce add_load_component().
- 039b69ac - vkd3d-shader/hlsl: Introduce add_load_index().
- 2dcfc888 - vkd3d-shader/hlsl: Unify type minor/major size functions.
- a2996c2d - include: Add list_move_after() and list_move_before().
- 4fede46c - vkd3d-shader/hlsl: Replace register offsets with index paths in load initializations.
- 7515b825 - vkd3d-shader/hlsl: Print index paths in dump_deref().
- f3289e16 - vkd3d-shader/hlsl: Introduce hlsl_new_store_component().
- 5b664c7a - vkd3d-shader/hlsl: Introduce hlsl_new_store_index().
- 349aab2a - vkd3d-shader/hlsl: Replace register offsets with index paths in resource loads initialization.
- c572adbf - vkd3d-shader/hlsl: Move register offset functions to hlsl_codegen.c.
- 1b69adbd - vkd3d-shader/hlsl: Add input and output variables using the same function.
- d7d2fe14 - vkd3d-shader/hlsl: Replace register offsets with index paths in input/output copies.
- 577014c0 - vkd3d-shader/hlsl: Replace register offsets with index paths in split copies.
Toggle commit list