vkd3d-shader/hlsl: Fix invalidation of the wrong components in copy-prop.
This is includes !1415 (merged) as 1/3, since otherwise it conflicts with it.
We are currently prone to certain miscompilations since copy_propagation_invalidate_variable_from_deref_recurse() is not always invalidating the right components of arrays. 2/3 introduces a test that miscompiles, 3/3 introduces the fix.
Merge request reports
Activity
mentioned in merge request !1415 (merged)
This test is currently miscompiling on SM4 because copy_propagation_invalidate_variable_from_deref_recurse() is not always invalidating the right ciomn
Looks like something went slightly wrong with the commit message of 2/3.
I don't suppose there's a way to avoid the [require] in that test?
This test is currently miscompiling on SM4 because copy_propagation_invalidate_variable_from_deref_recurse() is not always invalidating the right ciomn
Looks like something went slightly wrong with the commit message of 2/3.
Oh, sorry. Fixed it in v2.
I don't suppose there's a way to avoid the [require] in that test?
We cannot have relative addressing in the lhs of arrays in SM1, so I changed it for an
if
conditional, which we don't support yet but at least the[require]
can be removed.
added 30 commits
-
b2a51242...a87b1efb - 28 commits from branch
wine:master
- bff9068a - tests: Add a hard test for copy-propagation invalidation.
- 09b9f8ff - vkd3d-shader/hlsl: Fix invalidation of the wrong components in copy-propagation.
-
b2a51242...a87b1efb - 28 commits from branch