[gcc-7] 314/354: * Update to SVN 20171004 (r253388) from the gcc-7-branch.

Ximin Luo infinity0 at debian.org
Thu Nov 23 15:51:30 UTC 2017


This is an automated email from the git hooks/post-receive script.

infinity0 pushed a commit to branch master
in repository gcc-7.

commit 2a2fd6762b91a8a8e85af308564cb4011e0c5365
Author: doko <doko at 6ca36cf4-e1d1-0310-8c6f-e303bb2178ca>
Date:   Tue Oct 3 23:47:19 2017 +0000

      * Update to SVN 20171004 (r253388) from the gcc-7-branch.
    
    
    git-svn-id: svn+ssh://svn.debian.org/svn/gcccvs/branches/sid/gcc-7@9735 6ca36cf4-e1d1-0310-8c6f-e303bb2178ca
---
 debian/changelog                |   6 +-
 debian/patches/svn-updates.diff | 365 ++++++++++++++++++++++++++++++++++++++--
 2 files changed, 357 insertions(+), 14 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index b8461c9..1032fdb 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,8 +1,10 @@
 gcc-7 (7.2.0-9) UNRELEASED; urgency=medium
 
-  * Fix builds without hppa64 cross compiler and new debhlper. Closes: #877589.
+  * Update to SVN 20171004 (r253388) from the gcc-7-branch.
+    - Fix PR fortran/80118, PR tree-optimization/82337.
+  * Fix builds without hppa64 cross compiler and new debhelper. Closes: #877589.
 
- -- Matthias Klose <doko at debian.org>  Tue, 03 Oct 2017 23:09:59 +0200
+ -- Matthias Klose <doko at debian.org>  Wed, 04 Oct 2017 01:46:43 +0200
 
 gcc-7 (7.2.0-8) unstable; urgency=medium
 
diff --git a/debian/patches/svn-updates.diff b/debian/patches/svn-updates.diff
index b1765d2..78fd37e 100644
--- a/debian/patches/svn-updates.diff
+++ b/debian/patches/svn-updates.diff
@@ -1,10 +1,10 @@
-# DP: updates from the 7 branch upto 20171001 (r253328).
+# DP: updates from the 7 branch upto 20171004 (r253388).
 
 last_update()
 {
 	cat > ${dir}LAST_UPDATED <EOF
-Sun Oct  1 16:50:35 CEST 2017
-Sun Oct  1 14:50:35 UTC 2017 (revision 253328)
+Wed Oct  4 00:32:42 CEST 2017
+Tue Oct  3 22:32:42 UTC 2017 (revision 253388)
 EOF
 }
 
