[Mesa-dev] [PATCH 0/2] nir: Move the si vote lowering to common code
Jason Ekstrand
jason at jlekstrand.net
Sat Mar 10 18:42:56 UTC 2018
On Sat, Mar 10, 2018 at 10:18 AM, Jason Ekstrand <jason at jlekstrand.net>
wrote:
> This tiny series moves the pass that Bas wrote for lowering vote
> instructions to ballots into common code. As you can see from the diffstat
> below, it cuts the size of the pass in half by removing boilerplate. The
> new version (in nir_lower_subgroups) also contains two bugfixes:
>
> 1) The old pass wasn't actually inserting the RFI instruction
>
> 2) The old pass wouldn't handle NaN correctly in feq because it switched
> to effectively using ineg(fne(a, b)) which is not the same as feq(a, b)
> when NaN is present.
>
> This has not been tested at all beyond compile-testing (and I didn't even
> compile-test radv).
>
I hacked up anv to use it and ran the subgroups tests from the 1.1 CTS.
This pointed out some bugs which I've now fixed and I sent a v2 which works
at least for anv.
> Cc: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
> Cc: Timothy Arceri <tarceri at itsqueeze.com>
>
> Jason Ekstrand (2):
> nir/subgroups: Add lowering for vote_ieq/vote_feq to a ballot
> ac/nir: Use lower_vote_eq_to_ballot instead of ac_nir_lower_subgroups
>
> src/amd/Makefile.sources | 1 -
> src/amd/common/ac_lower_subgroups.c | 92
> ----------------------------
> src/amd/common/ac_nir_to_llvm.c | 3 -
> src/amd/common/ac_nir_to_llvm.h | 2 -
> src/amd/common/meson.build | 1 -
> src/compiler/nir/nir.h | 1 +
> src/compiler/nir/nir_lower_subgroups.c | 48 +++++++++++++++
> src/gallium/drivers/radeonsi/si_shader_nir.c | 1 +
> 8 files changed, 50 insertions(+), 99 deletions(-)
> delete mode 100644 src/amd/common/ac_lower_subgroups.c
>
> --
> 2.5.0.400.gff86faf
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20180310/31073910/attachment.html>
More information about the mesa-dev
mailing list