Message ID | 20200928131934.739451-1-philmd@redhat.com |
---|---|
Headers | show |
Series | qemu/bswap: Use compiler __builtin_bswap() | expand |
On 9/28/20 7:32 PM, Thomas Huth wrote: > On 28/09/2020 15.19, Philippe Mathieu-Daudé wrote: >> Since commit efc6c070aca ("configure: Add a test for the minimum >> compiler version") the minimum compiler version required for GCC >> is 4.8, which supports __builtin_bswap(). >> Remove the FreeBSD specific ifdef'ry. >> >> This reverts commit de03c3164accc21311c39327601fcdd95da301f3 >> ("bswap: Fix build on FreeBSD 10.0"). >> >> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> >> --- >> Cc: Ed Maste <emaste@freebsd.org> >> --- >> include/qemu/bswap.h | 2 -- >> 1 file changed, 2 deletions(-) >> >> diff --git a/include/qemu/bswap.h b/include/qemu/bswap.h >> index 719d620bfe6..1a297bfec22 100644 >> --- a/include/qemu/bswap.h >> +++ b/include/qemu/bswap.h >> @@ -6,8 +6,6 @@ >> #ifdef CONFIG_MACHINE_BSWAP_H >> # include <sys/endian.h> >> # include <machine/bswap.h> >> -#elif defined(__FreeBSD__) >> -# include <sys/endian.h> > > Ah, well, no I get it ... you're removing this stuff bit by bit. Quite > confusing, IMHO, I'd remove them all in one patch instead. Sure. I did it that way because I was testing OS after OS, when one was successful I committed the change and went for the next one. > > Thomas >
On 9/28/20 7:57 PM, Philippe Mathieu-Daudé wrote: > On 9/28/20 7:32 PM, Thomas Huth wrote: >> On 28/09/2020 15.19, Philippe Mathieu-Daudé wrote: >>> Since commit efc6c070aca ("configure: Add a test for the minimum >>> compiler version") the minimum compiler version required for GCC >>> is 4.8, which supports __builtin_bswap(). >>> Remove the FreeBSD specific ifdef'ry. >>> >>> This reverts commit de03c3164accc21311c39327601fcdd95da301f3 >>> ("bswap: Fix build on FreeBSD 10.0"). >>> >>> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> >>> --- >>> Cc: Ed Maste <emaste@freebsd.org> >>> --- >>> include/qemu/bswap.h | 2 -- >>> 1 file changed, 2 deletions(-) >>> >>> diff --git a/include/qemu/bswap.h b/include/qemu/bswap.h >>> index 719d620bfe6..1a297bfec22 100644 >>> --- a/include/qemu/bswap.h >>> +++ b/include/qemu/bswap.h >>> @@ -6,8 +6,6 @@ >>> #ifdef CONFIG_MACHINE_BSWAP_H >>> # include <sys/endian.h> >>> # include <machine/bswap.h> >>> -#elif defined(__FreeBSD__) >>> -# include <sys/endian.h> >> >> Ah, well, no I get it ... you're removing this stuff bit by bit. Quite >> confusing, IMHO, I'd remove them all in one patch instead. Actually I thought it would be easier for each OS maintainer to review the corresponding patch. > > Sure. I did it that way because I was testing OS after OS, when > one was successful I committed the change and went for the next > one. > >> >> Thomas >> >
On Mon, 28 Sep 2020 at 09:20, Philippe Mathieu-Daudé <philmd@redhat.com> wrote: > > Since commit efc6c070aca ("configure: Add a test for the minimum > compiler version") the minimum compiler version required for GCC > is 4.8, which supports __builtin_bswap(). > Remove the FreeBSD specific ifdef'ry. > > This reverts commit de03c3164accc21311c39327601fcdd95da301f3 > ("bswap: Fix build on FreeBSD 10.0"). > > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Ed Maste <emaste@FreeBSD.org> Aside, to test building with this change on Clang 11 (default compiler in FreeBSD-CURRENT) I needed a few other changes to avoid warnings: hw/s390x/ipl.h, hw/usb/dev-uas.c variable sized type warnings ../hw/usb/dev-uas.c:157:31: error: field 'status' with variable sized type 'uas_iu' not at the end of a struct or class is a GNU extension [-Werror,-Wgnu-variable-sized-type-not-at-end] uas_iu status; ^ target/s390x/cpu_models.c pointer to smaller integer type cast ../target/s390x/cpu_models.c:984:21: error: cast to smaller integer type 'S390Feat' from 'void *' [-Werror,-Wvoid-pointer-to-enum-cast] S390Feat feat = (S390Feat) opaque; ^~~~~~~~~~~~~~~~~