This diff updates the LLVMIR dialect Fastmath flags attribute to use recently
added features of BitEnum attributes. Specifically, this diff uses the bit
enum "group" case to represent the fast value as an alias for a combination
of other values (ninf, nnan, ...), instead of using a separate integer
value. (This is in line with LLVM's fastmath flags representation.) This diff
also leverages the printBitEnumPrimaryGroups tblgen field for concise
enum printing.
The BitEnum features were developed for an upcoming diff that adds fastmath
support to the arithmetic dialect. This diff simply applies some of the relevant
new features to the LLVM dialect attribute.
Nit: can this be ", " (with the trailing space) so we still have it in the generated IR?