Commits on Source (38)
-
A driver program is introduced to coordinate test running on Windows, similarly to what "make test" does on Linux and macOS.
-
-
Signed-off-by:
Nikolay Sivov <nsivov@codeweavers.com>
-
Signed-off-by:
Nikolay Sivov <nsivov@codeweavers.com>
-
Signed-off-by:
Nikolay Sivov <nsivov@codeweavers.com>
-
Signed-off-by:
Nikolay Sivov <nsivov@codeweavers.com>
-
Signed-off-by:
Nikolay Sivov <nsivov@codeweavers.com>
-
Signed-off-by:
Nikolay Sivov <nsivov@codeweavers.com>
-
Signed-off-by:
Nikolay Sivov <nsivov@codeweavers.com>
-
Signed-off-by:
Nikolay Sivov <nsivov@codeweavers.com>
-
-
-
Some functions work with dereferences and need to know if they are lowered yet. This can be known checking if deref->offset.node is NULL or deref->data_type is NULL. I am using the latter since it keeps working even after the following patches that split deref->offset into constant and variable parts.
-
This uint will be used for the following: - Since SM4's relative addressing (the capability of passing a register as an index to another register) only has whole-register granularity, we will need to make the offset node express the offset in whole-registers and specify the register component in this uint, otherwise we would have to add additional / and % operations in the output binary. - If, after we apply constant folding and copy propagation, we determine that the offset is a single constant node, we can store all the offset in this uint constant, and remove the offset src. This allows DCE to remove a good bunch of the nodes previously required only for the offset constants, which makes the output more liteweight and readable, and simplifies the implementation of relative addressing when writing tpf in the following patches. In dump_deref(), we use "c" to indicate components instead of whole registers. Since now both the offset node and the offset uint are in components a lowered deref would look like: var[@42c + 2c] But, once we express the offset node in whole registers we will remove the "c" from the node part: var[@22 + 3c]
-
This is required to use SM4 relative addressing, because it is limited to whole-register granularity.
-
-
This field is now analogous to vkd3d_shader_register_index.rel_addr. Also, it makes sense to rename it now because all the constant part of the offset is now handled to hlsl_deref.const_offset. Consequently, it may also be NULL now.
-
-
If var->indexable, then the variable is given a unique register number, regardless of its lifetime.
-
-
-
-
-
-
-
Signed-off-by:
Nikolay Sivov <nsivov@codeweavers.com>
-
Signed-off-by:
Nikolay Sivov <nsivov@codeweavers.com>
-
Makes it much clearer which register index is being written.
-
-
-
-
-
The resource could be destructed before the command list left open is executed; instead, we immediately perform the transition.
-
The resource could be destructed before the command list left open is executed; instead, we immediately perform the transition.
-
The resource could be destructed before the command list left open is executed; instead, we immediately perform the transition.
-
Signed-off-by:
Nikolay Sivov <nsivov@codeweavers.com>
-
Signed-off-by:
Nikolay Sivov <nsivov@codeweavers.com>
-
Signed-off-by:
Nikolay Sivov <nsivov@codeweavers.com>
Showing
- .gitignore 1 addition, 0 deletions.gitignore
- .gitlab-ci.yml 2 additions, 0 deletions.gitlab-ci.yml
- Makefile.am 32 additions, 2 deletionsMakefile.am
- gitlab/README 7 additions, 3 deletionsgitlab/README
- gitlab/build-crosstest 4 additions, 1 deletiongitlab/build-crosstest
- gitlab/test.yml 35 additions, 0 deletionsgitlab/test.yml
- libs/vkd3d-shader/d3dbc.c 3 additions, 2 deletionslibs/vkd3d-shader/d3dbc.c
- libs/vkd3d-shader/dxil.c 320 additions, 26 deletionslibs/vkd3d-shader/dxil.c
- libs/vkd3d-shader/hlsl.c 166 additions, 24 deletionslibs/vkd3d-shader/hlsl.c
- libs/vkd3d-shader/hlsl.h 50 additions, 7 deletionslibs/vkd3d-shader/hlsl.h
- libs/vkd3d-shader/hlsl.l 3 additions, 1 deletionlibs/vkd3d-shader/hlsl.l
- libs/vkd3d-shader/hlsl.y 209 additions, 15 deletionslibs/vkd3d-shader/hlsl.y
- libs/vkd3d-shader/hlsl_codegen.c 410 additions, 59 deletionslibs/vkd3d-shader/hlsl_codegen.c
- libs/vkd3d-shader/ir.c 6 additions, 0 deletionslibs/vkd3d-shader/ir.c
- libs/vkd3d-shader/spirv.c 70 additions, 41 deletionslibs/vkd3d-shader/spirv.c
- libs/vkd3d-shader/tpf.c 97 additions, 4 deletionslibs/vkd3d-shader/tpf.c
- libs/vkd3d-shader/vkd3d_shader_main.c 3 additions, 9 deletionslibs/vkd3d-shader/vkd3d_shader_main.c
- libs/vkd3d-shader/vkd3d_shader_private.h 10 additions, 0 deletionslibs/vkd3d-shader/vkd3d_shader_private.h
- tests/d3d12_test_utils.h 62 additions, 8 deletionstests/d3d12_test_utils.h
- tests/driver.c 254 additions, 0 deletionstests/driver.c
gitlab/test.yml
0 → 100644
tests/driver.c
0 → 100644