Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 28 Mar 2015 16:05:45 -0700
From:      Craig Rodrigues <rodrigc@FreeBSD.org>
To:        freebsd-toolchain@freebsd.org,  "freebsd-testing@freebsd.org" <freebsd-testing@freebsd.org>
Subject:   Fails to build sys/i386/boot2 with gcc 4.9
Message-ID:  <CAG=rPVcXPMqifAJvg_-XNWrOUzDLya1UMWW5KMymymyayM25=w@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hi,

To work around the problems build rescue, this time I used a build host
running FreeBSD-CURRENT at svn revision r280353

I took this patch for libc++ and applied it to my tree:

http://reviews.llvm.org/D8461

I used this script to build with gcc 4.9:

https://github.com/freebsd/freebsd-ci/blob/master/scripts/build/cross-build.sh

Buildling sys/i386/boot2 failed:

===> sys/boot/i386/boot2 (all)
objcopy -S -O binary boot1.out boot1
dd if=/dev/zero of=boot2.ldr bs=512 count=1
1+0 records in
1+0 records out
512 bytes transferred in 0.000034 secs (14989607 bytes/sec)
/usr/local/bin/x86_64-portbld-freebsd11.0-gcc -isystem
/usr/obj/opt2/branches/head/tmp/usr/include
-L/usr/obj/opt2/branches/head/tmp/usr/lib
--sysroot=/usr/obj/opt2/branches/head/tmp -B/usr/local/x86_64-freebsd/bin/
-fomit-frame-pointer  -mrtd  -mregparm=3  -DUSE_XREAD  -DUFS1_AND_UFS2
-DFLAGS=0x80  -DSIOPRT=0x3f8  -DSIOFMT=0x3  -DSIOSPD=9600
-I/opt2/branches/head/sys/boot/i386/boot2/../../common
-I/opt2/branches/head/sys/boot/i386/boot2/../btx/lib -I.  -Wall
-Waggregate-return -Wbad-function-cast -Wcast-align  -Wmissing-declarations
-Wmissing-prototypes -Wnested-externs  -Wpointer-arith -Wshadow
-Wstrict-prototypes -Wwrite-strings  -Winline -march=i386 -ffreestanding
-mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float -m32
-std=gnu99    -Os  -fno-guess-branch-probability  -fno-unit-at-a-time
--param max-inline-insns-single=100 -mpreferred-stack-boundary=2  -S -o
boot2.s.tmp /opt2/branches/head/sys/boot/i386/boot2/boot2.c
/opt2/branches/head/sys/boot/i386/boot2/boot2.c: In function 'parse':
/opt2/branches/head/sys/boot/i386/boot2/boot2.c:484:6: warning: suggest
parentheses around assignment used as truth value [-Wparentheses]
      if (k = ep - arg) {
      ^
/opt2/branches/head/sys/boot/i386/boot2/boot2.c: In function 'load':
/opt2/branches/head/sys/boot/i386/boot2/boot2.c:187:1: warning: inlining
failed in call to 'xfsread': call is unlikely and code size would grow
[-Winline]
 xfsread(ufs_ino_t inode, void *buf, size_t nbyte)
 ^
/opt2/branches/head/sys/boot/i386/boot2/boot2.c:334:9: warning: called from
here [-Winline]
     if (xfsread(ino, &hdr, sizeof(hdr)))
         ^
/opt2/branches/head/sys/boot/i386/boot2/boot2.c:187:1: warning: inlining
failed in call to 'xfsread': call is unlikely and code size would grow
[-Winline]
 xfsread(ufs_ino_t inode, void *buf, size_t nbyte)
 ^
/opt2/branches/head/sys/boot/i386/boot2/boot2.c:341:6: warning: called from
here [-Winline]
  if (xfsread(ino, p, hdr.ex.a_text))
      ^
/opt2/branches/head/sys/boot/i386/boot2/boot2.c:187:1: warning: inlining
failed in call to 'xfsread': call is unlikely and code size would grow
[-Winline]
 xfsread(ufs_ino_t inode, void *buf, size_t nbyte)
 ^
/opt2/branches/head/sys/boot/i386/boot2/boot2.c:344:6: warning: called from
here [-Winline]
  if (xfsread(ino, p, hdr.ex.a_data))
      ^
/opt2/branches/head/sys/boot/i386/boot2/boot2.c:187:1: warning: inlining
failed in call to 'xfsread': call is unlikely and code size would grow
[-Winline]
 xfsread(ufs_ino_t inode, void *buf, size_t nbyte)
 ^
/opt2/branches/head/sys/boot/i386/boot2/boot2.c:349:10: warning: called
from here [-Winline]
      if (xfsread(ino, ep + j, sizeof(ep[0])))
          ^
/opt2/branches/head/sys/boot/i386/boot2/boot2.c:187:1: warning: inlining
failed in call to 'xfsread': call is unlikely and code size would grow
[-Winline]
 xfsread(ufs_ino_t inode, void *buf, size_t nbyte)
 ^
/opt2/branches/head/sys/boot/i386/boot2/boot2.c:357:10: warning: called
from here [-Winline]
      if (xfsread(ino, p, ep[i].p_filesz))
          ^
/opt2/branches/head/sys/boot/i386/boot2/boot2.c:187:1: warning: inlining
failed in call to 'xfsread': call is unlikely and code size would grow
[-Winline]
 xfsread(ufs_ino_t inode, void *buf, size_t nbyte)
 ^
/opt2/branches/head/sys/boot/i386/boot2/boot2.c:365:10: warning: called
from here [-Winline]
      if (xfsread(ino, &es, sizeof(es)))
          ^
/opt2/branches/head/sys/boot/i386/boot2/boot2.c:187:1: warning: inlining
failed in call to 'xfsread': call is unlikely and code size would grow
[-Winline]
 xfsread(ufs_ino_t inode, void *buf, size_t nbyte)
 ^
/opt2/branches/head/sys/boot/i386/boot2/boot2.c:371:7: warning: called from
here [-Winline]
   if (xfsread(ino, p, es[i].sh_size))
       ^
sed -e '/align/d' -e '/nop/d' < boot2.s.tmp > boot2.s
rm -f boot2.s.tmp
/usr/local/bin/x86_64-portbld-freebsd11.0-gcc -isystem
/usr/obj/opt2/branches/head/tmp/usr/include
-L/usr/obj/opt2/branches/head/tmp/usr/lib
--sysroot=/usr/obj/opt2/branches/head/tmp -B/usr/local/x86_64-freebsd/bin/
-m32 -c boot2.s
/usr/local/bin/x86_64-portbld-freebsd11.0-gcc -isystem
/usr/obj/opt2/branches/head/tmp/usr/include
-L/usr/obj/opt2/branches/head/tmp/usr/lib
--sysroot=/usr/obj/opt2/branches/head/tmp -B/usr/local/x86_64-freebsd/bin/
-fomit-frame-pointer  -mrtd  -mregparm=3  -DUSE_XREAD  -DUFS1_AND_UFS2
-DFLAGS=0x80  -DSIOPRT=0x3f8  -DSIOFMT=0x3  -DSIOSPD=9600
-I/opt2/branches/head/sys/boot/i386/boot2/../../common
-I/opt2/branches/head/sys/boot/i386/boot2/../btx/lib -I.  -Wall
-Waggregate-return -Wbad-function-cast -Wcast-align  -Wmissing-declarations
-Wmissing-prototypes -Wnested-externs  -Wpointer-arith -Wshadow
-Wstrict-prototypes -Wwrite-strings  -Winline -march=i386 -ffreestanding
-mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float -m32
-std=gnu99    -Os  -fno-guess-branch-probability  -fno-unit-at-a-time
--param max-inline-insns-single=100 -mpreferred-stack-boundary=2   -m32 -c
/opt2/branches/head/sys/boot/i386/boot2/sio.S -o sio.o
/usr/local/x86_64-freebsd/bin/ld -static -N --gc-sections -m elf_i386_fbsd
-Ttext 0x2000 -o boot2.out
/usr/obj/opt2/branches/head/sys/boot/i386/boot2/../btx/lib/crt0.o boot2.o
sio.o
objcopy -S -O binary boot2.out boot2.bin
btxld -v -E 0x2000 -f bin -b
/usr/obj/opt2/branches/head/sys/boot/i386/boot2/../btx/btx/btx -l
boot2.ldr  -o boot2.ld -P 1 boot2.bin
kernel: ver=1.02 size=690 load=9000 entry=9010 map=16M pgctl=1:1
client: fmt=bin size=195f text=0 data=0 bss=0 entry=0
output: fmt=bin size=21ef text=200 data=1fef org=0 entry=0
-1007 bytes available
*** Error code 1

Stop.
make[6]: stopped in /opt2/branches/head/sys/boot/i386/boot2
*** Error code 1

Stop.
make[5]: stopped in /opt2/branches/head/sys/boot/i386
*** Error code 1

Stop.
make[4]: stopped in /opt2/branches/head/sys/boot
*** Error code 1

Stop.
make[3]: stopped in /opt2/branches/head/sys
*** Error code 1

Stop.
make[2]: stopped in /opt2/branches/head
*** Error code 1

Stop.
make[1]: stopped in /opt2/branches/head
*** Error code 1

Stop.
make: stopped in /opt2/branches/head

Script done on Sat Mar 28 13:44:24 2015

--
Craig



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAG=rPVcXPMqifAJvg_-XNWrOUzDLya1UMWW5KMymymyayM25=w>