maybe a bug in gcc 4.8 triggered with libdrm

Richard Biener
Wed Jul 24 10:59:00 GMT 2013

Andreas Radke <> wrote:

>I've bisected gcc from 4.7.3 to broken 4.8.1 and found this commit
>braking libdrm/nouveau for me:

This hints at something depending on undefined evaluation order between sequence points.

>From that commit on I see glitches on Firefox tabs and dmesg telling
>things like:
>nouveau E[   PFIFO][0000:01:00.0] DMA_PUSHER - ch 1 [X[522]] get
>0xbeef0200 put 0x00020dd4 state 0xc002018c ...0x00000000
>nouveau E[  X[522]] reloc wait_idle failed: -16
>nouveau E[  X[522]] reloc apply: -16
>This quickly leads to desktop crashes.
>Maybe someone knows more if this gcc commit does something wrong or if
>code in libdrm is broken.
>Later code in /gcc/gimplify.c changed a lot. A simple patch -R doesn't
>Any suggestions welcome.
>CC'ing the patch author and some libdrm/nouveau people.
>PS: I will soon replace that old nv44 card with a radeon card. Then I
>won't be able to reproduce it anymore.

More information about the Gcc-help mailing list