Commits on Source (60)
-
-
-
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>
-
-
-
-
-
Co-authored-by:
Francisco Casas <fcasas@codeweavers.com>
-
-
This node type is intended for use during parse-time. While we parse an indexing expression such as "a[3]", we don't know if it will end up as part of an expression (in which case it must be folded into a load) or it is for the lhs of a store (in which case it must be folded into the store's deref).
-
From this point on, it is no longer true that only hlsl_ir_loads can return objects, because an object can also come from chain of hlsl_ir_indexes that ends in an hlsl_ir_load. The lower_index_loads pass takes care of lowering all hlsl_ir_indexes into hlsl_ir_loads. For this reason, hlsl_resource_load_params now expects both the resource as the sampler to be just an hlsl_ir_node pointer instead of a pointer to a more specific hlsl_ir_load.
-
-
-
-
Co-authored-by:
Francisco Casas <fcasas@codeweavers.com>
-
-
-
-
We were previously (accidentally) rejecting them because they didn't have a usage.
-
-
-
-
-
-
-
-
-
-
-
-
It is illegal to match a SPIR-V multisampled resource to a Vulkan resource which is not multisampled. Vulkan considers a resource to be multisampled if its sample count is greater than 1 (and SPIR-V does not care about the sample count). This fixes validation errors in the case where the sample count does actually match the resource. In order to provide correct behaviour when there is a mismatch, or when the sample count is missing, we will need yet another additional interface. In the absence of that it seems best to provide a best guess. This fixes a validation error with the not-yet-committed merge request 135, when the d3d11 runner is run through Wine with the Vulkan backend.
-
-
Signed-off-by:
Nikolay Sivov <nsivov@codeweavers.com>
-
-
-
-
VK_EXT_robustness2 does not support null index buffers so we only warn and return immediately.
-
Only verify it doesn't crash.
-
This way failures produced while compiling or preprocessing a shader are shown with the appropriate context.
-
-
For now, this is limited to float and bool, scalar and vector. All other types are unsupported. Signed-off-by:
Ethan Lee <flibitijibibo@gmail.com>
-
Currently only tests float and bool, scalar and vector. Signed-off-by:
Ethan Lee <flibitijibibo@gmail.com>
-
Fixes blank screen in Assassin's Creed: Valhalla.
-
Negative widths are not supported in Vulkan.
-
-
-
-
-
-
We already popped the context here. Move the break inside the previous if to make control flow a little clearer.
-
-
-
-
-
-
Fix a compile warning: ../vkd3d/libs/vkd3d-shader/hlsl_codegen.c: In function 'allocate_semantic_register': ../vkd3d/libs/vkd3d-shader/hlsl_codegen.c:2947:85: error: passing argument 4 of 'hlsl_sm4_register_from_semantic' from incompatible pointer type [-Werror=incompatible-pointer-types] 2947 | if ((builtin = hlsl_sm4_register_from_semantic(ctx, &var->semantic, output, &type, NULL, &has_idx))) | ^~~~~ | | | unsigned int * In file included from ../vkd3d/libs/vkd3d-shader/hlsl_codegen.c:21: ../vkd3d/libs/vkd3d-shader/hlsl.h:1171:52: note: expected 'enum vkd3d_sm4_register_type *' but argument is of type 'unsigned int *' 1171 | bool output, enum vkd3d_sm4_register_type *type, enum vkd3d_sm4_swizzle_type *swizzle_type, bool *has_idx); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
Showing
- Makefile.am 7 additions, 3 deletionsMakefile.am
- libs/vkd3d-shader/d3dbc.c 972 additions, 1 deletionlibs/vkd3d-shader/d3dbc.c
- libs/vkd3d-shader/dxbc.c 48 additions, 1700 deletionslibs/vkd3d-shader/dxbc.c
- libs/vkd3d-shader/hlsl.c 217 additions, 64 deletionslibs/vkd3d-shader/hlsl.c
- libs/vkd3d-shader/hlsl.h 41 additions, 19 deletionslibs/vkd3d-shader/hlsl.h
- libs/vkd3d-shader/hlsl.y 431 additions, 341 deletionslibs/vkd3d-shader/hlsl.y
- libs/vkd3d-shader/hlsl_codegen.c 184 additions, 98 deletionslibs/vkd3d-shader/hlsl_codegen.c
- libs/vkd3d-shader/hlsl_sm1.c 0 additions, 980 deletionslibs/vkd3d-shader/hlsl_sm1.c
- libs/vkd3d-shader/sm4.h 0 additions, 552 deletionslibs/vkd3d-shader/sm4.h
- libs/vkd3d-shader/spirv.c 8 additions, 2 deletionslibs/vkd3d-shader/spirv.c
- libs/vkd3d-shader/tpf.c 4721 additions, 0 deletionslibs/vkd3d-shader/tpf.c
- libs/vkd3d-shader/vkd3d_shader_private.h 2 additions, 0 deletionslibs/vkd3d-shader/vkd3d_shader_private.h
- libs/vkd3d/command.c 26 additions, 10 deletionslibs/vkd3d/command.c
- libs/vkd3d/resource.c 23 additions, 1 deletionlibs/vkd3d/resource.c
- libs/vkd3d/vkd3d_private.h 1 addition, 1 deletionlibs/vkd3d/vkd3d_private.h
- tests/any.shader_test 96 additions, 0 deletionstests/any.shader_test
- tests/cbuffer.shader_test 20 additions, 3 deletionstests/cbuffer.shader_test
- tests/d3d12.c 18 additions, 7 deletionstests/d3d12.c
- tests/expr-indexing.shader_test 103 additions, 0 deletionstests/expr-indexing.shader_test
- tests/hlsl-for.shader_test 29 additions, 1 deletiontests/hlsl-for.shader_test
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
libs/vkd3d-shader/hlsl_sm1.c
deleted
100644 → 0
This diff is collapsed.
libs/vkd3d-shader/sm4.h
deleted
100644 → 0
This diff is collapsed.
This diff is collapsed.
tests/any.shader_test
0 → 100644
This diff is collapsed.
This diff is collapsed.
tests/expr-indexing.shader_test
0 → 100644
This diff is collapsed.
This diff is collapsed.