gimp-plugin-registry version 3.5.3-1 failed to build on armel

Bug #791279 reported by Ricardo Salveti
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Linaro GCC
New
Undecided
Unassigned
gimp-plugin-registry (Ubuntu)
New
Undecided
Unassigned

Bug Description

gimp-plugin-registry version 3.5.3-1 failed to build on armel
Link to failed build: https://launchpad.net/ubuntu/+source/gimp-plugin-registry/3.5.3-1/+build/2466212

Direct link to the build log: https://launchpad.net/ubuntu/+source/gimp-plugin-registry/3.5.3-1/+build/2466212/+files/buildlog_ubuntu-oneiric-armel.gimp-plugin-registry_3.5.3-1_FAILEDTOBUILD.txt.gz

This log snippet might be of interest, since it triggered the matcher 'Purging chroot-autobuild'.
Excerpt 1494 lines into the build log:

 then mv -f ".deps/depthmap.Tpo" ".deps/depthmap.Po"; else rm -f ".deps/depthmap.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.. -pthread -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabi/glib-2.0/include -pthread -I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabi/glib-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/gimp-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/pixman-1 -I/usr/include -Wall -g -O2 -MT diffusion.o -MD -MP -MF ".deps/diffusion.Tpo" -c -o diffusion.o diffusion.c; \
 then mv -f ".deps/diffusion.Tpo" ".deps/diffusion.Po"; else rm -f ".deps/diffusion.Tpo"; exit 1; fi
/tmp/ccOg9RKj.s: Assembler messages:
/tmp/ccOg9RKj.s:516: Error: r13 not allowed here -- `rsb r2,sp,r2,lsl#2'
make[4]: *** [diffusion.o] Error 1
make[4]: Leaving directory `/build/buildd/gimp-plugin-registry-3.5.3/focus-blur/focusblur-3.2.5/src'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/build/buildd/gimp-plugin-registry-3.5.3/focus-blur/focusblur-3.2.5'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/build/buildd/gimp-plugin-registry-3.5.3/focus-blur/focusblur-3.2.5'
make[1]: *** [build-stamp] Error 2
make[1]: Leaving directory `/build/buildd/gimp-plugin-registry-3.5.3/focus-blur'
make: *** [build-stamp] Error 1
dpkg-buildpackage: error: debian/rules build gave error exit status 2
******************************************************************************
Build finished at 20110511-1634
FAILED [dpkg-buildpackage died]
Purging chroot-autobuild/build/buildd/gimp-plugin-registry-3.5.3

Marcin Juszkiewicz (hrw)
tags: added: thumb2
Revision history for this message
Jani Monoses (jani) wrote :

The file that fails to build is focus-blur/focusblur-3.2.5/src/diffusion.c
I have attached the preprocessor output

It works with gcc 4.4 and 4.5 at any optimization level and with 4.6 at -O0.
It fails with 4.6 at -O1 -O2 and -O3

Revision history for this message
Michael Hope (michaelh1) wrote :

Thank you for the bug report. I've confirmed this with gcc-linaro-4.6-2011.06-0 on ARM:

michaelh@ursa1:~/linaro/bugs$ /tools/toolchains/arch/armv7l/gcc-linaro-4.6-2011.06-0-armv7l-maverick-cbuild130-ursa3-cortexa9r1/bin/gcc -O2 -c diffusion.i
/tmp/ccP2VAeB.s: Assembler messages:
/tmp/ccP2VAeB.s:274: Error: r13 not allowed here -- `rsb r1,sp,r1,lsl#2'

The assembler is correct - the sp register is not allowed in that position for that instruction.

The work-around is to compile at -O0. The fault still occurs at -O1, -O2, and -O3. The fault also exists in gcc-4.6.0. It does not exist in gcc-linaro-4.5-2011.06, gcc-4.5.3, or gcc-4.7~svn174795.

The root cause is a duplicate of the linked bug.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.