[Mesa-dev] [PATCH 0/3] nir: Convert nir_variable_mode to a bitfield

Eric Anholt eric at anholt.net
Mon Apr 11 22:48:45 UTC 2016


Jason Ekstrand <jason at jlekstrand.net> writes:

> This tiny series converts nir_var_mode to be a bitfield instead of a
> regular enum and then converts two of the passes that currently take a mode
> to handle the new bitfield.  The reason for this is that a number of
> different passes want to be able to act on some subset of the modes and can
> run more efficiently if they are called once with that set rather than once
> per mode.
>
> I'm not 100% sold on making it a bitfield and asserting only one bit is set
> in nir_validate.  This isn't the standard pattern in the mesa compiler
> stack today so it may throw people off.  It still looks kind of strage to
> me.  On the other hand, it does have the potential to make things look
> nicer and gdb will pretty-print it for you.  For what it's worth, the
> Khronos group settled on using this pattern for bitfield-capable enums in
> Vulkan.  Rob seems to prefer this over a regular enum and using (1 << mode)
> everywhere so, unless there are major objections, we'll probably go with
> it.

I find it odd compared to the usual (1 << mode), but no real objection.

Acked-by: Eric Anholt <eric at anholt.net>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 818 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20160411/ae6bb3e6/attachment.sig>


More information about the mesa-dev mailing list