[gentoo-commits] proj/gcc-patches:master commit in: 9.1.0/gentoo/
commit: 69a8cb8c55b7ca9682dc640ba748058046fa2952 Author: Sergei Trofimovich gentoo org> AuthorDate: Wed Jan 8 22:38:51 2020 + Commit: Sergei Trofimovich gentoo org> CommitDate: Wed Jan 8 22:38:51 2020 + URL:https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=69a8cb8c 9.1.0: mark unreleased changes abandoned Signed-off-by: Sergei Trofimovich gentoo.org> 9.1.0/gentoo/README.history | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/9.1.0/gentoo/README.history b/9.1.0/gentoo/README.history index 0c5cd73..482d0b4 100644 --- a/9.1.0/gentoo/README.history +++ b/9.1.0/gentoo/README.history @@ -1,4 +1,4 @@ -2 TODO +2 abandoned in favour of 9.2 branch + 29_all_hppa64-patchable-entry-90751.patch 1.11 Jun 2019
[gentoo-commits] proj/gcc-patches:master commit in: 9.1.0/gentoo/
commit: c7f028de987b25249879415d4eb730ee13e47d9b Author: Sergei Trofimovich gentoo org> AuthorDate: Sat Jun 8 17:48:04 2019 + Commit: Sergei Trofimovich gentoo org> CommitDate: Sat Jun 8 17:48:04 2019 + URL:https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=c7f028de 9.1.0: backport PR90751 (hppa64 entry stub) Signed-off-by: Sergei Trofimovich gentoo.org> .../29_all_hppa64-patchable-entry-90751.patch | 120 + 9.1.0/gentoo/README.history| 3 + 2 files changed, 123 insertions(+) diff --git a/9.1.0/gentoo/29_all_hppa64-patchable-entry-90751.patch b/9.1.0/gentoo/29_all_hppa64-patchable-entry-90751.patch new file mode 100644 index 000..d93fe0a --- /dev/null +++ b/9.1.0/gentoo/29_all_hppa64-patchable-entry-90751.patch @@ -0,0 +1,120 @@ +https://gcc.gnu.org/PR90751 + +From 5df07cedc211b67011688e911db34ee18997eedf Mon Sep 17 00:00:00 2001 +From: danglin +Date: Fri, 7 Jun 2019 23:20:44 + +Subject: [PATCH] PR target/90751 * config/pa/pa-linux.h + (ASM_DECLARE_FUNCTION_NAME): Update comment. Call pa_output_function_label. + (TARGET_ASM_FUNCTION_PROLOGUE): define. * + config/pa/pa-protos.h (pa_output_function_label): Declare.* + config/pa/pa.c (pa_output_function_prologue): Add ATTRIBUTE_UNUSEDto + declaration. (pa_linux_output_function_prologue): Declare. + (TARGET_ASM_FUNCTION_PROLOGUE): Delete define. + (pa_output_function_label): New. (pa_output_function_prologue): Revise + to use pa_output_function_label. (pa_linux_output_function_prologue): + New. * config/pa/pa.h (TARGET_ASM_FUNCTION_PROLOGUE): Define. + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-9-branch@272061 138bc75d-0d04-0410-961f-82ee72b054a4 +--- a/gcc/config/pa/pa-linux.h b/gcc/config/pa/pa-linux.h +@@ -109,9 +109,14 @@ along with GCC; see the file COPYING3. If not see + { \ + ASM_OUTPUT_TYPE_DIRECTIVE (FILE, NAME, "function"); \ + ASM_DECLARE_RESULT (FILE, DECL_RESULT (DECL)); \ ++ pa_output_function_label (FILE);\ + } \ + while (0) + ++/* Output function prologue for linux. */ ++#undef TARGET_ASM_FUNCTION_PROLOGUE ++#define TARGET_ASM_FUNCTION_PROLOGUE pa_linux_output_function_prologue ++ + /* As well as globalizing the label, we need to encode the label +to ensure a plabel is generated in an indirect call. */ + +--- a/gcc/config/pa/pa-protos.h b/gcc/config/pa/pa-protos.h +@@ -108,6 +108,7 @@ extern void pa_asm_output_aligned_local (FILE *, const char *, + extern void pa_hpux_asm_output_external (FILE *, tree, const char *); + extern HOST_WIDE_INT pa_initial_elimination_offset (int, int); + extern HOST_WIDE_INT pa_function_arg_size (machine_mode, const_tree); ++extern void pa_output_function_label (FILE *); + + extern const int pa_magic_milli[]; + +--- a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c +@@ -118,7 +118,8 @@ static void set_reg_plus_d (int, int, HOST_WIDE_INT, int); + static rtx pa_function_value (const_tree, const_tree, bool); + static rtx pa_libcall_value (machine_mode, const_rtx); + static bool pa_function_value_regno_p (const unsigned int); +-static void pa_output_function_prologue (FILE *); ++static void pa_output_function_prologue (FILE *) ATTRIBUTE_UNUSED; ++static void pa_linux_output_function_prologue (FILE *) ATTRIBUTE_UNUSED; + static void update_total_code_bytes (unsigned int); + static void pa_output_function_epilogue (FILE *); + static int pa_adjust_cost (rtx_insn *, int, rtx_insn *, int, unsigned int); +@@ -262,8 +263,6 @@ static size_t n_deferred_plabels = 0; + #undef TARGET_ASM_INTEGER + #define TARGET_ASM_INTEGER pa_assemble_integer + +-#undef TARGET_ASM_FUNCTION_PROLOGUE +-#define TARGET_ASM_FUNCTION_PROLOGUE pa_output_function_prologue + #undef TARGET_ASM_FUNCTION_EPILOGUE + #define TARGET_ASM_FUNCTION_EPILOGUE pa_output_function_epilogue + +@@ -3842,16 +3841,10 @@ pa_compute_frame_size (poly_int64 size, int *fregs_live) + & ~(PREFERRED_STACK_BOUNDARY / BITS_PER_UNIT - 1)); + } + +-/* On HP-PA, move-double insns between fpu and cpu need an 8-byte block +- of memory. If any fpu reg is used in the function, we allocate +- such a block here, at the bottom of the frame, just in case it's needed. ++/* Output function label, and associated .PROC and .CALLINFO statements. */ + +- If this function is a leaf procedure, then we may choose not +- to do a "save" insn. The decision about whether or not +- to do this is made in regclass.c. */ +- +-static void +-pa_output_function_prologue (FILE *file) ++void ++pa_output_function_label (FILE *file) + { + /* The function's label and associated .PROC must never be + separated and must be output *after* any profiling declarations +@@ -3897,7 +3890,22 @@ pa_output_function_prologue (FI
[gentoo-commits] proj/gcc-patches:master commit in: 9.1.0/gentoo/
commit: 877f78485c04a5c05cb30d38654ae030d61c2f47 Author: Sergei Trofimovich gentoo org> AuthorDate: Sat Jun 1 07:59:02 2019 + Commit: Sergei Trofimovich gentoo org> CommitDate: Sat Jun 1 07:59:02 2019 + URL:https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=877f7848 9.1.0: cut 1.1 patchset Three new patches: 26_all_ipa-incomplete.patch: fix ICE on pcsx2 package 27_all_es-po.patch: fix ICE on es lcoales 28_all_disable-riscv32-ABIs.patch: disable unconditional riscv32 ABIs Bug: https://gcc.gnu.org/PR90303 Bug: https://bugs.gentoo.org/686930 Bug: https://gcc.gnu.org/PR90528 Bug: https://bugs.gentoo.org/686076 Bug: https://gcc.gnu.org/PR90419 Signed-off-by: Sergei Trofimovich gentoo.org> 9.1.0/gentoo/README.history | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/9.1.0/gentoo/README.history b/9.1.0/gentoo/README.history index 737fa71..8325d74 100644 --- a/9.1.0/gentoo/README.history +++ b/9.1.0/gentoo/README.history @@ -1,4 +1,4 @@ -1.1TODO +1.11 Jun 2019 + 26_all_ipa-incomplete.patch + 27_all_es-po.patch + 28_all_disable-riscv32-ABIs.patch
[gentoo-commits] proj/gcc-patches:master commit in: 9.1.0/gentoo/
commit: 5e0282f09dd17cd6af3a668d1c38b15c388aeba2 Author: Sergei Trofimovich gentoo org> AuthorDate: Sat Jun 1 07:37:13 2019 + Commit: Sergei Trofimovich gentoo org> CommitDate: Sat Jun 1 07:37:13 2019 + URL:https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=5e0282f0 9.1.0: disable riscv32 ABIs Currently glibc does not support riscv32. Bug: https://gcc.gnu.org/PR90419 Signed-off-by: Sergei Trofimovich gentoo.org> 9.1.0/gentoo/28_all_disable-riscv32-ABIs.patch | 53 ++ 9.1.0/gentoo/README.history| 1 + 2 files changed, 54 insertions(+) diff --git a/9.1.0/gentoo/28_all_disable-riscv32-ABIs.patch b/9.1.0/gentoo/28_all_disable-riscv32-ABIs.patch new file mode 100644 index 000..ad0128a --- /dev/null +++ b/9.1.0/gentoo/28_all_disable-riscv32-ABIs.patch @@ -0,0 +1,53 @@ +Autogenerated patch disabling the 32bit RISCV support +See https://gcc.gnu.org/PR90419 + +diff -ruN gcc-9.1.0.orig/gcc/config/riscv/t-linux-multilib gcc-9.1.0/gcc/config/riscv/t-linux-multilib +--- gcc-9.1.0.orig/gcc/config/riscv/t-linux-multilib 2017-02-06 22:38:37.0 +0100 gcc-9.1.0/gcc/config/riscv/t-linux-multilib2019-05-18 23:04:54.849400774 +0200 +@@ -1,40 +1,18 @@ + # This file was generated by multilib-generator with the command: +-# ./multilib-generator rv32imac-ilp32-rv32ima,rv32imaf,rv32imafd,rv32imafc,rv32imafdc- rv32imafdc-ilp32d-rv32imafd- rv64imac-lp64-rv64ima,rv64imaf,rv64imafd,rv64imafc,rv64imafdc- rv64imafdc-lp64d-rv64imafd- +-MULTILIB_OPTIONS = march=rv32imac/march=rv32ima/march=rv32imaf/march=rv32imafd/march=rv32imafc/march=rv32imafdc/march=rv32g/march=rv32gc/march=rv64imac/march=rv64ima/march=rv64imaf/march=rv64imafd/march=rv64imafc/march=rv64imafdc/march=rv64g/march=rv64gc mabi=ilp32/mabi=ilp32d/mabi=lp64/mabi=lp64d +-MULTILIB_DIRNAMES = rv32imac \ +-rv32ima \ +-rv32imaf \ +-rv32imafd \ +-rv32imafc \ +-rv32imafdc \ +-rv32g \ +-rv32gc \ +-rv64imac \ ++# ./multilib-generator rv64imac-lp64-rv64ima,rv64imaf,rv64imafd,rv64imafc,rv64imafdc- rv64imafdc-lp64d-rv64imafd- ++MULTILIB_OPTIONS = march=rv64imac/march=rv64ima/march=rv64imaf/march=rv64imafd/march=rv64imafc/march=rv64imafdc/march=rv64g/march=rv64gc mabi=lp64/mabi=lp64d ++MULTILIB_DIRNAMES = rv64imac \ + rv64ima \ + rv64imaf \ + rv64imafd \ + rv64imafc \ + rv64imafdc \ + rv64g \ +-rv64gc ilp32 \ +-ilp32d \ +-lp64 \ ++rv64gc lp64 \ + lp64d +-MULTILIB_REQUIRED = march=rv32imac/mabi=ilp32 \ +-march=rv32imafdc/mabi=ilp32d \ +-march=rv64imac/mabi=lp64 \ ++MULTILIB_REQUIRED = march=rv64imac/mabi=lp64 \ + march=rv64imafdc/mabi=lp64d +-MULTILIB_REUSE = march.rv32imac/mabi.ilp32=march.rv32ima/mabi.ilp32 \ +-march.rv32imac/mabi.ilp32=march.rv32imaf/mabi.ilp32 \ +-march.rv32imac/mabi.ilp32=march.rv32imafd/mabi.ilp32 \ +-march.rv32imac/mabi.ilp32=march.rv32imafc/mabi.ilp32 \ +-march.rv32imac/mabi.ilp32=march.rv32imafdc/mabi.ilp32 \ +-march.rv32imac/mabi.ilp32=march.rv32g/mabi.ilp32 \ +-march.rv32imac/mabi.ilp32=march.rv32gc/mabi.ilp32 \ +-march.rv32imafdc/mabi.ilp32d=march.rv32imafd/mabi.ilp32d \ +-march.rv32imafdc/mabi.ilp32d=march.rv32gc/mabi.ilp32d \ +-march.rv32imafdc/mabi.ilp32d=march.rv32g/mabi.ilp32d \ +-march.rv64imac/mabi.lp64=march.rv64ima/mabi.lp64 \ ++MULTILIB_REUSE = march.rv64imac/mabi.lp64=march.rv64ima/mabi.lp64 \ + march.rv64imac/mabi.lp64=march.rv64imaf/mabi.lp64 \ + march.rv64imac/mabi.lp64=march.rv64imafd/mabi.lp64 \ + march.rv64imac/mabi.lp64=march.rv64imafc/mabi.lp64 \ diff --git a/9.1.0/gentoo/README.history b/9.1.0/gentoo/README.history index d85c980..737fa71 100644 --- a/9.1.0/gentoo/README.history +++ b/9.1.0/gentoo/README.history @@ -1,6 +1,7 @@ 1.1TODO + 26_all_ipa-incomplete.patch + 27_all_es-po.patch + + 28_all_disable-riscv32-ABIs.patch 1.003 May 2019 + 01_all_default-fortify-source.patch
[gentoo-commits] proj/gcc-patches:master commit in: 9.1.0/gentoo/
commit: dc3396cc9b660164ce6d2949907f84a3d04d2a11 Author: Sergei Trofimovich gentoo org> AuthorDate: Sat May 18 08:39:19 2019 + Commit: Sergei Trofimovich gentoo org> CommitDate: Sat May 18 08:39:19 2019 + URL:https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=dc3396cc 9.1.0: fix format string for es locale, bug #686076 Fix a typo in %Qd/%qD mismatch across en/es languages. Reported-and-fixed-by: Boris Carvajal Bug: https://bugs.gentoo.org/686076 Signed-off-by: Sergei Trofimovich gentoo.org> 9.1.0/gentoo/27_all_es-po.patch | 15 +++ 9.1.0/gentoo/README.history | 1 + 2 files changed, 16 insertions(+) diff --git a/9.1.0/gentoo/27_all_es-po.patch b/9.1.0/gentoo/27_all_es-po.patch new file mode 100644 index 000..f74183d --- /dev/null +++ b/9.1.0/gentoo/27_all_es-po.patch @@ -0,0 +1,15 @@ +Fix %qD/%Qd typo that causes gcc's ICE on es locale. + +https://bugs.gentoo.org/686076 +https://gcc.gnu.org/PR90528 +--- a/gcc/po/es.po b/gcc/po/es.po +@@ -20140,7 +20155,7 @@ msgstr "El desplazamiento de %G%qD %s desde el objeto en %qE está fuera de los + + #: gimple-ssa-warn-restrict.c:1803 + msgid "%G%qD offset %s from the object at %qE is out of the bounds of referenced subobject %qD with type %qT at offset %wu" +-msgstr "El desplazamiento de %G%qD %s desde el objeto en %qE está fuera de los límites del subobjeto referenciado %Qd con tipo %qT en el desplazamiento %wu" ++msgstr "El desplazamiento de %G%qD %s desde el objeto en %qE está fuera de los límites del subobjeto referenciado %qD con tipo %qT en el desplazamiento %wu" + + #: gimple-ssa-warn-restrict.c:1980 + #, fuzzy diff --git a/9.1.0/gentoo/README.history b/9.1.0/gentoo/README.history index 3589de0..d85c980 100644 --- a/9.1.0/gentoo/README.history +++ b/9.1.0/gentoo/README.history @@ -1,5 +1,6 @@ 1.1TODO + 26_all_ipa-incomplete.patch + + 27_all_es-po.patch 1.003 May 2019 + 01_all_default-fortify-source.patch
[gentoo-commits] proj/gcc-patches:master commit in: 9.1.0/gentoo/
commit: 275ab714637a64672c6630cfd744af2c70957d5a Author: Sergei Trofimovich gentoo org> AuthorDate: Fri May 17 08:25:33 2019 + Commit: Sergei Trofimovich gentoo org> CommitDate: Fri May 17 08:25:33 2019 + URL:https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=275ab714 9.1.0: fix ICE on incomplete types in IPA Observed as a crash on games-emulation/pcsx2-1.4.0. Known as https://gcc.gnu.org/PR90303 Bug: https://gcc.gnu.org/PR90303 Signed-off-by: Sergei Trofimovich gentoo.org> 9.1.0/gentoo/26_all_ipa-incomplete.patch | 52 9.1.0/gentoo/README.history | 3 ++ 2 files changed, 55 insertions(+) diff --git a/9.1.0/gentoo/26_all_ipa-incomplete.patch b/9.1.0/gentoo/26_all_ipa-incomplete.patch new file mode 100644 index 000..90cbd57 --- /dev/null +++ b/9.1.0/gentoo/26_all_ipa-incomplete.patch @@ -0,0 +1,52 @@ +On Gentoo the crash was observed on games-emulation/pcsx2 +https://gcc.gnu.org/PR90303 + +From b740088ad2f795465023e16671d385df7eb1dae7 Mon Sep 17 00:00:00 2001 +From: jakub +Date: Fri, 3 May 2019 07:32:06 + +Subject: [PATCH] PR tree-optimization/90303 * ipa-devirt.c + (obj_type_ref_class, get_odr_type): Don't use TYPE_CANONICAL for + TYPE_STRUCTURAL_EQUALITY_P types in !in_lto_p mode. + + * g++.target/i386/pr90303.C: New test. + + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@270835 138bc75d-0d04-0410-961f-82ee72b054a4 +--- + gcc/ipa-devirt.c| 4 ++-- + gcc/testsuite/g++.target/i386/pr90303.C | 8 + +--- a/gcc/ipa-devirt.c b/gcc/ipa-devirt.c +@@ -2020,7 +2020,7 @@ obj_type_ref_class (const_tree ref) + ref = TREE_VALUE (TYPE_ARG_TYPES (ref)); + gcc_checking_assert (TREE_CODE (ref) == POINTER_TYPE); + tree ret = TREE_TYPE (ref); +- if (!in_lto_p) ++ if (!in_lto_p && !TYPE_STRUCTURAL_EQUALITY_P (ret)) + ret = TYPE_CANONICAL (ret); + else + ret = get_odr_type (ret)->type; +@@ -2042,7 +2042,7 @@ get_odr_type (tree type, bool insert) + int base_id = -1; + + type = TYPE_MAIN_VARIANT (type); +- if (!in_lto_p) ++ if (!in_lto_p && !TYPE_STRUCTURAL_EQUALITY_P (type)) + type = TYPE_CANONICAL (type); + + gcc_checking_assert (can_be_name_hashed_p (type) +--- /dev/null b/gcc/testsuite/g++.target/i386/pr90303.C +@@ -0,0 +1,8 @@ ++// PR tree-optimization/90303 ++// { dg-do compile { target ia32 } } ++// { dg-additional-options "-O2" } ++ ++struct A { virtual void foo (); }; ++template class B : A {}; ++typedef void (__attribute__((fastcall)) F) (); ++B e; +-- +2.21.0 + diff --git a/9.1.0/gentoo/README.history b/9.1.0/gentoo/README.history index 9cd123f..3589de0 100644 --- a/9.1.0/gentoo/README.history +++ b/9.1.0/gentoo/README.history @@ -1,3 +1,6 @@ +1.1TODO + + 26_all_ipa-incomplete.patch + 1.003 May 2019 + 01_all_default-fortify-source.patch + 02_all_default-warn-format-security.patch
[gentoo-commits] proj/gcc-patches:master commit in: 9.1.0/gentoo/
commit: bb956ea9fb2a3102275fcd118a1a8b867d3757f7 Author: Sergei Trofimovich gentoo org> AuthorDate: Fri May 3 18:00:13 2019 + Commit: Sergei Trofimovich gentoo org> CommitDate: Fri May 3 18:00:13 2019 + URL:https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=bb956ea9 9.1.0: cut 1.0 patchset, a copy of 8.3.0 patches (safe backports) Signed-off-by: Sergei Trofimovich gentoo.org> 9.1.0/gentoo/README.history | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/9.1.0/gentoo/README.history b/9.1.0/gentoo/README.history index 6c0bd6a..9cd123f 100644 --- a/9.1.0/gentoo/README.history +++ b/9.1.0/gentoo/README.history @@ -1,4 +1,4 @@ -1.0TODO +1.003 May 2019 + 01_all_default-fortify-source.patch + 02_all_default-warn-format-security.patch + 03_all_default-warn-trampolines.patch
[gentoo-commits] proj/gcc-patches:master commit in: 9.1.0/gentoo/
commit: 066377a7d875823075bd04d7e7a4074b9fa974d3 Author: Sergei Trofimovich gentoo org> AuthorDate: Fri May 3 12:43:16 2019 + Commit: Sergei Trofimovich gentoo org> CommitDate: Fri May 3 12:44:17 2019 + URL:https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=066377a7 9.1.0: initial patchset, based on 8.3.0 Signed-off-by: Sergei Trofimovich gentoo.org> 9.1.0/gentoo/01_all_default-fortify-source.patch | 22 .../02_all_default-warn-format-security.patch | 22 9.1.0/gentoo/03_all_default-warn-trampolines.patch | 13 ++ 9.1.0/gentoo/04_all_default-ssp-fix.patch | 38 ++ 9.1.0/gentoo/05_all_alpha-mieee-default.patch | 39 ++ 9.1.0/gentoo/06_all_ia64_note.GNU-stack.patch | 92 + .../gentoo/07_all_i386_libgcc_note.GNU-stack.patch | 54 9.1.0/gentoo/08_all_libiberty-asprintf.patch | 18 +++ 9.1.0/gentoo/09_all_libiberty-pic.patch| 10 ++ 9.1.0/gentoo/10_all_nopie-all-flags.patch | 18 +++ 9.1.0/gentoo/11_all_extra-options.patch| 89 + .../12_all_pr55930-dependency-tracking.patch | 18 +++ 9.1.0/gentoo/13_all_sh-drop-sysroot-suffix.patch | 32 + 9.1.0/gentoo/14_all_ia64-TEXTREL.patch | 22 9.1.0/gentoo/15_all_disable-systemtap-switch.patch | 142 + 9.1.0/gentoo/16_all_m68k-textrel-on-libgcc.patch | 93 ++ 9.1.0/gentoo/17_all_respect-build-cxxflags.patch | 39 ++ 9.1.0/gentoo/18_all_libgfortran-Werror.patch | 20 +++ 9.1.0/gentoo/19_all_libgomp-Werror.patch | 20 +++ 9.1.0/gentoo/20_all_libitm-Werror.patch| 19 +++ 9.1.0/gentoo/21_all_libatomic-Werror.patch | 19 +++ 9.1.0/gentoo/22_all_libbacktrace-Werror.patch | 17 +++ 9.1.0/gentoo/23_all_libsanitizer-Werror.patch | 17 +++ 9.1.0/gentoo/24_all_libstdcxx-no-vtv.patch | 61 + 9.1.0/gentoo/25_all_ia64-bootstrap.patch | 41 ++ 9.1.0/gentoo/README.history| 26 26 files changed, 1001 insertions(+) diff --git a/9.1.0/gentoo/01_all_default-fortify-source.patch b/9.1.0/gentoo/01_all_default-fortify-source.patch new file mode 100644 index 000..d307474 --- /dev/null +++ b/9.1.0/gentoo/01_all_default-fortify-source.patch @@ -0,0 +1,22 @@ +Taken Debian's patch and removed docs matches: +https://salsa.debian.org/toolchain-team/gcc.git +Also see https://bugs.gentoo.org/621036 where +initially Gentoo used too complicated macro. + +# DP: Turn on -D_FORTIFY_SOURCE=2 by default for C, C++, ObjC, ObjC++, +# DP: if the optimization level is > 0 +--- a/gcc/c-family/c-cppbuiltin.c b/gcc/c-family/c-cppbuiltin.c +@@ -951,6 +951,12 @@ c_cpp_builtins (cpp_reader *pfile) + builtin_define_with_value ("__REGISTER_PREFIX__", REGISTER_PREFIX, 0); + builtin_define_with_value ("__USER_LABEL_PREFIX__", user_label_prefix, 0); + ++#if !defined(ACCEL_COMPILER) ++ /* Fortify Source enabled by default for optimization levels > 0 */ ++ if (optimize) ++builtin_define_with_int_value ("_FORTIFY_SOURCE", 2); ++#endif ++ + /* Misc. */ + if (flag_gnu89_inline) + cpp_define (pfile, "__GNUC_GNU_INLINE__"); diff --git a/9.1.0/gentoo/02_all_default-warn-format-security.patch b/9.1.0/gentoo/02_all_default-warn-format-security.patch new file mode 100644 index 000..f809abd --- /dev/null +++ b/9.1.0/gentoo/02_all_default-warn-format-security.patch @@ -0,0 +1,22 @@ +Enable -Wformat and -Wformat-security by default. + +--- a/gcc/c-family/c.opt 2016-03-23 18:51:56.0 +0100 b/gcc/c-family/c.opt 2016-04-28 23:45:54.063351272 +0200 +@@ -459,7 +459,7 @@ C ObjC C++ ObjC++ Var(warn_format_nonlit + Warn about format strings that are not literals. + + Wformat-security +-C ObjC C++ ObjC++ Var(warn_format_security) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 2, 0) ++C ObjC C++ ObjC++ Var(warn_format_security) Init(1) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 2, 0) + Warn about possible security problems with format functions. + + Wformat-signedness +@@ -475,7 +475,7 @@ C ObjC C++ ObjC++ Var(warn_format_zero_l + Warn about zero-length formats. + + Wformat= +-C ObjC C++ ObjC++ Joined RejectNegative UInteger Var(warn_format) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall, 1, 0) IntegerRange(0, 2) ++C ObjC C++ ObjC++ Joined RejectNegative UInteger Var(warn_format) Init(1) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall, 1, 0) IntegerRange(0, 2) + Warn about printf/scanf/strftime/strfmon format string anomalies. + + Wignored-qualifiers diff --git a/9.1.0/gentoo/03_all_default-warn-trampolines.patch b/9.1.0/gentoo/03_all_default-warn-trampolines.patch new file mode 100644 index 000..7a644cb --- /dev/null +++ b/9.1.0/gentoo/03_all_default-warn-trampolines.patch @@ -0,0 +1,13 @@ +Enable -Wtrampolines by default. + +--- a/gcc/common.opt b/gcc/common.opt +@@ -712,7 +