Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 529496

Summary: [4.8/ICE] sys-apps/busybox-1.21.0 on ARM - networking/libiproute/ipaddress.c:589:1: error: insn does not satisfy its constraints
Product: Gentoo Linux Reporter: Biser Milanov <bisermilanov>
Component: [OLD] Core systemAssignee: Gentoo Toolchain Maintainers <toolchain>
Status: RESOLVED WONTFIX    
Severity: normal CC: bisermilanov
Priority: Normal    
Version: unspecified   
Hardware: ARM   
OS: Linux   
See Also: https://bugs.gentoo.org/show_bug.cgi?id=529144
https://bugs.gentoo.org/show_bug.cgi?id=518598
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: build.log
emerge --info
emerge -pqv
environment
build.log
emerge --info
emerge -pqv
environment
ipaddress.i

Description Biser Milanov 2014-11-16 15:03:19 UTC
Busybox fails to compile with:

networking/libiproute/ipaddress.c: In function ‘ipaddr_list_or_flush’:
networking/libiproute/ipaddress.c:589:1: error: insn does not satisfy its constraints:
 }
 ^
(insn 1599 566 579 45 (set (reg:QI 1 r1)
        (reg:QI 13 sp)) networking/libiproute/ipaddress.c:494 198 {*arm_movqi_insn}
     (nil))
networking/libiproute/ipaddress.c:589:1: internal compiler error: in reload_cse_simplify_operands, at postreload.c:411
Comment 1 Biser Milanov 2014-11-16 15:03:43 UTC
Created attachment 389488 [details]
build.log
Comment 2 Biser Milanov 2014-11-16 15:04:12 UTC
Created attachment 389490 [details]
emerge --info
Comment 3 Biser Milanov 2014-11-16 15:04:36 UTC
Created attachment 389492 [details]
emerge -pqv
Comment 4 Biser Milanov 2014-11-16 15:04:53 UTC
Created attachment 389494 [details]
environment
Comment 5 Biser Milanov 2014-11-16 15:07:51 UTC
Created attachment 389498 [details]
build.log
Comment 6 Biser Milanov 2014-11-16 15:08:49 UTC
Created attachment 389500 [details]
emerge --info
Comment 7 Biser Milanov 2014-11-16 15:09:19 UTC
Created attachment 389502 [details]
emerge -pqv
Comment 8 Biser Milanov 2014-11-16 15:09:39 UTC
Created attachment 389504 [details]
environment
Comment 9 SpanKY gentoo-dev 2014-11-18 19:22:56 UTC
please go into the build dir and see if it fails when you do:
  armv6j-hardfloat-linux-gnueabi-gcc -Wp,-MD,networking/libiproute/.ipaddress.o.d   -std=gnu99 -Iinclude -Ilibbb  -include include/autoconf.h -D_GNU_SOURCE -DNDEBUG -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D"BB_VER=KBUILD_STR(1.21.0)" -DBB_BT=AUTOCONF_TIMESTAMP -O2 -march=armv6j -mfpu=vfp -mfloat-abi=hard -fno-strict-aliasing -Wall -Wshadow -Wwrite-strings -Wundef -Wstrict-prototypes -Wunused -Wunused-parameter -Wunused-function -Wunused-value -Wmissing-prototypes -Wmissing-declarations -Wno-format-security -Wdeclaration-after-statement -Wold-style-definition -fno-builtin-strlen -finline-limit=0 -ffunction-sections -fdata-sections -fno-guess-branch-probability -funsigned-char   -fno-unwind-tables -fno-asynchronous-unwind-tables      -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(ipaddress)"  -D"KBUILD_MODNAME=KBUILD_STR(ipaddress)" -c -o networking/libiproute/ipaddress.o networking/libiproute/ipaddress.c

if it does, change the -c to -E and upload the ipaddress.o file for us
Comment 10 Biser Milanov 2014-11-18 22:03:47 UTC
It fails with:

