diff options
author | Igor Pashev <pashev.igor@gmail.com> | 2019-11-19 17:58:12 +0300 |
---|---|---|
committer | Igor Pashev <pashev.igor@gmail.com> | 2019-11-19 17:58:12 +0300 |
commit | 0c6f948c2100559a304372a69b1da71c9f4f49ba (patch) | |
tree | 023c46cfd3810f3cd8fea3496ab3e6fd171b46e9 | |
parent | 11890f1485f765e1e6fcef56ec32d5b0c0ebfb18 (diff) | |
download | gcc-9-0c6f948c2100559a304372a69b1da71c9f4f49ba.tar.gz |
Refresh Dyson patches
-rw-r--r-- | debian/patches/illumos-fclone-functions.diff | 46 | ||||
-rw-r--r-- | debian/patches/illumos-pragma-align.diff | 16 | ||||
-rw-r--r-- | debian/patches/illumos-spec.diff | 14 | ||||
-rw-r--r-- | debian/patches/illumos-strict-calling-conventions.diff | 46 |
4 files changed, 61 insertions, 61 deletions
diff --git a/debian/patches/illumos-fclone-functions.diff b/debian/patches/illumos-fclone-functions.diff index 11f1585..0c047ea 100644 --- a/debian/patches/illumos-fclone-functions.diff +++ b/debian/patches/illumos-fclone-functions.diff @@ -19,13 +19,13 @@ See http://wiki.illumos.org/display/illumos/GCC+Modifications gcc/tree-inline.c | 3 ++- 3 files changed, 17 insertions(+), 2 deletions(-) -Index: gcc-6.git/src/gcc/common.opt +Index: gcc-9.git/src/gcc/common.opt =================================================================== ---- gcc-6.git.orig/src/gcc/common.opt -+++ gcc-6.git/src/gcc/common.opt -@@ -1029,6 +1029,11 @@ fchecking - Common Var(flag_checking) Init(CHECKING_P) - Perform internal consistency checkings. +--- gcc-9.git.orig/src/gcc/common.opt ++++ gcc-9.git/src/gcc/common.opt +@@ -1122,6 +1122,11 @@ fcode-hoisting + Common Report Var(flag_code_hoisting) Optimization + Enable code hoisting. +fclone-functions +Common Report Var(flag_clone_functions) Init(1) @@ -35,20 +35,20 @@ Index: gcc-6.git/src/gcc/common.opt fcombine-stack-adjustments Common Report Var(flag_combine_stack_adjustments) Optimization Looks for opportunities to reduce stack adjustments and stack references. -Index: gcc-6.git/src/gcc/doc/invoke.texi +Index: gcc-9.git/src/gcc/doc/invoke.texi =================================================================== ---- gcc-6.git.orig/src/gcc/doc/invoke.texi -+++ gcc-6.git/src/gcc/doc/invoke.texi -@@ -340,7 +340,7 @@ Objective-C and Objective-C++ Dialects}. - -fbranch-target-load-optimize -fbranch-target-load-optimize2 @gol - -fbtr-bb-exclusive -fcaller-saves @gol - -fcombine-stack-adjustments -fconserve-stack @gol ---fcompare-elim -fcprop-registers -fcrossjumping @gol -+-fcompare-elim -fclone-functions -fcprop-registers -fcrossjumping @gol - -fcse-follow-jumps -fcse-skip-blocks -fcx-fortran-rules @gol +--- gcc-9.git.orig/src/gcc/doc/invoke.texi ++++ gcc-9.git/src/gcc/doc/invoke.texi +@@ -404,7 +404,7 @@ Objective-C and Objective-C++ Dialects}. + -fbranch-target-load-optimize -fbranch-target-load-optimize2 @gol + -fbtr-bb-exclusive -fcaller-saves @gol + -fcombine-stack-adjustments -fconserve-stack @gol +--fcompare-elim -fcprop-registers -fcrossjumping @gol ++-fcompare-elim -fclone-functions -fcprop-registers -fcrossjumping @gol + -fcse-follow-jumps -fcse-skip-blocks -fcx-fortran-rules @gol -fcx-limited-range @gol - -fdata-sections -fdce -fdelayed-branch @gol -@@ -8188,6 +8188,15 @@ to these tools. With non fat LTO makefil + -fdata-sections -fdce -fdelayed-branch @gol +@@ -10421,6 +10421,15 @@ effect as usage of the command wrappers The default is @option{-fno-fat-lto-objects} on targets with linker plugin support. @@ -64,11 +64,11 @@ Index: gcc-6.git/src/gcc/doc/invoke.texi @item -fcompare-elim @opindex fcompare-elim After register allocation and post-register allocation instruction splitting, -Index: gcc-6.git/src/gcc/tree-inline.c +Index: gcc-9.git/src/gcc/tree-inline.c =================================================================== ---- gcc-6.git.orig/src/gcc/tree-inline.c -+++ gcc-6.git/src/gcc/tree-inline.c -@@ -5541,7 +5541,8 @@ bool +--- gcc-9.git.orig/src/gcc/tree-inline.c ++++ gcc-9.git/src/gcc/tree-inline.c +@@ -5806,7 +5806,8 @@ bool tree_versionable_function_p (tree fndecl) { return (!lookup_attribute ("noclone", DECL_ATTRIBUTES (fndecl)) @@ -77,4 +77,4 @@ Index: gcc-6.git/src/gcc/tree-inline.c + && flag_clone_functions); } - /* Delete all unreachable basic blocks and update callgraph. + /* Update clone info after duplication. */ diff --git a/debian/patches/illumos-pragma-align.diff b/debian/patches/illumos-pragma-align.diff index b8ca929..4c6fdaf 100644 --- a/debian/patches/illumos-pragma-align.diff +++ b/debian/patches/illumos-pragma-align.diff @@ -2,26 +2,26 @@ Description: Allow #pragma align to be used after a variable is declared GCC mandates that #pragma align precede any declaration, Sun C does not. See http://wiki.illumos.org/display/illumos/GCC+Modifications -Index: gcc-5/src/gcc/config/sol2-c.c +Index: gcc-9.git/src/gcc/config/sol2-c.c =================================================================== ---- gcc-5.orig/src/gcc/config/sol2-c.c -+++ gcc-5/src/gcc/config/sol2-c.c -@@ -125,8 +125,9 @@ solaris_pragma_align (cpp_reader *pfile +--- gcc-9.git.orig/src/gcc/config/sol2-c.c ++++ gcc-9.git/src/gcc/config/sol2-c.c +@@ -112,8 +112,9 @@ solaris_pragma_align (cpp_reader *pfile { tree decl = identifier_global_value (t); if (decl && DECL_P (decl)) - warning (0, "%<#pragma align%> must appear before the declaration of " -- "%D, ignoring", decl); +- "%qD, ignoring", decl); + decl_attributes (&decl, build_tree_list (get_identifier ("aligned"), + build_tree_list (NULL, x)), + 0); else solaris_pending_aligns = tree_cons (t, build_tree_list (NULL, x), solaris_pending_aligns); -Index: gcc-5/src/gcc/testsuite/gcc.dg/pragma-align-2.c +Index: gcc-9.git/src/gcc/testsuite/gcc.dg/pragma-align-2.c =================================================================== ---- gcc-5.orig/src/gcc/testsuite/gcc.dg/pragma-align-2.c -+++ gcc-5/src/gcc/testsuite/gcc.dg/pragma-align-2.c +--- gcc-9.git.orig/src/gcc/testsuite/gcc.dg/pragma-align-2.c ++++ gcc-9.git/src/gcc/testsuite/gcc.dg/pragma-align-2.c @@ -26,9 +26,9 @@ void abort (void); #pragma align bad_align /* { dg-warning "malformed" } */ #pragma align 1(bad_align /* { dg-warning "malformed" } */ diff --git a/debian/patches/illumos-spec.diff b/debian/patches/illumos-spec.diff index 7986940..3efd50f 100644 --- a/debian/patches/illumos-spec.diff +++ b/debian/patches/illumos-spec.diff @@ -1,8 +1,8 @@ -Index: gcc-5/src/gcc/config/sol2.h +Index: gcc-9.git/src/gcc/config/sol2.h =================================================================== ---- gcc-5.orig/src/gcc/config/sol2.h -+++ gcc-5/src/gcc/config/sol2.h -@@ -142,12 +142,12 @@ along with GCC; see the file COPYING3. +--- gcc-9.git.orig/src/gcc/config/sol2.h ++++ gcc-9.git/src/gcc/config/sol2.h +@@ -161,12 +161,12 @@ along with GCC; see the file COPYING3. #undef LIB_SPEC #define LIB_SPEC \ "%{!symbolic:\ @@ -17,8 +17,8 @@ Index: gcc-5/src/gcc/config/sol2.h +#define MD_EXEC_PREFIX "/usr/bin/" #endif - #undef STARTFILE_ARCH_SPEC -@@ -174,9 +174,7 @@ along with GCC; see the file COPYING3. + /* Enable constructor priorities if the configured linker supports it. */ +@@ -302,9 +302,7 @@ along with GCC; see the file COPYING3. #define LINK_ARCH32_SPEC_BASE \ "%{G:-G} \ %{YP,*} \ @@ -29,7 +29,7 @@ Index: gcc-5/src/gcc/config/sol2.h #undef LINK_ARCH32_SPEC #define LINK_ARCH32_SPEC LINK_ARCH32_SPEC_BASE -@@ -187,9 +185,7 @@ along with GCC; see the file COPYING3. +@@ -315,9 +313,7 @@ along with GCC; see the file COPYING3. #define LINK_ARCH64_SPEC_BASE \ "%{G:-G} \ %{YP,*} \ diff --git a/debian/patches/illumos-strict-calling-conventions.diff b/debian/patches/illumos-strict-calling-conventions.diff index 90e8fc3..ecb7a65 100644 --- a/debian/patches/illumos-strict-calling-conventions.diff +++ b/debian/patches/illumos-strict-calling-conventions.diff @@ -13,11 +13,11 @@ later which, given the odds, is likely to be necessary. See http://wiki.illumos.org/display/illumos/GCC+Modifications -Index: gcc-6.git/src/gcc/common.opt +Index: gcc-9.git/src/gcc/common.opt =================================================================== ---- gcc-6.git.orig/src/gcc/common.opt -+++ gcc-6.git/src/gcc/common.opt -@@ -2236,6 +2236,10 @@ fstrict-aliasing +--- gcc-9.git.orig/src/gcc/common.opt ++++ gcc-9.git/src/gcc/common.opt +@@ -2499,6 +2499,10 @@ fstrict-aliasing Common Report Var(flag_strict_aliasing) Optimization Assume strict aliasing rules apply. @@ -26,13 +26,13 @@ Index: gcc-6.git/src/gcc/common.opt +Use strict ABI calling conventions even for static functions + fstrict-overflow - Common Report Var(flag_strict_overflow) Optimization - Treat signed overflow as undefined. -Index: gcc-6.git/src/gcc/config/i386/i386.c + Common Report + Treat signed overflow as undefined. Negated as -fwrapv -fwrapv-pointer. +Index: gcc-9.git/src/gcc/config/i386/i386.c =================================================================== ---- gcc-6.git.orig/src/gcc/config/i386/i386.c -+++ gcc-6.git/src/gcc/config/i386/i386.c -@@ -7076,6 +7076,7 @@ ix86_function_regparm (const_tree type, +--- gcc-9.git.orig/src/gcc/config/i386/i386.c ++++ gcc-9.git/src/gcc/config/i386/i386.c +@@ -6608,6 +6608,7 @@ ix86_function_regparm (const_tree type, /* Use register calling convention for local functions when possible. */ if (decl @@ -40,7 +40,7 @@ Index: gcc-6.git/src/gcc/config/i386/i386.c && TREE_CODE (decl) == FUNCTION_DECL) { cgraph_node *target = cgraph_node::get (decl); -@@ -7179,6 +7180,7 @@ ix86_function_sseregparm (const_tree typ +@@ -6717,6 +6718,7 @@ ix86_function_sseregparm (const_tree typ /* TARGET_SSE_MATH */ && (target_opts_for_fn (target->decl)->x_ix86_fpmath & FPMATH_SSE) && opt_for_fn (target->decl, optimize) @@ -48,13 +48,13 @@ Index: gcc-6.git/src/gcc/config/i386/i386.c && !(profile_flag && !flag_fentry)) { cgraph_local_info *i = &target->local; -Index: gcc-6.git/src/gcc/doc/invoke.texi +Index: gcc-9.git/src/gcc/doc/invoke.texi =================================================================== ---- gcc-6.git.orig/src/gcc/doc/invoke.texi -+++ gcc-6.git/src/gcc/doc/invoke.texi -@@ -7770,6 +7770,12 @@ int f() @{ - The @option{-fstrict-aliasing} option is enabled at levels - @option{-O2}, @option{-O3}, @option{-Os}. +--- gcc-9.git.orig/src/gcc/doc/invoke.texi ++++ gcc-9.git/src/gcc/doc/invoke.texi +@@ -13756,6 +13756,12 @@ overflow on addition and subtraction wra + representation. This flag disables some optimizations which assume + pointer overflow is invalid. +@item -fstrict-calling-conventions +@opindex fstrict-calling-conventions @@ -64,11 +64,11 @@ Index: gcc-6.git/src/gcc/doc/invoke.texi + @item -fstrict-overflow @opindex fstrict-overflow - Allow the compiler to assume strict signed overflow rules, depending -Index: gcc-6.git/src/gcc/testsuite/gcc.target/i386/local.c + This option implies @option{-fno-wrapv} @option{-fno-wrapv-pointer} and when +Index: gcc-9.git/src/gcc/testsuite/gcc.target/i386/local.c =================================================================== ---- gcc-6.git.orig/src/gcc/testsuite/gcc.target/i386/local.c -+++ gcc-6.git/src/gcc/testsuite/gcc.target/i386/local.c +--- gcc-9.git.orig/src/gcc/testsuite/gcc.target/i386/local.c ++++ gcc-9.git/src/gcc/testsuite/gcc.target/i386/local.c @@ -1,5 +1,6 @@ /* { dg-do compile } */ -/* { dg-options "-O2 -funit-at-a-time" } */ @@ -77,10 +77,10 @@ Index: gcc-6.git/src/gcc/testsuite/gcc.target/i386/local.c /* { dg-final { scan-assembler "magic\[^\\n\]*eax" { target ia32 } } } */ /* { dg-final { scan-assembler "magic\[^\\n\]*(edi|ecx)" { target { ! ia32 } } } } */ -Index: gcc-6.git/src/gcc/testsuite/gcc.target/i386/strict-cc.c +Index: gcc-9.git/src/gcc/testsuite/gcc.target/i386/strict-cc.c =================================================================== --- /dev/null -+++ gcc-6.git/src/gcc/testsuite/gcc.target/i386/strict-cc.c ++++ gcc-9.git/src/gcc/testsuite/gcc.target/i386/strict-cc.c @@ -0,0 +1,22 @@ +/* { dg-do compile { target { ilp32 } } } */ +/* { dg-options "-O2 -funit-at-a-time -fstrict-calling-conventions" } */ |