Recent change broke ppc64le and i686 gas builds
Jeff Law
law@redhat.com
Fri Aug 24 02:57:00 GMT 2018
More information about the Binutils mailing list
Fri Aug 24 02:57:00 GMT 2018
- Previous message (by thread): Recent change broke ppc64le and i686 gas builds
- Next message (by thread): [PATCH] elf: Check for corrupt symbol version info
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 08/22/2018 12:14 AM, Alan Modra wrote: > On Tue, Aug 21, 2018 at 08:41:30AM -0600, Jeff Law wrote: >> >> Tester started throwing errors due to this change: >> >> 706704c88344314646e4edcc0840cb18a9cb4c82 is the first bad commit >> commit 706704c88344314646e4edcc0840cb18a9cb4c82 >> Author: Alan Modra <amodra@gmail.com> >> Date: Tue Aug 21 11:54:29 2018 +0930 >> >> Pack reloc_howto_struct >> >> This patch uses bitfields in reloc_howto_struct, reducing its size >> from 80 to 40 bytes on 64-bit hosts and from 52 to 32 bytes on 32-bit >> hosts (with a 32-bit bfd_vma). I've also added a new "negate" field >> rather than making the encoded "size" field do double duty as both >> a size and a flag. >> >> [ ... ] >> >> Compiling with gcc-4.8.5 on gcc112.fsffrance.org I get the following error: >> >> gcc -DHAVE_CONFIG_H -I. -I../../../binutils/gas -I. >> -I../../../binutils/gas -I../bfd -I../../../binutils/gas/config >> -I../../../binutils/gas/../include -I../../../binutils/gas/.. >> -I../../../binutils/gas/../bfd >> -DLOCALEDIR="\"/home/law/jenkins/workspace/powerpc64le-linux-gnu/installed/share/locale\"" >> -W -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Werror >> -Wwrite-strings -I../../../binutils/gas/../zlib -g -O2 -MT dw2gencfi.o >> -MD -MP -MF $depbase.Tpo -c -o dw2gencfi.o >> ../../../binutils/gas/dw2gencfi.c &&\ >> mv -f $depbase.Tpo $depbase.Po >> In file included from ../../../binutils/gas/dw2gencfi.c:22:0: >> ../../../binutils/gas/dw2gencfi.c: In function ‘emit_expr_encoded’: >> ../../../binutils/gas/dw2gencfi.c:200:24: error: comparison between >> signed and unsigned integer expressions [-Werror=sign-compare] >> gas_assert (size == howto->bitsize / 8); >> ^ >> ../../../binutils/gas/as.h:88:33: note: in definition of macro ‘gas_assert’ >> #define gas_assert(P) ((void) ((P) ? 0 : (abort (), 0))) >> ^ >> ../../../binutils/gas/dw2gencfi.c: In function ‘output_fde’: >> ../../../binutils/gas/dw2gencfi.c:1982:26: error: comparison between >> signed and unsigned integer expressions [-Werror=sign-compare] >> gas_assert (addr_size == howto->bitsize / 8); >> ^ >> ../../../binutils/gas/as.h:88:33: note: in definition of macro ‘gas_assert’ >> #define gas_assert(P) ((void) ((P) ? 0 : (abort (), 0))) > > I fixed one of these sorts of warnings in bfd/coff-rs6000.c but for > some reason my compilers (7.3.0 and 8.1.1) didn't complain here. Oh > well, presumably the warning has been quieted for simpler cases of > unsigned int bit-field being promoted to int as per the C standard. > The one in coff-rs6000.c involved "howto->bitsize + howto->rightshift > == some_unsigned_value". > > I've committed the following. > > * dw2gencfi.c (emit_expr_encoded, output_fde): Warning fixes. Yup. That took care of things... Thanks, jeff
- Previous message (by thread): Recent change broke ppc64le and i686 gas builds
- Next message (by thread): [PATCH] elf: Check for corrupt symbol version info
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Binutils mailing list