@@ -6235,6 +6235,33 @@ Index: libstdc++-v3/config/io/basic_file_stdio.cc
  	if (!__err)
  	  {
  	    _M_cfile = __file;
+Index: contrib/ChangeLog
+===================================================================
+--- a/src/contrib/ChangeLog	(.../tags/gcc_7_2_0_release)
++++ b/src/contrib/ChangeLog	(.../branches/gcc-7-branch)
+@@ -1,3 +1,7 @@
++2017-10-02  Thomas Schwinge  <thomas at codesourcery.com>
++
++	* gcc_update (files_and_dependencies): Handle libbacktrace.
++
+ 2017-08-14  Release Manager
+ 
+ 	* GCC 7.2.0 released.
+Index: contrib/gcc_update
+===================================================================
+--- a/src/contrib/gcc_update	(.../tags/gcc_7_2_0_release)
++++ b/src/contrib/gcc_update	(.../branches/gcc-7-branch)
+@@ -172,6 +172,10 @@
+ liboffloadmic/plugin/aclocal.m4: liboffloadmic/plugin/configure.ac
+ liboffloadmic/plugin/Makefile.in: liboffloadmic/plugin/Makefile.am
+ liboffloadmic/plugin/configure: liboffloadmic/plugin/configure.ac
++libbacktrace/aclocal.m4: libbacktrace/configure.ac
++libbacktrace/Makefile.in: libbacktrace/Makefile.am libbacktrace/aclocal.m4
++libbacktrace/configure: libbacktrace/configure.ac libbacktrace/aclocal.m4
++libbacktrace/config.h.in: libbacktrace/configure.ac libbacktrace/aclocal.m4
+ # Top level
+ Makefile.in: Makefile.tpl Makefile.def
+ configure: configure.ac config/acx.m4
 Index: libgcc/config.host
 ===================================================================
 --- a/src/libgcc/config.host	(.../tags/gcc_7_2_0_release)
@@ -6667,7 +6694,7 @@ Index: gcc/DATESTAMP
 +++ b/src/gcc/DATESTAMP	(.../branches/gcc-7-branch)
 @@ -1 +1 @@
 -20170814
-+20171001
++20171003
 Index: gcc/tree.c
 ===================================================================
 --- a/src/gcc/tree.c	(.../tags/gcc_7_2_0_release)
@@ -7084,7 +7111,18 @@ Index: gcc/ChangeLog
 ===================================================================
 --- a/src/gcc/ChangeLog	(.../tags/gcc_7_2_0_release)
 +++ b/src/gcc/ChangeLog	(.../branches/gcc-7-branch)
-@@ -1,3 +1,586 @@
+@@ -1,3 +1,597 @@
++2017-10-02  Bill Schmidt  <wschmidt at linux.vnet.ibm.com>
++
++	Backport from mainline
++	2017-09-29  Bill Schmidt  <wschmidt at linux.vnet.ibm.com>
++
++	PR tree-optimization/82337
++	* gimple-ssa-strength-reduction.c (find_phi_def): Don't record a
++	phi definition if the PHI result appears in an abnormal PHI.
++	(find_basis_for_base_expr): Don't record a basis if the LHS of the
++	basis appears in an abnormal PHI.
++
 +2017-09-30  Jakub Jelinek  <jakub at redhat.com>
 +
 +	* config/i386/i386.c (ix86_split_idivmod): Use mode instead of
@@ -8826,6 +8864,29 @@ Index: gcc/testsuite/gfortran.dg/array_temporaries_4.f90
 +  x = (/a (0, "one"),a (0, "two"),a (0, "three"),a (0, "four")/) ! { dg-warning "Creating array temporary" }
 +  y = x
 +end program test 
+Index: gcc/testsuite/gfortran.dg/zero_sized_7.f90
+===================================================================
+--- a/src/gcc/testsuite/gfortran.dg/zero_sized_7.f90	(.../tags/gcc_7_2_0_release)
++++ b/src/gcc/testsuite/gfortran.dg/zero_sized_7.f90	(.../branches/gcc-7-branch)
+@@ -0,0 +1,18 @@
++! { dg-do compile }
++! PR 80118 - this used to ICE
++! Original test case by Marco Restelli
++module m
++implicit none
++
++  integer, parameter :: not_empty(1) = 0
++  integer, parameter :: empty1(0) = (/integer :: /)
++  integer, parameter :: empty2(0) = 0
++
++contains
++
++ subroutine sub(v)
++  integer, allocatable, intent(out) :: v(:)
++   v = 2*empty2 ! internal compiler error
++ end subroutine sub
++
++end module m
 Index: gcc/testsuite/gfortran.dg/pr81723.f
 ===================================================================
 --- a/src/gcc/testsuite/gfortran.dg/pr81723.f	(.../tags/gcc_7_2_0_release)
@@ -9064,6 +9125,36 @@ Index: gcc/testsuite/gcc.c-torture/compile/string-large-1.c
 +  vp3 = __builtin_strncpy (a, b, SIZE3);
 +  vp4 = __builtin_strncpy (a, b, SIZE4);
 +}
