Messages in this thread | | | From | Arnd Bergmann <> | Subject | Re: [PATCH v2] byteswap: try to avoid __builtin_constant_p gcc bug | Date | Wed, 22 Jun 2016 14:25:11 +0200 |
| |
On Wednesday, June 22, 2016 2:44:21 PM CEST Tomas Winkler wrote: > > > > There are more than 20 files that have the statement: case cpu_to_... > > Sparse complains about: case __builtin_bswap, not about __builtin_constant_p. > > There is even much more in the header files used in initializers, > which also require constants. I wonder if __builtin_bswap produces > constant expression correctly under gcc?
In gcc-4.8 or later yes. gcc-4.6/4.7 on powerpc was a special case that we have worked around now, as the 16-bit byteswap there was not a constant expression, unlike the 32-bit and 64-bit ones.
Arnd
| |