[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