+Index: gcc/testsuite/gcc.c-torture/compile/pr82337.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.c-torture/compile/pr82337.c	(.../tags/gcc_7_2_0_release)
++++ b/src/gcc/testsuite/gcc.c-torture/compile/pr82337.c	(.../branches/gcc-7-branch)
+@@ -0,0 +1,25 @@
++/* PR82337: SLSR needs to prevent abnormal SSA names from
++   serving as a basis. */
++char *a, *b, *c;
++
++struct d {
++  short e;
++  char f[];
++};
++
++extern void j (void);
++
++void
++g() {
++  struct d *h;
++  char *i;
++  int d;
++  do {
++    i = h->f + d;
++    20 ? j() : 0;
++    i = c;
++    if (__builtin_setjmp (h))
++      b = h->f + d;
++    d = (int)(*i);
++  } while (a);
++}
 Index: gcc/testsuite/gnat.dg/incomplete5_pkg.adb
 ===================================================================
 --- a/src/gcc/testsuite/gnat.dg/incomplete5_pkg.adb	(.../tags/gcc_7_2_0_release)
@@ -9968,7 +10059,22 @@ Index: gcc/testsuite/ChangeLog
 ===================================================================
 --- a/src/gcc/testsuite/ChangeLog	(.../tags/gcc_7_2_0_release)
 +++ b/src/gcc/testsuite/ChangeLog	(.../branches/gcc-7-branch)
-@@ -1,3 +1,427 @@
+@@ -1,3 +1,442 @@
++2017-10-03  Thomas Koenig  <tkoenig at gcc.gnu.org>
++	    Steven G. Kargl  <kargl at gcc.gnu.org>
++
++	Backport from trunk
++	PR fortran/80118
++	* gfortran.dg/zero_sized_7.f90: New test.
++
++2017-10-02  Bill Schmidt  <wschmidt at linux.vnet.ibm.com>
++
++	Backport from mainline
++	2017-09-29  Bill Schmidt  <wschmidt at linux.vnet.ibm.com>
++
++	PR tree-optimization/82337
++	* gcc.c-torture/compile/pr82337.c: New file.
++
 +2017-09-30  Jakub Jelinek  <jakub at redhat.com>
 +
 +	Backported from mainline
@@ -12661,7 +12767,29 @@ Index: gcc/gimple-ssa-strength-reduction.c
 ===================================================================
 --- a/src/gcc/gimple-ssa-strength-reduction.c	(.../tags/gcc_7_2_0_release)
 +++ b/src/gcc/gimple-ssa-strength-reduction.c	(.../branches/gcc-7-branch)
-@@ -2044,105 +2044,105 @@
+@@ -476,7 +476,8 @@
+ 
+   c = base_cand_from_table (base);
+ 
+-  if (!c || c->kind != CAND_PHI)
++  if (!c || c->kind != CAND_PHI
++      || SSA_NAME_OCCURS_IN_ABNORMAL_PHI (gimple_phi_result (c->cand_stmt)))
+     return 0;
+ 
+   return c->cand_num;
+@@ -515,6 +516,11 @@
+ 			      gimple_bb (one_basis->cand_stmt)))
+ 	continue;
+ 
++      tree lhs = gimple_assign_lhs (one_basis->cand_stmt);
++      if (lhs && TREE_CODE (lhs) == SSA_NAME
++	  && SSA_NAME_OCCURS_IN_ABNORMAL_PHI (lhs))
++	continue;
++
+       if (!basis || basis->cand_num < one_basis->cand_num)
+ 	basis = one_basis;
+     }
+@@ -2044,105 +2050,105 @@
    tree target_type = TREE_TYPE (gimple_assign_lhs (c->cand_stmt));
    enum tree_code cand_code = gimple_assign_rhs_code (c->cand_stmt);
  
@@ -12849,7 +12977,7 @@ Index: gcc/gimple-ssa-strength-reduction.c
  }
  
  /* Replace candidate C with an add or subtract.   Note that we only
-@@ -2193,8 +2193,6 @@
+@@ -2193,8 +2199,6 @@
  			     widest_int increment, edge e, location_t loc,
  			     bool known_stride)
  {
@@ -12858,7 +12986,7 @@ Index: gcc/gimple-ssa-strength-reduction.c
    tree lhs, basis_type;
    gassign *new_stmt, *cast_stmt = NULL;
  
-@@ -2263,39 +2261,25 @@
+@@ -2263,39 +2267,25 @@
        }
      }
  
@@ -12906,7 +13034,7 @@ Index: gcc/gimple-ssa-strength-reduction.c
        print_gimple_stmt (dump_file, new_stmt, 0, 0);
      }
  
-@@ -3217,6 +3201,23 @@
+@@ -3217,6 +3207,23 @@
  	 that block, the earliest one will be returned in WHERE.  */
        bb = nearest_common_dominator_for_cands (c, incr, &where);
  
