Andreas Radke <a.radke@xxxxxxxx> wrote: >I've bisected gcc from 4.7.3 to broken 4.8.1 and found this commit >braking libdrm/nouveau for me: >http://gcc.gnu.org/git/?p=gcc.git;a=commit;h=32b227ebedc3dde524cdbb3bfa7ccbca23e2a185 This hints at something depending on undefined evaluation order between sequence points. Richard. >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 >work. > >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. > >-Andy >ArchLinux