Henri Verbeet pushed to branch master at wine / vkd3d
Commits: 646087d5 by Shaun Ren at 2025-01-10T19:17:43+01:00 vkd3d-shader/hlsl: Collect together terms with constant coefficients.
We apply distributivity to applicable expressions, specifically with the following rewrite rules:
(x OPL a) OPR (x OPL b) -> x OPL (a OPR b) (y OPR (x OPL a)) OPR (x OPL b) -> y OPR (x OPL (a OPR b)) ((x OPL a) OPR y) OPR (x OPL b) -> (x OPL (a OPR b)) OPR y (x OPL a) OPR ((x OPL b) OPR y) -> (x OPL (a OPR b)) OPR y (x OPL a) OPR (y OPR (x OPL b)) -> (x OPL (a OPR b)) OPR y
where a, b are constants.
- - - - -
2 changed files:
- libs/vkd3d-shader/hlsl_constant_ops.c - tests/hlsl/arithmetic-uint.shader_test
View it on GitLab: https://gitlab.winehq.org/wine/vkd3d/-/commit/646087d54ca7488d133e5e1fc802b2...