@@ -12930,7 +13058,7 @@ Index: gcc/gimple-ssa-strength-reduction.c
        /* If the nominal stride has a different type than the recorded
  	 stride type, build a cast from the nominal stride to that type.  */
        if (!types_compatible_p (TREE_TYPE (c->stride), c->stride_type))
-@@ -3736,6 +3737,10 @@
+@@ -3736,6 +3743,10 @@
  	  free (incr_vec);
  	}
      }
@@ -12945,7 +13073,15 @@ Index: gcc/fortran/ChangeLog
 ===================================================================
 --- a/src/gcc/fortran/ChangeLog	(.../tags/gcc_7_2_0_release)
 +++ b/src/gcc/fortran/ChangeLog	(.../branches/gcc-7-branch)
-@@ -1,3 +1,24 @@
+@@ -1,3 +1,32 @@
++2017-10-03  Thomas Koenig  <tkoenig at gcc.gnu.org>
++	    Steven G. Kargl  <kargl at gcc.gnu.org>
++
++	Backport from trunk
++	PR fortran/80118
++	* expr.c (gfc_get_full_arrayspec_from_expr): If there is
++	no symtree, set array spec to NULL.
++
 +2017-09-02  Janus Weil  <janus at gcc.gnu.org>
 +
 +	Backport from trunk
@@ -13000,6 +13136,19 @@ Index: gcc/fortran/expr.c
        && !rvalue->symtree->n.sym->attr.in_common
        && !rvalue->symtree->n.sym->attr.use_assoc
        && !rvalue->symtree->n.sym->attr.dummy)
