hey

 This problem with busybox:
 http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=621137
 seems to be a toolchain issue.

 It occurs with FSF GCC 4.5.2 but not 4.6, and it doesn't occur with
 Linaro GCC 4.5 but it does with Debian gcc-4.5.  I'm trying to identify
 the fix which Linaro applied to solve this!  :-)  Michael Hope told me
 he remembers we fixed something similar for Qt, but he couldn't find
 the patch and suggested I post here to get feedback.

 I've pushed ash.i and .s at:
 http://people.linaro.org/~lool/ash.i
 which you can build with:
gcc -save-temps  -std=gnu99 -Wall -Wshadow -Wwrite-strings -Wundef 
-Wstrict-prototypes -Wunused -Wunused-parameter -Wunused-function 
-Wunused-value -Wmissing-prototypes -Wmissing-declarations 
-Wdeclaration-after-statement -Wold-style-definition -fno-builtin-strlen 
-finline-limit=0 -fomit-frame-pointer -ffunction-sections -fdata-sections 
-fno-guess-branch-probability -funsigned-char -static-libgcc 
-falign-functions=1 -falign-jumps=1 -falign-labels=1 -falign-loops=1 -g -Os    
-c -o ash2.o ash.i

 the interesting part is that ash.s has tryexec as not returning, when
 it does return:
 grep ^tryexec ash.s -A5 | grep return

 this seems to be due to the combination of tryexec being static, its
 parent being noreturn, and one argument of tryexec being unused.

 Any idea of which Linaro patch solved this?  :-)

 Does it make sense to raise this to FSF GCC 4.5?

   Thanks!
-- 
Loïc Minier

_______________________________________________
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain

Reply via email to