gcc: Include patch scheduled for GCC 4.8.3 to fix epilogue on ARM
authorHolger Hans Peter Freyther <holger@moiji-mobile.com>
Fri, 31 Jan 2014 09:45:17 +0000 (10:45 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 31 Jan 2014 15:44:22 +0000 (15:44 +0000)
commit4b3f755aeee777a4c94e175ffd670c0ad33eaee6
tree64b6da3868801fcffe569ac36f93166c3727b251
parent597c571db7231beeacb1ce209ef0c52a54d4afac
gcc: Include patch scheduled for GCC 4.8.3 to fix epilogue on ARM

GCC 4.8.0, 4.8.1 and 4.8.2 can generate broken epilogues for the
ABI used by the kernel. Apply the patch that is included for GCC
4.8.3 from http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58854.

The issue was found on Yocto/Dora and the patch should be backported
to this branch. A kernel built with Dora's GCC 4.8.1 misbehaved on:

 while true;
 do
    (for i in `seq 1 100`;
        do
            echo "Log message... $RANDOM";
        done) | logger;
 done

busybox's syslogd would from time to read a huge negative value and
then exit, strace would get stuck waiting on a syscall. After this
patch it appears to work better.

(From OE-Core rev: 3004eb3b7ee5fd8dfe9c4e5749b4e125d0bd4b59)

Signed-off-by: Holger Hans Peter Freyther <holger@moiji-mobile.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/gcc/gcc-4.8.inc
meta/recipes-devtools/gcc/gcc-4.8/0048-PR58854_fix_arm_apcs_epilogue.patch [new file with mode: 0644]