+@@ -4514,7 +4515,11 @@
+   if (expr->expr_type == EXPR_VARIABLE
+       || expr->expr_type == EXPR_CONSTANT)
+     {
+-      as = expr->symtree->n.sym->as;
++      if (expr->symtree)
++	as = expr->symtree->n.sym->as;
++      else
++	as = NULL;
++
+       for (ref = expr->ref; ref; ref = ref->next)
+ 	{
+ 	  switch (ref->type)
 Index: gcc/fortran/trans-io.c
 ===================================================================
 --- a/src/gcc/fortran/trans-io.c	(.../tags/gcc_7_2_0_release)
@@ -317185,6 +317334,198 @@ Index: gcc/tree-vect-slp.c
    if (node != NULL)
      {
        /* Calculate the unrolling factor based on the smallest type.  */
+Index: libgo/VERSION
+===================================================================
+--- a/src/libgo/VERSION	(.../tags/gcc_7_2_0_release)
++++ b/src/libgo/VERSION	(.../branches/gcc-7-branch)
+@@ -1 +1 @@
+-go1.8.1
++go1.8.3
+Index: libgo/MERGE
+===================================================================
+--- a/src/libgo/MERGE	(.../tags/gcc_7_2_0_release)
++++ b/src/libgo/MERGE	(.../branches/gcc-7-branch)
+@@ -1,4 +1,4 @@
+-a4c18f063b6659079ca2848ca217a0587dabc001
++352996a381701cfa0c16e8de29cbde8f3922182f
+ 
+ The first line of this file holds the git revision number of the
+ last merge done from the master library sources.
+Index: libgo/go/cmd/go/build.go
+===================================================================
+--- a/src/libgo/go/cmd/go/build.go	(.../tags/gcc_7_2_0_release)
++++ b/src/libgo/go/cmd/go/build.go	(.../branches/gcc-7-branch)
+@@ -3133,6 +3133,26 @@
+ 	desc := p.ImportPath
+ 	output, err := b.runOut(p.Dir, desc, nil, compiler, flags, "-o", outfile, "-c", file)
+ 	if len(output) > 0 {
++		// On FreeBSD 11, when we pass -g to clang 3.8 it
++		// invokes its internal assembler with -dwarf-version=2.
++		// When it sees .section .note.GNU-stack, it warns
++		// "DWARF2 only supports one section per compilation unit".
++		// This warning makes no sense, since the section is empty,
++		// but it confuses people.
++		// We work around the problem by detecting the warning
++		// and dropping -g and trying again.
++		if bytes.Contains(output, []byte("DWARF2 only supports one section per compilation unit")) {
++			newFlags := make([]string, 0, len(flags))
++			for _, f := range flags {
++				if !strings.HasPrefix(f, "-g") {
++					newFlags = append(newFlags, f)
++				}
++			}
++			if len(newFlags) < len(flags) {
++				return b.ccompile(p, outfile, newFlags, file, compiler)
++			}
++		}
++
+ 		b.showOutput(p.Dir, desc, b.processOutput(output))
+ 		if err != nil {
+ 			err = errPrintedOutput
+Index: libgo/go/database/sql/sql_test.go
+===================================================================
+--- a/src/libgo/go/database/sql/sql_test.go	(.../tags/gcc_7_2_0_release)
++++ b/src/libgo/go/database/sql/sql_test.go	(.../branches/gcc-7-branch)
+@@ -322,7 +322,7 @@
+ 	select {
+ 	case <-ctx.Done():
+ 		if err := ctx.Err(); err != context.Canceled {
+-			t.Fatalf("context err = %v; want context.Canceled")
++			t.Fatalf("context err = %v; want context.Canceled", ctx.Err())
+ 		}
+ 	default:
+ 		t.Fatalf("context err = nil; want context.Canceled")
+@@ -413,7 +413,8 @@
+ 	db := newTestDB(t, "people")
+ 	defer closeDB(t, db)
+ 
+-	ctx, _ := context.WithTimeout(context.Background(), time.Millisecond*15)
++	ctx, cancel := context.WithTimeout(context.Background(), time.Millisecond*15)
++	defer cancel()
+ 
+ 	tx, err := db.BeginTx(ctx, nil)
+ 	if err != nil {
+Index: libgo/go/database/sql/sql.go
+===================================================================
+--- a/src/libgo/go/database/sql/sql.go	(.../tags/gcc_7_2_0_release)
++++ b/src/libgo/go/database/sql/sql.go	(.../branches/gcc-7-branch)
+@@ -1955,12 +1955,12 @@
+ 				rowsi: rowsi,
+ 				// releaseConn set below
+ 			}
+-			rows.initContextClose(ctx)
+ 			s.db.addDep(s, rows)
+ 			rows.releaseConn = func(err error) {
+ 				releaseConn(err)
+ 				s.db.removeDep(s, rows)
+ 			}
++			rows.initContextClose(ctx)
+ 			return rows, nil
+ 		}
+ 
+Index: libgo/go/crypto/elliptic/elliptic_test.go
+===================================================================
+--- a/src/libgo/go/crypto/elliptic/elliptic_test.go	(.../tags/gcc_7_2_0_release)
++++ b/src/libgo/go/crypto/elliptic/elliptic_test.go	(.../branches/gcc-7-branch)
+@@ -300,6 +300,29 @@
+ 	},
+ }
+ 
++type scalarMultTest struct {
++	k          string
++	xIn, yIn   string
++	xOut, yOut string
++}
++
++var p256MultTests = []scalarMultTest{
++	{
++		"2a265f8bcbdcaf94d58519141e578124cb40d64a501fba9c11847b28965bc737",
++		"023819813ac969847059028ea88a1f30dfbcde03fc791d3a252c6b41211882ea",
++		"f93e4ae433cc12cf2a43fc0ef26400c0e125508224cdb649380f25479148a4ad",
++		"4d4de80f1534850d261075997e3049321a0864082d24a917863366c0724f5ae3",
++		"a22d2b7f7818a3563e0f7a76c9bf0921ac55e06e2e4d11795b233824b1db8cc0",
++	},
++	{
++		"313f72ff9fe811bf573176231b286a3bdb6f1b14e05c40146590727a71c3bccd",
++		"cc11887b2d66cbae8f4d306627192522932146b42f01d3c6f92bd5c8ba739b06",
++		"a2f08a029cd06b46183085bae9248b0ed15b70280c7ef13a457f5af382426031",
++		"831c3f6b5f762d2f461901577af41354ac5f228c2591f84f8a6e51e2e3f17991",
++		"93f90934cd0ef2c698cc471c60a93524e87ab31ca2412252337f364513e43684",
++	},
++}
++
+ func TestBaseMult(t *testing.T) {
+ 	p224 := P224()
+ 	for i, e := range p224BaseMultTests {
+@@ -379,6 +402,19 @@
+ 			break
+ 		}
+ 	}
++
++	for i, e := range p256MultTests {
++		x, _ := new(big.Int).SetString(e.xIn, 16)
++		y, _ := new(big.Int).SetString(e.yIn, 16)
++		k, _ := new(big.Int).SetString(e.k, 16)
++		expectedX, _ := new(big.Int).SetString(e.xOut, 16)
++		expectedY, _ := new(big.Int).SetString(e.yOut, 16)
++
++		xx, yy := p256.ScalarMult(x, y, k.Bytes())
++		if xx.Cmp(expectedX) != 0 || yy.Cmp(expectedY) != 0 {
++			t.Errorf("#%d: got (%x, %x), want (%x, %x)", i, xx, yy, expectedX, expectedY)
++		}
++	}
+ }
+ 
+ func TestInfinity(t *testing.T) {
+Index: libgo/go/net/http/h2_bundle.go
+===================================================================
+--- a/src/libgo/go/net/http/h2_bundle.go	(.../tags/gcc_7_2_0_release)
++++ b/src/libgo/go/net/http/h2_bundle.go	(.../branches/gcc-7-branch)
+@@ -1,4 +1,4 @@
+-// Code generated by golang.org/x/tools/cmd/bundle.
++// Code generated by golang.org/x/tools/cmd/bundle. DO NOT EDIT.
+ //go:generate bundle -o h2_bundle.go -prefix http2 -underscore golang.org/x/net/http2
+ 
+ // Package http2 implements the HTTP/2 protocol.
+@@ -3536,9 +3536,13 @@
+ 		sc.idleTimerCh = sc.idleTimer.C
+ 	}
+ 
+-	var gracefulShutdownCh <-chan struct{}
++	var gracefulShutdownCh chan struct{}
+ 	if sc.hs != nil {
+-		gracefulShutdownCh = http2h1ServerShutdownChan(sc.hs)
++		ch := http2h1ServerShutdownChan(sc.hs)
++		if ch != nil {
++			gracefulShutdownCh = make(chan struct{})
++			go sc.awaitGracefulShutdown(ch, gracefulShutdownCh)
++		}
+ 	}
+ 
+ 	go sc.readFrames()
+@@ -3587,6 +3591,14 @@
+ 	}
+ }
+ 
++func (sc *http2serverConn) awaitGracefulShutdown(sharedCh <-chan struct{}, privateCh chan struct{}) {
++	select {
++	case <-sc.doneServing:
++	case <-sharedCh:
++		close(privateCh)
++	}
++}
++
+ // readPreface reads the ClientPreface greeting from the peer
+ // or returns an error on timeout or an invalid greeting.
+ func (sc *http2serverConn) readPreface() error {
+@@ -6003,7 +6015,6 @@
+ 	}
+ 	if len(keys) > 0 {
+ 		sort.Strings(keys)
+-
+ 		return strings.Join(keys, ","), nil
+ 	}
+ 	return "", nil
 Index: libgfortran/ChangeLog
 ===================================================================
 --- a/src/libgfortran/ChangeLog	(.../tags/gcc_7_2_0_release)

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/reproducible/gcc-7.git



More information about the Reproducible-commits mailing list