gcc: add patch from gcc-4.9-branch that fixes gcc bug 61801.

Without this patch, gcc-4.9.1 miscompiles glibc-2.20 setxid NTPL code,
resulting in setgid() returning ENOSYS.
This commit is contained in:
Juan RP 2014-09-08 18:07:07 +02:00
parent 4fa6ce5888
commit 10c550bfab
2 changed files with 16 additions and 3 deletions

View File

@ -0,0 +1,14 @@
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61801
--- gcc/sched-deps.c 2014/04/11 12:49:40 209304
+++ gcc/sched-deps.c 2014/07/17 07:48:49 212739
@@ -2750,7 +2750,8 @@
Consider for instance a volatile asm that changes the fpu rounding
mode. An insn should not be moved across this even if it only uses
pseudo-regs because it might give an incorrectly rounded result. */
- if (code != ASM_OPERANDS || MEM_VOLATILE_P (x))
+ if ((code != ASM_OPERANDS || MEM_VOLATILE_P (x))
+ && !DEBUG_INSN_P (insn))
reg_pending_barrier = TRUE_BARRIER;
/* For all ASM_OPERANDS, we must traverse the vector of input operands.

View File

@ -2,7 +2,7 @@
pkgname=gcc
_majorver=4.9
version=${_majorver}.1
revision=7
revision=8
short_desc="The GNU C Compiler"
maintainer="Juan RP <xtraeme@gmail.com>"
homepage="http://gcc.gnu.org"
@ -17,8 +17,7 @@ if [ "$CHROOT_READY" ]; then
hostmakedepends="perl flex"
fi
makedepends="zlib-devel libmpc-devel>=1.0.1_2 cloog-devel>=0.18"
depends="binutils"
depends="binutils glibc-devel"
# mudflap is gone in 4.9
replaces="libmudflap>=0 libmudflap-devel>=0 chroot-gcc>=0"