[version] bump gcc and other projects to 7.4.0
[toolchains.git] / patches / gcc-patch.txt
blobad8f01d595e443b004a6828032b43e2aab8ad1b4
1 diff -durN gcc-6.2.0/gcc/config/arm/t-arm-elf gcc-6.2.0.patched/gcc/config/arm/t-arm-elf
2 --- gcc-6.2.0/gcc/config/arm/t-arm-elf  2016-01-04 06:30:50.000000000 -0800
3 +++ gcc-6.2.0.patched/gcc/config/arm/t-arm-elf  2016-09-30 11:41:23.318385513 -0700
4 @@ -25,22 +25,36 @@
5  #MULTILIB_DIRNAMES    += fa526 fa626 fa606te fa626te fmp626 fa726te
6  #MULTILIB_EXCEPTIONS  += *mthumb*/*mcpu=fa526 *mthumb*/*mcpu=fa626
7  
8 -#MULTILIB_OPTIONS      += march=armv7
9 -#MULTILIB_DIRNAMES     += thumb2
10 -#MULTILIB_EXCEPTIONS   += march=armv7* marm/*march=armv7*
11 -#MULTILIB_MATCHES      += march?armv7=march?armv7-a
12 -#MULTILIB_MATCHES      += march?armv7=march?armv7-r
13 -#MULTILIB_MATCHES      += march?armv7=march?armv7-m
14 -#MULTILIB_MATCHES      += march?armv7=mcpu?cortex-a8
15 -#MULTILIB_MATCHES      += march?armv7=mcpu?cortex-r4
16 -#MULTILIB_MATCHES      += march?armv7=mcpu?cortex-m3
17 +# build a bunch of specialized versions of libcc for particular cores
18 +#MULTILIB_OPTIONS    += mcpu=arm7tdmi/mcpu=arm9tdmi/mcpu=arm920t/mcpu=arm926ej-s/mcpu=arm1136j-s/mcpu=arm1136jf-s/mcpu=arm1176jz-s/mcpu=arm1176jzf-s/mcpu=xscale/mcpu=mpcore/mcpu=cortex-a8/cortex-a9/march=armv4t/march=armv5t/march=armv5te/march=armv6/march=armv6j/march=armv6k/march=armv6z/march=armv6zk/march=armv7-a/march=armv7-r
19 +#MULTILIB_DIRNAMES   += arm7tdmi arm9tdmi arm920t arm926ej-s arm1136j-s arm1136jf-s arm1176jz-s arm1176jzf-s xscale mpcore cortex-a8 cortex-a9 cortex-m3 armv4t armv5t armv5te armv6 armv6j armv6k armv6z armv6zk armv7-a armv7-r
20 +#MULTILIB_OPTIONS    += mcpu=arm7tdmi/mcpu=arm9tdmi/mcpu=arm920t/mcpu=arm926ej-s/mcpu=arm1136j-s/mcpu=arm1136jf-s/mcpu=arm1176jz-s/mcpu=arm1176jzf-s/mcpu=xscale/mcpu=mpcore/mcpu=cortex-a8/mcpu=cortex-a9
21 +#MULTILIB_DIRNAMES   += arm7tdmi arm9tdmi arm920t arm926ej-s arm1136j-s arm1136jf-s arm1176jz-s arm1176jzf-s xscale mpcore cortex-a8 cortex-a9
23 +MULTILIB_OPTIONS      += march=armv7
24 +MULTILIB_DIRNAMES     += thumb2
25 +MULTILIB_EXCEPTIONS   += march=armv7* marm/*march=armv7*
26 +MULTILIB_MATCHES      += march?armv7=march?armv7-a
27 +MULTILIB_MATCHES      += march?armv7=march?armv7-r
28 +MULTILIB_MATCHES      += march?armv7=march?armv7-m
29 +MULTILIB_MATCHES      += march?armv7=mcpu?cortex-a15
30 +MULTILIB_MATCHES      += march?armv7=mcpu?cortex-a9
31 +MULTILIB_MATCHES      += march?armv7=mcpu?cortex-a8
32 +MULTILIB_MATCHES      += march?armv7=mcpu?cortex-r4
33 +MULTILIB_MATCHES      += march?armv7=mcpu?cortex-m4
34 +MULTILIB_MATCHES      += march?armv7=mcpu?cortex-m3
36 +#MULTILIB_OPTIONS      += mfpu=vfp
37 +#MULTILIB_DIRNAMES     += vfp
38 +#MULTILIB_MATCHES      += mfpu?vfp=mcpu?arm1136jf-s
39 +#MULTILIB_MATCHES      += mfpu?vfp=mcpu?arm1136jzf-s
41  # Not quite true.  We can support hard-vfp calling in Thumb2, but how do we
42  # express that here?  Also, we really need architecture v5e or later
43  # (mcrr etc).
44 -MULTILIB_OPTIONS       += mfloat-abi=hard
45 -MULTILIB_DIRNAMES      += fpu
46 -MULTILIB_EXCEPTIONS    += *mthumb/*mfloat-abi=hard*
47 +#MULTILIB_OPTIONS       += mfloat-abi=hard
48 +#MULTILIB_DIRNAMES      += fpu
49 +#MULTILIB_EXCEPTIONS    += *mthumb/*mfloat-abi=hard*
50  #MULTILIB_EXCEPTIONS    += *mcpu=fa526/*mfloat-abi=hard*
51  #MULTILIB_EXCEPTIONS    += *mcpu=fa626/*mfloat-abi=hard*
53 @@ -56,8 +70,8 @@
54  # MULTILIB_DIRNAMES   += fpu soft
55  # MULTILIB_EXCEPTIONS += *mthumb/*mfloat-abi=hard*
56  # 
57 -# MULTILIB_OPTIONS    += mno-thumb-interwork/mthumb-interwork
58 -# MULTILIB_DIRNAMES   += normal interwork
59 +MULTILIB_OPTIONS    += mno-thumb-interwork/mthumb-interwork
60 +MULTILIB_DIRNAMES   += normal interwork
61  # 
62  # MULTILIB_OPTIONS    += fno-leading-underscore/fleading-underscore
63  # MULTILIB_DIRNAMES   += elf under
64 diff -durN gcc-6.2.0/gcc/config/i386/t-x86_64-elf gcc-6.2.0.patched/gcc/config/i386/t-x86_64-elf
65 --- gcc-6.2.0/gcc/config/i386/t-x86_64-elf      1969-12-31 16:00:00.000000000 -0800
66 +++ gcc-6.2.0.patched/gcc/config/i386/t-x86_64-elf      2016-09-30 11:55:53.602700086 -0700
67 @@ -0,0 +1,7 @@
68 +# Add redzoneless libgcc
69 +MULTILIB_OPTIONS  += mno-red-zone
70 +MULTILIB_DIRNAMES += no-red-zone
72 +# Build a 32bit libgcc as well
73 +MULTILIB_OPTIONS  += m32
74 +MULTILIB_DIRNAMES  += 32
75 Binary files gcc-6.2.0/gcc/config/i386/.t-x86_64-elf.swp and gcc-6.2.0.patched/gcc/config/i386/.t-x86_64-elf.swp differ
76 diff -durN gcc-6.2.0/gcc/config.gcc gcc-6.2.0.patched/gcc/config.gcc
77 --- gcc-6.2.0/gcc/config.gcc    2016-06-08 06:34:25.000000000 -0700
78 +++ gcc-6.2.0.patched/gcc/config.gcc    2016-09-30 11:41:23.318385513 -0700
79 @@ -1418,6 +1418,7 @@
80         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h newlib-stdint.h i386/i386elf.h"
81         ;;
82  x86_64-*-elf*)
83 +       tmake_file="${tmake_file} i386/t-x86_64-elf"
84         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h newlib-stdint.h i386/i386elf.h i386/x86-64.h"
85         ;;
86  x86_64-*-rtems*)