networking/libiproute/ipaddress.c: In function ‘ipaddr_list_or_flush’:
networking/libiproute/ipaddress.c:589:1: error: insn does not satisfy its constraints:
 }
 ^
(insn 1599 566 579 45 (set (reg:QI 1 r1)
        (reg:QI 13 sp)) networking/libiproute/ipaddress.c:494 198 {*arm_movqi_insn}
     (nil))
networking/libiproute/ipaddress.c:589:1: internal compiler error: in reload_cse_simplify_operands, at postreload.c:411

Attaching ipaddress.o
Comment 11 Biser Milanov 2014-11-18 22:04:23 UTC
Created attachment 389658 [details]
ipaddress.i
Comment 12 SpanKY gentoo-dev 2014-12-31 07:42:09 UTC
i've tried to reproduce this with your .i file, but building on my system with a armv6j-hardfloat-linux-gnueabi-gcc-4.8.3 passes :/
Comment 13 Ciprian Ciubotariu 2015-02-21 18:02:06 UTC
Happens to me too on RPI 256Mb. However, I first encountered #529144 when git was due for upgrade. Both problems started after upgrading to gcc-4.8.3.
Comment 14 Ciprian Ciubotariu 2015-02-21 18:02:42 UTC
I expected the system to automatically provide a link to #529144 ...

Here it is: https://bugs.gentoo.org/show_bug.cgi?id=529144
Comment 15 Ciprian Ciubotariu 2015-02-21 18:16:08 UTC
I just noticed that my system is hardened. Is yours too?
Comment 16 Biser Milanov 2015-02-22 05:48:49 UTC
> I just noticed that my system is hardened. Is yours too?
It is. Tried emerging on my main machine with a crosscompiler and it still fails with the same error. Will attach build info soon.
Comment 17 Anthony Basile gentoo-dev 2015-02-22 12:41:24 UTC
(In reply to Ciprian Ciubotariu from comment #13)
> Happens to me too on RPI 256Mb. However, I first encountered #529144 when
> git was due for upgrade. Both problems started after upgrading to gcc-4.8.3.

Okay this is probably related to but #518598.  Currently something bad is happening with gcc-4.8 + hardening independant the libc.  I have now seen it on armv7a glibc/uclibc/musl.  

I have held back arm + uclibc profiles to gcc-4.7.  I can do that for *all* hardened arm profiles until we get this solved.
Comment 18 Ciprian Ciubotariu 2015-02-23 18:56:58 UTC
I no longer have gcc-4.7 installed; right now I am re-emerging gcc-4.8.3, and well... it does take a while.

Downgrading the system back to gcc-4.7 might take even longer - is this even possible?
Comment 19 Ciprian Ciubotariu 2015-03-01 18:22:35 UTC
I was able to safely compile both git-2.0.5 and busybox-1.23.1-r1 with gcc-4.7-3-r1 on arm hardened.

But now I have a mixed system (with git and busybox relying on gcc-4.7 and the rest on gcc-4.8).

What can I do next to help?
Comment 20 Anthony Basile gentoo-dev 2015-03-02 11:33:38 UTC
(In reply to Ciprian Ciubotariu from comment #19)
> I was able to safely compile both git-2.0.5 and busybox-1.23.1-r1 with
> gcc-4.7-3-r1 on arm hardened.
> 
> But now I have a mixed system (with git and busybox relying on gcc-4.7 and
> the rest on gcc-4.8).
> 
> What can I do next to help?

It is okay (with some caveats) to have both.  But until we figure out why hardened + arm + gcc-4.8 is broken, its best to use 4.7.
Comment 21 Ciprian Ciubotariu 2015-03-15 19:12:46 UTC
I also tried gcc-4.9.2, since it's the latest in the portage tree. It successfully compiled git, but busybox still yields the same error.
Comment 22 SpanKY gentoo-dev 2015-10-22 14:29:40 UTC
gcc-4.9 is stable now, so throwing away older bugs we don't plan on doing backports for as this should be fixed w/4.9+.  please re-open if it's still an issue with 4.9.3+ though.