gcc: Fix bug causing Glibc miscompilation
http://hydra.nixos.org/build/16564205
This commit is contained in:
parent
515dcb0f66
commit
73b75f6157
15
pkgs/development/compilers/gcc/4.8/bug-61801.patch
Normal file
15
pkgs/development/compilers/gcc/4.8/bug-61801.patch
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61801
|
||||||
|
https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=212740
|
||||||
|
|
||||||
|
--- a/gcc/sched-deps.c 2014/07/17 07:48:49 212739
|
||||||
|
+++ b/gcc/sched-deps.c 2014/07/17 07:49:44 212740
|
||||||
|
@@ -2744,7 +2744,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.
|
@ -61,7 +61,7 @@ let version = "4.8.3";
|
|||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
patches = []
|
patches = [ ./bug-61801.patch ]
|
||||||
++ optional enableParallelBuilding ./parallel-bconfig.patch
|
++ optional enableParallelBuilding ./parallel-bconfig.patch
|
||||||
++ optional (cross != null) ./libstdc++-target.patch
|
++ optional (cross != null) ./libstdc++-target.patch
|
||||||
++ optional noSysDirs ./no-sys-dirs.patch
|
++ optional noSysDirs ./no-sys-dirs.patch
|
||||||
|
Loading…
x
Reference in New Issue
Block a user