- Apr 04, 2024
-
-
- Apr 03, 2024
-
-
Signed-off-by:
Nikolay Sivov <nsivov@codeweavers.com>
-
-
-
-
Not when making the loop header available, which is too early and might lead to open too many loops at once.
-
- Apr 02, 2024
-
-
Signed-off-by:
Nikolay Sivov <nsivov@codeweavers.com>
-
Signed-off-by:
Nikolay Sivov <nsivov@codeweavers.com>
-
-
-
vsir_program_normalise() has function calls to basically everything in ir.c, so it's useful to have it in an easily reachable place to quickly jump to wherever you need using your favorite code editor's features.
-
-
RECT and D3D12_BOX are used from there.
-
Type size_t is used in the file without importing any header which defines it. This only works when the translation unit includes one of the appropriate headers anyway or when the appropriate header is included internally by other standard C headers; none of those strategies should be relied upon.
-
-
The extra argument is not very easy to intuit. Since all we're trying to do here is check whether the type is a struct with object components in it, write that out explicitly.
-
-
We already perform an implicit cast per component in initialize_var_components().
-
-
-
-
- Mar 27, 2024
-
-
With this, a test that fails because vkd3d_unreacheable() was hit, will now display the error line. FAIL: tests/hlsl/some-test.shader_test (SM4.0-SM5.1)OpenGL/SPIR-V 43[XF] 79[XF] 126[XF] 149[XF] 159[XF] [AF] vkd3d/libs/vkd3d-shader/hlsl.c:246: Aborting, reached unreachable code. [SIGABRT] Aborted (core dumped)
-
Some times the test can be aborted for reasons others than failed assertions, such as segmentation faults or reaching unreacheable code. This commit adds purple tags to the test driver for visual clarity.
-
-
-
d3dcompiler and d3dx9 versions before 42 don't emit this error; this will be necessary to emulate that behaviour. Other warnings exist that are introduced in different d3dcompiler versions, although there are not very many distinct HLSL warnings to begin with. We could of course group all these together under a single compiler option, but I find that using separate top-level options is unilaterally friendlier to an API consumer, and simpler to implement as well. It also in some sense maps conceptually to e.g. "-Wno-implicit-conversion".
-
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>
-
This is used for the object table at runtime. Object variable index is 1-based. 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>
-
This codepath path is currently triggered when transpiling d3dbc shaders that use vPos (or other of these special registers). While vPos gets added to the input signature and gets assigned an INPUT register, the registers in the shader instructions are still of VKD3DSPR_MISCTYPE type and are not propperly mapped yet. This gives invalid results. Some SM1 tests must be set back to "todo" but they only work because, by coincidence, we are assigning vPos the input register with index 0. Propper mapping of these registers is still required.
-
-
-
-