bug-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#39941: Disk-image size increase on core-updates.


From: Mathieu Othacehe
Subject: bug#39941: Disk-image size increase on core-updates.
Date: Sat, 14 Mar 2020 11:54:40 +0100
User-agent: mu4e 1.2.0; emacs 26.3

Hello,

Here's a patch that adds a "lib" output to cross-gcc. This was indeed
quite tricky!

Anyway, with this patch the closure of "hello" for aarch64-linux-gnu is
reduced from 469 MiB to 187 MiB.

I think we can go further.

--8<---------------cut here---------------start------------->8---
mathieu@elbruz ~/guix [env]$ guix size 
/gnu/store/14ygibryjr7mcly0q9mb8306hlg16nhq-hello-2.10
store item                                                       total    self
/gnu/store/vm2gaw5jk1zr1x9qzj4z52qjxvrh0nk9-glibc-cross-aarch64-linux-gnu-2.31  
 158.9    71.4  38.2%
/gnu/store/w00jb174abikqpznadwzvvgwl3r7qfzd-glibc-2.31              38.4    
36.7  19.6%
/gnu/store/08vqg0s77dnff7rz90b0h87n2rfyaszg-gcc-7.5.0-lib           71.0    
32.6  17.5%
/gnu/store/vqsixs9ks4chpjynhizkpdd1gdshv87h-gcc-cross-aarch64-linux-gnu-7.5.0-lib
   186.8    27.9  14.9%
/gnu/store/fgrpk8r46k34pyqv6xkbi8gbv997dbpx-gcc-cross-sans-libc-aarch64-linux-gnu-7.5.0-lib
    80.8     9.8   5.2%
/gnu/store/zf5603c5l6ilgyg35gqfkn82v3k9hbri-linux-libre-headers-cross-aarch64-linux-gnu-5.4.20
     5.1     5.1   2.7%
/gnu/store/6hhsxa3vvbh8gvcfjw4k5sfk1qrhkcrf-bash-static-5.0.16       1.6     
1.6   0.9%
/gnu/store/nvc3r588745kkj159lm1pa4xz5g99rqd-bash-static-5.0.16       1.6     
1.6   0.9%
/gnu/store/14ygibryjr7mcly0q9mb8306hlg16nhq-hello-2.10             187.0     
0.2   0.1%
total: 187.0 MiB
--8<---------------cut here---------------end--------------->8---

There are still references to native glibc/gcc and two different bash,
that may be removed?

WDYT?

Thanks,

Mathieu
>From 7df06872de701e1c9237cb7fa36089b1f9e37dd9 Mon Sep 17 00:00:00 2001
From: Mathieu Othacehe <address@hidden>
Date: Sat, 14 Mar 2020 11:39:52 +0100
Subject: [PATCH] gnu: cross-gcc: Add a "lib" output.

Add a "lib" output to cross-gcc. This requires an upstream GCC patch adding
support for --with-toolexeclibdir configure option. This option allows to
install cross-built GCC libraries in a specific location.

This also fixes the computation of TOOLDIR_BASE_PREFIX, that fails when
/gnu/store/... directories are involved.

* gnu/packages/patches/gcc-7-cross-toolexeclibdir.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/cross-base.scm (cross-gcc)[source]: Apply it,
[outputs]: add a "lib" output,
(cross-gcc-snippet): fix TOOLDIR_BASE_PREFIX.
---
 gnu/local.mk                                  |     3 +-
 gnu/packages/cross-base.scm                   |    41 +-
 .../patches/gcc-7-cross-toolexeclibdir.patch  | 36585 ++++++++++++++++
 3 files changed, 36615 insertions(+), 14 deletions(-)
 create mode 100644 gnu/packages/patches/gcc-7-cross-toolexeclibdir.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index f2e323c345..4080ac78cc 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -14,7 +14,7 @@
 # Copyright © 2016, 2017, 2018, 2019 Jan (janneke) Nieuwenhuizen 
<address@hidden>
 # Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <address@hidden>
 # Copyright © 2017, 2018 Clément Lassieur <address@hidden>
-# Copyright © 2017 Mathieu Othacehe <address@hidden>
+# Copyright © 2017, 2020 Mathieu Othacehe <address@hidden>
 # Copyright © 2017, 2018, 2019 Gábor Boskovits <address@hidden>
 # Copyright © 2018 Amirouche Boubekki <address@hidden>
 # Copyright © 2018, 2019, 2020 Oleg Pykhalov <address@hidden>
@@ -909,6 +909,7 @@ dist_patch_DATA =                                           
\
   %D%/packages/patches/gcc-6-source-date-epoch-2.patch         \
   %D%/packages/patches/gcc-7-cross-mingw.patch                 \
   %D%/packages/patches/gcc-7-cross-environment-variables.patch \
+  %D%/packages/patches/gcc-7-cross-toolexeclibdir.patch                \
   %D%/packages/patches/gcc-8-cross-environment-variables.patch \
   %D%/packages/patches/gcc-8-strmov-store-file-names.patch     \
   %D%/packages/patches/gcc-9-asan-fix-limits-include.patch     \
diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm
index 667d1f786a..d373e522d5 100644
--- a/gnu/packages/cross-base.scm
+++ b/gnu/packages/cross-base.scm
@@ -6,6 +6,7 @@
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <address@hidden>
 ;;; Copyright © 2019, 2020 Marius Bakke <address@hidden>
 ;;; Copyright © 2019 Carl Dong <address@hidden>
+;;; Copyright © 2020 Mathieu Othacehe <address@hidden>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -162,6 +163,13 @@ base compiler and using LIBC (which may be either a libc 
package or #f.)"
                                "--disable-libsanitizer"
                                 ))
 
+                       ;; Install cross-built libraries such as libgcc_s.so in
+                       ;; the "lib" output.
+                       ,@(if libc
+                             `((string-append "--with-toolexeclibdir="
+                                              (assoc-ref %outputs "lib")
+                                              "/" ,target "/lib"))
+                             '())
                        ;; For a newlib (non-glibc) target
                        ,@(if (cross-newlib? target)
                              '("--with-newlib")
@@ -196,12 +204,18 @@ base compiler and using LIBC (which may be either a libc 
package or #f.)"
 
 (define (cross-gcc-snippet target)
   "Return GCC snippet needed for TARGET."
-  (cond ((target-mingw? target)
-         '(begin
-            (copy-recursively "libstdc++-v3/config/os/mingw32-w64"
-                              "libstdc++-v3/config/os/newlib")
-            #t))
-        (else #f)))
+  `(begin
+     ,@(if (target-mingw? target)
+           '((copy-recursively "libstdc++-v3/config/os/mingw32-w64"
+                               "libstdc++-v3/config/os/newlib"))
+           '())
+     ;; TOOLDIR_BASE_PREFIX is erroneous when using a separate "lib"
+     ;; output. Specify it correctly, otherwise GCC won't find its shared
+     ;; libraries installed in the "lib" output.
+     (substitute* "gcc/Makefile.in"
+       (("-DTOOLDIR_BASE_PREFIX=[^ ]*")
+        "-DTOOLDIR_BASE_PREFIX=\\\"../../../../\\\""))
+     #t))
 
 (define* (cross-gcc target
                     #:key
@@ -220,18 +234,19 @@ target that libc."
               (patches
                (append
                 (origin-patches (package-source xgcc))
-                (cons (cond
-                       ((version>=? (package-version xgcc) "8.0") 
(search-patch "gcc-8-cross-environment-variables.patch"))
-                       ((version>=? (package-version xgcc) "6.0") 
(search-patch "gcc-6-cross-environment-variables.patch"))
-                       (else  (search-patch 
"gcc-cross-environment-variables.patch")))
+                (append (cond
+                       ((version>=? (package-version xgcc) "8.0")
+                        (search-patches 
"gcc-8-cross-environment-variables.patch"))
+                       ((version>=? (package-version xgcc) "6.0")
+                        (search-patches "gcc-7-cross-toolexeclibdir.patch"
+                                        
"gcc-6-cross-environment-variables.patch"))
+                       (else  (search-patches 
"gcc-cross-environment-variables.patch")))
                       (cross-gcc-patches xgcc target))))
               (modules '((guix build utils)))
               (snippet
                (cross-gcc-snippet target))))
 
-    ;; For simplicity, use a single output.  Otherwise libgcc_s & co. are not
-    ;; found by default, etc.
-    (outputs '("out"))
+    (outputs '("out" "lib"))
 
     (arguments
      `(#:implicit-inputs? #f
diff --git a/gnu/packages/patches/gcc-7-cross-toolexeclibdir.patch 
b/gnu/packages/patches/gcc-7-cross-toolexeclibdir.patch
new file mode 100644
index 0000000000..2686ca83fb
--- /dev/null
+++ b/gnu/packages/patches/gcc-7-cross-toolexeclibdir.patch
@@ -0,0 +1,36585 @@
+This patch taken from GCC upstream adds support for overriding cross-compiled
+shared libraries installation path.  This is needed to have a separate "lib"
+output containing those shared libraries.
+
+From fe6b5640a52a6e75dddea834e357974c205c737c Mon Sep 17 00:00:00 2001
+From: "Maciej W. Rozycki" <address@hidden>
+Date: Fri, 24 Jan 2020 11:24:25 +0000
+Subject: [PATCH] Add `--with-toolexeclibdir=' configuration option
+
+Provide means, in the form of a `--with-toolexeclibdir=' configuration
+option, to override the default installation directory for target
+libraries, otherwise known as $toolexeclibdir.  This is so that it is
+possible to get newly-built libraries, particularly the shared ones,
+installed in a common place, so that they can be readily used by the
+target system as their host libraries, possibly over NFS, without a need
+to manually copy them over from the currently hardcoded location they
+would otherwise be installed in.
+
+In the presence of the `--enable-version-specific-runtime-libs' option
+and for configurations building native GCC the option is ignored.
+
+       config/
+       * toolexeclibdir.m4: New file.
+
+       gcc/
+       * doc/install.texi (Cross-Compiler-Specific Options): Document
+       `--with-toolexeclibdir' option.
+
+       libada/
+       * Makefile.in (configure_deps): Add `toolexeclibdir.m4'.
+       * configure.ac: Handle `--with-toolexeclibdir='.
+       * configure: Regenerate.
+
+       libatomic/
+       * configure.ac: Handle `--with-toolexeclibdir='.
+       * Makefile.in: Regenerate.
+       * aclocal.m4: Regenerate.
+       * configure: Regenerate.
+       * testsuite/Makefile.in: Regenerate.
+
+       libffi/
+       * configure.ac: Handle `--with-toolexeclibdir='.
+       * Makefile.in: Regenerate.
+       * aclocal.m4: Regenerate.
+       * configure: Regenerate.
+       * include/Makefile.in: Regenerate.
+       * man/Makefile.in: Regenerate.
+       * testsuite/Makefile.in: Regenerate.
+
+       libgcc/
+       * Makefile.in (configure_deps): Add `toolexeclibdir.m4'.
+       * configure.ac: Handle `--with-toolexeclibdir='.
+       * configure: Regenerate.
+
+       libgfortran/
+       * configure.ac: Handle `--with-toolexeclibdir='.
+       * Makefile.in: Regenerate.
+       * aclocal.m4: Regenerate.
+       * configure: Regenerate.
+
+       libgomp/
+       * configure.ac: Handle `--with-toolexeclibdir='.
+       * Makefile.in: Regenerate.
+       * aclocal.m4: Regenerate.
+       * configure: Regenerate.
+       * testsuite/Makefile.in: Regenerate.
+
+       libhsail-rt/
+       * configure.ac: Handle `--with-toolexeclibdir='.
+       * Makefile.in: Regenerate.
+       * aclocal.m4: Regenerate.
+       * configure: Regenerate.
+
+       libitm/
+       * configure.ac: Handle `--with-toolexeclibdir='.
+       * Makefile.in: Regenerate.
+       * aclocal.m4: Regenerate.
+       * configure: Regenerate.
+       * testsuite/Makefile.in: Regenerate.
+
+       libobjc/
+       * Makefile.in (aclocal_deps): Add `toolexeclibdir.m4'.
+       * aclocal.m4: Include `toolexeclibdir.m4'.
+       * configure.ac: Handle `--with-toolexeclibdir='.
+       * configure: Regenerate.
+
+       liboffloadmic/
+       * plugin/configure.ac: Handle `--with-toolexeclibdir='.
+       * plugin/Makefile.in: Regenerate.
+       * plugin/aclocal.m4: Regenerate.
+       * plugin/configure: Regenerate.
+       * configure.ac: Handle `--with-toolexeclibdir='.
+       * Makefile.in: Regenerate.
+       * aclocal.m4: Regenerate.
+       * configure: Regenerate.
+
+       libphobos/
+       * m4/druntime.m4: Handle `--with-toolexeclibdir='.
+       * m4/Makefile.in: Regenerate.
+       * libdruntime/Makefile.in: Regenerate.
+       * src/Makefile.in: Regenerate.
+       * testsuite/Makefile.in: Regenerate.
+       * Makefile.in: Regenerate.
+       * aclocal.m4: Regenerate.
+       * configure: Regenerate.
+
+       libquadmath/
+       * configure.ac: Handle `--with-toolexeclibdir='.
+       * Makefile.in: Regenerate.
+       * aclocal.m4: Regenerate.
+       * configure: Regenerate.
+
+       libsanitizer/
+       * configure.ac: Handle `--with-toolexeclibdir='.
+       * Makefile.in: Regenerate.
+       * aclocal.m4: Regenerate.
+       * configure: Regenerate.
+       * asan/Makefile.in: Regenerate.
+       * interception/Makefile.in: Regenerate.
+       * libbacktrace/Makefile.in: Regenerate.
+       * lsan/Makefile.in: Regenerate.
+       * sanitizer_common/Makefile.in: Regenerate.
+       * tsan/Makefile.in: Regenerate.
+       * ubsan/Makefile.in: Regenerate.
+
+       libssp/
+       * configure.ac: Handle `--with-toolexeclibdir='.
+       * Makefile.in: Regenerate.
+       * aclocal.m4: Regenerate.
+       * configure: Regenerate.
+
+       libstdc++-v3/
+       * acinclude.m4: Handle `--with-toolexeclibdir='.
+       * Makefile.in: Regenerate.
+       * aclocal.m4: Regenerate.
+       * configure: Regenerate.
+       * doc/Makefile.in: Regenerate.
+       * include/Makefile.in: Regenerate.
+       * libsupc++/Makefile.in: Regenerate.
+       * po/Makefile.in: Regenerate.
+       * python/Makefile.in: Regenerate.
+       * src/Makefile.in: Regenerate.
+       * src/c++11/Makefile.in: Regenerate.
+       * src/c++17/Makefile.in: Regenerate.
+       * src/c++98/Makefile.in: Regenerate.
+       * src/filesystem/Makefile.in: Regenerate.
+       * testsuite/Makefile.in: Regenerate.
+
+       libvtv/
+       * configure.ac: Handle `--with-toolexeclibdir='.
+       * Makefile.in: Regenerate.
+       * aclocal.m4: Regenerate.
+       * configure: Regenerate.
+       * testsuite/Makefile.in: Regenerate.
+
+       zlib/
+       * configure.ac: Handle `--with-toolexeclibdir='.
+       * Makefile.in: Regenerate.
+       * aclocal.m4: Regenerate.
+       * configure: Regenerate.
+---
+ config/ChangeLog                          |   148 +-
+ config/toolexeclibdir.m4                  |    31 +
+ gcc/ChangeLog                             | 18710 +++-----------------
+ gcc/doc/install.texi                      |     4 +
+ libada/ChangeLog                          |    68 +-
+ libada/Makefile.in                        |     1 +
+ libada/configure                          |    29 +-
+ libada/configure.ac                       |    12 +-
+ libatomic/ChangeLog                       |   162 +-
+ libatomic/Makefile.in                     |     1 +
+ libatomic/aclocal.m4                      |     1 +
+ libatomic/configure                       |    33 +-
+ libatomic/configure.ac                    |    11 +-
+ libatomic/testsuite/Makefile.in           |     1 +
+ libffi/ChangeLog                          |    93 +-
+ libffi/Makefile.in                        |     1 +
+ libffi/aclocal.m4                         |     1 +
+ libffi/configure                          |    33 +-
+ libffi/configure.ac                       |    11 +-
+ libffi/include/Makefile.in                |     1 +
+ libffi/man/Makefile.in                    |     1 +
+ libffi/testsuite/Makefile.in              |     1 +
+ libgcc/ChangeLog                          |  2051 ++-
+ libgcc/Makefile.in                        |     1 +
+ libgcc/configure                          |    38 +-
+ libgcc/configure.ac                       |    25 +-
+ libgfortran/ChangeLog                     |   725 +-
+ libgfortran/Makefile.in                   |     1 +
+ libgfortran/aclocal.m4                    |     1 +
+ libgfortran/configure                     |    33 +-
+ libgfortran/configure.ac                  |    11 +-
+ libgomp/ChangeLog                         |  4463 ++++-
+ libgomp/Makefile.in                       |     1 +
+ libgomp/aclocal.m4                        |     1 +
+ libgomp/configure                         |    33 +-
+ libgomp/configure.ac                      |    11 +-
+ libgomp/testsuite/Makefile.in             |     1 +
+ libhsail-rt/ChangeLog                     |    64 +-
+ libhsail-rt/Makefile.in                   |     1 +
+ libhsail-rt/aclocal.m4                    |     1 +
+ libhsail-rt/configure                     |    33 +-
+ libhsail-rt/configure.ac                  |    11 +-
+ libitm/ChangeLog                          |   178 +-
+ libitm/Makefile.in                        |     1 +
+ libitm/aclocal.m4                         |     1 +
+ libitm/configure                          |    33 +-
+ libitm/configure.ac                       |    11 +-
+ libitm/testsuite/Makefile.in              |     1 +
+ libobjc/ChangeLog                         |   300 +-
+ libobjc/Makefile.in                       |     1 +
+ libobjc/aclocal.m4                        |     1 +
+ libobjc/configure                         |    33 +-
+ libobjc/configure.ac                      |    11 +-
+ liboffloadmic/ChangeLog                   |    65 +-
+ liboffloadmic/Makefile.in                 |     1 +
+ liboffloadmic/aclocal.m4                  |     1 +
+ liboffloadmic/configure                   |    33 +-
+ liboffloadmic/configure.ac                |    11 +-
+ liboffloadmic/plugin/Makefile.in          |     1 +
+ liboffloadmic/plugin/aclocal.m4           |     1 +
+ liboffloadmic/plugin/configure            |    33 +-
+ liboffloadmic/plugin/configure.ac         |    11 +-
+ libquadmath/ChangeLog                     |   222 +-
+ libquadmath/Makefile.in                   |     1 +
+ libquadmath/aclocal.m4                    |     1 +
+ libquadmath/configure                     |    33 +-
+ libquadmath/configure.ac                  |    11 +-
+ libsanitizer/ChangeLog                    |   624 +-
+ libsanitizer/Makefile.in                  |     1 +
+ libsanitizer/aclocal.m4                   |     1 +
+ libsanitizer/asan/Makefile.in             |     1 +
+ libsanitizer/configure                    |    33 +-
+ libsanitizer/configure.ac                 |    11 +-
+ libsanitizer/interception/Makefile.in     |     1 +
+ libsanitizer/libbacktrace/Makefile.in     |     1 +
+ libsanitizer/lsan/Makefile.in             |     1 +
+ libsanitizer/sanitizer_common/Makefile.in |     1 +
+ libsanitizer/tsan/Makefile.in             |     1 +
+ libsanitizer/ubsan/Makefile.in            |     1 +
+ libssp/ChangeLog                          |    59 +-
+ libssp/Makefile.in                        |     1 +
+ libssp/aclocal.m4                         |     1 +
+ libssp/configure                          |    33 +-
+ libssp/configure.ac                       |    11 +-
+ libstdc++-v3/ChangeLog                    |  3997 +----
+ libstdc++-v3/Makefile.in                  |     1 +
+ libstdc++-v3/acinclude.m4                 |    11 +-
+ libstdc++-v3/aclocal.m4                   |     1 +
+ libstdc++-v3/configure                    |    44 +-
+ libstdc++-v3/doc/Makefile.in              |     1 +
+ libstdc++-v3/include/Makefile.in          |     1 +
+ libstdc++-v3/libsupc++/Makefile.in        |     1 +
+ libstdc++-v3/po/Makefile.in               |     1 +
+ libstdc++-v3/python/Makefile.in           |     1 +
+ libstdc++-v3/src/Makefile.in              |     1 +
+ libstdc++-v3/src/c++11/Makefile.in        |     1 +
+ libstdc++-v3/src/c++17/Makefile.in        |     1 +
+ libstdc++-v3/src/c++98/Makefile.in        |     1 +
+ libstdc++-v3/src/filesystem/Makefile.in   |     1 +
+ libstdc++-v3/testsuite/Makefile.in        |     1 +
+ libvtv/ChangeLog                          |    75 +-
+ libvtv/Makefile.in                        |     1 +
+ libvtv/aclocal.m4                         |     1 +
+ libvtv/configure                          |    33 +-
+ libvtv/configure.ac                       |    11 +-
+ libvtv/testsuite/Makefile.in              |     1 +
+ zlib/ChangeLog.gcj                        |    33 +
+ zlib/Makefile.in                          |     1 +
+ zlib/aclocal.m4                           |     1 +
+ zlib/configure                            |    33 +-
+ zlib/configure.ac                         |    11 +-
+ 111 files changed, 11540 insertions(+), 21364 deletions(-)
+ create mode 100644 config/toolexeclibdir.m4
+
+diff --git a/config/ChangeLog b/config/ChangeLog
+index 0a71e399754..9c8e40af124 100644
+--- a/config/ChangeLog
++++ b/config/ChangeLog
+@@ -1,30 +1,150 @@
+-2019-11-14  Release Manager
++2020-01-24  Maciej W. Rozycki  <address@hidden>
+ 
+-      * GCC 7.5.0 released.
++      * toolexeclibdir.m4: New file.
+ 
+-2018-12-06  Release Manager
++2019-09-10  Christophe Lyon  <address@hidden>
+ 
+-      * GCC 7.4.0 released.
++      * futex.m4: Handle *-uclinux*.
++      * tls.m4 (GCC_CHECK_TLS): Likewise.
+ 
+-2018-06-22  Jakub Jelinek  <address@hidden>
++2019-09-06  Florian Weimer  <address@hidden>
+ 
+-      Backported from mainline
+-      2018-04-18  David Malcolm  <address@hidden>
++      * futex.m4 (GCC_LINUX_FUTEX): Include <unistd.h> for the syscall
++      function.
++
++2019-07-08  Richard Sandiford  <address@hidden>
++
++      * bootstrap-Og.mk: New file.
++
++2019-06-25  Kwok Cheung Yeung  <address@hidden>
++            Andrew Stubbs  <address@hidden>
++
++      * gthr.m4 (GCC_AC_THREAD_HEADER): Add case for gcn.
++
++2019-05-30  Rainer Orth  <address@hidden>
++
++      * ax_count_cpus.m4: New file.
++
++2019-05-02  Richard Biener  <address@hidden>
++
++      PR bootstrap/85574
++      * bootstrap-lto.mk (extra-compare): Set to gcc/lto1$(exeext).
++
++2019-04-16  Martin Liska  <address@hidden>
++
++      * bootstrap-lto-lean.mk: Filter out -flto in STAGEtrain_CFLAGS.
++
++2019-04-09  Martin Liska  <address@hidden>
++
++      * bootstrap-lto-lean.mk: New file.
++
++2019-03-02  Johannes Pfau  <address@hidden>
++
++      * mh-mingw: Also set __USE_MINGW_ACCESS flag for C++ code.
++
++2018-10-31  Joseph Myers  <address@hidden>
++
++      PR bootstrap/82856
++      * math.m4, tls.m4: Use AC_LANG_SOURCE.
++
++      Merge from binutils-gdb:
++      2018-06-19  Simon Marchi  <address@hidden>
++
++      * override.m4 (_GCC_AUTOCONF_VERSION): Bump from 2.64 to 2.69.
++
++2018-10-28  Iain Buclaw  <address@hidden>
++
++      * multi.m4: Set GDC.
++
++2018-07-05  James Clarke  <address@hidden>
++
++      * dfp.m4 (enable_decimal_float): Enable for x86_64*-*-gnu* to
++      catch x86_64 kFreeBSD and Hurd.
++
++2018-06-08  Martin Liska  <address@hidden>
++
++      * bootstrap-mpx.mk: Remove.
++
++2018-05-10  Martin Liska  <address@hidden>
++
++      PR bootstrap/64914
++      * bootstrap-ubsan.mk: Define UBSAN_BOOTSTRAP.
++
++2018-05-09  Joshua Watt <address@hidden>
++
++      * ax_pthread.m4: Add file.
++
++2018-05-08  Richard Biener  <address@hidden>
++
++      PR bootstrap/85571
++      * bootstrap-lto-noplugin.mk: Disable compare.
++      * bootstrap-lto.mk: Supply contrib/compare-lto for do-compare.
++
++2018-04-24  H.J. Lu  <address@hidden>
++
++      PR bootstrap/85490
++      * bootstrap-cet.mk (STAGE4_CFLAGS): New.
++
++2018-04-24  H.J. Lu  <address@hidden>
++
++      PR target/85485
++      * bootstrap-cet.mk (STAGE2_CFLAGS): Remove -mcet.
++      (STAGE3_CFLAGS): Likewise.
++
++2018-04-24  H.J. Lu  <address@hidden>
++
++      PR target/85485
++      * cet.m4 (GCC_CET_FLAGS): Replace -mcet with -mshstk.
++
++2018-04-19  Jakub Jelinek  <address@hidden>
++
++      * cet.m4 (GCC_CET_FLAGS): Default to --disable-cet, replace
++      --enable-cet=default with --enable-cet=auto.
++
++2018-04-18  David Malcolm  <address@hidden>
+ 
+       PR jit/85384
+       * acx.m4 (GCC_BASE_VER): Remove \$\$ from sed expression.
+ 
+-2018-01-25  Release Manager
++2018-04-05  H.J. Lu  <address@hidden>
++
++      PR gas/22318
++      * plugins.m4 (AC_PLUGINS): Use dlsym to check if libdl is needed.
++
++2018-02-14  Igor Tsimbalist  <address@hidden>
++
++      PR target/84148
++      * cet.m4: Check if target support multi-byte NOPS (SSE).
++
++2018-02-06  Eric Botcazou  <address@hidden>
++
++      * gcc-plugin.m4 (GCC_ENABLE_PLUGINS): Remove -q option passed to grep.
++
++2017-11-14 Boris Kolpackov  <address@hidden>
++
++      * gcc-plugin.m4: Add support for MinGW.
++
++2017-11-17  Igor Tsimbalist  <address@hidden>
++
++      * cet.m4: New file.
++
++2017-11-15  Alexandre Oliva <address@hidden>
++
++      * bootstrap-debug-lean.mk (do-compare): Use the
++      contrib/compare-debug script.
++
++2017-10-24  H.J. Lu  <address@hidden>
+ 
+-      * GCC 7.3.0 released.
++      * bootstrap-cet.mk: New file.
+ 
+-2017-08-14  Release Manager
++2017-06-19  Martin Liska  <address@hidden>
+ 
+-      * GCC 7.2.0 released.
++      * bootstrap-lto-noplugin.mk: Enable -flto in all PGO stages.
++      * bootstrap-lto.mk: Likewise.
+ 
+-2017-05-02  Release Manager
++2017-06-03  Eric Botcazou  <address@hidden>
+ 
+-      * GCC 7.1.0 released.
++      * mt-android: New file.
+ 
+ 2017-02-13  Richard Biener  <address@hidden>
+ 
+@@ -389,7 +509,7 @@
+ 
+       * config/mh-interix: Remove as unneeded.
+       * config/picflag.m4 (i[[34567]]86-*-interix3*):
+-        Change triplet to i[[34567]]86-*-interix[[3-9]]*.
++      Change triplet to i[[34567]]86-*-interix[[3-9]]*.
+ 
+ 2012-01-04  Andreas Krebbel  <address@hidden>
+ 
+diff --git a/config/toolexeclibdir.m4 b/config/toolexeclibdir.m4
+new file mode 100644
+index 00000000000..5dd89786219
+--- /dev/null
++++ b/config/toolexeclibdir.m4
+@@ -0,0 +1,31 @@
++dnl toolexeclibdir override support.
++dnl Copyright (C) 2020  Free Software Foundation, Inc.
++dnl
++dnl This program is free software; you can redistribute it and/or modify
++dnl it under the terms of the GNU General Public License as published by
++dnl the Free Software Foundation; either version 3, or (at your option)
++dnl any later version.
++dnl
++dnl This program is distributed in the hope that it will be useful,
++dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
++dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++dnl GNU General Public License for more details.
++dnl
++dnl You should have received a copy of the GNU General Public License
++dnl along with this program; see the file COPYING3.  If not see
++dnl <http://www.gnu.org/licenses/>.
++
++AC_DEFUN([GCC_WITH_TOOLEXECLIBDIR],
++[AC_ARG_WITH(toolexeclibdir,
++  [AS_HELP_STRING([--with-toolexeclibdir=DIR],
++                [install libraries built with a cross compiler within DIR])],
++  [dnl
++case ${with_toolexeclibdir} in
++  /)
++    ;;
++  */)
++    with_toolexeclibdir=`echo $with_toolexeclibdir | sed 's,/$,,'`
++    ;;
++esac],
++  [with_toolexeclibdir=no])
++])
+diff --git a/gcc/ChangeLog b/gcc/ChangeLog
+index 51fed5508dc..f15f03a4a6d 100644
+--- a/gcc/ChangeLog
++++ b/gcc/ChangeLog
+@@ -1,16523 +1,2517 @@
+-2019-11-14  Release Manager
++2020-01-24  Maciej W. Rozycki  <address@hidden>
+ 
+-      * GCC 7.5.0 released.
++      * doc/install.texi (Cross-Compiler-Specific Options): Document
++      `--with-toolexeclibdir' option.
+ 
+-2019-11-01  Iain Sandoe  <address@hidden>
++2020-01-24  Hans-Peter Nilsson  <address@hidden>
+ 
+-      Backport from mainline
+-      2019-10-13  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin.c (machopic_indirection_name): Rework the
+-      function to emit linker-visible symbols only for indirections
+-      in the data section.  Clean up the code and update comments.
+-
+-2019-11-01  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-10-09  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin.c (darwin_override_options): Make the check for
+-      Objective-C ABI version more specific for 64bit code.
+-
+-      Backport from mainline
+-      2019-10-06  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin.c (darwin_override_options): Adjust objective-c
+-      ABI version error messages to avoid punctuation and contracted
+-      negations.
+-
+-2019-11-01  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-07-03  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin.h (REAL_LIBGCC_SPEC): Adjust for earlier Darwin.
+-      (STARTFILE_SPEC): Split crt3 into a separate spec.
+-      (DARWIN_EXTRA_SPECS): Add crt2 and crt3 spec.
+-      (DARWIN_CRT2_SPEC): New.
+-      (DARWIN_CRT3_SPEC): New.
+-      (MIN_LD64_OMIT_STUBS): Revise to 62.1.
+-      * config/rs6000/darwin.h (DARWIN_CRT2_SPEC): Revise conditions.
+-      (DARWIN_CRT3_SPEC): New.
+-
+-2019-11-01  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-06-27  Iain Sandoe  <address@hidden>
+-
+-      * config/rs6000/darwin.h (ENDFILE_SPEC): Correct whitespace in the
+-      spec.
+-
+-      Backport from mainline
+-      2019-06-25  Iain Sandoe  <address@hidden>
+-
+-      * config/rs6000/darwin.h (ENDFILE_SPEC): New.
+-
+-2019-11-01  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-06-18  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin.c (darwin_emit_unwind_label): New default to false.
+-      (darwin_override_options): Set darwin_emit_unwind_label as needed.
+-
+-2019-11-01  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-08-13 Iain Sandoe <address@hidden>
+-
+-      * config/darwin.c (machopic_indirect_call_target): Rename symbol stub
+-      flag.
+-      (darwin_override_options): Likewise.
+-      * config/darwin.h: Likewise.
+-      * config/darwin.opt: Likewise.
+-      * config/i386/i386.c (output_pic_addr_const): Likewise.
+-      * config/rs6000/darwin.h: Likewise.
+-      * config/rs6000/rs6000.c (rs6000_call_darwin_1): Likewise.
+-      * config/i386/darwin.h (TARGET_MACHO_PICSYM_STUBS): Rename to ...
+-      ... this TARGET_MACHO_SYMBOL_STUBS.
+-      (FUNCTION_PROFILER):Likewise.
+-      * config/i386/i386.h: Likewise.
+-
+-      Backport from mainline
+-      2019-06-16  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin.c (machopic_indirect_call_target): Use renamed
+-      darwin_picsymbol_stubs to decide on output.
+-      (darwin_override_options): Handle darwin_picsymbol_stubs.
+-      * config/darwin.h (MIN_LD64_OMIT_STUBS): New.
+-      (LD64_VERSION): Revise default.
+-      * config/darwin.opt: (mpic-symbol-stubs): New option.
+-      (darwin_picsymbol_stubs): New variable.
+-      * config/i386/darwin.h (TARGET_MACHO_BRANCH_ISLANDS):
+-      rename to TARGET_MACHO_PICSYM_STUBS.
+-      * config/i386/i386.c (output_pic_addr_const): Likewise.
+-      * config/i386/i386.h Likewise.
+-      * config/rs6000/darwin.h: Likewise.
+-      * config/rs6000/rs6000.c (rs6000_call_darwin_1): Use renamed
+-      darwin_picsymbol_stubs.
+-
+-2019-11-01  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-06-28  Iain Sandoe  <address@hidden>
+-
+-      * config.gcc (powerpc-*-darwin*, powerpc64-*-darwin*): Remove
+-      override on extra_headers.
+-
+-2019-11-01  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-06-27  Iain Sandoe  <address@hidden>
+-
+-      * config/rs6000/rs6000.c (darwin_rs6000_override_options): Honour
+-      user-specified float mode choice for kernel mode code.
+-
+-2019-11-01  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-06-23  Iain Sandoe  <address@hidden>
+-
+-      * config/rs6000/darwin.h: Handle GCC target pragma.
+-
+-2019-10-29  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-10-17  Iain Sandoe  <address@hidden>
+-
+-      PR target/65342
+-      * config/rs6000/darwin.md (movdi_low, movsi_low_st): Delete.
+-      (movdi_low_st): Delete.
+-      * config/rs6000/rs6000.c
+-      (darwin_rs6000_legitimate_lo_sum_const_p): New.
+-      (mem_operand_gpr): Validate Mach-O LO_SUM cases separately.
+-      * config/rs6000/rs6000.md (movsi_low): Delete.
+-
+-2019-10-29  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-10-12  Iain Sandoe  <address@hidden>
+-
+-      PR target/67183
+-      * config/darwin.c (machopic_indirection): New field to flag
+-      non-lazy-symbol-pointers in the data section.
+-      (machopic_indirection_name): Compute if an indirection should
+-      appear in the data section.
+-      (machopic_output_data_section_indirection): New callback split
+-      from machopic_output_indirection.
+-      (machopic_output_stub_indirection): Likewise.
+-      (machopic_output_indirection): Retain the code for non-lazy
+-      symbol pointers in their regular section.
+-      (machopic_finish): Use the new callbacks to order the indirection
+-      output.
+-
+-2019-10-29  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-10-12  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin-protos.h (machopic_finish): Delete.
+-      * config/darwin.c (machopic_finish): Make static.
+-
+-      Backport from mainline
+-      2019-10-09  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin.c (machopic_indirect_data_reference): Set flag to
+-      indicate that the new symbol is an indirection.
+-      (machopic_indirect_call_target): Likewise.
+-      * config/darwin.h (MACHO_SYMBOL_FLAG_INDIRECTION): New.
+-      (MACHO_SYMBOL_INDIRECTION_P): New.
+-      (MACHO_SYMBOL_FLAG_STATIC): Adjust bit number.
+-
+-      Backport from mainline
+-      2019-10-08  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin.c (machopic_indirect_data_reference): Check for
+-      required indirections before making direct access to defined
+-      values.
+-      (machopic_output_indirection): Place the indirected pointes for
+-      required indirections into the non-lazy symbol pointers section.
+-      (darwin_encode_section_info):
+-      * config/darwin.h (MACHO_SYMBOL_FLAG_MUST_INDIRECT): New.
+-      (MACHO_SYMBOL_MUST_INDIRECT_P): New.
+-
+-      Backport from mainline
+-      2019-10-07  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin.c (machopic_output_indirection): Don't put
+-      hidden symbol indirections into the .data section, use the
+-      non-lazy symbol pointers section as normal.
+-      (darwin_encode_section_info): Record if a symbol is hidden.
+-      * config/darwin.h (MACHO_SYMBOL_FLAG_HIDDEN_VIS): New.
+-      (MACHO_SYMBOL_HIDDEN_VIS_P): New.
+-
+-      Backport from mainline
+-      2019-10-07  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin.c (machopic_symbol_defined_p): Use symbol flag
+-      predicates instead of accessing bits directly.
+-      (machopic_indirect_call_target): Likewise.
+-      (machopic_output_indirection): Likewise.
+-      (darwin_encode_section_info): Improve description.  Use renamed
+-      symbol flags.  Use predicate macros for variables and functions.
+-      * config/darwin.h:
+-      Rename MACHO_SYMBOL_VARIABLE to MACHO_SYMBOL_FLAG_VARIABLE.
+-      Rename MACHO_SYMBOL_DEFINED to MACHO_SYMBOL_FLAG_DEFINED.
+-      Rename MACHO_SYMBOL_STATIC to MACHO_SYMBOL_FLAG_STATIC.
+-      (MACHO_SYMBOL_VARIABLE_P): New.
+-      (MACHO_SYMBOL_DEFINED_P):New.
+-      (MACHO_SYMBOL_STATIC_P): New.
+-      * config/i386/darwin.h (MACHO_SYMBOL_FLAG_VARIABLE): Delete.
+-      (SYMBOL_FLAG_SUBT_DEP): New.
+-      * config/rs6000/darwin.h (SYMBOL_FLAG_SUBT_DEP): New.
+-
+-2019-10-29  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-10-05  Iain Sandoe  <address@hidden>
+-
+-      PR target/59888
+-      * config/darwin.c (darwin_rodata_section): Add relocation flag,
+-      choose const_data section for constants with relocations.
+-      (machopic_select_section): Pass relocation flag to
+-      darwin_rodata_section ().
+-
+-2019-10-29  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-09-21  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin.c (machopic_legitimize_pic_address): Check
+-      for lra, rather than reload.
+-
+-2019-10-29  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-10-03  Iain Sandoe  <address@hidden>
+-
+-      PR target/87243
+-      * config/darwin-driver.c (maybe_get_sysroot_from_sdkroot): New.
+-      (darwin_driver_init): Use the sysroot provided by SDKROOT when that
+-      is available and the user has not set one on the command line.
+-
+-2019-10-29  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-07-03  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin.h (DRIVER_SELF_SPECS): Remove the linker cases.
+-      (RDYNAMIC): Rename to, DARWIN_RDYNAMIC.
+-      (DARWIN_PIE_SPEC, DARWIN_NOPIE_SPEC): Adjust to remove the Xlinker
+-      clauses.
+-      (LINK_COMMAND_SPEC_A): Add DARWIN_RDYNAMIC, DARWIN_PIE_SPEC and
+-      DARWIN_NOPIE_SPEC.
+-
+-      Backport from mainline
+-      2019-06-19  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin.h (DRIVER_SELF_SPECS): Add RDYNAMIC, DARWIN_PIE_SPEC
+-      and DARWIN_NOPIE_SPEC.
+-      (RDYNAMIC): New, modified from DARWIN_EXPORT_DYNAMIC.
+-      (DARWIN_PIE_SPEC): Collate from darwin.h and darwin9.h.
+-      (DARWIN_NOPIE_SPEC): Collate from darwin10.h.
+-      (DARWIN_NOCOMPACT_UNWIND): New from darwin10.h
+-      (DARWIN_EXPORT_DYNAMIC): Delete.
+-      * config/darwin10.h (LINK_GCC_C_SEQUENCE_SPEC): Move no_compact_unwind
+-      and pie options processing to  darwin.h.
+-      * config/darwin9.h (DARWIN_PIE_SPEC): Move pie processing to darwin.h
+-
+-2019-10-25  Richard Earnshaw  <address@hidden>
+-
+-      Backport from mainline
+-      2019-05-08  Mihail Ionescu  <address@hidden>
+-          Richard Earnshaw  <address@hidden>
+-      PR target/88167
+-      * config/arm/arm.c (thumb1_prologue_unused_call_clobbered_lo_regs): New
+-      function.
+-      (thumb1_epilogue_unused_call_clobbered_lo_regs): New function.
+-      (thumb1_compute_save_core_reg_mask): Don't force a spare work
+-      register if both the epilogue and prologue can use call-clobbered
+-      regs.
+-      (thumb1_unexpanded_epilogue): Use
+-      thumb1_epilogue_unused_call_clobbered_lo_regs.  Reverse the logic for
+-      picking temporaries for restoring high regs to match that of the
+-      prologue where possible.
+-      (thumb1_expand_prologue): Add any usable call-clobbered low registers to
+-      the list of work registers.  Detect if the return address is still live
+-      at the end of the prologue and avoid using it for a work register if so.
+-      If the return address is not live, add LR to the list of pushable regs
+-      after the first pass.
+-
+-2019-10-24  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2019-10-17  Richard Biener  <address@hidden>
+-
+-      PR debug/91887
+-      * dwarf2out.c (gen_formal_parameter_die): Also try to match
+-      context_die against a DW_TAG_GNU_formal_parameter_pack parent.
+-
+-      2019-09-19  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/91812
+-      * tree-ssa-phiprop.c (propagate_with_phi): Do not replace
+-      volatile loads.
+-
+-2019-10-23  Eric Botcazou  <address@hidden>
+-
+-      PR tree-optimization/92131
+-      * tree-vrp.c (extract_range_from_plus_minus_expr): If the resulting
+-      range would be symbolic, drop to varying for any explicit overflow
+-      in the constant part or if neither range is a singleton.
+-
+-2019-10-18  Georg-Johann Lay  <address@hidden>
+-
+-      Backport from trunk
+-      2019-10-18  Georg-Johann Lay  <address@hidden>
+-
+-      PR target/86040
+-      * config/avr/avr.c (avr_out_lpm): Do not shortcut-return.
+-
+-2019-10-17  Segher Boessenkool  <address@hidden>
+-
+-      Backport from trunk
+-      2019-03-15  Segher Boessenkool  <address@hidden>
+-
+-      PR rtl-optimization/89721
+-      * lra-constraints (invariant_p): Return false if side_effects_p holds.
+-
+-2019-10-17  Richard Earnshaw  <address@hidden>
+-
+-      Backport from mainline
+-      2019-05-03  Richard Earnshaw  <address@hidden>
+-
+-      PR target/89400
+-      * config/arm/arm.md (unaligned_loadsi): Add variant for thumb1.
+-      Restrict 'all' variant to 32-bit configurations.
+-      (unaligned_loadhiu): Likewise.
+-      (unaligned_storehi): Likewise.
+-      (unaligned_storesi): Likewise.
+-      (unaligned_loadhis): Disable when compiling for thumb1.
+-
+-2019-10-16  Peter Bergner  <address@hidden>
+-
+-      Backport from mainline
+-      2019-10-08  Tulio Magno Quites Machado Filho  <address@hidden>
+-
+-      * config.gcc: Move -L usage from LINK_OS_EXTRA_SPEC32 and
+-      LINK_OS_EXTRA_SPEC64 to MD_STARTFILE_PREFIX and
+-      MD_STARTFILE_PREFIX_1 when using --with-advance-toolchain.
+-
+-2019-10-11  Oleg Endo  <address@hidden>
+-
+-      Backport from mainline
+-      2019-10-10  Oleg Endo  <address@hidden>
+-
+-      PR target/88630
+-      * config/sh/sh.h (TARGET_FPU_SH4_300): New macro.
+-      * config/sh/sh.c (sh_option_override): Enable fsca and fsrra insns
+-      also for TARGET_FPU_SH4_300.
+-      (sh_emit_mode_set): Check for TARGET_FPU_SH4_300 instead of
+-      TARGET_SH4_300.
+-      * config/sh/sh.md (toggle_pr): Add TARGET_FPU_SH4_300 condition.
+-      (negsf2): Expand to either negsf2_fpscr or negsf2_no_fpscr.
+-      (*negsf2_i): Split into ...
+-      (negsf2_fpscr, negsf2_no_fpscr): ... these new patterns.
+-      (abssf2): Expand to either abssf2_fpsc or abssf2_no_fpsc.
+-      (**abssf2_i): Split into ...
+-      (abssf2_fpscr, abssf2_no_fpscr): ... these new patterns.
+-      (negdf2): Expand to either negdf2_fpscr or negdf2_no_fpscr.
+-      (*negdf2_i): Split into ...
+-      (negdf2_fpscr, negdf2_no_fpscr): ... these new patterns.
+-      (absdf2): Expand to either absdf2_fpscr or absdf2_no_fpsc.
+-      (**abssf2_i): Split into ...
+-      (absdf2_fpscr, absdf2_no_fpscr): ... these new patterns.
+-
+-2019-10-07  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline
+-      2019-10-01  Bill Schmidt  <address@hidden>
+-
+-      PR target/91275
+-      * config/rs6000/rs6000.c (rtx_is_swappable_p): Don't swap
+-      vpmsumd.
+-
+-2019-10-01  Oleg Endo  <address@hidden>
+-
+-      Backport from mainline
+-
+-      2019-10-01  Oleg Endo  <address@hidden>
+-
+-      PR target/88562
+-      * config/sh/sh.c (sh_extending_set_of_reg::use_as_extended_reg): Use
+-      sh_check_add_incdec_notes to preserve REG_INC notes when replacing
+-      a memory access insn.
+-
+-2019-09-28  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline.
+-      2019-05-12  Iain Sandoe  <address@hidden>
+-
+-      PR target/82920
+-      * config/i386/darwin.h (CC1_SPEC): Report -mx32 as an error for
+-      Darwin.
+-
+-2019-09-28  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline.
+-      2019-05-12  Iain Sandoe  <address@hidden>
+-
+-      PR target/82920
+-      * config/i386/i386.c (ix86_output_jmp_thunk_or_indirect): New.
+-      (ix86_output_indirect_branch_via_reg): Use output mechanism
+-      accounting for __USER_LABEL_PREFIX__.
+-      (ix86_output_indirect_branch_via_push): Likewise.
+-      (ix86_output_function_return): Likewise.
+-      (ix86_output_indirect_function_return): Likewise.
+-
+-2019-09-28  Oleg Endo  <address@hidden>
+-
+-      Backport from mainline
+-      2019-09-28  Oleg Endo  <address@hidden>
+-
+-      PR target/80672
+-      * config/sh/sh.c (parse_validate_atomic_model_option): Use
+-      std::string::compare instead of std::string::find.
+-
+-2019-09-28  Oleg Endo  <address@hidden>
+-
+-      Backport from mainline
+-      2018-07-15  Jeff Law  <address@hidden>
+-
+-      PR target/85993
+-      * config/sh/sh.c (output_mi_thunk): Remove dead conditional
+-      block.
+-
+-2019-09-27  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-06-16  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin.opt (prebind, noprebind, seglinkedit,
+-      noseglinkedit): Add RejectNegative.
+-
+-      Backport from mainline
+-      2019-06-14  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin.opt: Add RejectNegative where needed, reorder
+-      and add minimal functional descriptions.
+-
+-2019-09-23  Max Filippov  <address@hidden>
+-
+-      Backport from mainline
+-      2019-06-18  Max Filippov  <address@hidden>
+-
+-      * config/xtensa/xtensa.c (xtensa_expand_prologue): Add stack
+-      pointer adjustment for the case of no callee-saved registers and
+-      stack frame bigger than 128 bytes.
+-
+-2019-09-20  John David Anglin  <address@hidden>
+-
+-      * config/pa/pa.c (pa_trampoline_init): Remove spurious extended
+-      characters.
+-
+-2019-09-20  Andreas Krebbel  <address@hidden>
+-
+-      Backport from mainline
+-      2019-06-06  Andreas Krebbel  <address@hidden>
+-
+-      PR rtl-optimization/88751
+-      * ira.c (ira): Use the number of the actually referenced registers
+-      when calculating the threshold.
+-
+-2019-09-11  Eric Botcazou  <address@hidden>
+-
+-      PR rtl-optimization/89795
+-      * rtlanal.c (nonzero_bits1) <SUBREG>: Do not propagate results from
+-      inner REGs to paradoxical SUBREGs if WORD_REGISTER_OPERATIONS is set.
+-
+-2019-09-09  Jakub Jelinek  <address@hidden>
+-
+-      PR target/87853
+-      * config/i386/emmintrin.h (_mm_cmpeq_epi8): Use casts to __v16qi
+-      instead of __v16qs.
+-
+-      PR target/91704
+-      * config/i386/avxintrin.h (__v32qs): New typedef.
+-      * config/i386/avx2intrin.h (_mm256_cmpgt_epi8): Use casts to __v32qs
+-      instead of __v32qi.
+-
+-2019-09-08  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2018-12-23  Iain Sandoe  <address@hidden>
+-
+-      * config/i386/darwin.h (TARGET_ASM_OUTPUT_IDENT): New.
+-
+-2019-08-22  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-05-31  Iain Sandoe  <address@hidden>
+-
+-      * config/i386/darwin.h (ASM_OUTPUT_MAX_SKIP_ALIGN): New.
+-
+-2019-09-05  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-08-18  Iain Sandoe  <address@hidden>
+-
+-      * config/rs6000/darwin.h (TARGET_OS_CPP_BUILTINS): Add asserts
+-      for cpu and machine.  Factor 64/32b builtins.
+-
+-      Backport from mainline
+-      2019-06-23  Iain Sandoe  <address@hidden>
+-
+-      * config/rs6000/darwin.h: (__PPC__, __PPC64__): New.
+-
+-2019-09-05  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-08-23  Iain Sandoe  <address@hidden>
+-
+-      PR pch/61250
+-      * ggc-page.c (ggc_pch_read): Read the ggc_pch_ondisk structure
+-      and issue any diagnostics needed before collecting the pre-PCH
+-      state.
+-
+-2019-09-05  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-07-24  Iain Sandoe  <address@hidden>
+-
+-      PR bootstrap/87030
+-      * config/i386/darwin.h (REAL_LIBGCC_SPEC): Revert change from r273749.
+-
+-      PR bootstrap/87030
+-      * config/i386/darwin.h (REAL_LIBGCC_SPEC): Move from here...
+-      * config/i386/darwin32-biarch.h .. to here.
+-      * config/i386/darwin64-biarch.h: Adjust comments.
+-      * config/rs6000/darwin32-biarch.h: Likewise.
+-      * config/rs6000/darwin64-biarch.h: Likewise.
+-      * config.gcc: Missed commit from r273746
+-      (*-*-darwin*): Don't include CPU t-darwin here.
+-      (i[34567]86-*-darwin*): Adjust to use biarch files. Produce
+-      an error message if i686-darwin configuration is attempted for
+-      Darwin >= 18.
+-
+-      Backport from mainline
+-      2019-07-23  Iain Sandoe  <address@hidden>
+-
+-      PR bootstrap/87030
+-      * config.gcc (*-*-darwin*): Don't include CPU t-darwin here.
+-      (i[34567]86-*-darwin*): Adjust to use biarch files. Produce
+-      an error message if i686-darwin configuration is attempted for
+-      Darwin >= 18.
+-      (x86_64-*-darwin*): Switch to single multilib for Darwin >= 18.
+-      (powerpc-*-darwin*): Use biarch files where needed.
+-      (powerpc64-*-darwin*): Likewise.
+-      * config/i386/darwin.h (REAL_LIBGCC_SPEC): Move to new biarch file.
+-      (DARWIN_ARCH_SPEC, DARWIN_SUBARCH_SPEC): Revise for default single
+-      arch case.
+-      * config/i386/darwin32-biarch.h: New.
+-      * config/i386/darwin64.h: Rename.
+-      * gcc/config/i386/darwin64-biarch.h: To this.
+-      * config/i386/t-darwin: Rename.
+-      * gcc/config/i386/t-darwin32-biarch: To this.
+-      * config/i386/t-darwin64: Rename.
+-      * gcc/config/i386/t-darwin64-biarch: To this.
+-      * config/rs6000/darwin32-biarch.h: New.
+-      * config/rs6000/darwin64.h: Rename.
+-      * config/rs6000/darwin64-biarch.h: To this.
+-      (DARWIN_ARCH_SPEC, DARWIN_SUBARCH_SPEC): Revise for default single
+-      arch case.
+-      * config/rs6000/t-darwin8: Rename.
+-      * config/rs6000/t-darwin32-biarch: To this.
+-      * config/rs6000/t-darwin64 Rename.
+-      * config/rs6000/t-darwin64-biarch: To this.
+-
+-2019-09-05  Richard Biener  <address@hidden>
+-
+-      * lto-streamer.h (LTO_minor_version): Bump.
+-
+-      Backport from mainline
+-      2019-05-06  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/90328
+-      * tree-data-ref.h (dr_may_alias_p): Pass in the actual loop nest.
+-      * tree-data-ref.c (dr_may_alias_p): Check whether the clique
+-      is valid in the loop nest before using it.
+-      (initialize_data_dependence_relation): Adjust.
+-      * graphite-scop-detection.c (build_alias_set): Pass the SCOP enclosing
+-      loop as loop-nest to dr_may_alias_p.
+-
+-      2019-03-08  Richard Biener  <address@hidden>
+-
+-      PR middle-end/89578
+-      * cfgloop.h (struct loop): Add owned_clique field.
+-      * cfgloopmanip.c (copy_loop_info): Copy it.
+-      * tree-cfg.c (gimple_duplicate_bb): Do not remap owned_clique
+-      cliques.
+-      * tree-inline.c (copy_loops): Remap owned_clique.
+-      * lto-streamer-in.c (input_cfg): Stream owned_clique.
+-      * lto-streamer-out.c (output_cfg): Likewise.
+-
+-      2019-02-22  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/87609
+-      * tree-cfg.c (gimple_duplicate_bb): Only remap inlined cliques.
+-
+-      2019-02-22  Richard Biener  <address@hidden>
+-
+-      PR middle-end/87609
+-      * cfghooks.h (dependence_hash): New typedef.
+-      (struct copy_bb_data): New type.
+-      (cfg_hooks::duplicate_block): Adjust to take a copy_bb_data argument.
+-      (duplicate_block): Likewise.
+-      * cfghooks.c (duplicate_block): Pass down copy_bb_data.
+-      (copy_bbs): Create and pass down copy_bb_data.
+-      * cfgrtl.c (cfg_layout_duplicate_bb): Adjust.
+-      (rtl_duplicate_bb): Likewise.
+-      * tree-cfg.c (gimple_duplicate_bb): If the copy_bb_data arg is not NULL
+-      remap dependence info.
+-
+-      2019-02-22  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/87609
+-      * tree-core.h (tree_base): Document special clique values.
+-      * tree-inline.c (remap_dependence_clique): Do not use the
+-      special clique value of one.
+-      (maybe_set_dependence_info): Use clique one.
+-      (clear_dependence_clique): New callback.
+-      (compute_dependence_clique): Clear clique one from all refs
+-      before assigning it (again).
+-
+-2019-08-27  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-07-07  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin.c (darwin_override_options): Make a final check on PIC
+-      options.
+-
+-2019-09-04  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-07-07  Iain Sandoe  <address@hidden>
+-      * config/darwin.c (darwin_override_options): Don't jam symbol stubs
+-      on for kernel code.
+-
+-2019-09-04  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-06-27  Iain Sandoe  <address@hidden>
+-
+-      * config/rs6000/rs6000.c (darwin_rs6000_override_options): Do not
+-      use longcall for 64b code.
+-
+-2019-09-04  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-06-19  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin-driver.c (darwin_driver_init): Fix off-by-one errors
+-      in computing the number of options to be moved.
+-
+-      Backport from mainline
+-      2019-06-13  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin-driver.c (validate_macosx_version_min): New.
+-      (darwin_default_min_version): Cleanup and validate supplied version.
+-      (darwin_driver_init): Likewise and push cleaned version into opts.
+-
+-2019-09-04  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2019-03-26  Bin Cheng  <address@hidden>
+-
+-      PR tree-optimization/81740
+-      * tree-vect-data-refs.c (vect_analyze_data_ref_dependence):
+-      In case of outer loop vectorization, check for backward dependence
+-      at the inner loop if outer loop dependence is reversed.
+-
+-2019-09-04  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2018-11-23  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/88149
+-      * tree-vect-slp.c (vect_slp_analyze_node_operations): Detect
+-      the case where there are two different def types for the
+-      same operand at different operand position in the same stmt.
+-
+-2019-09-04  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2019-04-09  Richard Sandiford  <address@hidden>
+-
+-      * tree-vect-data-refs.c (vect_get_smallest_scalar_type): Always
+-      use gimple_expr_type for load and store calls.  Skip over the
+-      condition argument in a conditional internal function.
+-      Protect use of TREE_INT_CST_LOW.
+-
+-      2019-04-08  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/90006
+-      * tree-vect-data-refs.c (vect_get_smallest_scalar_type): Handle
+-      calls like lrint.
+-
+-      2019-03-14  Richard Biener  <address@hidden>
+-
+-      PR middle-end/89698
+-      * fold-const.c (operand_equal_p): For INDIRECT_REF check
+-      that the access types are similar.
+-
+-      2019-01-18  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/88903
+-      * tree-vect-stmts.c (vectorizable_shift): Verify we see all
+-      scalar stmts a SLP shift amount is composed of when detecting
+-      shifts by scalars.
+-
+-      2018-12-11  Richard Biener  <address@hidden>
+-
+-      PR middle-end/88448
+-      PR middle-end/88415
+-      * tree-complex.c (update_complex_assignment): Properly transfer
+-      or clean EH info around gimple_assign_set_rhs_with_ops.
+-
+-      2018-11-15  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/88030
+-      * tree-complex.c (need_eh_cleanup): New global.
+-      (update_complex_assignment): Mark blocks that need EH update.
+-      (expand_complex_comparison): Likewise.
+-      (tree_lower_complex): Allocate and deallocate need_eh_cleanup,
+-      perform EH cleanup and schedule CFG cleanup if that did anything.
+-
+-      2018-11-08  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/87929
+-      * tree-complex.c (expand_complex_comparison): Clean EH.
+-
+-      2017-07-25  Eric Botcazou  <address@hidden>
+-
+-      * gimple.c (gimple_assign_set_rhs_with_ops): Do not ask gsi_replace
+-      to update EH info here.
+-
+-2019-09-03  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-05-18  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin-c.c (darwin_register_objc_includes): Do not
+-      prepend the sysroot when building gnu-runtime header search
+-      paths.
+-
+-2019-09-03  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2019-05-18  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin.c (darwin_file_end): Use switch_to_section ()
+-      instead of direct output of the asm.
+-
+-2019-09-03  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2018-08-22 Iain Sandoe <address@hidden>
+-
+-      * config/darwin.h (LINK_COMMAND_SPEC_A): Update lto options
+-      to match gcc/gcc.c.
+-
+-2019-09-02  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2019-03-14  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/89710
+-      * tree-ssa-loop-ch.c (should_duplicate_loop_header_p): Use
+-      safe_dyn_cast.
+-
+-      2019-03-14  Richard Biener  <address@hidden>
+-
+-      PR middle-end/89572
+-      * tree-scalar-evolution.c (get_loop_exit_condition): Use
+-      safe_dyn_cast.
+-      * tree-ssa-loop-ivcanon.c (canonicalize_loop_induction_variables):
+-      Use gimple_location_safe.
+-
+-      2019-02-18  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/89296
+-      * tree-ssa-loop-ch.c (ch_base::copy_headers): Restrict setting
+-      of no-warning flag to cases that might emit the bogus warning.
+-
+-      2019-01-31  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/89135
+-      * tree-ssa-phiprop.c (pass_phiprop::execute): Skip blocks
+-      with abnormal preds.
+-
+-2019-09-02  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2019-07-19  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/91200
+-      * tree-ssa-phiopt.c (cond_store_replacement): Check we have
+-      no PHI nodes in middle-bb.
+-
+-      2019-07-15  Richard Biener  <address@hidden>
+-
+-      PR middle-end/91162
+-      * tree-cfg.c (move_block_to_fn): When releasing a virtual PHI
+-      node make sure to replace all uses with something valid.
+-
+-      2019-07-11  Richard Biener  <address@hidden>
+-
+-      PR middle-end/91131
+-      * gimplify.c (gimplify_compound_literal_expr): Force a temporary
+-      when the object is volatile and we have not cleared it even though
+-      there are no nonzero elements.
+-
+-      2019-07-10  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/91126
+-      * tree-ssa-sccvn.c (n_walk_cb_data::push_partial_def): Adjust
+-      native encoding offset for BYTES_BIG_ENDIAN.
+-      (vn_reference_lookup_3): Likewise.
+-
+-      2019-07-10  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/91126
+-      * tree-ssa-sccvn.c (vn_reference_lookup_3): Adjust
+-      native encoding offset for BYTES_BIG_ENDIAN.
+-
+-      2019-04-29  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/90278
+-      * tree-ssa-forwprop.c (pass_forwprop::execute): Transfer/clean
+-      EH on comparison simplification.
+-
+-      2019-04-11  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/90020
+-      * tree-ssa-sccvn.c (vn_reference_may_trap): New function.
+-      * tree-ssa-sccvn.h (vn_reference_may_trap): Declare.
+-      * tree-ssa-pre.c (compute_avail): Use it to not put
+-      possibly trapping references after a call that might not
+-      return into EXP_GEN.
+-      * gcse.c (compute_hash_table_work): Do not elide
+-      marking a block containing a call if the call might not
+-      return.
+-
+-2019-09-02  Bin Cheng  <address@hidden>
+-
+-      Backport from mainline
+-      2019-07-18  Bin Cheng  <address@hidden>
+-
+-      PR tree-optimization/91137
+-      * tree-ssa-loop-ivopts.c (struct ivopts_data): New field.
+-      (tree_ssa_iv_optimize_init, alloc_iv, tree_ssa_iv_optimize_finalize):
+-      Init, use and fini the above new field.
+-      (determine_base_object_1): New function.
+-      (determine_base_object): Reimplement using walk_tree.
+-
+-2019-08-30  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2019-05-27  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/90637
+-      * tree-ssa-sink.c (statement_sink_location): Honor the
+-      computed sink location for single-uses.
+-
+-      * gcc.dg/gomp/pr90637.c: New testcase.
+-
+-      2019-06-21  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/90930
+-      * tree-ssa-reassoc.c (rewrite_expr_tree_parallel): Set visited
+-      flag on new stmts to avoid re-processing them.
+-
+-      2019-04-25  Richard Biener  <address@hidden>
+-
+-      PR middle-end/90194
+-      * match.pd: Add pattern to simplify view-conversion of an
+-      empty constructor.
+-
+-      2019-04-24  Richard Biener  <address@hidden>
+-
+-      PR middle-end/90213
+-      * gimple-fold.c (fold_const_aggregate_ref_1): Do multiplication
+-      by size and BITS_PER_UNIT on poly-wide-ints.
+-
+-      2019-04-15  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/90071
+-      * tree-ssa-reassoc.c (init_range_entry): Do not pick up
+-      abnormal operands from def stmts.
+-
+-      2019-03-13  Richard Biener  <address@hidden>
+-
+-      PR middle-end/89677
+-      * tree-scalar-evolution.c (simplify_peeled_chrec): Do not
+-      throw FP expressions at tree-affine.
+-
+-2019-08-30  Segher Boessenkool  <address@hidden>
+-
+-      Backport from trunk
+-      2019-08-22  Segher Boessenkool  <address@hidden>
+-
+-      PR target/91481
+-      * config/rs6000/rs6000.md (unspec): Delete UNSPEC_DARN, UNSPEC_DARN_32,
+-      and UNSPEC_DARN_RAW.
+-      (unspecv): New enumerator values UNSPECV_DARN, UNSPECV_DARN_32, and
+-      UNSPECV_DARN_RAW.
+-      (darn_32): Use an unspec_volatile, and UNSPECV_DARN_32.
+-      (darn_raw): Use an unspec_volatile, and UNSPECV_DARN_RAW.
+-      (darn): Use an unspec_volatile, and UNSPECV_DARN.
+-
+-2019-08-30  Segher Boessenkool  <address@hidden>
+-
+-      Backport from trunk
+-      2019-08-22  Segher Boessenkool  <address@hidden>
+-
+-      * config/rs6000/altivec.md (unspec): Delete UNSPEC_DARN, UNSPEC_DARN_32,
+-      UNSPEC_DARN_RAW, UNSPEC_CMPRB, UNSPEC_CMPRB2, UNSPEC_CMPEQB; move to...
+-      * config/rs6000/rs6000.md (unspec): ... here.
+-      * config/rs6000/altivec.md (darn_32, darn_raw, darn, cmprb,
+-      *cmprb_internal, setb_signed, setb_unsigned, cmprb2, *cmprb2_internal,
+-      cmpeqb, *cmpeqb_internal): Delete, move to...
+-      * config/rs6000/rs6000.md (darn_32, darn_raw, darn, cmprb,
+-      *cmprb_internal, setb_signed, setb_unsigned, cmprb2, *cmprb2_internal,
+-      cmpeqb, *cmpeqb_internal): ... here.
+-
+-2019-08-30  Jakub Jelinek  <address@hidden>
+-
+-      Backported from mainline
+-      2019-07-30  Jakub Jelinek  <address@hidden>
+-
+-      PR target/91150
+-      * config/i386/i386.c (expand_vec_perm_blend): Change mask type
+-      from unsigned to unsigned HOST_WIDE_INT.  For E_V64QImode cast
+-      comparison to unsigned HOST_WIDE_INT before shifting it left.
+-
+-      2019-07-04  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/78884
+-      * gimplify.c (struct gimplify_omp_ctx): Add add_safelen1 member.
+-      (gimplify_bind_expr): If seeing TREE_ADDRESSABLE VLA inside of simd
+-      loop body, set ctx->add_safelen1 instead of making it GOVD_PRIVATE.
+-      (gimplify_adjust_omp_clauses): Add safelen (1) clause if
+-      ctx->add_safelen1 is set.
+-
+-      PR rtl-optimization/90756
+-      * explow.c (promote_ssa_mode): Always use TYPE_MODE, don't bypass it
+-      for VECTOR_TYPE_P.
+-
+-      2019-06-12  Jakub Jelinek  <address@hidden>
+-
+-      PR c/90760
+-      * symtab.c (symtab_node::set_section): Allow being called on aliases
+-      as long as they aren't analyzed yet.
+-
+-      2019-04-19  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/90139
+-      * tree-outof-ssa.c (get_temp_reg): If reg_mode is BLKmode, return
+-      assign_temp instead of gen_reg_rtx.
+-
+-      2019-06-11  Jakub Jelinek  <address@hidden>
+-
+-      PR target/90811
+-      * config/nvptx/nvptx.c (nvptx_output_softstack_switch): Use and.b%d
+-      instead of and.u%d.
+-
+-      2019-05-29  Jakub Jelinek  <address@hidden>
+-
+-      PR fortran/90329
+-      * lto-streamer.h (LTO_minor_version): Bump to 1.
+-
+-      2019-05-16  Jakub Jelinek  <address@hidden>
+-
+-      PR fortran/90329
+-      * tree-core.h (struct tree_decl_common): Document
+-      decl_nonshareable_flag for PARM_DECLs.
+-      * tree.h (DECL_HIDDEN_STRING_LENGTH): Define.
+-      * calls.c (expand_call): Don't try tail call if caller
+-      has any DECL_HIDDEN_STRING_LENGTH PARM_DECLs that are or might be
+-      passed on the stack and callee needs to pass any arguments on the
+-      stack.
+-      * tree-streamer-in.c (unpack_ts_decl_common_value_fields): Use
+-      else if instead of series of mutually exclusive ifs.  Handle
+-      DECL_HIDDEN_STRING_LENGTH for PARM_DECLs.
+-      * tree-streamer-out.c (pack_ts_decl_common_value_fields): Likewise.
+-
+-      2019-04-24  Jakub Jelinek  <address@hidden>
+-
+-      PR target/90187
+-      * config/i386/i386.c (ix86_expand_sse_fp_minmax): Force if_true into
+-      a register if both if_true and if_false are MEMs.
+-
+-      PR tree-optimization/90208
+-      * tree-cfg.c (remove_bb): Move forced labels from removed bbs
+-      after labels of new_bb, not before them.
+-
+-      2019-04-16  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/90082
+-      * dce.c (can_delete_call): New function.
+-      (deletable_insn_p, mark_insn): Use it.
+-
+-      PR tree-optimization/90090
+-      * tree-ssa-math-opts.c (is_division_by): Ignore divisions that can
+-      throw internally.
+-
+-      2019-04-09  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/89998
+-      * gimple-ssa-sprintf.c (try_substitute_return_value): Use lhs type
+-      instead of integer_type_node if possible, don't add ranges if return
+-      type is not compatible with int.
+-      * gimple-fold.c (gimple_fold_builtin_sprintf,
+-      gimple_fold_builtin_snprintf): Use lhs type instead of hardcoded
+-      integer_type_node.
+-
+-      2019-03-29  Jakub Jelinek  <address@hidden>
+-
+-      PR c/89872
+-      * gimplify.c (gimplify_compound_literal_expr): Don't optimize a
+-      non-addressable complit into its initializer if it is volatile.
+-
+-      2019-03-28  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/89621
+-      * tree-inline.h (struct copy_body_data): Add
+-      dont_remap_vla_if_no_change flag.
+-      * tree-inline.c (remap_type_3, remap_type_2): New functions.
+-      (remap_type): Don't remap vla types if id->dont_remap_vla_if_no_change
+-      and remap_type_2 returns false.
+-      * omp-low.c (new_omp_context): Set ctx->cb.dont_remap_vla_if_no_change.
+-
+-      2019-03-20  Jakub Jelinek  <address@hidden>
+-
+-      PR target/89752
+-      * lra-constraints.c (process_alt_operands) <reg>: For BLKmode, don't
+-      update this_alternative nor this_alternative_set.
+-
+-      2019-03-19  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/89768
+-      * loop-unroll.c (unroll_loop_constant_iterations): Use gen_int_mode
+-      instead of GEN_INT.
+-      (unroll_loop_runtime_iterations): Likewise.
+-
+-      PR target/89752
+-      * gimplify.c (gimplify_asm_expr): For output argument with
+-      TREE_ADDRESSABLE type, clear allows_reg if it allows memory, otherwise
+-      diagnose error.
+-
+-      PR target/89726
+-      * config/i386/i386.c (ix86_expand_floorceildf_32): In ceil
+-      compensation use x2 += 1 instead of x2 -= -1 and when honoring
+-      signed zeros, do another copysign after the compensation.
+-
+-      2019-03-15  Jakub Jelinek  <address@hidden>
+-
+-      PR debug/89704
+-      * dwarf2out.c (add_const_value_attribute): Return false for MINUS,
+-      SIGN_EXTEND and ZERO_EXTEND.
+-
+-      2019-03-14  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/89679
+-      * expmed.c (expand_mult_const): Don't add a REG_EQUAL note if it
+-      would contain a paradoxical SUBREG.
+-
+-      PR tree-optimization/89703
+-      * tree-ssa-strlen.c (valid_builtin_call): Punt if stmt call types
+-      aren't compatible also with builtin_decl_explicit.  Check pure
+-      or non-pure status of BUILT_IN_STR{{,N}CMP,N{LEN,{CAT,CPY}{,_CHK}}}
+-      and BUILT_IN_STPNCPY{,_CHK}.
+-
+-      2019-03-13  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/88588
+-      * omp-simd-clone.c (ipa_simd_modify_stmt_ops): Handle PHI args.
+-      (ipa_simd_modify_function_body): Handle PHIs.
+-
+-      2019-03-12  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/89663
+-      * builtins.c (expand_builtin_int_roundingfn,
+-      expand_builtin_int_roundingfn_2): Return NULL_RTX instead of
+-      gcc_unreachable if validate_arglist fails.
+-
+-      2019-03-09  Jakub Jelinek  <address@hidden>
+-
+-      PR c/88568
+-      * tree.c (handle_dll_attribute): Don't clear TREE_STATIC for
+-      dllimport on VAR_DECLs with RECORD_TYPE or UNION_TYPE DECL_CONTEXT.
+-
+-      2019-03-05  Jakub Jelinek  <address@hidden>
+-
+-      PR target/89587
+-      * config/rs6000/t-linux (MULTIARCH_DIRNAME): Set to non-empty only
+-      if_multiarch.
+-
+-      PR middle-end/89590
+-      * builtins.c (maybe_emit_free_warning): Punt if free doesn't have
+-      exactly one argument.
+-
+-      2019-02-28  Jakub Jelinek  <address@hidden>
+-
+-      PR c/89520
+-      * convert.c (convert_to_real_1, convert_to_integer_1): Punt for
+-      builtins if they don't have a single scalar floating point argument.
+-      Formatting fixes.
+-
+-      2019-02-20  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/89412
+-      * expr.c (expand_assignment): If result is a MEM, use change_address
+-      instead of simplify_gen_subreg.
+-
+-      2019-02-20  Jakub Jelinek  <address@hidden>
+-                  David Malcolm  <address@hidden>
+-
+-      PR middle-end/89091
+-      * fold-const.c (decode_field_reference): Return NULL_TREE if
+-      lang_hooks.types.type_for_size returns NULL.  Check it before
+-      overwriting *exp_.  Use return NULL_TREE instead of return 0.
+-
+-      2019-02-20  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/88074
+-      PR middle-end/89415
+-      * toplev.c (do_compile): Double the emin/emax exponents to workaround
+-      buggy mpc_norm.
+-
+-      2019-02-19  Richard Biener  <address@hidden>
+-
+-      PR middle-end/88074
+-      * toplev.c (do_compile): Initialize mpfr's exponent range
+-      based on available float modes.
+-
+-      2019-02-18  Jakub Jelinek  <address@hidden>
+- 
+-      PR target/89361
+-      * config/s390/s390.c (s390_indirect_branch_attrvalue,
+-      s390_indirect_branch_settings): Define unconditionally.
+-      (s390_set_current_function): Likewise, but guard the whole body except
+-      the s390_indirect_branch_settings call with
+-      #if S390_USE_TARGET_ATTRIBUTE.
+-      (TARGET_SET_CURRENT_FUNCTION): Redefine unconditionally.
+-
+-      2019-02-15  Richard Biener  <address@hidden>
+-                  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/89278
+-      * tree-loop-distribution.c: Include tree-eh.h.
+-      (generate_memset_builtin, generate_memcpy_builtin): Call
+-      rewrite_to_non_trapping_overflow on builtin->size before passing it
+-      to force_gimple_operand_gsi.
+-
+-      2019-02-15  Jakub Jelinek  <address@hidden>
+-
+-      PR other/89342
+-      * optc-save-gen.awk: Handle optimize_fast like optimize_size or
+-      optimize_debug.
+-      * opth-gen.awk: Likewise.
+-
+-      2019-02-14  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/89354
+-      * combine.c (make_extraction): Punt if extraction_mode is narrower
+-      than len bits.
+-
+-      PR tree-optimization/89314
+-      * fold-const.c (fold_binary_loc): Cast strlen argument to
+-      const char * before dereferencing it.  Formatting fixes.
+-
+-      2019-02-13  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/89303
+-      * tree-ssa-structalias.c (set_uids_in_ptset): Or in vi->is_heap_var
+-      into pt->vars_contains_escaped_heap instead of setting
+-      pt->vars_contains_escaped_heap to it.
+-
+-      PR middle-end/89281
+-      * optabs.c (prepare_cmp_insn): Use UINTVAL (size) instead of
+-      INTVAL (size), compare it to GET_MODE_MASK instead of
+-      1 << GET_MODE_BITSIZE.
+-
+-      2019-02-09  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/89246
+-      * config/i386/i386.c (ix86_simd_clone_compute_vecsize_and_simdlen):
+-      If !node->definition and TYPE_ARG_TYPES is non-NULL, use
+-      TYPE_ARG_TYPES instead of DECL_ARGUMENTS.
+-
+-      2019-01-16  David Malcolm  <address@hidden>
+-
+-      PR target/88861
+-      * combine.c (delete_noop_moves): Convert to "bool" return,
+-      returning true if any edges are eliminated.
+-      (combine_instructions): Also return true if delete_noop_moves
+-      returns true.
+-
+-      2019-02-08  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/89234
+-      * except.c (copy_reg_eh_region_note_forward): Return if note_or_insn
+-      is a NOTE, CODE_LABEL etc. - rtx_insn * other than INSN_P.
+-      (copy_reg_eh_region_note_backward): Likewise.
+-
+-      2019-02-05  Jakub Jelinek  <address@hidden>
+-
+-      PR target/89188
+-      * dce.c (delete_unmarked_insns): Don't remove no-op moves if they
+-      can throw, non-call exceptions are enabled and we can't delete
+-      dead exceptions or alter cfg.  Set must_clean if
+-      delete_insn_and_edges returns true, don't set it blindly for calls.
+-
+-      PR rtl-optimization/89195
+-      * combine.c (make_extraction): For MEMs, don't extract bytes outside
+-      of the original MEM.
+-
+-      PR target/89186
+-      * optabs.c (prepare_cmp_insn): Pass x and y to
+-      emit_block_comp_via_libcall rather than XEXP (x, 0) and XEXP (y, 0).
+-
+-      2019-02-02  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/87887
+-      * config/i386/i386.c (ix86_simd_clone_compute_vecsize_and_simdlen):
+-      Punt with warning on aggregate return or argument types.  Ignore
+-      type/mode checking for uniform arguments.
+-
+-      2019-02-01  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/88107
+-      * tree-cfg.c (find_outermost_region_in_block): Add ALL argument,
+-      instead of assertion that eh_region_outermost is non-NULL, if it
+-      is NULL, set *ALL to true and return NULL.
+-      (move_sese_region_to_fn): Adjust caller, if all is set, call
+-      duplicate_eh_regions with NULL region.
+-
+-      2019-01-29  Jakub Jelinek  <address@hidden>
+-
+-      PR c++/66676
+-      PR ipa/89104
+-      * omp-simd-clone.c (simd_clone_clauses_extract)
+-      <case OMP_CLAUSE_ALIGNED>: Ignore clauses with NULL
+-      OMP_CLAUSE_ALIGNED_ALIGNMENT.
+-
+-      2019-01-28  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/89002
+-      * gimplify.c (gimplify_omp_for): When adding OMP_CLAUSE_*_GIMPLE_SEQ
+-      for lastprivate/linear IV, push gimplify context around gimplify_assign
+-      and, if it needed any temporaries, pop it into a gimple bind around the
+-      sequence.
+-
+-      2019-01-27  Jakub Jelinek  <address@hidden>
+-
+-      PR target/87214
+-      * config/i386/sse.md
+-      (<mask_codefor>avx512dq_shuf_<shuffletype>64x2_1<mask_name>,
+-      avx512f_shuf_<shuffletype>64x2_1<mask_name>): Ensure the
+-      first constants in pairs are multiples of 2.  Formatting fixes.
+-      (avx512vl_shuf_<shuffletype>32x4_1<mask_name>,
+-      avx512vl_shuf_<shuffletype>32x4_1<mask_name>): Ensure the
+-      first constants in each quadruple are multiples of 4.  Formatting fixes.
+-
+-      2019-01-22  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/49429
+-      PR target/49454
+-      PR rtl-optimization/86334
+-      PR target/88906
+-      * expr.c (emit_block_move_hints): Move marking of MEM_EXPRs
+-      addressable from here...
+-      (emit_block_op_via_libcall): ... to here.
+-
+-      2019-01-17  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/88870
+-      * dce.c (deletable_insn_p): Never delete const/pure calls that can
+-      throw if we can't alter the cfg or delete dead exceptions.
+-      (mark_insn): Don't call find_call_stack_args for such calls.
+-
+-      2019-01-10  Jakub Jelinek  <address@hidden>
+-
+-      PR c/88568
+-      * tree.c (handle_dll_attribute): Clear TREE_STATIC after setting
+-      DECL_EXTERNAL.
+-
+-      2019-01-05  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/82564
+-      PR target/88620
+-      * expr.c (expand_assignment): For calls returning VLA structures
+-      if to_rtx is not a MEM, force it into a stack temporary.
+-
+-      2019-01-04  Jakub Jelinek  <address@hidden>
+-
+-      PR target/88594
+-      * config/i386/i386.c (ix86_expand_divmod_libfunc): Use mode instead
+-      of GET_MODE (opN) as modes of the libcall arguments.
+-
+-      2019-01-03  Jakub Jelinek  <address@hidden>
+-
+-      PR debug/88644
+-      * dwarf2out.c (modified_type_die): If type is equal to sizetype,
+-      change it to qualified_type.
+-
+-      2018-12-21  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/85594
+-      PR middle-end/88553
+-      * omp-expand.c (extract_omp_for_update_vars): Regimplify the condition
+-      if needed.
+-      (expand_omp_for_generic): Don't clobber t temporary for ordered loops.
+-
+-      PR rtl-optimization/88563
+-      * expr.c (expand_expr_real_2) <case WIDEN_MULT_EXPR>: Swap innermode
+-      and mode arguments to convert_modes.  Likewise swap mode and word_mode
+-      arguments.  Handle both arguments with VOIDmode before convert_modes
+-      of one of them.  Formatting fixes.
+-
+-      2018-12-13  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/88470
+-      * cfgcleanup.c (outgoing_edges_match): If the function is
+-      shrink-wrapped and bb1 ends with a JUMP_INSN with a single fake
+-      edge to EXIT, return false.
+-
+-      PR rtl-optimization/88416
+-      * valtrack.c (cleanup_auto_inc_dec): Handle pre/post-inc/dec/modify
+-      even if !AUTO_INC_DEC.
+-
+-      2018-12-07  Jakub Jelinek  <address@hidden>
+-
+-      PR target/85593
+-      * final.c (rest_of_handle_final): Don't call collect_fn_hard_reg_usage
+-      for functions with naked attribute.
+-
+-      2018-11-20  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/87895
+-      * omp-simd-clone.c (ipa_simd_modify_function_body): When removing
+-      or replacing GIMPLE_RETURN, set EDGE_FALLTHRU on the edge to EXIT.
+-      (simd_clone_adjust): Don't set EDGE_FALLTHRU here. In a loop that
+-      redirects edges to EXIT to edges to incr_bb, iterate while EXIT
+-      has any preds and always use EDGE_PRED (, 0).
+-
+-      2018-10-20  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/87647
+-      * varasm.c (decode_addr_const): Handle COMPOUND_LITERAL_EXPR.
+-
+-      2018-10-19  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/85488
+-      PR middle-end/87649
+-      * omp-low.c (check_omp_nesting_restrictions): Diagnose ordered without
+-      depend closely nested inside of loop with ordered clause with
+-      a parameter.
+-
+-2019-08-25  Uroš Bizjak  <address@hidden>
+-
+-      PR target/91533
+-      Backport from mainline
+-      2019-06-30  Uroš Bizjak  <address@hidden>
+-
+-      * config/i386/sse.md (ssse3_abs<mode>2): Rename from abs<mode>2.
+-      * config/i386/i386-builtin.def (__builtin_ia32_pabsb):
+-      Use CODE_FOR_ssse3_absv8qi2.
+-      (__builtin_ia32_pabsw): Use CODE_FOR_ssse3_absv4hi2.
+-      (__builtin_ia32_pabsd): Use CODE_FOR_ssse3_absv2si2.
+-
+-2019-08-21  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/91510
+-      Backport from mainline
+-      2017-09-26  Martin Jambor  <address@hidden>
+-
+-      * tree-sra.c (compare_access_positions): Put integral types first,
+-      stabilize sorting of integral types, remove conditions putting
+-      non-full-precision integers last.
+-      (sort_and_splice_var_accesses): Disable scalarization if a
+-      non-integert would be represented by a non-full-precision integer.
+-
+-2019-08-20  Eric Botcazou  <address@hidden>
+-
+-      PR rtl-optimization/91347
+-      * dse.c (scan_insn): Call add_wild_read for non-const/memset tail calls
+-      before reload if HARD_FRAME_POINTER_IS_ARG_POINTER.
+-
+-2019-07-22  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2019-07-22  Martin Liska  <address@hidden>
+-
+-      PR driver/91172
+-      * opts-common.c (decode_cmdline_option): Decode
+-      argument of -Werror and check it for a wrong language.
+-      * opts-global.c (complain_wrong_lang): Remove such case.
+-
+-2019-07-16  Wilco Dijkstra  <address@hidden>
+-
+-      Backport from mainline
+-      2019-03-05  Wilco Dijkstra  <address@hidden>
+-
+-      PR target/89222
+-      * config/arm/arm.md (movsi): Use targetm.cannot_force_const_mem
+-      to decide when to split off a non-zero offset from a symbol.
+-      * config/arm/arm.c (arm_cannot_force_const_mem): Disallow offsets
+-      in function symbols.
+-
+-2019-07-15  Andreas Krebbel  <address@hidden>
+-
+-      Backport from mainline
+-      2019-07-01  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/vector.md: Fix shift count operand printing.
+-
+-2019-07-12  Eric Botcazou  <address@hidden>
+-
+-      PR rtl-optimization/91136
+-      * df-core.c (ACCESSING REFS): Fix typos in comment.
+-      * resource.c (mark_target_live_reg): Add artificial defs that occur at
+-      the beginning of the block to the initial set of live registers.
+-
+-2019-06-28  Jeff Law  <address@hidden>
+-
+-      Backport from mainline
+-      2019-06-21  Jeff Law  <address@hidden>
+-
+-      PR tree-optimization/90949
+-      * tree-ssa-copy.c (fini_copy_prop): Use reset_flow_sensitive_info.
+-      * tree-ssanames.c (reset_flow_sensitive_info): Reset non-null state.
+-
+-2019-06-27  Martin Jambor  <address@hidden>
+-
+-      Backport from mainline
+-      2019-06-25  Martin Jambor  <address@hidden>
+-
+-      PR ipa/90939
+-      * ipa-cp.c (ipcp_bits_lattice::meet_with): Remove assert.
+-
+-2019-06-16  John David Anglin  <address@hidden>
+-
+-      PR middle-end/64242
+-      * config/pa/pa.md (nonlocal_goto): Restore frame pointer last.  Add
+-      frame clobbers and schedule block.
+-      (builtin_longjmp): Likewise.
+-
+-2019-05-24  John David Anglin  <address@hidden>
+-
+-      PR target/90530
+-      * config/pa/pa.c (pa_cannot_change_mode_class): Accept mode changes
+-      from DImode to SImode in floating-point registers on 64-bit target.
+-      * config/pa/pa.md (umulsidi3): Change nonimmediate_operand to
+-      register_operand in xmpyu patterns.
+-
+-2019-05-23  Uroš Bizjak  <address@hidden>
+-
+-      Backported from mainline
+-      2019-05-21  Uroš Bizjak  <address@hidden>
+-
+-      * config/i386/cpuid.h (__cpuid): For 32bit targets, zero
+-      %ebx and %ecx bafore calling cpuid with leaf 1 or
+-      non-constant leaf argument.
+-
+-      2019-05-21  Uroš Bizjak  <address@hidden>
+-
+-      PR target/90547
+-      * config/i386/i386.md (anddi_1 to andsi_1_zext splitter):
+-      Avoid calling gen_lowpart with CONST operand.
+-
+-2019-05-20  Kelvin Nilsen  <address@hidden>
+-
+-      Backport from mainline.
+-      2019-05-07  Kelvin Nilsen  <address@hidden>
+-
+-      PR target/89765
+-      * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin):
+-      In handling of ALTIVEC_BUILTIN_VEC_INSERT, use modular arithmetic
+-      to compute vector element selector for both constant and variable
+-      operands.
+-
+-2019-01-03  Iain Sandoe  <address@hidden>
+-
+-      PR target/86215
+-      Backport from mainline
+-      2017-09-25  Iain Sandoe  <address@hidden>
+-
+-      PR target/80556
+-      * config/i386/darwin.h (REAL_LIB_SPEC): New; put libSystem ahead
+-      of libgcc_eh for m64.
+-      * config/i386/darwin64.h: Likewise.
+-
+-2019-05-15  David Edelsohn  <address@hidden>
+-
+-      Backport from mainline
+-      2019-04-11  David Edelsohn  <address@hidden>
+-      * xcoffout.h (xcoff_private_rodata_section_name): Declare.
+-      * xcoffout.c (xcoff_private_rodata_section_name): Define.
+-      * config/rs6000/rs6000.c (rs6000_xcoff_asm_init_sections): Create
+-      read_only_private_data_section using coff_private_rodata_section_name.
+-      (rs6000_xcoff_file_start): Generate coff_private_rodata_section_name.
+-
+-      2018-12-04  David Edelsohn  <address@hidden>
+-      2018-12-13  David Edelsohn  <address@hidden>
+-      PR target/61976
+-      * config/rs6000/rs6000.c (rs6000_function_arg): Don't pass aggregates
+-      in FPRs on AIX. Ensure type is non-NULL.
+-      (rs6000_arg_partial_bytes): Same.
+-
+-2019-05-15  Sebastian Huber  <address@hidden>
+-
+-      * config/arm/t-rtems: Replace -march=armv7-m multilibs with
+-      -mcpu=cortex-m3 and -mcpu=cortex-m4 multilibs.
+-
+-2019-05-13  Kelvin Nilsen  <address@hidden>
+-
+-      Backport from mainline.
+-      2019-05-06  Kelvin Nilsen  <address@hidden>
+-
+-      PR target/89424
+-      * config/rs6000/rs6000.c (rs6000_expand_vector_extract): Add
+-      handling of V1TImode.
+-
+-2019-05-07  Richard Sandiford  <address@hidden>
+-
+-      Backport from mainline:
+-      2019-01-25  Richard Sandiford  <address@hidden>
+-
+-      PR middle-end/89037
+-      * varasm.c (output_constructor_bitfield): Use wi::extract_uhwi
+-      instead of accessing TREE_INT_CST_ELT directly.
+-
+-2019-05-01  Ramana Radhakrishnan  <address@hidden>
+-
+-      Backport from mainline.
+-      2019-04-30  Ramana Radhakrishnan  <address@hidden>
+-      PR target/86538
+-      * config/aarch64/aarch64-c.c (aarch64_update_cpp_builtins):
+-      Define __ARM_FEATURE_ATOMICS
+-
+-2019-04-30  Srinath Parvathaneni  <address@hidden>
+-
+-      PR target/90075
+-      * config/aarch64/iterators.md (V_INT_EQUIV): Add mode for
+-      integer equivalent of floating point values.
+-
+-      Backport from mainline
+-      2018-12-11  Richard Earnshaw  <address@hidden>
+-      PR target/37369
+-      * config/aarch64/iterators.md (sizem1): Add sizes for
+-      SFmode and DFmode.
+-      (Vbtype): Add SFmode mapping.
+-      * config/aarch64/aarch64.md (copysigndf3, copysignsf3): Delete.
+-      (copysign<GPF:mode>3): New expand pattern.
+-      (copysign<GPF:mode>3_insn): New insn pattern.
+-
+-2019-04-22  Kelvin Nilsen  <address@hidden>
+-
+-      Backport from mainline
+-      2019-03-15  Kelvin Nilsen  <address@hidden>
+-
+-      PR target/87532
+-      * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin):
+-      When handling vec_extract, use modular arithmetic to allow
+-      constant selectors greater than vector length.
+-      * config/rs6000/rs6000.c (rs6000_expand_vector_extract): Allow
+-      V1TImode vectors to have constant selector values greater than 0.
+-      Use modular arithmetic to compute vector index.
+-      (rs6000_split_vec_extract_var): Use modular arithmetic to compute
+-      index for in-memory vectors.  Correct code generation for
+-      in-register vectors.  Use inner mode of vector rather than mode of
+-      destination for move instruction.
+-      (altivec_expand_vec_ext_builtin): Use modular arithmetic to
+-      compute index.
+-
+-      2019-04-12  Kelvin Nilsen  <address@hidden>
+-
+-      PR target/87532
+-      * config/rs6000/vsx.md (*vsx_extract_<mode>_<VS_scalar>mode_var):
+-      Use QI inner mode with V16QI vector mode.
+-
+-2019-04-19  Xiong Hu Luo  <address@hidden>
+-
+-      Backport from trunk
+-      2018-05-23  Segher Boessenkool  <address@hidden>
+-
+-      * doc/sourcebuild.texi (Endianness): New subsubsection.
+-
+-2019-04-11  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2019-03-08  Martin Liska  <address@hidden>
+-
+-      PR target/86952
+-      * config/i386/i386.c (ix86_option_override_internal): Disable
+-      jump tables when retpolines are used.
+-
+-2019-04-10  Matthew Malcomson  <address@hidden>
+-
+-      PR target/90024
+-      * config/arm/arm.c (neon_valid_immediate): Disallow VOIDmode parameter.
+-      * config/arm/constraints.md (Dm, DN, Dn): Split previous Dn constraint
+-      into three.
+-      * config/arm/neon.md (*neon_mov<mode>): Account for TImode and DImode
+-      differences directly.
+-      (*smax<mode>3_neon, vashl<mode>3, vashr<mode>3_imm): Use Dm constraint.
+-
+-2019-04-07  Uroš Bizjak  <address@hidden>
+-
+-      PR target/89945
+-      * config/i386/i386.md (anddi_1 to andsi_1_zext splitter):
+-      Avoid calling gen_lowpart with SYMBOL_REF and LABEL_REF operand.
+-
+-2019-04-06  Eric Botcazou  <address@hidden>
+-
+-      Backport from mainline
+-      2019-02-19  Eric Botcazou  <address@hidden>
+-
+-      * rtlanal.c (get_initial_register_offset): Fall back to the estimate
+-      as long as the epilogue isn't completed.
+-
+-2019-04-03  Richard Biener  <address@hidden>
+-
+-      PR lto/89896
+-      * lto-wrapper.c (run_gcc): Avoid implicit rules making
+-      the all target phony.
+-
+-2019-04-02  Xiong Hu Luo <address@hidden>
+-
+-      Backport from trunk r250477.
+-
+-      2017-07-24  Carl Love  <address@hidden>
+-
+-      * config/rs6000/rs6000-c.c: Add support for built-in functions
+-      vector float vec_extract_fp32_from_shorth (vector unsigned short);
+-      vector float vec_extract_fp32_from_shortl (vector unsigned short);
+-      * config/rs6000/altivec.h (vec_extract_fp_from_shorth,
+-      vec_extract_fp_from_shortl): Add defines for the two builtins.
+-      * config/rs6000/rs6000-builtin.def (VEXTRACT_FP_FROM_SHORTH,
+-      VEXTRACT_FP_FROM_SHORTL): Add BU_P9V_OVERLOAD_1 and BU_P9V_VSX_1
+-      new builtins.
+-      * config/rs6000/vsx.md vsx_xvcvhpsp): Add define_insn.
+-      (vextract_fp_from_shorth, vextract_fp_from_shortl): Add define_expands.
+-      * doc/extend.texi: Update the built-in documentation file for the
+-      new built-in function.
+-
+-      Backport from trunk r255555.
+-
+-      2017-12-11  Carl Love  <address@hidden>
+-
+-      * config/rs6000/altivec.h (vec_extract_fp32_from_shorth,
+-      vec_extract_fp32_from_shortl]): Add #defines.
+-      * config/rs6000/rs6000-builtin.def (VSLDOI_2DI): Add macro expansion.
+-      * config/rs6000/rs6000-c.c (ALTIVEC_BUILTIN_VEC_UNPACKH,
+-      ALTIVEC_BUILTIN_VEC_UNPACKL, ALTIVEC_BUILTIN_VEC_AND,
+-      ALTIVEC_BUILTIN_VEC_SLD, ALTIVEC_BUILTIN_VEC_SRL,
+-      ALTIVEC_BUILTIN_VEC_SRO, ALTIVEC_BUILTIN_VEC_SLD,
+-      ALTIVEC_BUILTIN_VEC_SLL): Add expansions.
+-      * doc/extend.texi: Add documentation for the added builtins.
+-
+-2019-03-28  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2018-11-05  Martin Liska  <address@hidden>
+-
+-      PR web/87829
+-      * doc/invoke.texi: Remove options that are
+-      not disabled with -Os.
+-
+-2019-02-26  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2019-02-12  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/89253
+-      * tree-ssa-loop-split.c (tree_ssa_split_loops): Check we can
+-      duplicate the loop.
+-
+-      2019-02-08  Richard Biener  <address@hidden>
+-
+-      PR middle-end/89223
+-      * tree-data-ref.c (initialize_matrix_A): Fail if constant
+-      doesn't fit in HWI.
+-      (analyze_subscript_affine_affine): Handle failure from
+-      initialize_matrix_A.
+-
+-      2019-01-28  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/88739
+-      * tree-ssa-sccvn.c (vn_reference_lookup_3): Avoid generating
+-      BIT_FIELD_REFs of non-mode-precision integral operands.
+-
+-2019-03-26  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2019-01-08  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/86554
+-      * tree-ssa-sccvn.c (visit_nary_op): When value-numbering to
+-      expressions with different overflow behavior make sure there's an
+-      available expression on the path.
+-
+-      2018-11-20  Richard Biener  <address@hidden>
+- 
+-      PR tree-optimization/88105
+-      * tree-ssa-dom.c (pass_dominator::execute): Do not walk
+-      backedges.
+-
+-      2018-03-08  Richard Biener  <address@hidden>
+-
+-      PR middle-end/84552
+-      * tree-scalar-evolution.c: Include tree-into-ssa.h.
+-      (follow_copies_to_constant): Do not follow SSA names registered
+-      for update.
+-
+-2019-03-21  Bill Schmidt  <address@hidden>
+-
+-      * config/rs6000/rs6000.c (rs6000_analyze_swaps): Rebuild
+-      ud- and du-chains between phases.
+-
+-2019-03-21  Matthias Klose  <address@hidden>
+-
+-      Backport from mainline
+-      2019-02-26  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/89505
+-      * tree-ssa-structalias.c (compute_dependence_clique): Make sure
+-      to handle restrict pointed-to vars with multiple subvars
+-      correctly.
+-
+-2019-03-17  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      2019-03-14  H.J. Lu  <address@hidden>
+-
+-      PR target/89523
+-      * config/i386/i386.c (ix86_print_operand): Handle 'M' to add
+-      addr32 prefix to VSIB address for X32.
+-      * config/i386/sse.md (*avx512pf_gatherpf<mode>sf_mask): Prepend
+-      "%M2" to opcode.
+-      (*avx512pf_gatherpf<mode>df_mask): Likewise.
+-      (*avx512pf_scatterpf<mode>sf_mask): Likewise.
+-      (*avx512pf_scatterpf<mode>df_mask): Likewise.
+-      (*avx2_gathersi<mode>): Prepend "%M3" to opcode.
+-      (*avx2_gathersi<mode>_2): Prepend "%M2" to opcode.
+-      (*avx2_gatherdi<mode>): Prepend "%M3" to opcode.
+-      (*avx2_gatherdi<mode>_2): Prepend "%M2" to opcode.
+-      (*avx2_gatherdi<mode>_3): Prepend "%M3" to opcode.
+-      (*avx2_gatherdi<mode>_4): Prepend "%M2" to opcode.`
+-      (*avx512f_gathersi<mode>): Prepend "%M4" to opcode.
+-      (*avx512f_gathersi<mode>_2): Prepend "%M3" to opcode.
+-      (*avx512f_gatherdi<mode>): Prepend "%M4" to opcode.
+-      (*avx512f_gatherdi<mode>_2): Prepend "%M3" to opcode.
+-      (*avx512f_scattersi<mode>): Prepend "%M0" to opcode.
+-      (*avx512f_scatterdi<mode>): Likewise.
+-
+-2019-03-14  Martin Jambor  <address@hidden>
+-
+-      Backport from mainline
+-      2019-03-07  Martin Jambor  <address@hidden>
+-
+-      PR lto/87525
+-      * ipa-cp.c (perform_estimation_of_a_value): Account zero time benefit
+-      for extern inline functions.
+-
+-2019-03-14  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2018-02-16  Jakub Jelinek  <address@hidden>
+- 
+-      PR target/84272
+-      * config/aarch64/cortex-a57-fma-steering.c (fma_forest::merge_forest):
+-      Use ++iter rather than iter++ for std::list iterators.
+-      (func_fma_steering::dfs): Likewise.  Don't delete nodes right away,
+-      defer deleting them until all nodes in the forest are processed.  Do
+-      free even leaf nodes.  Change to_process into auto_vec.
+-
+-2019-03-13  Andre Vieira  <address@hidden>
+-
+-      Backport from mainline
+-      2019-03-08  Andre Vieira  <address@hidden>
+-
+-      * config/arm/arm.h (TARGET_FP16_TO_DOUBLE): Add TARGET_VFP_DOUBLE
+-      requirement.
+-
+-2019-03-11  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2019-02-11  David Malcolm  <address@hidden>
+-
+-      PR lto/88147
+-      * input.c (selftest::test_line_offset_overflow): New selftest.
+-      (selftest::input_c_tests): Call it.
+-
+-2019-03-07  Xiong Hu Luo  <address@hidden>
+-
+-      Backport of r268834 from mainline to gcc-7-branch.
+-      2019-02-13  Xiong Hu Luo  <address@hidden>
+-
+-      * config/rs6000/altivec.h (vec_sbox_be, vec_cipher_be,
+-      vec_cipherlast_be, vec_ncipher_be, vec_ncipherlast_be): New #defines.
+-      * config/rs6000/crypto.md (CR_vqdi): New define_mode_iterator.
+-      (crypto_vsbox_<mode>, crypto_<CR_insn>_<mode>): New define_insns.
+-      * config/rs6000/rs6000-builtin.def (VSBOX_BE): New BU_CRYPTO_1.
+-      (VCIPHER_BE, VCIPHERLAST_BE, VNCIPHER_BE, VNCIPHERLAST_BE):
+-      New BU_CRYPTO_2.
+-      * config/rs6000/rs6000.c (builtin_function_type)
+-      <CRYPTO_BUILTIN_VSBOX_BE, CRYPTO_BUILTIN_VCIPHER_BE,
+-      CRYPTO_BUILTIN_VCIPHERLAST_BE, CRYPTO_BUILTIN_VNCIPHER_BE,
+-      CRYPTO_BUILTIN_VNCIPHERLAST_BE>: New switch options.
+-      * doc/extend.texi (vec_sbox_be, vec_cipher_be, vec_cipherlast_be,
+-      vec_ncipher_be, vec_ncipherlast_be): New builtin functions.
+-
+-2019-02-27  Uroš Bizjak  <address@hidden>
+-
+-      PR target/89397
+-      * config/i386/i386.c (ix86_atomic_assign_expand_fenv): Check
+-      TARGET_SSE in addition to TARGET_SSE_MATH.
+-
+-      (ix86_excess_precision): Ditto.
+-      (ix86_float_exceptions_rounding_supported_p): Ditto.
+-      (use_rsqrt_p): Ditto.
+-      * config/i386/sse.md (rsqrt<mode>2): Ditto.
+-
+-2019-02-15  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2019-02-14  Martin Liska  <address@hidden>
+-
+-      PR rtl-optimization/89242
+-      * dce.c (delete_unmarked_insns): Call free_dominance_info we
+-      process a transformation.
+-
+-2019-02-15  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2019-02-11  Martin Liska  <address@hidden>
+-
+-      PR ipa/89009
+-      * ipa-cp.c (build_toporder_info): Remove usage of a param.
+-      * ipa-inline.c (inline_small_functions): Likewise.
+-      * ipa-pure-const.c (propagate_pure_const): Likewise.
+-      (propagate_nothrow): Likewise.
+-      * ipa-reference.c (propagate): Likewise.
+-      * ipa-utils.c (struct searchc_env): Remove unused field.
+-      (searchc): Always search across AVAIL_INTERPOSABLE.
+-      (ipa_reduced_postorder): Always allow AVAIL_INTERPOSABLE as
+-      the only called IPA pure const can properly not propagate
+-      across interposable boundary.
+-      * ipa-utils.h (ipa_reduced_postorder): Remove param.
+-
+-2019-02-11  Stefan Agner  <address@hidden>
+-
+-      Backport from mainline.
+-      2019-01-10  Stefan Agner  <address@hidden>
+-
+-      PR target/88648
+-      * config/arm/arm.c (arm_option_override_internal): Force
+-      opts->x_inline_asm_unified to true only if TARGET_THUMB2_P.
+-
+-2019-02-09  Alan Modra  <address@hidden>
+-
+-      PR target/88343
+-      * config/rs6000/rs6000.c (rs6000_reg_live_or_pic_offset_p): Match
+-      logic in rs6000_emit_prologue emitting pic_offset_table setup.
+-
+-2019-02-08  Eric Botcazou  <address@hidden>
+-
+-      Backport from mainline
+-      2018-06-11  Segher Boessenkool  <address@hidden>
+-
+-      PR target/85755
+-      * config/rs6000/rs6000.md (*movdi_internal32): Put constraint modifiers
+-      on the correct operand.
+-      (*movdi_internal64): Ditto.
+-
+-2019-02-06  Kelvin Nilsen  <address@hidden>
+-
+-      Backport from mainline.
+-      2019-01-30  Kelvin Nilsen  <address@hidden>
+-      * config/rs6000/rs6000-c.c (altivec-resolve_overloaded_builtin):
+-      Change handling of ALTIVEC_BUILTIN_VEC_EXTRACT.  Coerce result to
+-      type of vector element when vec_extract is implemented by direct
+-      move.
+-
+-2019-02-06  Eric Botcazou  <address@hidden>
+-
+-      * config/i386/i386.c (ix86_expand_prologue): Emit a memory blockage
+-      after restoring registers saved to allocate the frame on Windows.
+-
+-2019-02-05  Andreas Krebbel  <address@hidden>
+-
+-      Backport from mainline
+-      2019-02-05  Andreas Krebbel  <address@hidden>
+-
+-      PR target/88856
+-      * config/s390/s390.md: Remove load and test FP splitter.
+-
+-2019-02-04  Bill Schmidt  <address@hidden>
+-
+-      PR target/87064
+-      Backport from mainline
+-
+-      2019-01-30  Bill Schmidt  <address@hidden>
+-
+-      PR target/87064
+-      * config/rs6000/vsx.md (*vsx_reduc_<VEC_reduc_name>_v4sf_scalar):
+-      Disable for little-endian.
+-
+-      2019-01-22  Jakub Jelinek  <address@hidden>
+-
+-      PR target/87064
+-      * config/rs6000/vsx.md (*vsx_reduc_<VEC_reduc_name>_v2df_scalar):
+-      Disable for little endian.
+-
+-2018-01-31  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-31  Bill Schmidt  <address@hidden>
+-
+-      PR tree-optimization/89008
+-      * gimple-ssa-strength-reduction.c (slsr_process_mul): Don't
+-      process anything of the form X * 0.
+-
+-2019-01-31  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2019-01-31  Richard Biener  <address@hidden>
+-
+-      PR rtl-optimization/89115
+-      * lra.c (lra_rtx_hash): Properly hash CONST_INT values.
+-
+-      2019-01-30  Richard Biener  <address@hidden>
+-
+-      PR rtl-optimization/89115
+-      * opts.c (default_options_optimization): Reduce
+-      PARAM_MAX_DSE_ACTIVE_LOCAL_STORES by a factor of 10 at -O1.
+-      Make PARAM_LOOP_INVARIANT_MAX_BBS_IN_LOOP reduction relative
+-      to the default.
+-
+-2019-01-30  Kewen Lin  <address@hidden>
+-
+-      Backport from mainline.
+-      2019-01-17  Kewen Lin  <address@hidden>
+-
+-      * doc/extend.texi: Add four new prototypes for vec_ld and seven new
+-      prototypes for vec_st.
+-      * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add entries
+-      for scalar address type variants of altivec_vec_ld/altivec_vec_st,
+-      mainly on signed/unsigned long long and double.
+-
+-2019-01-27  Uroš Bizjak  <address@hidden>
+-
+-      PR target/88948
+-      * rtl.h (prepare_copy_insn): New prototype.
+-      * gcse.c (prepare_copy_insn): New function, split out from
+-      process_insert_insn.
+-      (process_insert_insn): Use prepare_copy_insn.
+-      * store-motion.c (replace_store_insn): Use prepare_copy_insn
+-      instead of gen_move_insn.
+-
+-2019-01-24  Uroš Bizjak  <address@hidden>
+-
+-      PR target/88998
+-      * config/i386/sse.md (sse2_cvtpi2pd): Add SSE alternatives.
+-      Disparage MMX alternative.
+-      (sse2_cvtpd2pi): Ditto.
+-      (sse2_cvttpd2pi): Ditto.
+-
+-2019-01-24  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2019-01-23  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/89008
+-      * tree-ssa-reassoc.c (eliminate_using_constants): For * 0 do
+-      not leave another stray operand.
+-
+-2019-01-22  Uroš Bizjak  <address@hidden>
+-
+-      PR target/88938
+-      * config/i386/i386.c (ix86_expand_builtin) [case IX86_BUILTIN_BEXTRI32,
+-      case IX86_BUILTIN_BEXTRI64]: Sanitize operands.
+-
+-2019-01-18  Uroš Bizjak  <address@hidden>
+-
+-      * config/alpha/alpha.c (alpha_gimplify_va_arg):
+-      Handle split indirect COMPLEX_TYPE arguments.
+-
+-2019-01-16  Martin Jambor  <address@hidden>
+-
+-      Backported from mainline
+-      2018-12-10  Martin Jambor  <address@hidden>
+-
+-      PR ipa/88214
+-      * ipa-prop.c (determine_locally_known_aggregate_parts): Make sure
+-      we check pointers against pointers.
+-
+-2019-01-09  Eric Botcazou  <address@hidden>
+-          James Clarke  <address@hidden>
+-
+-      PR target/84010
+-      * config/sparc/sparc.c (sparc_legitimize_tls_address): Only use Pmode
+-      consistently in TLS address generation and adjust code to the renaming
+-      of patterns.  Mark calls to __tls_get_addr as const.
+-      * config/sparc/sparc.md (tgd_hi22): Turn into...
+-      (tgd_hi22<P:mode>): ...this and use Pmode throughout.
+-      (tgd_lo10): Turn into...
+-      (tgd_lo10<P:mode>): ...this and use Pmode throughout.
+-      (tgd_add32): Merge into...
+-      (tgd_add64): Likewise.
+-      (tgd_add<P:mode>): ...this and use Pmode throughout.
+-      (tldm_hi22): Turn into...
+-      (tldm_hi22<P:mode>): ...this and use Pmode throughout.
+-      (tldm_lo10): Turn into...
+-      (tldm_lo10<P:mode>): ...this and use Pmode throughout.
+-      (tldm_add32): Merge into...
+-      (tldm_add64): Likewise.
+-      (tldm_add<P:mode>): ...this and use Pmode throughout.
+-      (tldm_call32): Merge into...
+-      (tldm_call64): Likewise.
+-      (tldm_call<P:mode>): ...this and use Pmode throughout.
+-      (tldo_hix22): Turn into...
+-      (tldo_hix22<P:mode>): ...this and use Pmode throughout.
+-      (tldo_lox10): Turn into...
+-      (tldo_lox10<P:mode>): ...this and use Pmode throughout.
+-      (tldo_add32): Merge into...
+-      (tldo_add64): Likewise.
+-      (tldo_add<P:mode>): ...this and use Pmode throughout.
+-      (tie_hi22): Turn into...
+-      (tie_hi22<P:mode>): ...this and use Pmode throughout.
+-      (tie_lo10): Turn into...
+-      (tie_lo10<P:mode>): ...this and use Pmode throughout.
+-      (tie_ld64): Use DImode throughout.
+-      (tie_add32): Merge into...
+-      (tie_add64): Likewise.
+-      (tie_add<P:mode>): ...this and use Pmode throughout.
+-      (tle_hix22_sp32): Merge into...
+-      (tle_hix22_sp64): Likewise.
+-      (tle_hix22<P:mode>): ...this and use Pmode throughout.
+-      (tle_lox22_sp32): Merge into...
+-      (tle_lox22_sp64): Likewise.
+-      (tle_lox22<P:mode>): ...this and use Pmode throughout.
+-      (*tldo_ldub_sp32): Merge into...
+-      (*tldo_ldub_sp64): Likewise.
+-      (*tldo_ldub<P:mode>): ...this and use Pmode throughout.
+-      (*tldo_ldub1_sp32): Merge into...
+-      (*tldo_ldub1_sp64): Likewise.
+-      (*tldo_ldub1<P:mode>): ...this and use Pmode throughout.
+-      (*tldo_ldub2_sp32): Merge into...
+-      (*tldo_ldub2_sp64): Likewise.
+-      (*tldo_ldub2<P:mode>): ...this and use Pmode throughout.
+-      (*tldo_ldsb1_sp32): Merge into...
+-      (*tldo_ldsb1_sp64): Likewise.
+-      (*tldo_ldsb1<P:mode>): ...this and use Pmode throughout.
+-      (*tldo_ldsb2_sp32): Merge into...
+-      (*tldo_ldsb2_sp64): Likewise.
+-      (*tldo_ldsb2<P:mode>): ...this and use Pmode throughout.
+-      (*tldo_ldub3_sp64): Use DImode throughout.
+-      (*tldo_ldsb3_sp64): Likewise.
+-      (*tldo_lduh_sp32): Merge into...
+-      (*tldo_lduh_sp64): Likewise.
+-      (*tldo_lduh<P:mode>): ...this and use Pmode throughout.
+-      (*tldo_lduh1_sp32): Merge into...
+-      (*tldo_lduh1_sp64): Likewise.
+-      (*tldo_lduh1<P:mode>): ...this and use Pmode throughout.
+-      (*tldo_ldsh1_sp32): Merge into...
+-      (*tldo_ldsh1_sp64): Likewise.
+-      (*tldo_ldsh1<P:mode>): ...this and use Pmode throughout.
+-      (*tldo_lduh2_sp64): Use DImode throughout.
+-      (*tldo_ldsh2_sp64): Likewise.
+-      (*tldo_lduw_sp32): Merge into...
+-      (*tldo_lduw_sp64): Likewise.
+-      (*tldo_lduw<P:mode>): ...this and use Pmode throughout.
+-      (*tldo_lduw1_sp64): Use DImode throughout.
+-      (*tldo_ldsw1_sp64): Likewise.
+-      (*tldo_ldx_sp64): Likewise.
+-      (*tldo_stb_sp32): Merge into...
+-      (*tldo_stb_sp64): Likewise.
+-      (*tldo_stb<P:mode>): ...this and use Pmode throughout.
+-      (*tldo_sth_sp32): Merge into...
+-      (*tldo_sth_sp64): Likewise.
+-      (*tldo_sth<P:mode>): ...this and use Pmode throughout.
+-      (*tldo_stw_sp32): Merge into...
+-      (*tldo_stw_sp64): Likewise.
+-      (*tldo_stw<P:mode>): ...this and use Pmode throughout.
+-      (*tldo_stx_sp64): Use DImode throughout.
+-
+-2019-01-09  Eric Botcazou  <address@hidden>
+-
+-      * doc/invoke.texi (-Os): Add reference to -finline-functions.
+-      (-finline-small-functions): Add references to -O3 and -Os.
+-      (-findirect-inlining): Likewise.
+-      (-finline-functions): Add references to -Os, -fprofile-use and
+-      -fauto-profile.
+-
+-2019-01-03  Iain Sandoe  <address@hidden>
+-
+-      revert:
+-      2018-12-30  Iain Sandoe  <address@hidden>
+-
+-      backport from mainline.
+-      2018-12-12 Segher Boessenkool  <address@hidden>
+-                 Iain Sandoe  <address@hidden>
+-
+-      PR target/88343
+-      * config/rs6000/rs6000.c (save_reg_p): Do not save the picbase reg
+-      unless it has been used.
+-      (first_reg_to_save): Remove dead code.
+-
+-2019-01-02  Segher Boessenkool  <address@hidden>
+-
+-      Backport from trunk
+-      2018-12-06  Segher Boessenkool  <address@hidden>
+-
+-      PR inline-asm/55681
+-      * doc/extend.texi (Basic Asm): Update grammar.
+-      (Extended Asm): Update grammar.
+-
+-      Backport from trunk
+-      2018-12-06  Segher Boessenkool  <address@hidden>
+-
+-      * doc/extend.texi (Using Assembly Language with C): Document asm inline.
+-      (Size of an asm): Fix typo.  Document asm inline.
+-      * gimple-pretty-print.c (dump_gimple_asm): Handle asm inline.
+-      * gimple.h (enum gf_mask): Add GF_ASM_INLINE.
+-      (gimple_asm_set_volatile): Fix typo.
+-      (gimple_asm_inline_p): New.
+-      (gimple_asm_set_inline): New.
+-      * gimplify.c (gimplify_asm_expr): Propagate the asm inline flag from
+-      tree to gimple.
+-      * ipa-icf-gimple.c (func_checker::compare_gimple_asm): Compare the
+-      gimple_asm_inline_p flag, too.
+-      * tree-core.h (tree_base): Document that protected_flag is ASM_INLINE_P
+-      in an ASM_EXPR.
+-      * tree-inline.c (estimate_num_insns): If gimple_asm_inline_p return
+-      a minimum size for an asm.
+-      * tree.h (ASM_INLINE_P): New.
+-
+-2018-12-30  Iain Sandoe  <address@hidden>
+-
+-      backport from mainline.
+-      2018-12-12 Segher Boessenkool  <address@hidden>
+-                 Iain Sandoe  <address@hidden>
+-
+-      PR target/88343
+-      * config/rs6000/rs6000.c (save_reg_p): Do not save the picbase reg
+-      unless it has been used.
+-      (first_reg_to_save): Remove dead code.
+-
+-2018-12-24  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2018-12-06  Iain Sandoe  <address@hidden>
+-
+-      PR c++/87380
+-      * config/darwin.h (TARGET_WEAK_NOT_IN_ARCHIVE_TOC) Remove, use the
+-      default.
+-      * config/rs6000/darwin7.h (TARGET_WEAK_NOT_IN_ARCHIVE_TOC): New.
+-
+-2018-12-24  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2018-12-06  Iain Sandoe  <address@hidden>
+-
+-      PR target/78444
+-      * config/i386/darwin.h (STACK_BOUNDARY): Remove macro.
+-      * config/i386/i386.c (ix86_compute_frame_layout): Ensure at least 128b
+-      stack alignment in non-leaf functions.
+-
+-2018-12-24  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2018-08-15  Iain Sandoe  <address@hidden>
+-
+-      PR target/81685
+-      * config/darwin.h: (DEBUG_STR_OFFSETS_SECTION, DEBUG_LOCLISTS_SECTION,
+-      DEBUG_RNGLISTS_SECTION) new macros.  (DEBUG_PUBNAMES_SECTION,
+-      DEBUG_PUBTYPES_SECTION) update to include GNU variant.
+-
+-2018-12-21  Uros Bizjak  <address@hidden>
+-
+-      Backport from mainline
+-      2018-12-10  Uros Bizjak  <address@hidden>
+-
+-      PR target/88418
+-      * config/i386/i386.c (ix86_expand_sse_cmp): For vector modes,
+-      check operand 1 with vector_operand predicate.
+-      (ix86_expand_sse_movcc): For vector modes, check op_true with
+-      vector_operand, not nonimmediate_operand.
+-
+-2018-12-19  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline
+-      2018-12-18  Bill Schmidt  <address@hidden>
+-
+-      * doc/extend.texi (PowerPC Altivec/VSX Built-in Functions):
+-      Describe when a typedef name can be used as the type specifier for
+-      a vector type, and when it cannot.
+-
+-2018-12-19  Segher Boessenkool  <address@hidden>
+-
+-      Backport from trunk
+-      2018-12-19  Segher Boessenkool  <address@hidden>
+-
+-      PR target/88213
+-      * config/rs6000/vsx.md (*vsx_extract_<P:mode>_<VSX_D:mode>_load):
+-      Require TARGET_POWERPC64.
+-
+-2018-12-17  Senthil Kumar Selvaraj  <address@hidden>
+-
+-      Backport from trunk
+-      2018-12-17  Senthil Kumar Selvaraj  <address@hidden>
+-
+-      PR rtl-optimization/88253
+-      * combine.c (combine_simplify_rtx): Test for side-effects before
+-      substituting by zero.
+-
+-2018-12-15  Segher Boessenkool  <address@hidden>
+-
+-      Backport from trunk
+-      2018-12-14  Segher Boessenkool  <address@hidden>
+-
+-      PR rtl-optimization/88001
+-      * function.c (match_asm_constraints_1): Don't invalidly share RTL.
+-
+-2018-12-13  Andreas Krebbel  <address@hidden>
+-
+-      Backport from mainline
+-      2018-12-13  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390-builtins.def (s390_vec_double_s64): Map to
+-      s390_vec_double_s64 instead of s390_vcdgb.
+-      (s390_vec_double_u64): Map to s390_vec_double_u64 instead of
+-      s390_vcdlgb.
+-
+-2018-12-13  Andreas Krebbel  <address@hidden>
+-
+-      Backport from mainline
+-      2018-12-13  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/vx-builtins.md ("vec_ctd_s64", "vec_ctd_u64")
+-      ("vec_ctsl", "vec_ctul"): Replace 0 with VEC_NOINEXACT.
+-      ("vec_double_s64", "vec_double_u64"): Replace 4 with VEC_INEXACT.
+-
+-2018-12-12  Peter Bergner  <address@hidden>
+-
+-      Backport from mainline
+-      2018-12-07  Peter Bergner  <address@hidden>
+-
+-      PR target/87496
+-      * config/rs6000/rs6000.c (rs6000_option_override_internal): Disallow
+-      -mabi=ieeelongdouble and -mabi=ibmlongdouble without -mlong-double-128.
+-      Do not error for -mabi=ibmlongdouble and no ISA 2.06 support.
+-      * doc/invoke.texi: Document -mabi=ibmlongdouble and -mabi=ieeelongdouble
+-      require -mlong-double-128.
+-
+-2018-12-06  Richard Biener  <address@hidden>
+-
+-      * BASE-VER: Increment to 7.4.1.
+-
+-2018-12-06  Release Manager
+-
+-      * GCC 7.4.0 released.
+-
+-2018-11-28  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79351
+-      * tree-ssa-sccvn.c (vn_reference_lookup_3): For assignments from
+-      empty CONSTRUCTORs ensure the store is at a constant position.
+-
+-2018-11-26  Iain Sandoe  <address@hidden>
+-
+-      Backport from mainline
+-      2018-08-22  Iain Sandoe  <address@hidden>
+-
+-      PR bootstrap/81033
+-      PR target/81733
+-      PR target/52795
+-      * gcc/dwarf2out.c (FUNC_SECOND_SECT_LABEL): New.
+-      (dwarf2out_switch_text_section): Generate a local label for the second
+-      function sub-section and apply it as the second FDE start label.
+-      * gcc/final.c (final_scan_insn_1): Emit second FDE label after the
+-      second sub-section start.
+-
+-2018-11-26  Iain Sandoe  <address@hidden>
+-
+-      2018-08-15  Iain Sandoe  <address@hidden>
+-
+-      * config/darwin.c
+-      (darwin_function_switched_text_sections): Delete.
+-      * gcc/config/darwin.h
+-      (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): Likewise.
+-
+-2018-11-26  Andreas Krebbel  <address@hidden>
+-
+-      Backport from mainline
+-      2018-11-20  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390.md ("clztidi2"): Swap the RTX's written to the
+-      DImode parts of the target operand.
+-
+-2018-11-26  Andreas Krebbel  <address@hidden>
+-
+-      Backport from mainline
+-      2018-11-26  Andreas Krebbel  <address@hidden>
+-
+-      * doc/invoke.texi: Document z14/arch12 -march option.
+-
+-2018-10-19  Richard Biener  <address@hidden>
+-
+-      PR middle-end/87645
+-      Backport from mainline
+-      2018-07-12  Richard Biener  <address@hidden>
+-
+-      * gimple-match-head.c (gimple_resimplify1): Apply recursion
+-      limit.
+-      (gimple_resimplify2): Likewise.
+-      (gimple_resimplify3): Likewise.
+-      (gimple_resimplify4): Likewise.
+-
+-2018-11-26  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2018-10-15  Richard Biener  <address@hidden>
+-
+-      PR middle-end/87610
+-      * tree-ssa-structalias.c (struct vls_data): Add escaped_p member.
+-      (visit_loadstore): When a used restrict tag escaped verify that
+-      the points-to solution of "other" pointers do not include
+-      escaped.
+-      (compute_dependence_clique): If a used restrict tag escaped
+-      communicated that down to visit_loadstore.
+-
+-      2018-10-25  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/87665
+-      PR tree-optimization/87745
+-      * tree-vectorizer.h (get_earlier_stmt): Remove.
+-      (get_later_stmt): Pick up UID from the original non-pattern stmt.
+-
+-      2018-10-24  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/87665
+-      * tree-vect-data-refs.c (vect_preserves_scalar_order_p): Adjust
+-      to reflect reality.
+-
+-2018-11-26  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2018-06-14  Richard Biener  <address@hidden>
+-
+-      PR middle-end/86139
+-      * tree-vect-generic.c (build_word_mode_vector_type): Remove
+-      duplicate and harmful type_hash_canon.
+-
+-      2018-06-15  Richard Biener  <address@hidden>
+-
+-      PR middle-end/86076
+-      * tree-cfg.c (move_stmt_op): unshare invariant addresses
+-      before adjusting their block.
+-
+-2018-11-22  Uros Bizjak  <address@hidden>
+-
+-      Backport from mainline
+-      2018-11-16  Uros Bizjak  <address@hidden>
+-
+-      PR target/88051
+-      * config/i386/sse.md (UNSPEC_MOVDI_TO_SSE): New UNSPEC.
+-      (movdi_to_sse): Rewrite using UNSPEC_MOVDI_TO_SSE unspec.
+-
+-2018-11-22  Tom de Vries  <address@hidden>
+-
+-      backport from trunk:
+-      2017-11-19  Tom de Vries  <address@hidden>
+-
+-      PR target/82961
+-      * vmsdbgout.c (vmsdbgout_early_finish): New function.
+-      (vmsdbg_debug_hooks): Set early_finish field to vmsdbgout_early_finish.
+-
+-2018-11-21  Mihail Ionescu  <address@hidden>
+-
+-      PR target/87867
+-      Backport from mainiline
+-      2018-09-26  Eric Botcazou  <address@hidden>
+-
+-      * config/arm/arm.c (arm_reorg): Skip Thumb reorg pass for thunks.
+-      (arm32_output_mi_thunk): Deal with long calls.
+-
+-2018-11-20  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2018-03-12  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/84777
+-      * tree-ssa-loop-ch.c (should_duplicate_loop_header_p): For
+-      force-vectorize loops ignore whether we are optimizing for size.
+-
+-      2018-01-26  Richard Biener  <address@hidden>
+-
+-      PR rtl-optimization/84003
+-      * dse.c (record_store): Only record redundant stores when
+-      the earlier store aliases at least all accesses the later one does.
+-
+-2018-11-20  Xuepeng Guo  <address@hidden>
+-
+-      Backport from mainline
+-      2018-11-05  Xuepeng Guo  <address@hidden>
+-
+-      PR target/87853
+-      * config/i386/emmintrin.h (__v16qs): New to cope with option
+-      -funsigned-char.
+-      (_mm_cmpeq_epi8): Replace __v16qi with __v16qs.
+-      (_mm_cmplt_epi8): Likewise.
+-      (_mm_cmpgt_epi8): Likewise.
+-
+-2018-11-20  Eric Botcazou  <address@hidden>
+-
+-      PR rtl-optimization/85925
+-      * rtl.h (word_register_operation_p): New predicate.
+-      * combine.c (record_dead_and_set_regs_1): Only apply specific handling
+-      for WORD_REGISTER_OPERATIONS targets to word_register_operation_p RTX.
+-      * rtlanal.c (nonzero_bits1): Likewise.  Adjust couple of comments.
+-      (num_sign_bit_copies1): Likewise.
+-
+-2018-11-18  Uros Bizjak  <address@hidden>
+-
+-      Backport from mainline
+-      2018-11-11  Uros Bizjak  <address@hidden>
+-
+-      PR target/87928
+-      * config/i386/i386.h (STACK_BOUNDARY): Use TARGET_64BIT_MS_ABI
+-      instead of (TARGET_64BIT && ix86_abi == MS_ABI).
+-      * config/i386/darwin.h (STACK_BOUNDARY): Ditto.
+-      * config/i386/cygming.h (STACK_BOUNDARY): Remove.
+-
+-2018-11-15  Nathan Sidwell  <address@hidden>
+-
+-      PR debug/88006
+-      PR debug/87462
+-      * dwarf2out.c (dwarf2out_finish): Apply resolve_addr to comdat
+-      type list.
+-
+-2018-11-11  Uros Bizjak  <address@hidden>
+-
+-      Backport from mainline
+-      2018-11-04  Uros Bizjak  <address@hidden>
+-
+-      PR middle-end/58372
+-      * cfgexpand.c (pass_expand::execute): Move the call to
+-      finish_eh_generation in front of the call to expand_stack_alignment.
+-
+-2018-11-07  Max Filippov  <address@hidden>
+-
+-      Backport from mainline
+-      2018-11-05  Max Filippov  <address@hidden>
+-
+-      * config/xtensa/uclinux.h (XTENSA_ALWAYS_PIC): Change to 0.
+-
+-2018-10-26  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline
+-      2018-10-19  Bill Schmidt  <address@hidden>
+-
+-      PR tree-optimization/87473
+-      * gimple-ssa-strength-reduction.c (record_phi_increments): For
+-      phi arguments identical to the base expression of the phi
+-      candidate, record a phi-adjust increment of zero minus the index
+-      expression of the hidden basis.
+-      (phi_incr_cost): For phi arguments identical to the base
+-      expression of the phi candidate, the difference to compare against
+-      the increment is zero minus the index expression of the hidden
+-      basis, and there is no potential savings from replacing the (phi)
+-      statement.
+-      (ncd_with_phi): For phi arguments identical to the base expression
+-      of the phi candidate, the difference to compare against the
+-      increment is zero minus the index expression of the hidden basis.
+-      (all_phi_incrs_profitable): For phi arguments identical to the
+-      base expression of the phi candidate, the increment to be checked
+-      for profitability is zero minus the index expression of the hidden
+-      basis.
+-
+-2018-10-19  Andreas Krebbel  <address@hidden>
+-
+-      Backport from mainline
+-      2018-10-15  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390.c (s390_expand_vec_init): Force vector element
+-      into reg if it isn't a general operand.
+-
+-2018-10-17  Eric Botcazou  <address@hidden>
+-
+-      PR middle-end/87623
+-      * fold-const.c (fold_truth_andor_1): If the right side is not constant,
+-      bail out if both sides do not have the same storage order.
+-
+-2018-10-16  Wilco Dijkstra  <address@hidden>
+-
+-      Backported from mainline
+-      PR target/87511
+-      * config/aarch64/aarch64.c (aarch64_mask_and_shift_for_ubfiz_p):
+-      Use HOST_WIDE_INT_1U for shift.
+-
+-2018-10-12  Jakub Jelinek  <address@hidden>
+-
+-      Backported from mainline
+-      2018-10-10  Jakub Jelinek  <address@hidden>
+-
+-      PR target/87550
+-      * config/i386/i386-builtin.def (IX86_BUILTIN_RDPMC): Move from args set
+-      to special_args set.
+-
+-      2018-09-12  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/87248
+-      * fold-const.c (fold_ternary_loc) <case COND_EXPR>: Verify also that
+-      BIT_AND_EXPR's second operand is a power of two.  Formatting fix.
+-
+-      2018-08-27  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/87065
+-      * combine.c (simplify_if_then_else): Formatting fix.
+-      (if_then_else_cond): Guard MULT optimization with SCALAR_INT_MODE_P
+-      check.
+-      (known_cond): Don't return const_true_rtx for vector modes.  Use
+-      CONST0_RTX instead of const0_rtx.  Formatting fixes.
+-
+-      2018-07-24  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/86627
+-      * expmed.c (expand_divmod): Punt if d == HOST_WIDE_INT_MIN
+-      and size > HOST_BITS_PER_WIDE_INT.  For size > HOST_BITS_PER_WIDE_INT
+-      and abs_d == d, do the power of two handling if profitable.
+-
+-      2018-07-17  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/86542
+-      * omp-low.c (create_task_copyfn): Copy over also fields corresponding
+-      to _looptemp_ clauses, other than the first two.
+-
+-      PR middle-end/86539
+-      * gimplify.c (gimplify_omp_for): Ensure taskloop firstprivatized init
+-      and cond temporaries don't have reference type if iterator has
+-      pointer type.  For init use &for_pre_body instead of pre_p if
+-      for_pre_body is non-empty.
+-
+-      2018-07-26  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/86660
+-      * omp-low.c (scan_sharing_clauses): Don't ignore map clauses for
+-      declare target to variables if they have always,{to,from,tofrom} map
+-      kinds.
+-
+-2018-10-12  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2018-08-23  Richard Biener  <address@hidden>
+-
+-      PR middle-end/87024
+-      * tree-inline.c (copy_bb): Drop unused __builtin_va_arg_pack_len
+-      calls.
+-
+-      2018-08-17  Richard Biener  <address@hidden>
+-
+-      PR middle-end/86505
+-      * tree-inline.c (copy_bb): When inlining __builtin_va_arg_pack_len ()
+-      across a va-arg-pack using call adjust its return value accordingly.
+-
+-2018-10-09  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      2018-09-29  H.J. Lu  <address@hidden>
+-
+-      PR target/87370
+-      * config/i386/i386.c (construct_container): Use TImode for
+-      BLKmode values in 2 integer registers.
+-
+-2018-10-08  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      2018-10-08  H.J. Lu  <address@hidden>
+-
+-      PR target/87517
+-      * config/i386/avx512fintrin.h (_mm512_mask_fmaddsub_round_pd):
+-      Defined with __builtin_ia32_vfmaddsubpd512_mask.
+-
+-2018-10-05  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      2018-10-05  H.J. Lu  <address@hidden>
+-
+-      PR target/87522
+-      * config/i386/gnu-user.h (ASM_SPEC): Don't pass -msse2avx to
+-      assembler for -mavx.
+-      * config/i386/gnu-user64.h (ASM_SPEC): Likewise.
+-
+-2018-10-03  Uros Bizjak  <address@hidden>
+-
+-      Backport from mainline
+-      2018-09-28  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/i386.h (SSE_REGNO): Fix check for FIRST_REX_SSE_REG.
+-      (GET_SSE_REGNO): Rename from SSE_REGNO.  Update all uses for rename.
+-
+-2018-10-03  Jonathan Wakely  <address@hidden>
+-
+-      PR other/87353
+-      * doc/invoke.texi (Link Options): Fix formatting and grammar.
+-
+-2018-10-01  Kyrylo Tkachov  <address@hidden>
+-
+-      Backport from mainline
+-      2018-06-29  Kyrylo Tkachov  <address@hidden>
+-
+-      * config/arm/arm.c (output_move_double): Don't allow STRD instructions
+-      if starting source register is not even.
+-
+-2018-09-29  Jakub Jelinek  <address@hidden>
+-
+-      PR target/87467
+-      * config/i386/avx512fintrin.h (_mm512_abs_pd, _mm512_mask_abs_pd): Use
+-      __m512d type for __A argument rather than __m512.
+-
+-2018-09-27  Michael Meissner  <address@hidden>
+-
+-      Backport from mainline
+-      2018-08-20  Michael Meissner  <address@hidden>
+-
+-      PR target/87033
+-      * config/rs6000/rs6000.md (extendsi<mode>2): Change constraints
+-      from 'Y' to 'YZ' to enable the LWAX instruction to be generated
+-      for indexed loads.
+-
+-2018-09-21  Eric Botcazou  <address@hidden>
+-
+-      * config/rs6000/rs6000.c (rs6000_function_ok_for_sibcall): Return false
+-      if the call takes a static chain.
+-
+-2018-09-19  John David Anglin  <address@hidden>
+-
+-      * config/pa/pa.md (atomic_storeqi): Restore deleted expander.
+-      (atomic_storehi): Likewise.
+-      (atomic_storesi): Likewise.
+-      (atomic_loaddi): Restore compare and swap exchange loop code.
+-
+-2018-09-12  Segher Boessenkool  <address@hidden>
+-
+-      Backport from trunk
+-      2018-08-24  Segher Boessenkool  <address@hidden>
+-
+-      PR target/86989
+-      * config/rs6000/rs6000.c (toc_relative_expr_p): Check that the base is
+-      the TOC register.
+-
+-2018-09-12  Andreas Krebbel  <address@hidden>
+-
+-      Backport from mainline
+-      2018-09-12  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390.md (PFPO_RND_MODE_DFP, PFPO_RND_MODE_BFP): New
+-      constants.
+-      ("trunc<BFP:mode><DFP_ALL:mode>2")
+-      ("trunc<DFP_ALL:mode><BFP:mode>2")
+-      ("extend<BFP:mode><DFP_ALL:mode>2")
+-      ("extend<DFP_ALL:mode><BFP:mode>2"): Set proper rounding mode
+-      according to the target operand type.
+-
+-2018-09-04  Max Filippov  <address@hidden>
+-
+-      Backport from mainline
+-      2018-09-04  Max Filippov  <address@hidden>
+-
+-      * config/xtensa/xtensa.c (xtensa_expand_atomic): Reorder AND and
+-      XOR operations in NAND case.
+-
+-2018-09-04  Jonathan Wakely  <address@hidden>
+-
+-      * doc/invoke.texi (Option Summary): Add -Waligned-new.
+-
+-2018-09-03  Tom de Vries  <address@hidden>
+-
+-      backport from trunk:
+-      2018-06-21  Tom de Vries  <address@hidden>
+-
+-      PR tree-optimization/85859
+-      * tree-ssa-tail-merge.c (stmt_local_def): Copy gimple_is_call
+-      test with comment from bb_no_side_effects_p.
+-
+-2018-08-25  Jozef Lawrynowicz  <address@hidden>
+-
+-      Backport from mainline
+-      PR target/86662
+-      * gcc/tree.c (build_common_tree_nodes): Initialize integer_types array
+-      with all enabled __intN types.
+-
+-      * gcc/testsuite/gcc.target/msp430/pr86662.c: New test.
+-
+-2018-08-21  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      2018-08-20  H.J. Lu  <address@hidden>
+-
+-      PR target/87014
+-      * config/i386/i386.md (eh_return): Always update EH return
+-      address in word_mode.
+-
+-2018-08-17  John David Anglin  <address@hidden>
+-
+-      Backport from mainline
+-      2018-08-11  John David Anglin  <address@hidden>
+-
+-      * config/pa/pa.md (UNSPEC_MEMORY_BARRIER): New unspec enum.
+-      Update comment for atomic instructions.
+-      (atomic_storeqi, atomic_storehi, atomic_storesi, atomic_storesf,
+-      atomic_loaddf, atomic_loaddf_1, atomic_storedf, atomic_storedf_1):
+-      Remove.
+-      (atomic_loaddi): Revise fence expansion to only emit fence prior to
+-      load for __ATOMIC_SEQ_CST model.
+-      (atomic_loaddi_1): Remove float register target.
+-      (atomic_storedi): Handle CONST_INT values.
+-      (atomic_storedi_1): Remove float register source.  Add special case
+-      for zero value.
+-      (memory_barrier): New expander and insn.
+-
+-2018-08-13  Segher Boessenkool  <address@hidden>
+-
+-      Backport from mainline
+-      2018-05-09  Segher Boessenkool  <address@hidden>
+-
+-      PR rtl-optimization/85645
+-      * regrename.c (build_def_use): Also kill the chains that include the
+-      destination of a REG_CFA_REGISTER note.
+-
+-      PR rtl-optimization/85645
+-      *  regcprop.c (copyprop_hardreg_forward_1): Don't propagate into an
+-      insn that has a REG_CFA_REGISTER note.
+-
+-2018-08-10  Segher Boessenkool  <address@hidden>
+-
+-      Backport from mainline
+-      2018-06-19  Segher Boessenkool  <address@hidden>
+-
+-      PR target/86197
+-      * config/rs6000/rs6000.md (rs6000_discover_homogeneous_aggregate): An
+-      ieee128 argument takes up only one (vector) register, not two (floating
+-      point) registers.
+-
+-2018-08-02  Jozef Lawrynowicz  <address@hidden>
+-
+-      Backport from mainline
+-      2018-07-31  Jozef Lawrynowicz  <address@hidden>
+-
+-      PR middle-end/86705
+-      * gcc/cfgexpand.c (set_parm_rtl): Use the alignment of Pmode when
+-      MAX_SUPPORTED_STACK_ALIGNMENT would otherwise be exceeded by the
+-      requested variable alignment.
+-      (expand_one_ssa_partition): Likewise.
+-      (expand_one_var): Likewise.
+-
+-2018-08-01  Richard Biener  <address@hidden>
+-
+-      PR bootstrap/86724
+-      * graphite.h: Include isl/id.h and isl/space.h to allow build
+-      with ISL 0.20.
+-
+-2018-07-29  John David Anglin  <address@hidden>
+-
+-      * config/pa/pa.c (pa_output_addr_vec): Align address table.
+-      * config/pa/pa.h (JUMP_TABLES_IN_TEXT_SECTION): Revise comment.
+-      * config/pa/pa32-linux.h (JUMP_TABLES_IN_TEXT_SECTION): Define.
+-
+-2018-07-17  Kyrylo Tkachov  <address@hidden>
+-
+-      Backport from mainline
+-      PR target/84168
+-      2017-09-28  Joseph Myers  <address@hidden>
+-
+-      * config/aarch64/aarch64.c (aarch64_elf_asm_constructor)
+-      (aarch64_elf_asm_destructor): Pass SECTION_NOTYPE to get_section
+-      when creating .init_array and .fini_array sections with priority
+-      specified.
+-
+-2018-07-12  Richard Biener  <address@hidden>
+-
+-      PR target/84829
+-      * config/gnu-user.h (GNU_USER_TARGET_NO_PTHREADS_LIB_SPEC):
+-      Remove -mieee-fp handling.
+-
+-2018-07-10  Carl Love  <address@hidden>
+-
+-      Backport from mainline
+-      2017-09-07  Carl Love  <address@hidden>
+-
+-      * config/rs6000/vsx.md (define_insn "*stxvl"): Add missing argument to
+-      the sldi instruction.
+-
+-2018-06-29  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-10  Kelvin Nilsen  <address@hidden>
+-
+-      * lex.c (search_line_fast): Remove illegal coercion of an
+-      unaligned pointer value to vector pointer type and replace with
+-      use of __builtin_vec_vsx_ld () built-in function, which operates
+-      on unaligned pointer values.
+-
+-2018-06-27  David Edelsohn  <address@hidden>
+-
+-      2018-06-19  Tony Reix  <address@hidden>
+-          Damien Bergamini  <address@hidden>
+-          David Edelsohn  <address@hidden>
+-
+-      * collect2.c (static_obj): New variable.
+-      (static_libs): New variable.
+-      (is_in_list): Uncomment declaration.
+-      (main): Track AIX libraries linked statically.
+-      (is_in_list): Uncomment definition.
+-      (scan_prog_file): Don't add AIX shared libraries initializer
+-      to constructor list if linking statically.
+-
+-2018-06-26  Kelvin Nilsen  <address@hidden>
+-
+-      Backported from mainline
+-      2018-06-20  Kelvin Nilsen  <address@hidden>
+-
+-      * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Change
+-      behavior of vec_packsu (vector unsigned long long, vector unsigned
+-      long long) to match behavior of vec_packs with same signature.
+-
+-2018-06-26  Robin Dapp  <address@hidden>
+-
+-      * config/s390/s390.h (enum processor_flags): Do not use
+-      default tune parameter when -march was specified.
+-
+-2018-06-26  Jakub Jelinek  <address@hidden>
+-
+-      PR target/86314
+-      * config/i386/i386.md (setcc + movzbl to xor + setcc peephole2s):
+-      Check reg_overlap_mentioned_p in addition to reg_set_p with the same
+-      operands.
+-
+-2018-06-25  Michael Meissner  <address@hidden>
+-
+-      Back port from trunk
+-      2018-04-17  Michael Meissner  <address@hidden>
+-
+-      PR target/85424
+-      * config/rs6000/rs6000.md (pack<mode>): Do not try handle a pack
+-      where the inputs overlap with the output.
+-
+-2018-06-25  Jakub Jelinek  <address@hidden>
+-
+-      PR target/84786
+-      * config/i386/sse.md (vshift_count): New mode attr.
+-      (<shift_insn><mode>3<mask_name>): Use <vshift_count>N instead of vN
+-      as last operand's constraint for VI2_AVX2_AVX512BW shifts.  Use YvN
+-      instead of vN as last operand's constraint for VI48_AVX2 shifts.
+-
+-2018-06-23  Richard Sandiford  <address@hidden>
+-
+-      PR tree-optimization/85989
+-      * gimple-ssa-backprop.c (backprop::m_visited_phis): New member
+-      variable.
+-      (backprop::intersect_uses): Check it when deciding whether this
+-      is a backedge reference.
+-      (backprop::process_block): Add each phi to m_visited_phis
+-      after visiting it, then clear it at the end.
+-
+-2018-06-22  Jakub Jelinek  <address@hidden>
+-
+-      Backported from mainline
+-      2018-06-20  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/86231
+-      * tree-vrp.c (union_ranges): For (  [  )  ] or (   )[   ] range and
+-      anti-range don't overwrite *vr0min before using it to compute *vr0max.
+-
+-      2018-06-15  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/85878
+-      * expr.c (expand_assignment): Only call store_expr for halves if the
+-      mode is the same.
+-
+-      2018-06-14  Jakub Jelinek  <address@hidden>
+-
+-      PR target/85945
+-      * lower-subreg.c (find_decomposable_subregs): Don't decompose float
+-      subregs of multi-word pseudos unless the float mode has word size.
+-
+-      2018-06-04  Jakub Jelinek  <address@hidden>
+-
+-      PR c++/86025
+-      * tree.c (inchash::add_expr): Handle IDENTIFIER_NODE.
+-
+-      2018-05-06  Jakub Jelinek  <address@hidden>
+-
+-      PR c++/85659
+-      * cfgexpand.c (expand_asm_stmt): Don't create a temporary if
+-      the type is addressable.  Don't force op into register if it has
+-      BLKmode.
+-
+-      2018-05-01  Jakub Jelinek  <address@hidden>
+-
+-      PR web/85578
+-      * doc/install.texi2html: Replace _002d with - and _002a with * in
+-      generated html files using sed.
+-
+-      2018-04-27  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/85529
+-      * tree-ssa-reassoc.c (optimize_range_tests_var_bound): Add FIRST_BB
+-      argument.  Don't call get_nonzero_bits if opcode is ERROR_MARK_NODE,
+-      rhs2 def stmt's bb is dominated by first_bb and it isn't an obvious
+-      zero extension or masking of the MSB bit.
+-      (optimize_range_tests): Add FIRST_BB argument, pass it through
+-      to optimize_range_tests_var_bound.
+-      (maybe_optimize_range_tests, reassociate_bb): Adjust
+-      optimize_range_tests callers.
+-
+-      2018-04-19  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/85446
+-      * match.pd ((intptr_t) x eq/ne CST to x eq/ne (typeof x) cst): Require
+-      the integral and pointer types to have the same precision.
+-
+-      2018-04-18  David Malcolm  <address@hidden>
+-
+-      PR jit/85384
+-      * configure.ac (gcc-driver-name.h): Honor --with-gcc-major-version
+-      by using gcc_base_ver to generate a gcc_driver_version, and use
+-      it when generating GCC_DRIVER_NAME.
+-      * configure: Regenerate.
+-
+-      2018-04-17  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/85431
+-      * dse.c (record_store): Ignore zero width stores.
+-
+-      PR target/85430
+-      * config/i386/i386.md (*ashlqi3_1_slp): Use alu1 type instead of alu.
+-
+-      2018-04-10  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/85300
+-      * combine.c (subst): Handle subst of CONST_SCALAR_INT_P new_rtx also
+-      into FLOAT and UNSIGNED_FLOAT like ZERO_EXTEND, return a CLOBBER if
+-      simplify_unary_operation fails.
+-
+-      2018-04-07  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/85257
+-      * fold-const.c (native_encode_vector): If not all elts could fit
+-      and off is -1, return 0 rather than offset.
+-      * tree-ssa-sccvn.c (vn_reference_lookup_3): Pass
+-      (offset - offset2) / BITS_PER_UNIT as 4th argument to
+-      native_encode_expr.  Verify len * BITS_PER_UNIT >= maxsizei.  Don't
+-      adjust buffer in native_interpret_expr call.
+-
+-      2018-04-06  Jakub Jelinek  <address@hidden>
+-
+-      PR debug/85252
+-      * dwarf2out.c (rtl_for_decl_init): For STRING_CST initializer only
+-      build CONST_STRING if TYPE_MAX_VALUE is non-NULL and is INTEGER_CST.
+-
+-      2018-04-03  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/85167
+-      * shrink-wrap.c (move_insn_for_shrink_wrap): Don't set bb_uses and
+-      bb_defs if *split_p, instead preinitialize it to NULL.
+-
+-      2018-03-28  Jakub Jelinek  <address@hidden>
+-
+-      PR target/85095
+-      * config/i386/i386.md (*add<mode>3_carry_0, *addsi3_carry_zext_0,
+-      *sub<mode>3_carry_0, *subsi3_carry_zext_0): New patterns.
+-
+-      2018-03-23  Jakub Jelinek  <address@hidden>
+-
+-      PR inline-asm/85022
+-      * emit-rtl.c (init_emit_regs): Indicate that VOIDmode MEMs don't have
+-      known size by default.
+-
+-      PR inline-asm/85034
+-      * function.c (match_asm_constraints_1): Don't optimize if input
+-      doesn't satisfy general_operand predicate for output's mode.
+-
+-      PR inline-asm/85022
+-      * alias.c (write_dependence_p): Don't require for x_canonicalized
+-      non-VOIDmode if x has VOIDmode.
+-
+-      2018-03-22  Jakub Jelinek  <address@hidden>
+-
+-      PR inline-asm/84941
+-      * function.c (match_asm_constraints_1): Don't do the optimization
+-      if input isn't a REG, SUBREG, MEM or constant.
+-
+-      PR sanitizer/85018
+-      * dwarf2asm.c (dw2_output_indirect_constant_1): Set
+-      DECL_INITIAL (decl) to decl at the end.
+-      * varasm.c (use_blocks_for_decl_p): Revert the 2018-03-20 change,
+-      adjust the comment.
+-
+-      2018-03-20  Jakub Jelinek  <address@hidden>
+-
+-      PR debug/84875
+-      * dce.c (delete_unmarked_insns): Don't remove frame related noop moves
+-      holding REG_CFA_RESTORE notes, instead turn them into a USE.
+-
+-      PR c/84953
+-      * builtins.c (fold_builtin_strpbrk): For strpbrk(x, "") use type
+-      instead of TREE_TYPE (s1) for the return value.
+-
+-      PR target/84990
+-      * dwarf2asm.c (dw2_output_indirect_constant_1): Temporarily turn off
+-      flag_section_anchors.
+-      * varasm.c (use_blocks_for_decl_p): Remove hack for
+-      dw2_force_const_mem.
+-
+-      2018-03-19  Jakub Jelinek  <address@hidden>
+-
+-      PR sanitizer/78651
+-      * dwarf2asm.c: Include fold-const.c.
+-      (dw2_output_indirect_constant_1): Set DECL_INITIAL (decl) to ADDR_EXPR
+-      of decl rather than decl itself.
+-
+-      2018-03-19  Maxim Ostapenko  <address@hidden>
+-
+-      PR sanitizer/78651
+-      * dwarf2asm.c (dw2_output_indirect_constant_1): Disable ASan before
+-      calling assemble_variable.
+-
+-      2018-03-16  Jakub Jelinek  <address@hidden>
+-
+-      PR target/84899
+-      * postreload.c (reload_combine_recognize_pattern): Perform
+-      INTVAL addition in unsigned HOST_WIDE_INT type to avoid UB and
+-      truncate_int_for_mode the result for the destination's mode.
+-
+-      PR tree-optimization/84841
+-      * tree-ssa-reassoc.c (INTEGER_CONST_TYPE): Change to 1 << 4 from
+-      1 << 3.
+-      (FLOAT_ONE_CONST_TYPE): Define.
+-      (constant_type): Return FLOAT_ONE_CONST_TYPE for -1.0 and 1.0.
+-      (sort_by_operand_rank): Put entries with higher constant_type last
+-      rather than first to match comments.
+-
+-      2018-03-15  Jakub Jelinek  <address@hidden>
+-
+-      PR c++/79085
+-      * calls.c (expand_call): For TREE_ADDRESSABLE rettype ignore alignment
+-      check and use address of target always.
+-
+-      PR target/84860
+-      * optabs.c (emit_conditional_move): Pass address of cmode's copy
+-      rather than address of cmode as last argument to prepare_cmp_insn.
+-
+-      2018-03-13  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/84834
+-      * match.pd ((A & C) != 0 ? D : 0): Use INTEGER_CST@2 instead of
+-      integer_pow2p@2 and test integer_pow2p in condition.
+-      (A < 0 ? C : 0): Similarly for @1.
+-
+-      PR target/84827
+-      * config/i386/i386.md (round<mode>2): For 387 fancy math, disable
+-      pattern if -ftrapping-math -fno-fp-int-builtin-inexact.
+-
+-      PR target/84786
+-      * config/i386/sse.md (sse2_loadhpd): Use Yv constraint rather than v
+-      on the last operand.
+-
+-      2018-03-09  Jakub Jelinek  <address@hidden>
+-
+-      PR target/84772
+-      * config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Mark va_arg_tmp
+-      temporary TREE_ADDRESSABLE before gimplification of BUILT_IN_MEMCPY.
+-
+-      PR c++/84767
+-      * tree-inline.c (copy_tree_body_r): For INDIRECT_REF of a remapped
+-      decl, use remap_type if we want to use the type.
+-
+-      2018-03-08  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/84739
+-      * tree-tailcall.c (find_tail_calls): Check call arguments against
+-      DECL_ARGUMENTS (current_function_decl) rather than
+-      DECL_ARGUMENTS (func) when checking for tail recursion.
+-
+-      2018-03-05  Jakub Jelinek  <address@hidden>
+-
+-      PR target/84700
+-      * combine.c (combine_simplify_rtx): Don't try to simplify if
+-      if_then_else_cond returned non-NULL, but either true_rtx or false_rtx
+-      are equal to x.
+-
+-2018-06-22  Andre Vieira  <address@hidden>
+-
+-      Backport from mainline
+-      2018-06-05  Andre Vieira  <address@hidden>
+-
+-      * config/arm/arm_cmse.h (cmse_nsfptr_create): Change typeof to
+-      __typeof__.
+-      (cmse_check_pointed_object): Likewise.
+-
+-2018-06-22  Andre Vieira  <address@hidden>
+-
+-      Backport from mainline
+-      2018-05-17  Jerome Lambourg  <address@hidden>
+-
+-      * config/arm/arm_cmse.h (cmse_nsfptr_create, cmse_is_nsfptr): Remove
+-      #include <stdint.h>.  Replace intptr_t with __INTPTR_TYPE__.
+-
+-2018-06-21  Sebastian Huber  <address@hidden>
+-
+-      Backport from mainline
+-      2018-06-15  Sebastian Huber  <address@hidden>
+-
+-      * config.gcc (riscv*-*-elf* | riscv*-*-rtems*): Use custom
+-      multilibs for *-*-rtems*.
+-      * config/riscv/t-rtems: New file.
+-
+-2018-06-19  Max Filippov  <address@hidden>
+-
+-      Backport from mainline
+-      2018-06-19  Max Filippov  <address@hidden>
+-
+-      * config/xtensa/xtensa.md (UNSPEC_FRAME_BLOCKAGE): New unspec
+-      constant.
+-      (allocate_stack, frame_blockage, *frame_blockage): New patterns.
+-
+-2018-06-19  Eric Botcazou  <address@hidden>
+-
+-      * gimplify.c (gimplify_init_constructor): Really never clear for an
+-      incomplete constructor if CONSTRUCTOR_NO_CLEARING is set.
+-
+-2018-06-18  Martin Sebor  <address@hidden>
+-
+-      PR middle-end/82063
+-      * calls.c (alloc_max_size): Correct a logic error/typo.
+-      Treat excessive arguments as infinite.  Warn for invalid arguments.
+-      * doc/invoke.texi (-Walloc-size-larger-than): Update.
+-
+-2018-06-14  Sebastian Huber  <address@hidden>
+-
+-      Backport from mainline
+-      2018-06-14  Sebastian Huber  <address@hidden>
+-
+-      * config/rtems.h (STDINT_LONG32): Define.
+-
+-2018-06-11  Peter Bergner  <address@hidden>
+-
+-      Backport from mainline
+-      2018-06-08  Peter Bergner  <address@hidden>
+-
+-      PR target/85755
+-      * config/rs6000/rs6000.c (mem_operand_gpr): Enable PRE_INC and PRE_DEC
+-      addresses.
+-
+-2018-06-07  Peter Bergner  <address@hidden>
+-
+-      Backport from mainline
+-      2018-06-06  Peter Bergner  <address@hidden>
+-
+-      PR target/63177
+-      * /config/rs6000/rs6000.h (ASM_CPU_SPEC): Add support for -mpower9.
+-      Don't handle -mcpu=power8 if -mpower9-vector is also used.
+-
+-2018-06-07  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2018-05-04  Richard Biener  <address@hidden>
+-
+-      PR middle-end/85588
+-      * fold-const.c (negate_expr_p): Restrict negation of operand
+-      zero of a division to when we know that can happen without
+-      overflow.
+-      (fold_negate_expr_1): Likewise.
+-
+-      2018-05-02  Richard Biener  <address@hidden>
+-
+-      PR middle-end/85567
+-      * gimplify.c (gimplify_save_expr): When in SSA form allow
+-      SAVE_EXPRs to compute to SSA vars.
+-
+-      2018-05-02  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/85597
+-      * tree-vect-stmts.c (vectorizable_operation): For ternary SLP
+-      do not use split vect_get_vec_defs call but call vect_get_slp_defs
+-      directly.
+-
+-2018-06-05  Andreas Krebbel  <address@hidden>
+-
+-      Backport from mainline
+-      2018-06-05  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390-builtin-types.def: Add void function type.
+-      * config/s390/s390-builtins.def: Use the function type for the
+-      tbeginc builtin.
+-
+-2018-06-01  Bill Schmidt  <address@hidden>
+-
+-      PR tree-optimization/85712
+-      Backport from mainline:
+-      2018-05-23  Bill Schmidt  <address@hidden>
+-
+-      PR tree-optimization/85712
+-      * gimple-ssa-strength-reduction.c (struct slsr_cand_d): Add
+-      first_interp field.
+-      (alloc_cand_and_find_basis): Initialize first_interp field.
+-      (slsr_process_mul): Modify first_interp field.
+-      (slsr_process_add): Likewise.
+-      (slsr_process_cast): Modify first_interp field for each new
+-      interpretation.
+-      (slsr_process_copy): Likewise.
+-      (dump_candidate): Dump first_interp field.
+-      (replace_mult_candidate): Process all interpretations, not just
+-      subsequent ones.
+-      (replace_rhs_if_not_dup): Likewise.
+-      (replace_one_candidate): Likewise.
+-
+-      Backport from mainline:
+-      2018-05-25  Bill Schmidt  <address@hidden>
+-
+-      PR tree-optimization/85712
+-      * gimple-ssa-strength-reduction.c (replace_one_candidate): Skip if
+-      this candidate has already been replaced in-situ by a copy.
+-
+-2018-05-24  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/sse.md (cvtusi2<ssescalarmodesuffix>64<round_name>):
+-      Add {q} suffix to insn mnemonic.
+-
+-2018-05-24  Uros Bizjak  <address@hidden>
+-
+-      PR target/85903
+-      * config/i386/sse.md (movdi_to_sse): Do not generate pseudo
+-      when memory input operand is handled.
+-
+-2018-05-21  Pat Haugen  <address@hidden>
+-
+-      Backport from mainline
+-      2018-05-17  Pat Haugen  <address@hidden>
+-                  Segher Boessenkool  <address@hidden>
+-
+-      PR target/85698
+-      * config/rs6000/rs6000.c (rs6000_output_move_128bit): Check
+-      dest operand.
+-
+-2018-05-17  Martin Jambor  <address@hidden>
+-
+-      Backport from mainline
+-      2018-05-11  Martin Jambor  <address@hidden>
+-
+-      PR ipa/85655
+-      * ipa-cp.c (intersect_with_plats): Check that the lattice contains
+-      single const.
+-
+-2018-05-01  Tom de Vries  <address@hidden>
+-
+-      backport from trunk:
+-      2018-04-16  Cesar Philippidis  <address@hidden>
+-                  Tom de Vries  <address@hidden>
+-
+-      PR middle-end/84955
+-      * omp-expand.c (expand_oacc_for): Add dummy false branch for
+-      tiled basic blocks without omp continue statements.
+-
+-2018-04-26  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2018-04-09  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/85284
+-      * tree-ssa-loop-niter.c (number_of_iterations_exit_assumptions):
+-      Only use the niter constraining form of simple_iv when the exit
+-      is always executed.
+-
+-      2018-04-06  Richard Biener  <address@hidden>
+-
+-      PR middle-end/85244
+-      * tree-dfa.c (get_ref_base_and_extent): Reset seen_variable_array_ref
+-      after seeing a component reference with an adjacent field.  Treat
+-      refs to arrays at struct end of external decls similar to
+-      refs to unconstrained commons.
+-
+-      2018-04-04  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/85168
+-      * tree-ssa-sccvn.c (vn_reference_maybe_forwprop_address): Avoid
+-      propagating abnormals.
+-
+-2018-04-24  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2018-04-17  Martin Liska  <address@hidden>
+-
+-      PR lto/85405
+-      * ipa-devirt.c (odr_types_equivalent_p): Remove trailing
+-      in message, remote space in between '_G' and '('.
+-
+-2018-04-24  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2018-04-17  Jan Hubicka  <address@hidden>
+-
+-      PR lto/85405
+-      * ipa-devirt.c (odr_types_equivalent_p): Handle bit fields.
+-
+-2018-04-24  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2018-03-28  Jakub Jelinek  <address@hidden>
+-                  Martin Liska  <address@hidden>
+-
+-      PR sanitizer/85081
+-      * gimplify.c (asan_poison_variable): Don't do the check for
+-      gimplify_omp_ctxp here.
+-      (gimplify_decl_expr): Do it here.
+-      (gimplify_target_expr): Likewise.
+-
+-2018-04-24  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2018-03-21  Martin Liska  <address@hidden>
+-
+-      PR ipa/84963
+-      * ipa-icf.c (sem_item_optimizer::fixup_points_to_sets): Remove
+-      not intended return statement.
+-
+-2018-04-24  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2018-03-13  Martin Liska  <address@hidden>
+-
+-      PR ipa/84658.
+-      * (sem_item_optimizer::sem_item_optimizer): Initialize new
+-      vector.
+-      (sem_item_optimizer::~sem_item_optimizer): Release it.
+-      (sem_item_optimizer::merge_classes): Register variable aliases.
+-      (sem_item_optimizer::fixup_pt_set): New function.
+-      (sem_item_optimizer::fixup_points_to_sets): Likewise.
+-      * ipa-icf.h: Declare new variables and functions.
+-
+-2018-04-23  Aaron Sawdey  <address@hidden>
+-
+-      Backport from mainline
+-      2018-04-16  Aaron Sawdey  <address@hidden>
+-
+-      PR target/83660
+-      * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): Mark
+-      vec_extract expression as having side effects to make sure it gets
+-      a cleanup point.
+-
+-2018-04-23  Eric Botcazou  <address@hidden>
+-
+-      PR middle-end/85496
+-      * expr.c (store_field): In the bitfield case, if the value comes from
+-      a function call and is returned in registers by means of a PARALLEL,
+-      do not change the mode of the temporary unless BLKmode and VOIDmode.
+-
+-2018-04-20  Peter Bergner  <address@hidden>
+-
+-      Backport from mainline
+-      2018-03-09  Peter Bergner  <address@hidden>
+-
+-      PR target/83969
+-      * config/rs6000/rs6000.c (rs6000_offsettable_memref_p): New prototype.
+-      Add strict argument and use it.
+-      (rs6000_split_multireg_move): Update for new strict argument.
+-      (mem_operand_gpr): Disallow all non-offsettable addresses.
+-      * config/rs6000/rs6000.md (*movdi_internal64): Use YZ constraint.
+-
+-2018-04-18  Thomas Preud'homme  <address@hidden>
+-
+-      Backport from mainline
+-      2018-04-11  Thomas Preud'homme  <address@hidden>
+-
+-      PR target/85261
+-      * config/arm/arm-builtins.c (arm_expand_builtin): Force input operand
+-      into register.
+-
+-2018-04-12  Andreas Krebbel  <address@hidden>
+-
+-      Backport from mainline
+-      2018-04-12  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390.c (s390_output_indirect_thunk_function): Check
+-      also for flag_dwarf2_cfi_asm.
+-
+-2018-04-11  Uros Bizjak  <address@hidden>
+-
+-      * config/alpha/alpha.md (stack_probe_internal): Rename
+-      from "probe_stack".  Update all callers.
+-
+-2018-04-11  Thomas Preud'homme  <address@hidden>
+-
+-      Backport from mainline
+-      2018-04-04  Thomas Preud'homme  <address@hidden>
+-
+-      PR target/85203
+-      * config/arm/arm-builtins.c (arm_expand_builtin): Change
+-      expansion to perform a bitwise AND of the argument followed by a
+-      boolean negation of the result.
+-
+-2018-04-10  Kyrylo Tkachov  <address@hidden>
+-
+-      Backport from mainline
+-      2018-03-08  Kyrylo Tkachov  <address@hidden>
+-
+-      PR target/84748
+-      * config/aarch64/aarch64.md (*compare_cstore<mode>_insn): Mark pattern
+-      as clobbering CC_REGNUM.
+-
+-2018-04-06  Eric Botcazou  <address@hidden>
+-
+-      PR target/85196
+-      * config/sparc/sparc.c (sparc_expand_move): Deal with symbolic operands
+-      based on LABEL_REF.  Remove useless assertion.
+-      (pic_address_needs_scratch): Fix formatting.
+-      (sparc_legitimize_pic_address): Minor tweaks.
+-      (sparc_delegitimize_address): Adjust assertion accordingly.
+-      * config/sparc/sparc.md (movsi_pic_label_ref): Change label_ref_operand
+-      into symbolic_operand.
+-      (movsi_high_pic_label_ref): Likewise.
+-      (movsi_lo_sum_pic_label_ref): Likewise.
+-      (movdi_pic_label_ref): Likewise.
+-      (movdi_high_pic_label_ref): Likewise.
+-      (movdi_lo_sum_pic_label_ref): Likewise.
+-
+-2018-04-06  Amaan Cheval  <address@hidden>
+-
+-      * config.gcc (x86_64-*-rtems*): Add rtems.h to tm_file for
+-      custom LIB_SPEC setup.
+-
+-2018-04-05  Uros Bizjak  <address@hidden>
+-
+-      PR target/85193
+-      * config/i386/i386.md (define_attr "memory"): Handle rotate1 type.
+-
+-2018-04-04  Peter Bergner  <address@hidden>
+-
+-      Backport from mainline
+-      2018-04-04  Peter Bergner  <address@hidden>
+-
+-      PR rtl-optimization/84878
+-      * ddg.c (add_cross_iteration_register_deps): Use DF_REF_BB to determine
+-      the basic block.  Assert the use reference is not artificial and that
+-      it has an associated insn.
+-
+-2018-04-03  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/i386.c (emit_i387_cw_initialization): Always use logic
+-      instructions when changing rounding bits to preserve precision bits
+-      in the x87 control word.
+-
+-2018-04-03  Cesar Philippidis  <address@hidden>
+-
+-      Backport from mainline
+-      2018-03-27  Cesar Philippidis  <address@hidden>
+-
+-      PR target/85056
+-      * config/nvptx/nvptx.c (nvptx_assemble_decl_begin): Add '[]' to
+-      extern array declarations.
+-
+-2018-04-02  Peter Bergner  <address@hidden>
+-
+-      Backport from mainline
+-      2018-03-28  Peter Bergner  <address@hidden>
+-
+-      PR target/84912
+-      * config/rs6000/rs6000.h: Update copyright date.
+-      (RS6000_BTM_POWERPC64): New define.
+-      (RS6000_BTM_COMMON): Add RS6000_BTM_POWERPC64.
+-      * config/rs6000/rs6000.c: Update copyright date.
+-      (rs6000_builtin_mask_calculate): Add support for RS6000_BTM_POWERPC64.
+-      (rs6000_invalid_builtin): Add handling for RS6000_BTM_POWERPC64
+-      (rs6000_builtin_mask_names): Add RS6000_BTM_POWERPC64.
+-      * config/rs6000/rs6000-builtin.def: Update copyright date.
+-      (BU_P7_POWERPC64_MISC_2): New macro definition.
+-      (DIVDE): Use it.
+-      (DIVDEU): Likewise.
+-
+-      Backport from mainline
+-      2018-03-28  Peter Bergner  <address@hidden>
+-
+-      PR target/84912
+-      * config/rs6000/rs6000-builtin.def (DIVWEO): Delete macro expansion.
+-      (DIVWEUO): Likewise.
+-      (DIVDEO): Likewise.
+-      (DIVDEUO): Likewise.
+-      * config/rs6000/rs6000.c (builtin_function_type): Remove support for
+-      DIVWEUO and DIVDEUO.
+-      * config/rs6000/rs6000.md: Update copyright date.
+-      (UNSPEC_DIVEO, UNSPEC_DIVEUO): Delete unspecs.
+-      (UNSPEC_DIV_EXTEND): Remove deleted unspecs.
+-      (div_extend): Likewise.
+-      * doc/extend.texi: Update copyright date.
+-      (__builtin_divweo): Remove documentation for deleted builtin function.
+-      (__builtin_divweuo): Likewise.
+-      (__builtin_divdeo): Likewise.
+-      (__builtin_divdeuo): Likewise.
+-
+-2018-04-02  Peter Bergner  <address@hidden>
+-
+-      Backport from mainline
+-      2018-03-30  Peter Bergner  <address@hidden>
+-
+-      PR target/80546
+-      * config/rs6000/vsx.md (??r): New mode attribute.
+-      (*vsx_mov<mode>_64bit): Use it.
+-      (*vsx_mov<mode>_32bit): Likewise.
+-
+-2018-03-29  Sebastian Peryt  <address@hidden>
+-
+-      PR c++/84783
+-      * config/i386/avx512vlintrin.h (_mm256_permutexvar_epi64)
+-      (_mm256_permutexvar_epi32, _mm256_permutex_epi64): New intrinsics.
+-
+-2018-03-29  Sudakshina Das  <address@hidden>
+-
+-      Backport from mainline
+-      2018-03-22  Sudakshina Das  <address@hidden>
+-
+-      PR target/84826
+-      * config/arm/arm.h (machine_function): Add static_chain_stack_bytes.
+-      * config/arm/arm.c (arm_compute_static_chain_stack_bytes): Avoid
+-      re-computing once computed.
+-      (arm_expand_prologue): Compute machine->static_chain_stack_bytes.
+-      (arm_init_machine_status): Initialize
+-      machine->static_chain_stack_bytes.
+-
+-2018-03-28  Sudakshina Das  <address@hidden>
+-
+-      2018-03-19  Sudakshina Das  <address@hidden>
+-      PR target/81647
+-
+-      * config/aarch64/aarch64-simd.md (vec_cmp<mode><v_cmp_result>): Modify
+-      instructions for UNLT, UNLE, UNGT, UNGE, UNEQ, UNORDERED and ORDERED.
+-
+-2018-03-28  Kyrylo Tkachov  <address@hidden>
+-
+-      Backport from mainline
+-      2018-03-23  Kyrylo Tkachov  <address@hidden>
+-
+-      PR target/85026
+-      * config/arm/arm.md (unaligned_loadhis): Remove first alternative.
+-      Clean up attributes.
+-
+-2018-03-28  Segher Boessenkool  <address@hidden>
+-
+-      Backport from mainline
+-      2018-03-08  Segher Boessenkool  <address@hidden>
+-
+-      PR target/82411
+-      * config/rs6000/rs6000.c (rs6000_elf_in_small_data_p): Don't put
+-      readonly data in sdata, if that is disabled.
+-      * config/rs6000/sysv4.opt (mreadonly-in-sdata): New option.
+-      * doc/invoke.texi (RS/6000 and PowerPC Options): Document
+-      -mreadonly-in-sdata option.
+-
+-2018-03-27  Sudakshina Das  <address@hidden>
+-
+-      Backport from mainline:
+-      2018-03-20  Sudakshina Das  <address@hidden>
+-
+-      PR target/82989
+-      * config/arm/neon.md (ashldi3_neon): Update ?s for constraints
+-      to favor GPR over NEON registers.
+-      (<shift>di3_neon): Likewise.
+-
+-2018-03-27  Kyrylo Tkachov  <address@hidden>
+-
+-      Backport from mainline
+-      2018-03-20  Kyrylo Tkachov  <address@hidden>
+-
+-      PR target/82518
+-      * config/arm/arm.c (arm_array_mode_supported_p): Return false for
+-      BYTES_BIG_ENDIAN.
+-
+-2018-03-23  Peter Bergner  <address@hidden>
+-
+-      Backport from mainline
+-      2018-03-20  Peter Bergner  <address@hidden>
+-
+-      PR target/83789
+-      * config/rs6000/altivec.md (altivec_lvx_<mode>_2op): Delete define_insn.
+-      (altivec_lvx_<mode>_1op): Likewise.
+-      (altivec_stvx_<mode>_2op): Likewise.
+-      (altivec_stvx_<mode>_1op): Likewise.
+-      (altivec_lvx_<VM2:mode>): New define_expand.
+-      (altivec_stvx_<VM2:mode>): Likewise.
+-      (altivec_lvx_<VM2:mode>_2op_<P:mptrsize>): New define_insn.
+-      (altivec_lvx_<VM2:mode>_1op_<P:mptrsize>): Likewise.
+-      (altivec_stvx_<VM2:mode>_2op_<P:mptrsize>): Likewise.
+-      (altivec_stvx_<VM2:mode>_1op_<P:mptrsize>): Likewise.
+-      * config/rs6000/rs6000.c (altivec_expand_lv_builtin): Likewise.
+-      (altivec_expand_stv_builtin): Likewise.
+-      (altivec_expand_builtin): Likewise.
+-      * config/rs6000/vector.md: Likewise.
+-
+-2018-03-23  Carl Love  <address@hidden>
+-
+-      Backport from mainline:
+-      2018-03-14  Carl Love  <address@hidden>
+-
+-      * config/rs6000/r6000.c (rtx_is_swappable_p): Add case UNSPEC_VPERMXOR.
+-
+-2018-03-22  Tom de Vries  <address@hidden>
+-
+-      backport from trunk:
+-      2018-03-22  Tom de Vries  <address@hidden>
+-
+-      PR tree-optimization/84956
+-      * tree-ssa-tail-merge.c (find_clusters_1): Skip bbs with
+-      bb_has_abnormal_pred.
+-
+-2018-03-19  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      2018-03-15  H.J. Lu  <address@hidden>
+-
+-      PR target/84574
+-      * config/i386/i386.c (indirect_thunk_needed): Update comments.
+-      (indirect_thunk_bnd_needed): Likewise.
+-      (indirect_thunks_used): Likewise.
+-      (indirect_thunks_bnd_used): Likewise.
+-      (indirect_return_needed): New.
+-      (indirect_return_bnd_needed): Likewise.
+-      (output_indirect_thunk_function): Add a bool argument for
+-      function return.
+-      (output_indirect_thunk_function): Don't generate alias for
+-      function return thunk.
+-      (ix86_code_end): Call output_indirect_thunk_function to generate
+-      function return thunks.
+-      (ix86_output_function_return): Set indirect_return_bnd_needed
+-      and indirect_return_needed instead of indirect_thunk_bnd_needed
+-      and indirect_thunk_needed.
+-
+-2018-03-14  John David Anglin  <address@hidden>
+-
+-      PR target/83451
+-      * config/pa/pa.c (pa_emit_move_sequence):  Always emit secondary reload
+-      insn for floating-point loads and stores.
+-
+-2018-03-12  Jonathan Wakely  <address@hidden>
+-
+-      * doc/invoke.texi (-mclflushopt): Fix spelling of option.
+-
+-2018-03-12  Richard Sandiford  <address@hidden>
+-
+-      PR tree-optimization/84485
+-      * tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Return
+-      true for zero dependence distances if the step might be zero,
+-      and if there is no metadata that guarantees correctness.
+-      (vect_analyze_data_ref_access): Check safelen as well as
+-      force_vectorize.
+-
+-2018-03-11  John David Anglin  <address@hidden>
+-
+-      Backport from mainline
+-      2018-02-14  John David Anglin  <address@hidden>
+-
+-      PR target/83984
+-      * config/pa/pa.md: Load address of PIC label using the linkage table
+-      if the label is nonlocal.
+-
+-      Backport from mainline
+-      2018-03-06  John David Anglin  <address@hidden>
+-
+-      * config/pa/pa.h (ASM_GENERATE_INTERNAL_LABEL): Revise to use
+-      sprint_ul.
+-      (ASM_OUTPUT_ADDR_VEC_ELT): Revise for above change.
+-      (ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
+-      * config/pa/pa64-hpux.h (ASM_GENERATE_INTERNAL_LABEL): Revise as above.
+-
+-2018-03-09  Kugan Vivekanandarajah  <address@hidden>
+-
+-      Backport from mainline
+-      2017-09-13  Kugan Vivekanandarajah  <address@hidden>
+-
+-      * config/aarch64/aarch64.c (aarch64_override_options_after_change_1):
+-      Disable pc relative literal load irrespective of
+-      TARGET_FIX_ERR_A53_84341 for default.
+-
+-2018-03-06  Denis Chertykov  <address@hidden>
+-
+-      Backport from mainline
+-      2018-02-07  Georg-Johann Lay  <address@hidden>
+-
+-      PR target/84209
+-      * config/avr/avr.h (GENERAL_REGNO_P, GENERAL_REG_P): New macros.
+-      * config/avr/avr.md: Only post-reload split REG-REG moves if
+-      either register is GENERAL_REG_P.
+-
+-2018-03-06  Carl Love  <address@hidden>
+-
+-      Backport from mainline
+-      2/16/18  commit 257748  Carl Love  <address@hidden>
+-
+-      * config/rs6000/altivec.h: Remove vec_vextract4b and vec_vinsert4b.
+-      * config/rs6000/rs6000-builtin.def: Remove macro expansion for
+-      VINSERT4B_DI and VINSERT4B.
+-      * config/rs6000/rs6000.c: Remove case statements for
+-      P9V_BUILTIN_VINSERT4B, P9V_BUILTIN_VINSERT4B_DI,
+-      and P9V_BUILTIN_VEC_VINSERT4B.
+-      * config/rs6000/rs6000-c.c (altivec_expand_builtin): Remove entries for
+-      P9V_BUILTIN_VEC_VEXTRACT4B and P9V_BUILTIN_VEC_VINSERT4B.
+-      * config/rs6000/vsx.md:  Remove define_expand vinsert4b,
+-      define_insn *vinsert4b_internal, define_insn "*vinsert4b_di_internal.
+-      * doc/extend.texi: Remove vec_vextract4b, non ABI definitions for
+-      vec_insert4b.
+-
+-2018-03-06  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2018-02-20  Martin Liska  <address@hidden>
+-
+-      PR c/84310
+-      PR target/79747
+-      * final.c (shorten_branches): Build align_tab array with one
+-      more element.
+-      * opts.c (finish_options): Add alignment option limit check.
+-      (MAX_CODE_ALIGN): Likewise.
+-      (MAX_CODE_ALIGN_VALUE): Likewise.
+-      * doc/invoke.texi: Document maximum allowed option value for
+-      all -falign-* options.
+-
+-2018-03-06  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2018-02-19  Martin Liska  <address@hidden>
+-
+-      PR other/80589
+-      * doc/invoke.texi: Fix typo.
+-      * params.def (PARAM_MAX_LOOP_HEADER_INSNS): Likewise.
+-
+-2018-03-06  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2018-02-05  Martin Liska  <address@hidden>
+-
+-      PR gcov-profile/84137
+-      * doc/gcov.texi: Fix typo in documentation.
+-
+-2018-03-06  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2018-02-05  Martin Liska  <address@hidden>
+-
+-      PR gcov-profile/83879
+-      * doc/gcov.texi: Document necessity of --dynamic-list-data when
+-      using dlopen functionality.
+-
+-2018-03-06  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-12-19  Martin Liska  <address@hidden>
+-
+-      PR rtl-optimization/82675
+-      * loop-unroll.c (unroll_loop_constant_iterations): Allocate one
+-      more element in sbitmap.
+-
+-2018-03-06  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2018-03-05  Martin Liska  <address@hidden>
+-
+-      * ipa-utils.c (ipa_merge_profiles): Do not merge alias or
+-      a function without profile.
+-
+-2018-03-06  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2018-02-21  Jan Hubicka  <address@hidden>
+-
+-      PR c/84229
+-      * ipa-cp.c (determine_versionability): Do not version functions caling
+-      va_arg_pack.
+-
+-2018-03-06  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2018-02-08  Jan Hubicka  <address@hidden>
+-
+-      PR ipa/81360
+-      * cgraph.h (symtab_node::output_to_lto_symbol_table_p): Declare
+-      * symtab.c: Include builtins.h
+-      (symtab_node::output_to_lto_symbol_table_p): Move here
+-      from lto-streamer-out.c:output_symbol_p.
+-      * lto-streamer-out.c (write_symbol): Turn early exit to assert.
+-      (output_symbol_p): Move all logic to symtab.c
+-      (produce_symtab): Update.
+-
+-2018-03-06  Peter Bergner  <address@hidden>
+-
+-      Backport from mainline
+-      2018-02-22  Vladimir Makarov  <address@hidden>
+-
+-      PR target/81572
+-      * lra-int.h (LRA_UNKNOWN_ALT, LRA_NON_CLOBBERED_ALT): New macros.
+-      * lra.c (lra_set_insn_recog_data, lra_update_insn_recog_data): Use
+-      LRA_UNKNOWN_ALT.
+-      * lra-constraints.c (curr_insn_transform): Set up
+-      LRA_NON_CLOBBERED_ALT for moves processed on the fast path.  Use
+-      LRA_UNKNOWN_ALT.
+-      (remove_inheritance_pseudos): Use LRA_UNKNOWN_ALT.
+-      * lra-eliminations.c (spill_pseudos): Ditto.
+-      (process_insn_for_elimination): Ditto.
+-      * lra-lives.c (reg_early_clobber_p): Use the new macros.
+-      * lra-spills.c (spill_pseudos): Use LRA_UNKNOWN_ALT and
+-      LRA_NON_CLOBBERED_ALT.
+-
+-2018-03-06  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2018-03-05  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/84486
+-      * tree-ssa-pre.c (create_expression_by_pieces): Remove dead code.
+-      When inserting a __builtin_assume_aligned call set the LHS
+-      SSA name alignment info accordingly.
+-
+-      2018-02-28  Richard Biener  <address@hidden>
+-
+-      PR middle-end/84607
+-      * genmatch.c (capture_info::walk_match): Do not mark
+-      captured expressions without operands as expr_p given
+-      they act more like predicates and should be subject to
+-      "lost tail" side-effect preserving.
+-
+-2018-03-05  Jakub Jelinek  <address@hidden>
+-
+-      PR target/84524
+-      * config/i386/sse.md (*<code><mode>3): Replace <mask_prefix3> with
+-      orig,vex.
+-      (*<plusminus_insn><mode>3): Likewise.  Remove <mask_operand3> uses.
+-
+-2018-03-03  Jakub Jelinek  <address@hidden>
+-
+-      Backported from mainline
+-      2018-03-02  Jakub Jelinek  <address@hidden>
+-                  Richard Biener  <address@hidden>
+-
+-      PR ipa/84628
+-      * expr.c (expand_expr_real_1) <case CALL_EXPR>: Don't emit diagnostics
+-      for error or warning attributes if CALL_FROM_THUNK_P is set.
+-      Formatting fixes.
+-
+-      2018-03-02  Jakub Jelinek  <address@hidden>
+-
+-      PR inline-asm/84625
+-      * config/i386/i386.c (ix86_print_operand): Use conditional
+-      output_operand_lossage instead of gcc_assert if CONST_VECTOR is not
+-      zero vector.
+-
+-      2018-02-23  Jakub Jelinek  <address@hidden>
+-
+-      * ipa-prop.c (ipa_vr_ggc_hash_traits::hash): Hash p->min and
+-      p->max as pointers rather than using iterative_hash_expr.
+-
+-      2017-11-10  Jakub Jelinek  <address@hidden>
+-
+-      PR bootstrap/82916
+-      * gimple-ssa-store-merging.c
+-      (pass_store_merging::terminate_all_aliasing_chains): For
+-      gimple_store_p stmts also call refs_output_dependent_p.
+-
+-      2018-02-19  Jakub Jelinek  <address@hidden>
+-
+-      PR c++/84444
+-      * builtins.c (builtin_mathfn_code): Don't check if CALL_EXPR_FN (t)
+-      is ADDR_EXPR.
+-
+-      2018-02-16  Jakub Jelinek  <address@hidden>
+-
+-      PR ipa/84425
+-      * ipa-inline.c (inline_small_functions): Fix a typo.
+-
+-      2018-02-13  Jakub Jelinek  <address@hidden>
+-
+-      PR c/82210
+-      * stor-layout.c (place_field): For variable length fields, adjust
+-      offset_align afterwards not just based on the field's alignment,
+-      but also on the size.
+-
+-      2018-02-10  Jakub Jelinek  <address@hidden>
+-
+-      PR sanitizer/83987
+-      * omp-low.c (maybe_remove_omp_member_access_dummy_vars,
+-      remove_member_access_dummy_vars): New functions.
+-      (lower_omp_for, lower_omp_taskreg, lower_omp_target,
+-      lower_omp_1, execute_lower_omp): Use them.
+-
+-      PR rtl-optimization/84308
+-      * shrink-wrap.c (spread_components): Release todo vector.
+-
+-      2018-02-09  Jakub Jelinek  <address@hidden>
+-
+-      PR sanitizer/84285
+-      * gcc.c (STATIC_LIBASAN_LIBS, STATIC_LIBTSAN_LIBS,
+-      STATIC_LIBLSAN_LIBS, STATIC_LIBUBSAN_LIBS): Handle -static like
+-      -static-lib*san.
+-
+-      2018-02-09  Marek Polacek  <address@hidden>
+-                  Jakub Jelinek  <address@hidden>
+-
+-      PR c++/83659
+-      * fold-const.c (fold_indirect_ref_1): Use VECTOR_TYPE_P macro.
+-      Formatting fixes.  Verify first that tree_fits_shwi_p (op01).
+-      Sync some changes from cxx_fold_indirect_ref.
+-
+-      2018-02-07  Jakub Jelinek  <address@hidden>
+-
+-      * tree-eh.c (operation_could_trap_helper_p): Ignore honor_trapv for
+-      *DIV_EXPR and *MOD_EXPR.
+-
+-      2018-02-01  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/81661
+-      PR tree-optimization/84117
+-      * tree-eh.h (rewrite_to_non_trapping_overflow): Declare.
+-      * tree-eh.c: Include gimplify.h.
+-      (find_trapping_overflow, replace_trapping_overflow,
+-      rewrite_to_non_trapping_overflow): New functions.
+-      * tree-vect-loop.c: Include tree-eh.h.
+-      (vect_get_loop_niters): Use rewrite_to_non_trapping_overflow.
+-
+-      2018-01-30  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/83986
+-      * sched-deps.c (sched_analyze_insn): For frame related insns, add anti
+-      dependence against last_pending_memory_flush in addition to
+-      pending_jump_insns.
+-
+-      2018-01-27  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/84040
+-      * sched-deps.c (sched_macro_fuse_insns): Return immediately if
+-      !insn_set.
+-
+-      2018-01-24  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/83977
+-      * tree-inline.c (tree_function_versioning): Remove "omp declare simd"
+-      attributes from DECL_ATTRIBUTES (new_decl) without affecting
+-      DECL_ATTRIBUTES (old_decl).
+-
+-      2018-01-20  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/83945
+-      * tree-emutls.c: Include gimplify.h.
+-      (lower_emutls_2): New function.
+-      (lower_emutls_1): If ADDR_EXPR is a gimple invariant and walk_tree
+-      with lower_emutls_2 callback finds some TLS decl in it, unshare_expr
+-      it before further processing.
+-
+-      PR target/83930
+-      * simplify-rtx.c (simplify_binary_operation_1) <case UMOD>: Use
+-      UINTVAL (trueop1) instead of INTVAL (op1).
+-
+-      2018-01-09  Jakub Jelinek  <address@hidden>
+-
+-      PR preprocessor/83722
+-      * gcc.c (try_generate_repro): Pass
+-      &temp_stderr_files[RETRY_ICE_ATTEMPTS - 1] rather than
+-      &temp_stdout_files[RETRY_ICE_ATTEMPTS - 1] as last argument to
+-      do_report_bug.
+-
+-      2018-01-05  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/83605
+-      * gimple-ssa-strength-reduction.c: Include tree-eh.h.
+-      (find_candidates_dom_walker::before_dom_children): Ignore stmts that
+-      can throw.
+-
+-2018-03-01  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      2018-02-26  H.J. Lu  <address@hidden>
+-
+-      PR target/84039
+-      * config/i386/constraints.md (Bs): Replace
+-      ix86_indirect_branch_register with
+-      TARGET_INDIRECT_BRANCH_REGISTER.
+-      (Bw): Likewise.
+-      * config/i386/i386.md (indirect_jump): Likewise.
+-      (tablejump): Likewise.
+-      (*sibcall_memory): Likewise.
+-      (*sibcall_value_memory): Likewise.
+-      Peepholes of indirect call and jump via memory: Likewise.
+-      (*sibcall_GOT_32): Disallowed for TARGET_INDIRECT_BRANCH_REGISTER.
+-      (*sibcall_value_GOT_32): Likewise.
+-      * config/i386/predicates.md (indirect_branch_operand): Likewise.
+-      (GOT_memory_operand): Likewise.
+-      (call_insn_operand): Likewise.
+-      (sibcall_insn_operand): Likewise.
+-      (GOT32_symbol_operand): Likewise.
+-      * config/i386/i386.h (TARGET_INDIRECT_BRANCH_REGISTER): New.
+-
+-2018-03-01  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      2018-02-26  H.J. Lu  <address@hidden>
+-
+-      * config/i386/i386.c (ix86_output_indirect_jmp): Update comments.
+-
+-      2018-02-26  H.J. Lu  <address@hidden>
+-
+-      PR target/84530
+-      * config/i386/i386-protos.h (ix86_output_indirect_jmp): Remove
+-      the bool argument.
+-      (ix86_output_indirect_function_return): New prototype.
+-      (ix86_split_simple_return_pop_internal): Likewise.
+-      * config/i386/i386.c (indirect_return_via_cx): New.
+-      (indirect_return_via_cx_bnd): Likewise.
+-      (indirect_thunk_name): Handle return va CX_REG.
+-      (output_indirect_thunk_function): Create alias for
+-      __x86_return_thunk_[re]cx and __x86_return_thunk_[re]cx_bnd.
+-      (ix86_output_indirect_jmp): Remove the bool argument.
+-      (ix86_output_indirect_function_return): New function.
+-      (ix86_split_simple_return_pop_internal): Likewise.
+-      * config/i386/i386.md (*indirect_jump): Don't pass false
+-      to ix86_output_indirect_jmp.
+-      (*tablejump_1): Likewise.
+-      (simple_return_pop_internal): Change it to define_insn_and_split.
+-      Call ix86_split_simple_return_pop_internal to split it for
+-      -mfunction-return=.
+-      (simple_return_indirect_internal): Call
+-      ix86_output_indirect_function_return instead of
+-      ix86_output_indirect_jmp.
+-
+-2017-03-02  Thomas Schwinge  <address@hidden>
+-
+-      Backport from trunk r256891:
+-      2018-01-19  Cesar Philippidis  <address@hidden>
+-
+-      PR target/83790
+-      * config/nvptx/nvptx.c (output_init_frag): Don't use generic address
+-      spaces for function labels.
+-
+-2018-02-26  Carl Love  <address@hidden>
+-
+-      Backport from mainline: commit 257747 on 2018-02-16.
+-
+-      * config/rs6000/altivec.h: Add builtin names vec_extract4b
+-      vec_insert4b.
+-      * config/rs6000/rs6000-builtin.def: Add INSERT4B and EXTRACT4B
+-      definitions.
+-      * config/rs6000/rs6000-c.c: Add the definitions for
+-      P9V_BUILTIN_VEC_EXTRACT4B and P9V_BUILTIN_VEC_INSERT4B.
+-      * config/rs6000/rs6000.c (altivec_expand_builtin): Add
+-      P9V_BUILTIN_EXTRACT4B and P9V_BUILTIN_INSERT4B case statements.
+-      * config/rs6000/vsx.md: Add define_insn extract4b.  Add define_expand
+-      definition for insert4b and define insn *insert3b_internal.
+-      * doc/extend.texi: Add documentation for vec_extract4b.
+-
+-2018-02-26  Eric Botcazou  <address@hidden>
+-
+-      PR rtl-optimization/83496
+-      * reorg.c (steal_delay_list_from_target): Change REDUNDANT array from
+-      booleans to RTXes.  Call fix_reg_dead_note on every non-null element.
+-      (steal_delay_list_from_fallthrough): Call fix_reg_dead_note on a
+-      redundant insn, if any.
+-      (relax_delay_slots): Likewise.
+-      (update_reg_unused_notes): Rename REDUNDANT_INSN to OTHER_INSN.
+-
+-2018-02-22  Sudakshina Das  <address@hidden>
+-          Bin Cheng  <address@hidden>
+-
+-      Backport from mainline:
+-      2017-12-14  Sudakshina Das  <address@hidden>
+-                  Bin Cheng  <address@hidden>
+-
+-      PR target/81228
+-      * config/aarch64/aarch64.c (aarch64_select_cc_mode): Move LTGT to
+-      CCFPEmode.
+-      * config/aarch64/aarch64-simd.md (vec_cmp<mode><v_cmp_result>): Add
+-      LTGT.
+-
+-2018-02-16  Jozef Lawrynowicz <address@hidden>
+-
+-      PR target/79242
+-      * machmode.def: Define a complex mode for PARTIAL_INT.
+-      * genmodes.c (complex_class): Return MODE_COMPLEX_INT for
+-      MODE_PARTIAL_INT.
+-      * doc/rtl.texi: Document CSPImode.
+-      * config/msp430/msp430.c (msp430_hard_regno_nregs): Add CPSImode
+-      handling.
+-      (msp430_hard_regno_nregs_with_padding): Likewise.
+-
+-2018-02-16  Sudakshina Das  <address@hidden>
+-
+-      Backport from trunk
+-      2018-01-10  Sudakshina Das  <address@hidden>
+-
+-      PR target/82096
+-      * expmed.c (emit_store_flag_force): Swap if const op0
+-      and change VOIDmode to mode of op0.
+-
+-2018-02-16  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/84190
+-      * tree-ssa.c (non_rewritable_mem_ref_base): Do not touch
+-      volatile accesses if the decl isn't volatile.
+-
+-2018-02-15  Michael Meissner  <address@hidden>
+-
+-      Back port from trunk
+-      2018-02-07  Michael Meissner  <address@hidden>
+-
+-      PR target/84154
+-      * config/rs6000/rs6000.md (fix_trunc<SFDF:mode><QHI:mode>2):
+-      Convert from define_expand to be define_insn_and_split.  Rework
+-      float/double/_Float128 conversions to QI/HI/SImode to work with
+-      both ISA 2.07 (power8) or ISA 3.0 (power9).  Fix regression where
+-      conversions to QI/HImode types did a store and then a load to
+-      truncate the value.  For conversions to VSX registers, don't split
+-      the insn, instead emit the code directly.  Use the code iterator
+-      any_fix to combine signed and unsigned conversions.
+-      (fix<uns>_trunc<SFDF:mode>si2_p8): Likewise.
+-      (fixuns_trunc<SFDF:mode><QHI:mode>2): Likewise.
+-      (fix_trunc<IEEE128:mode><QHI:mode>2): Likewise.
+-      (fix<uns>_trunc<SFDF:mode><QHI:mode>2): Likewise.
+-      (fix_<mode>di2_hw): Likewise.
+-      (fixuns_<mode>di2_hw): Likewise.
+-      (fix_<mode>si2_hw): Likewise.
+-      (fixuns_<mode>si2_hw): Likewise.
+-      (fix<uns>_<IEEE128:mode><SDI:mode>2_hw): Likewise.
+-      (fix<uns>_trunc<IEEE128:mode><QHI:mode>2): Likewise.
+-      (fctiw<u>z_<mode>_smallint): Rename fctiw<u>z_<mode>_smallint to
+-      fix<uns>_trunc<SFDF:mode>si2_p8.
+-      (fix_trunc<SFDF:mode><QHI:mode>2_internal): Delete, no longer
+-      used.
+-      (fixuns_trunc<SFDF:mode><QHI:mode>2_internal): Likewise.
+-      (fix<uns>_<mode>_mem): Likewise.
+-      (fctiw<u>z_<mode>_mem): Likewise.
+-      (fix<uns>_<mode>_mem): Likewise.
+-      (fix<uns>_trunc<SFDF:mode><QHSI:mode>2_mem): On ISA 3.0, prevent
+-      the register allocator from doing a direct move to the GPRs to do
+-      a store, and instead use the ISA 3.0 store byte/half-word from
+-      vector register instruction.  For IEEE 128-bit floating point,
+-      also optimize stores of 32-bit ints.
+-      (fix<uns>_trunc<IEEE128:mode><QHSI:mode>2_mem): Likewise.
+-
+-2018-02-15  Aaron Sawdey  <address@hidden>
+-
+-      Back port from mainline
+-      2018-01-30  Aaron Sawdey  <address@hidden>
+-
+-      PR target/83758
+-      * config/rs6000/rs6000.c (rs6000_internal_arg_pointer): Only return
+-      a reg rtx.
+-
+-2018-02-14  Peter Bergner  <address@hidden>
+-
+-      Back port from mainline
+-      2018-02-13  Peter Bergner  <address@hidden>
+-
+-      PR target/84279
+-      * config/rs6000/rs6000.c (mem_operand_gpr): Disallow altivec addresses.
+-
+-2018-02-14  Martin Jambor  <address@hidden>
+-
+-      PR c++/83990
+-      * ipa-prop.c (ipa_modify_call_arguments): Use location of call
+-      statements, also set location of a load to a temporary.
+-
+-2018-02-10  John David Anglin  <address@hidden>
+-
+-      * config/pa/pa.c (hppa_profile_hook): Mark SYMBOL_REF for _mcount as
+-      function label.
+-
+-      Backport from mainline
+-      2018-02-01  Aldy Hernandez  <address@hidden>
+-
+-      PR target/84089
+-      * config/pa/predicates.md (base14_operand): Handle VOIDmode.
+-
+-2018-02-09  Martin Jambor  <address@hidden>
+-
+-      Backport from mainline
+-      2018-02-08  Martin Jambor  <address@hidden>
+-
+-      * hsa-gen.c (get_symbol_for_decl): Set program allocation for
+-      static local variables.
+-
+-2018-02-09  Andreas Krebbel  <address@hidden>
+-
+-      Backport from mainline
+-      2018-02-09  Andreas Krebbel  <address@hidden>
+-
+-      PR target/PR84295
+-      * config/s390/s390.c (s390_set_current_function): Invoke
+-      s390_indirect_branch_settings also if fndecl didn't change.
+-
+-2018-02-08  Iain Sandoe  <address@hidden>
+-
+-      PR target/84113
+-      * config/rs6000/altivec.md (*restore_world): Remove LR use.
+-      * config/rs6000/predicates.md (restore_world_operation): Adjust op
+-      count, remove one USE.
+-
+-2018-02-08  Andreas Krebbel  <address@hidden>
+-
+-      Backport from mainline
+-      2018-02-08  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390-opts.h (enum indirect_branch): Define.
+-      * config/s390/s390-protos.h (s390_return_addr_from_memory)
+-      (s390_indirect_branch_via_thunk)
+-      (s390_indirect_branch_via_inline_thunk): Add function prototypes.
+-      (enum s390_indirect_branch_type): Define.
+-      * config/s390/s390.c (struct s390_frame_layout, struct
+-      machine_function): Remove.
+-      (indirect_branch_prez10thunk_mask, indirect_branch_z10thunk_mask)
+-      (indirect_branch_table_label_no, indirect_branch_table_name):
+-      Define variables.
+-      (INDIRECT_BRANCH_NUM_OPTIONS): Define macro.
+-      (enum s390_indirect_branch_option): Define.
+-      (s390_return_addr_from_memory): New function.
+-      (s390_handle_string_attribute): New function.
+-      (s390_attribute_table): Add new attribute handler.
+-      (s390_execute_label): Handle UNSPEC_EXECUTE_JUMP patterns.
+-      (s390_indirect_branch_via_thunk): New function.
+-      (s390_indirect_branch_via_inline_thunk): New function.
+-      (s390_function_ok_for_sibcall): When jumping via thunk disallow
+-      sibling call optimization for non z10 compiles.
+-      (s390_emit_call): Force indirect branch target to be a single
+-      register.  Add r1 clobber for non-z10 compiles.
+-      (s390_emit_epilogue): Emit return jump via return_use expander.
+-      (s390_reorg): Handle JUMP_INSNs as execute targets.
+-      (s390_option_override_internal): Perform validity checks for the
+-      new command line options.
+-      (s390_indirect_branch_attrvalue): New function.
+-      (s390_indirect_branch_settings): New function.
+-      (s390_set_current_function): Invoke s390_indirect_branch_settings.
+-      (s390_output_indirect_thunk_function):  New function.
+-      (s390_code_end): Implement target hook.
+-      (s390_case_values_threshold): Implement target hook.
+-      (TARGET_ASM_CODE_END, TARGET_CASE_VALUES_THRESHOLD): Define target
+-      macros.
+-      * config/s390/s390.h (struct s390_frame_layout)
+-      (struct machine_function): Move here from s390.c.
+-      (TARGET_INDIRECT_BRANCH_NOBP_RET)
+-      (TARGET_INDIRECT_BRANCH_NOBP_JUMP)
+-      (TARGET_INDIRECT_BRANCH_NOBP_JUMP_THUNK)
+-      (TARGET_INDIRECT_BRANCH_NOBP_JUMP_INLINE_THUNK)
+-      (TARGET_INDIRECT_BRANCH_NOBP_CALL)
+-      (TARGET_DEFAULT_INDIRECT_BRANCH_TABLE)
+-      (TARGET_INDIRECT_BRANCH_THUNK_NAME_EXRL)
+-      (TARGET_INDIRECT_BRANCH_THUNK_NAME_EX)
+-      (TARGET_INDIRECT_BRANCH_TABLE): Define macros.
+-      * config/s390/s390.md (UNSPEC_EXECUTE_JUMP)
+-      (INDIRECT_BRANCH_THUNK_REGNUM): Define constants.
+-      (mnemonic attribute): Add values which aren't recognized
+-      automatically.
+-      ("*cjump_long", "*icjump_long", "*basr", "*basr_r"): Disable
+-      pattern for branch conversion.  Fix mnemonic attribute.
+-      ("*c<code>", "*sibcall_br", "*sibcall_value_br", "*return"): Emit
+-      indirect branch via thunk if requested.
+-      ("indirect_jump", "<code>"): Expand patterns for branch conversion.
+-      ("*indirect_jump"): Disable for branch conversion using out of
+-      line thunks.
+-      ("indirect_jump_via_thunk<mode>_z10")
+-      ("indirect_jump_via_thunk<mode>")
+-      ("indirect_jump_via_inlinethunk<mode>_z10")
+-      ("indirect_jump_via_inlinethunk<mode>", "*casesi_jump")
+-      ("casesi_jump_via_thunk<mode>_z10", "casesi_jump_via_thunk<mode>")
+-      ("casesi_jump_via_inlinethunk<mode>_z10")
+-      ("casesi_jump_via_inlinethunk<mode>", "*basr_via_thunk<mode>_z10")
+-      ("*basr_via_thunk<mode>", "*basr_r_via_thunk_z10")
+-      ("*basr_r_via_thunk", "return<mode>_prez10"): New pattern.
+-      ("*indirect2_jump"): Disable for branch conversion.
+-      ("casesi_jump"): Turn into expander and expand patterns for branch
+-      conversion.
+-      ("return_use"): New expander.
+-      ("*return"): Emit return via thunk and rename it to ...
+-      ("*return<mode>"): ... this one.
+-      * config/s390/s390.opt: Add new options and and enum for the
+-      option values.
+-
+-2018-02-08  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/84233
+-      * tree-ssa-phiprop.c (propagate_with_phi): Use separate
+-      changed flag instead of boguously re-using phi_inserted.
+-
+-2018-02-07  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline
+-      2018-02-06  Bill Schmidt  <address@hidden>
+-
+-      * config/rs6000/rs6000.c (rs6000_option_override_internal):
+-      Display warning message for -mno-speculate-indirect-jumps.
+-
+-2018-02-05  Rainer Orth  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-30  Rainer Orth  <address@hidden>
+-
+-      PR bootstrap/84017
+-      * configure.ac (gcc_cv_as_shf_merge): Disable on Solaris 10/x86.
+-      * configure: Regenerate.
+-
+-2018-02-05  Peter Bergner  <address@hidden>
+-
+-      Back port from mainline
+-      2018-02-01  Peter Bergner  <address@hidden>
+-
+-      PR target/56010
+-      PR target/83743
+-      * config/rs6000/driver-rs6000.c: #include "diagnostic.h".
+-      #include "opts.h".
+-      (rs6000_supported_cpu_names): New static variable.
+-      (linux_cpu_translation_table): Likewise.
+-      (elf_platform) <cpu>: Define new static variable and use it.
+-      Translate kernel AT_PLATFORM name to canonical name if needed.
+-      Error if platform name is unknown.
+-
+-2018-02-02  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      2018-02-02  H.J. Lu  <address@hidden>
+-
+-      * config/i386/i386.c (ix86_output_function_return): Pass
+-      INVALID_REGNUM, instead of -1, as invalid register number to
+-      indirect_thunk_name and output_indirect_thunk.
+-
+-2018-02-01  Uros Bizjak  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-31  Uros Bizjak  <address@hidden>
+-
+-      PR rtl-optimization/84123
+-      * combine.c (change_zero_ext): Check if hard register satisfies
+-      can_change_dest_mode before calling gen_lowpart_SUBREG.
+-
+-2018-02-01  Renlin Li  <address@hidden>
+-
+-      Backport from mainline
+-      2018-02-01  Renlin Li  <address@hidden>
+-
+-      PR target/83370
+-      * config/aarch64/aarch64.c (aarch64_class_max_nregs): Handle
+-      TAILCALL_ADDR_REGS.
+-      (aarch64_register_move_cost): Likewise.
+-      * config/aarch64/aarch64.h (reg_class): Rename CALLER_SAVE_REGS to
+-      TAILCALL_ADDR_REGS.
+-      (REG_CLASS_NAMES): Likewise.
+-      (REG_CLASS_CONTENTS): Rename CALLER_SAVE_REGS to
+-      TAILCALL_ADDR_REGS. Remove IP registers.
+-      * config/aarch64/aarch64.md (Ucs): Update register constraint.
+-
+-2018-02-01  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2017-11-02  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/82795
+-      * tree-if-conv.c (predicate_mem_writes): Remove bogus assert.
+-
+-2018-01-31  Richard Biener <address@hidden>
+-          Kelvin Nilsen  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-29  Richard Biener <address@hidden>
+-                  Kelvin Nilsen  <address@hidden>
+-
+-      PR bootstrap/80867
+-      * tree-vect-stmts.c (vectorizable_call): Don't call
+-      targetm.vectorize_builtin_md_vectorized_function if callee is
+-      NULL.
+-
+-2018-01-31  Eric Botcazou  <address@hidden>
+-
+-      PR rtl-optimization/84071
+-      * doc/tm.texi.in (WORD_REGISTER_OPERATIONS): Add explicit case.
+-      * doc/tm.texi: Regenerate.
+-
+-2018-01-31  Eric Botcazou  <address@hidden>
+-
+-      PR rtl-optimization/84071
+-      * combine.c (record_dead_and_set_regs_1): Record the source unmodified
+-      for a paradoxical SUBREG on a WORD_REGISTER_OPERATIONS target.
+-
+-2018-01-29  Joseph Myers  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-24  Joseph Myers  <address@hidden>
+-
+-      PR target/68467
+-      * config/m68k/m68k.c (m68k_promote_function_mode): New function.
+-      (TARGET_PROMOTE_FUNCTION_MODE): New macro.
+-
+-2018-01-29  Uros Bizjak  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-26  Uros Bizjak  <address@hidden>
+-
+-      PR target/81763
+-      * config/i386/i386.md (*andndi3_doubleword): Add earlyclobber
+-      to (=&r,r,rm) alternative. Add (=r,0,rm) and (=r,r,0) alternatives.
+-
+-2018-01-29  Alan Modra  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-26  Alan Modra  <address@hidden>
+-      PR target/84033
+-      * config/rs6000/rs6000.c (rtx_is_swappable_p): Exclude
+-      UNSPEC_VBPERMQ.
+-
+-2018-01-27  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-27  H.J. Lu  <address@hidden>
+-
+-      * doc/invoke.texi: Replace -mfunction-return==@var{choice} with
+-      -mfunction-return=@var{choice}.
+-
+-2018-01-27  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-23  H.J. Lu  <address@hidden>
+-
+-      PR target/83905
+-      * config/i386/i386.c (ix86_expand_prologue): Use cost reference
+-      of struct ix86_frame.
+-      (ix86_expand_epilogue): Likewise.  Add a local variable for
+-      the reg_save_offset field in struct ix86_frame.
+-
+-2018-01-26  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/83985
+-      * dce.c (deletable_insn_p): Return false for separate shrink wrapping
+-      REG_CFA_RESTORE insns.
+-      (delete_unmarked_insns): Don't ignore separate shrink wrapping
+-      REG_CFA_RESTORE insns here.
+-
+-2018-01-25  Uros Bizjak  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-17  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/i386.c (indirect_thunk_name): Declare regno
+-      as unsigned int.  Compare regno with INVALID_REGNUM.
+-      (output_indirect_thunk): Ditto.
+-      (output_indirect_thunk_function): Ditto.
+-      (ix86_code_end): Declare regno as unsigned int.  Use INVALID_REGNUM
+-      in the call to output_indirect_thunk_function.
+-
+-2018-01-25  Michael Meissner  <address@hidden>
+-
+-      Back port from trunk
+-      2018-01-22  Michael Meissner  <address@hidden>
+-
+-      PR target/83862
+-      * config/rs6000/rs6000-protos.h (rs6000_split_signbit): Delete,
+-      no longer used.
+-      * config/rs6000/rs6000.c (rs6000_split_signbit): Likewise.
+-      * config/rs6000/rs6000.md (signbit<mode>2): Change code for IEEE
+-      128-bit to produce an UNSPEC move to get the double word with the
+-      signbit and then a shift directly to do signbit.
+-      (signbit<mode>2_dm): Replace old IEEE 128-bit signbit
+-      implementation with a new version that just does either a direct
+-      move or a regular move.  Move memory interface to separate insns.
+-      Move insns so they are next to the expander.
+-      (signbit<mode>2_dm_mem_be): New combiner insns to combine load
+-      with signbit move.  Split big and little endian case.
+-      (signbit<mode>2_dm_mem_le): Likewise.
+-      (signbit<mode>2_dm_<su>ext): Delete, no longer used.
+-      (signbit<mode>2_dm2): Likewise.
+-
+-2018-01-25  Peter Bergner  <address@hidden>
+-
+-      Back port from mainline
+-      2018-01-10  Peter Bergner  <address@hidden>
+-
+-      PR target/83399
+-      * config/rs6000/rs6000.c (print_operand) <'y'>: Use
+-      VECTOR_MEM_ALTIVEC_OR_VSX_P.
+-      * config/rs6000/vsx.md (*vsx_le_perm_load_<mode> for VSX_D): Use
+-      indexed_or_indirect_operand predicate.
+-      (*vsx_le_perm_load_<mode> for VSX_W): Likewise.
+-      (*vsx_le_perm_load_v8hi): Likewise.
+-      (*vsx_le_perm_load_v16qi): Likewise.
+-      (*vsx_le_perm_store_<mode> for VSX_D): Likewise.
+-      (*vsx_le_perm_store_<mode> for VSX_W): Likewise.
+-      (*vsx_le_perm_store_v8hi): Likewise.
+-      (*vsx_le_perm_store_v16qi): Likewise.
+-      (eight unnamed splitters): Likewise.
+-
+-2018-01-25  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-02  Bill Schmidt  <address@hidden>
+-
+-      * config/rs6000/rs6000-p8swap.c (swap_feeds_both_load_and_store):
+-      New function.
+-      (rs6000_analyze_swaps): Mark a web unoptimizable if it contains a
+-      swap associated with both a load and a store.
+-
+-2018-01-25  Richard Biener  <address@hidden>
+-
+-      * BASE-VER: Increment to 7.3.1.
+-
+-2018-01-25  Release Manager
+-
+-      * GCC 7.3.0 released.
+-
+-2018-01-23  Eric Botcazou  <address@hidden>
+-
+-      PR rtl-optimization/81443
+-      * rtlanal.c (num_sign_bit_copies1) <SUBREG>: Do not propagate results
+-      from inner REGs to paradoxical SUBREGs.
+-
+-2018-01-21  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-21  Bill Schmidt  <address@hidden>
+-                  David Edelsohn  <address@hidden>
+-
+-      PR target/83946
+-      * config/rs6000/rs6000.md (*call_indirect_nonlocal_sysv<mode>):
+-      Change "crset eq" to "crset 2".
+-      (*call_value_indirect_nonlocal_sysv<mode>): Likewise.
+-      (*call_indirect_aix<mode>_nospec): Likewise.
+-      (*call_value_indirect_aix<mode>_nospec): Likewise.
+-      (*call_indirect_elfv2<mode>_nospec): Likewise.
+-      (*call_value_indirect_elfv2<mode>_nospec): Likewise.
+-      (*sibcall_nonlocal_sysv<mode>): Change "crset eq" to "crset 2";
+-      change assembly output from . to $.
+-      (*sibcall_value_nonlocal_sysv<mode>): Likewise.
+-      (indirect_jump<mode>_nospec): Change assembly output from . to $.
+-      (*tablejump<mode>_internal1_nospec): Likewise.
+-
+-2018-01-21  Oleg Endo  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-21  Oleg Endo  <address@hidden>
+-
+-      PR target/80870
+-      * config/sh/sh_optimize_sett_clrt.cc:
+-      Use INCLUDE_ALGORITHM and INCLUDE_VECTOR instead of direct includes.
+-
+-2018-01-17  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-16  Bill Schmidt  <address@hidden>
+-
+-      * config/rs6000/rs6000.c (rs6000_opt_vars): Add entry for
+-      -mspeculate-indirect-jumps.
+-      * config/rs6000/rs6000.md (*call_indirect_elfv2<mode>): Disable
+-      for -mno-speculate-indirect-jumps.
+-      (*call_indirect_elfv2<mode>_nospec): New define_insn.
+-      (*call_value_indirect_elfv2<mode>): Disable for
+-      -mno-speculate-indirect-jumps.
+-      (*call_value_indirect_elfv2<mode>_nospec): New define_insn.
+-      (indirect_jump): Emit different RTL for
+-      -mno-speculate-indirect-jumps.
+-      (*indirect_jump<mode>): Disable for
+-      -mno-speculate-indirect-jumps.
+-      (*indirect_jump<mode>_nospec): New define_insn.
+-      (tablejump): Emit different RTL for
+-      -mno-speculate-indirect-jumps.
+-      (tablejumpsi): Disable for -mno-speculate-indirect-jumps.
+-      (tablejumpsi_nospec): New define_expand.
+-      (tablejumpdi): Disable for -mno-speculate-indirect-jumps.
+-      (tablejumpdi_nospec): New define_expand.
+-      (*tablejump<mode>_internal1): Disable for
+-      -mno-speculate-indirect-jumps.
+-      (*tablejump<mode>_internal1_nospec): New define_insn.
+-      * config/rs6000/rs6000.opt (mspeculate-indirect-jumps): New
+-      option.
+-
+-      Backport from mainline
+-      2018-01-17  Bill Schmidt  <address@hidden>
+-
+-      * config/rs6000/rs6000.md (*call_indirect_nonlocal_sysv<mode>):
+-      Generate different code for -mno-speculate-indirect-jumps.
+-      (*call_value_indirect_nonlocal_sysv<mode>): Likewise.
+-      (*call_indirect_aix<mode>): Disable for
+-      -mno-speculate-indirect-jumps.
+-      (*call_indirect_aix<mode>_nospec): New define_insn.
+-      (*call_value_indirect_aix<mode>): Disable for
+-      -mno-speculate-indirect-jumps.
+-      (*call_value_indirect_aix<mode>_nospec): New define_insn.
+-      (*sibcall_nonlocal_sysv<mode>): Generate different code for
+-      -mno-speculate-indirect-jumps.
+-      (*sibcall_value_nonlocal_sysv<mode>): Likewise.
+-
+-2018-01-17  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2017-12-18  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/81877
+-      * tree-ssa-loop-im.c (ref_indep_loop_p): Remove safelen parameters.
+-      (outermost_indep_loop): Adjust.
+-      (ref_indep_loop_p_1): Likewise.  Remove safelen handling again.
+-      (can_sm_ref_p): Adjust.
+-
+-      2017-12-08  Richard Biener  <address@hidden>
+-
+-      PR middle-end/81782
+-      * tree-ssa-uninit.c (warn_uninitialized_vars): Properly
+-      handle accesses outside of zero-sized vars.
+-
+-2018-01-17  Kyrylo Tkachov  <address@hidden>
+-
+-      Backport from mailine
+-      2018-01-15  Kyrylo Tkachov  <address@hidden>
+-
+-      PR target/83687
+-      * config/arm/iterators.md (VF): New mode iterator.
+-      * config/arm/neon.md (neon_vabd<mode>_2): Use the above.
+-      Remove integer-related logic from pattern.
+-      (neon_vabd<mode>_3): Likewise.
+-
+-2018-01-17  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-04  Martin Liska  <address@hidden>
+-
+-      PR ipa/82352
+-      * ipa-icf.c (sem_function::merge): Do not cross comdat boundary.
+-
+-2018-01-17  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-03  Martin Liska  <address@hidden>
+-
+-      PR ipa/83549
+-      * cif-code.def (VARIADIC_THUNK): New enum value.
+-      * ipa-inline-analysis.c (compute_inline_parameters):
+-      Do not inline variadic thunks.
+-
+-2018-01-17  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-12-27  Martin Liska  <address@hidden>
+-
+-      PR tree-optimization/83552
+-      * tree-ssa-strlen.c (fold_strstr_to_strncmp): Assign result
+-      of get_string_lenth to a SSA_NAME if not a GIMPLE value.
+-
+-2018-01-16  Segher Boessenkool  <address@hidden>
+-
+-      Backport from mainline
+-      2017-12-18  Segher Boessenkool  <address@hidden>
+-
+-      PR rtl-optimization/83424
+-      * rtlanal.c (dead_or_set_regno_p): Handle CLOBBER just like SET.
+-
+-2018-01-16  H.J. Lu  <address@hidden>
+-
+-      * config/i386/i386.c (ix86_expand_prologue): Don't use reference
+-      of struct ix86_frame.
+-      (ix86_expand_epilogue): Likewise.
+-
+-2018-01-16  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-14  H.J. Lu  <address@hidden>
+-
+-      * config/i386/i386.c (ix86_set_indirect_branch_type): Disallow
+-      -mcmodel=large with -mindirect-branch=thunk,
+-      -mindirect-branch=thunk-extern, -mfunction-return=thunk and
+-      -mfunction-return=thunk-extern.
+-      * doc/invoke.texi: Document -mcmodel=large is incompatible with
+-      -mindirect-branch=thunk, -mindirect-branch=thunk-extern,
+-      -mfunction-return=thunk and -mfunction-return=thunk-extern.
+-
+-2018-01-16  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-14  H.J. Lu  <address@hidden>
+-
+-      * config/i386/i386.c (print_reg): Print the name of the full
+-      integer register without '%'.
+-      (ix86_print_operand): Handle 'V'.
+-       * doc/extend.texi: Document 'V' modifier.
+-
+-2018-01-16  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-15  H.J. Lu  <address@hidden>
+-
+-      * config/i386/predicates.md (indirect_branch_operand): Rewrite
+-      ix86_indirect_branch_register logic.
+-
+-      Backport from mainline
+-      2018-01-15  H.J. Lu  <address@hidden>
+-
+-      * config/i386/constraints.md (Bs): Update
+-      ix86_indirect_branch_register check.  Don't check
+-      ix86_indirect_branch_register with GOT_memory_operand.
+-      (Bw): Likewise.
+-      * config/i386/predicates.md (GOT_memory_operand): Don't check
+-      ix86_indirect_branch_register here.
+-      (GOT32_symbol_operand): Likewise.
+-
+-      Backport from mainline
+-      2018-01-15  H.J. Lu  <address@hidden>
+-
+-      * config/i386/predicates.md (constant_call_address_operand):
+-      Rewrite ix86_indirect_branch_register logic.
+-      (sibcall_insn_operand): Likewise.
+-
+-      Backport from mainline
+-      2018-01-15  H.J. Lu  <address@hidden>
+-
+-      * config/i386/constraints.md (Bs): Replace
+-      ix86_indirect_branch_thunk_register with
+-      ix86_indirect_branch_register.
+-      (Bw): Likewise.
+-      * config/i386/i386.md (indirect_jump): Likewise.
+-      (tablejump): Likewise.
+-      (*sibcall_memory): Likewise.
+-      (*sibcall_value_memory): Likewise.
+-      Peepholes of indirect call and jump via memory: Likewise.
+-      * config/i386/i386.opt: Likewise.
+-      * config/i386/predicates.md (indirect_branch_operand): Likewise.
+-      (GOT_memory_operand): Likewise.
+-      (call_insn_operand): Likewise.
+-      (sibcall_insn_operand): Likewise.
+-      (GOT32_symbol_operand): Likewise.
+-
+-      Backport from mainline
+-      2018-01-14  H.J. Lu  <address@hidden>
+-
+-      * config/i386/constraints.md (Bs): Disallow memory operand for
+-      -mindirect-branch-register.
+-      (Bw): Likewise.
+-      * config/i386/predicates.md (indirect_branch_operand): Likewise.
+-      (GOT_memory_operand): Likewise.
+-      (call_insn_operand): Likewise.
+-      (sibcall_insn_operand): Likewise.
+-      (GOT32_symbol_operand): Likewise.
+-      * config/i386/i386.md (indirect_jump): Call convert_memory_address
+-      for -mindirect-branch-register.
+-      (tablejump): Likewise.
+-      (*sibcall_memory): Likewise.
+-      (*sibcall_value_memory): Likewise.
+-      Disallow peepholes of indirect call and jump via memory for
+-      -mindirect-branch-register.
+-      (*call_pop): Replace m with Bw.
+-      (*call_value_pop): Likewise.
+-      (*sibcall_pop_memory): Replace m with Bs.
+-      * config/i386/i386.opt (mindirect-branch-register): New option.
+-      * doc/invoke.texi: Document -mindirect-branch-register option.
+-
+-2018-01-16  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-15  H.J. Lu  <address@hidden>
+-
+-      PR target/83839
+-      * config/i386/i386.c (output_indirect_thunk_function): Use
+-      ASM_OUTPUT_LABEL, instead of ASM_OUTPUT_DEF, for TARGET_MACHO
+-      for  __x86.return_thunk.
+-
+-      Backport from mainline
+-      2018-01-14  H.J. Lu  <address@hidden>
+-
+-      * config/i386/i386-protos.h (ix86_output_function_return): New.
+-      * config/i386/i386.c (ix86_set_indirect_branch_type): Also
+-      set function_return_type.
+-      (indirect_thunk_name): Add ret_p to indicate thunk for function
+-      return.
+-      (output_indirect_thunk_function): Pass false to
+-      indirect_thunk_name.
+-      (ix86_output_indirect_branch_via_reg): Likewise.
+-      (ix86_output_indirect_branch_via_push): Likewise.
+-      (output_indirect_thunk_function): Create alias for function
+-      return thunk if regno < 0.
+-      (ix86_output_function_return): New function.
+-      (ix86_handle_fndecl_attribute): Handle function_return.
+-      (ix86_attribute_table): Add function_return.
+-      * config/i386/i386.h (machine_function): Add
+-      function_return_type.
+-      * config/i386/i386.md (simple_return_internal): Use
+-      ix86_output_function_return.
+-      (simple_return_internal_long): Likewise.
+-      * config/i386/i386.opt (mfunction-return=): New option.
+-      (indirect_branch): Mention -mfunction-return=.
+-      * doc/extend.texi: Document function_return function attribute.
+-      * doc/invoke.texi: Document -mfunction-return= option.
+-
+-2018-01-16  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-14  H.J. Lu  <address@hidden>
+-
+-      * config/i386/i386-opts.h (indirect_branch): New.
+-      * config/i386/i386-protos.h (ix86_output_indirect_jmp): Likewise.
+-      * config/i386/i386.c (ix86_using_red_zone): Disallow red-zone
+-      with local indirect jump when converting indirect call and jump.
+-      (ix86_set_indirect_branch_type): New.
+-      (ix86_set_current_function): Call ix86_set_indirect_branch_type.
+-      (indirectlabelno): New.
+-      (indirect_thunk_needed): Likewise.
+-      (indirect_thunk_bnd_needed): Likewise.
+-      (indirect_thunks_used): Likewise.
+-      (indirect_thunks_bnd_used): Likewise.
+-      (INDIRECT_LABEL): Likewise.
+-      (indirect_thunk_name): Likewise.
+-      (output_indirect_thunk): Likewise.
+-      (output_indirect_thunk_function): Likewise.
+-      (ix86_output_indirect_branch_via_reg): Likewise.
+-      (ix86_output_indirect_branch_via_push): Likewise.
+-      (ix86_output_indirect_branch): Likewise.
+-      (ix86_output_indirect_jmp): Likewise.
+-      (ix86_code_end): Call output_indirect_thunk_function if needed.
+-      (ix86_output_call_insn): Call ix86_output_indirect_branch if
+-      needed.
+-      (ix86_handle_fndecl_attribute): Handle indirect_branch.
+-      (ix86_attribute_table): Add indirect_branch.
+-      * config/i386/i386.h (machine_function): Add indirect_branch_type
+-      and has_local_indirect_jump.
+-      * config/i386/i386.md (indirect_jump): Set has_local_indirect_jump
+-      to true.
+-      (tablejump): Likewise.
+-      (*indirect_jump): Use ix86_output_indirect_jmp.
+-      (*tablejump_1): Likewise.
+-      (simple_return_indirect_internal): Likewise.
+-      * config/i386/i386.opt (mindirect-branch=): New option.
+-      (indirect_branch): New.
+-      (keep): Likewise.
+-      (thunk): Likewise.
+-      (thunk-inline): Likewise.
+-      (thunk-extern): Likewise.
+-      * doc/extend.texi: Document indirect_branch function attribute.
+-      * doc/invoke.texi: Document -mindirect-branch= option.
+-
+-2018-01-16  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2017-09-29  Vladimir Makarov  <address@hidden>
+-
+-      PR target/81481
+-      * ira-costs.c (scan_one_insn): Don't take into account PIC equiv
+-      with a symbol for LRA.
+-
+-2018-01-15  Segher Boessenkool  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-10  Segher Boessenkool  <address@hidden>
+-
+-      PR target/83629
+-      * config/rs6000/rs6000.md (load_toc_v4_PIC_2, load_toc_v4_PIC_3b,
+-      load_toc_v4_PIC_3c): Wrap const term in CONST RTL.
+-
+-2018-01-15  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      PR target/83330
+-      * config/i386/i386.c (ix86_function_arg_advance): Set
+-      outgoing_args_on_stack to true if there are outgoing arguments
+-      on stack.
+-      (ix86_function_arg): Likewise.
+-      (ix86_compute_frame_layout): Align stack frame if argument is
+-      passed on stack.
+-      * config/i386/i386.h (machine_function): Add
+-      outgoing_args_on_stack.
+-
+-2018-01-15  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      * config/i386/i386.c (ix86_expand_prologue): Use reference of
+-      struct ix86_frame.
+-      (ix86_expand_epilogue): Likewise.
+-
+-2018-01-15  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      2017-11-06  H.J. Lu  <address@hidden>
+-
+-      * config/i386/i386.c (ix86_can_use_return_insn_p): Use reference
+-      of struct ix86_frame.
+-      (ix86_initial_elimination_offset): Likewise.
+-      (ix86_expand_split_stack_prologue): Likewise.
+-
+-2018-01-15  H.J. Lu  <address@hidden>
+-
+-      Backport from mainline
+-      2017-06-01  Bernd Edlinger  <address@hidden>
+-
+-      * config/i386/i386.c (ix86_frame): Moved to ...
+-      * config/i386/i386.h (ix86_frame): Here.
+-      (machine_function): Add frame.
+-      * config/i386/i386.c (ix86_compute_frame_layout): Repace the
+-      frame argument with &cfun->machine->frame.
+-      (ix86_can_use_return_insn_p): Don't pass &frame to
+-      ix86_compute_frame_layout.  Copy frame from cfun->machine->frame.
+-      (ix86_can_eliminate): Likewise.
+-      (ix86_expand_prologue): Likewise.
+-      (ix86_expand_epilogue): Likewise.
+-      (ix86_expand_split_stack_prologue): Likewise.
+-
+-2018-01-14  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-08  Bill Schmidt  <address@hidden>
+-
+-      PR target/83677
+-      * config/rs6000/altivec.md (*altivec_vpermr_<mode>_internal):
+-      Reverse order of second and third operands in first alternative.
+-      * config/rs6000/rs6000.c (rs6000_expand_vector_set): Reverse order
+-      of first and second elements in UNSPEC_VPERMR vector.
+-      (altivec_expand_vec_perm_le): Likewise.
+-
+-2018-01-14  Uros Bizjak  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-12  Uros Bizjak  <address@hidden>
+-
+-      PR target/83628
+-      * config/alpha/alpha.md (*saddsi_1): New insn_ans_split pattern.
+-      (*saddl_se_1): Ditto.
+-      (*ssubsi_1): Ditto.
+-      (*ssubl_se_1): Ditto.
+-
+-      Backport from mainline
+-      2018-01-09  Uros Bizjak  <address@hidden>
+-
+-      PR target/83628
+-      * combine.c (force_int_to_mode) <case ASHIFT>: Use mode instead of
+-      op_mode in the force_to_mode call.
+-
+-2018-01-12  Oleg Endo  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-12  Oleg Endo  <address@hidden>
+-
+-      PR target/81819
+-      * config/rx/rx.c (rx_is_restricted_memory_address):
+-      Handle SUBREG case.
+-
+-2018-01-12  Eric Botcazou  <address@hidden>
+-
+-      PR rtl-optimization/83565
+-      * rtlanal.c (nonzero_bits1): On WORD_REGISTER_OPERATIONS machines, do
+-      not extend the result to a larger mode for rotate operations.
+-      (num_sign_bit_copies1): Likewise.
+-
+-2018-01-12  Rainer Orth  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-04  Rainer Orth  <address@hidden>
+-
+-      PR bootstrap/81926
+-      * cgraphunit.c (symbol_table::compile): Switch to text_section
+-      before calling assembly_start debug hook.
+-
+-2018-01-11  Oleg Endo  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-11  Oleg Endo  <address@hidden>
+-
+-      PR target/81821
+-      * config/rx/rx.md (BW): New mode attribute.
+-      (sync_lock_test_and_setsi): Add mode suffix to insn output.
+-
+-2018-01-09  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-08  Richard Biener  <address@hidden>
+-
+-      PR middle-end/83713
+-      * convert.c (do_narrow): Properly guard TYPE_OVERFLOW_WRAPS checks.
+-
+-2018-01-08  Jim Wilson  <address@hidden>
+-
+-      Backport from mainline
+-      2018-01-08  Monk Chiang  <address@hidden>
+-                  Kito Cheng  <address@hidden>
+-
+-      * config/riscv/riscv.c (machine_function::is_leaf): Remove field.
+-      (riscv_leaf_function_p): Delete.
+-      (riscv_function_ok_for_sibcall): Return false when TARGET_SAVE_RESTORE.
+-
+-2018-01-08  Kyrylo Tkachov  <address@hidden>
+-
+-      Backport from mainline
+-      2017-12-20  Kyrylo Tkachov  <address@hidden>
+-
+-      PR target/82975
+-      * config/arm/arm.h (TEST_REGNO): Adjust comment as expected in r255830.
+-
+-2018-01-08  Sebastian Huber  <address@hidden>
+-
+-      Backported from mainline
+-      2018-01-05  Sebastian Huber  <address@hidden>
+-
+-      * config.gcc (epiphany-*-elf*): Add (epiphany-*-rtems*) configuration.
+-      * config/epiphany/rtems.h: New file.
+-
+-2018-01-04  Uros Bizjak  <address@hidden>
+-
+-      PR target/83628
+-      * config/alpha/alpha.md (*sadd<modesuffix>): Use ASHIFT
+-      instead of MULT rtx.  Update all corresponding splitters.
+-      (*saddl_se): Ditto.
+-      (*ssub<modesuffix>): Ditto.
+-      (*ssubl_se): Ditto.
+-      (*cmp_sadd_di): Update split patterns.
+-      (*cmp_sadd_si): Ditto.
+-      (*cmp_sadd_sidi): Ditto.
+-      (*cmp_ssub_di): Ditto.
+-      (*cmp_ssub_si): Ditto.
+-      (*cmp_ssub_sidi): Ditto.
+-      * config/alpha/predicates.md (const23_operand): New predicate.
+-      * config/alpha/alpha.c (alpha_rtx_costs) [PLUS, MINUS]:
+-      Look for ASHIFT, not MULT inner operand.
+-      (alpha_split_conditional_move): Update for *sadd<modesuffix> change.
+-
+-2018-01-02  Andrew Waterman  <address@hidden>
+-
+-      * config/riscv/linux.h (ICACHE_FLUSH_FUNC): New.
+-      * config/riscv/riscv.md (clear_cache): Use it.
+-
+-2018-01-01  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/83608
+-      * expr.c (store_expr_with_bounds): Use simplify_gen_subreg instead of
+-      convert_modes if target mode has the right side, but different mode
+-      class.
+-
+-      PR middle-end/83609
+-      * expr.c (expand_assignment): Fix up a typo in simplify_gen_subreg
+-      last argument when extracting from CONCAT.  If either from_real or
+-      from_imag is NULL, use expansion through memory.  If result is not
+-      a CONCAT and simplify_gen_subreg fails, try to simplify_gen_subreg
+-      the parts directly to inner mode, if even that fails, use expansion
+-      through memory.
+-
+-      PR middle-end/83623
+-      * expmed.c (expand_shift_1): For 2-byte rotates by BITS_PER_UNIT,
+-      check for bswap in mode rather than HImode and use that in expand_unop
+-      too.
+-
+-2017-12-23  Jakub Jelinek  <address@hidden>
+-
+-      PR c++/83553
+-      * fold-const.c (struct contains_label_data): New type.
+-      (contains_label_1): Return non-NULL even for CASE_LABEL_EXPR, unless
+-      inside of a SWITCH_BODY seen during the walk.
+-      (contains_label_p): Use walk_tree instead of
+-      walk_tree_without_duplicates, prepare data for contains_label_1 and
+-      provide own pset.
+-
+-2017-12-22  Martin Jambor  <address@hidden>
+-
+-      PR lto/82027
+-      * lto-cgraph.c (output_cgraph_opt_summary_p): Also check former
+-      clones.
+-
+-2017-12-22  Jakub Jelinek  <address@hidden>
+-
+-      Backported from mainline
+-      2017-12-21  Jakub Jelinek  <address@hidden>
+-
+-      PR c/83448
+-      * gimple-ssa-sprintf.c (maybe_warn): Don't call set_caret_index
+-      if navail is >= dir.len.
+-
+-      PR rtl-optimization/80747
+-      PR rtl-optimization/83512
+-      * cfgrtl.c (force_nonfallthru_and_redirect): When splitting
+-      succ edge from ENTRY, copy partition from e->dest to the newly
+-      created bb.
+-      * bb-reorder.c (reorder_basic_blocks_simple): If last_tail is
+-      ENTRY, use BB_PARTITION of its successor block as current_partition.
+-      Don't copy partition when splitting succ edge from ENTRY.
+-
+-      PR tree-optimization/83523
+-      * tree-ssa-math-opts.c (is_widening_mult_p): Return false if
+-      for INTEGER_TYPE TYPE_OVERFLOW_TRAPS.
+-      (convert_mult_to_fma): Likewise.
+-
+-      PR tree-optimization/83521
+-      * tree-ssa-phiopt.c (factor_out_conditional_conversion): Use
+-      gimple_build_assign without code on result of
+-      fold_build1 (VIEW_CONVERT_EXPR, ...), as it might not create
+-      a VIEW_CONVERT_EXPR.
+-
+-      2017-12-19  Jakub Jelinek  <address@hidden>
+-
+-      PR ipa/82801
+-      PR ipa/83346
+-      * ipa-inline.c (flatten_remove_node_hook): New function.
+-      (ipa_inline): Keep only nodes with flatten attribute at the end of
+-      the array in the order from ipa_reverse_postorder, only walk that
+-      portion of array for flattening, if there is more than one such
+-      node, temporarily register a removal hook and ignore removed nodes.
+-
+-2017-12-21  Uros Bizjak  <address@hidden>
+-
+-      PR target/83467
+-      * config/i386/i386.md (*ashl<mode>3_mask): Add operand
+-      constraints to operand 2.
+-      (*<shift_insn><mode>3_mask): Ditto.
+-      (*<rotate_insn><mode>3_mask): Ditto.
+-
+-2017-12-19  Bin Cheng  <address@hidden>
+-
+-      Backport from mainline
+-      2017-11-15  Bin Cheng  <address@hidden>
+-
+-      PR tree-optimization/82726
+-      PR tree-optimization/70754
+-      * tree-predcom.c (order_drefs_by_pos): New function.
+-      (combine_chains): Move code setting has_max_use_after to...
+-      (try_combine_chains): ...here.  New parameter.  Sort combined chains
+-      according to position information.
+-      (tree_predictive_commoning_loop): Update call to above function.
+-      (update_pos_for_combined_chains, pcom_stmt_dominates_stmt_p): New.
+-
+-      2017-11-15  Bin Cheng  <address@hidden>
+-
+-      PR tree-optimization/82726
+-      Revert
+-      2017-01-23  Bin Cheng  <address@hidden>
+-
+-      PR tree-optimization/70754
+-      * tree-predcom.c (stmt_combining_refs): New parameter INSERT_BEFORE.
+-      (reassociate_to_the_same_stmt): New parameter INSERT_BEFORE.  Insert
+-      combined stmt before it if not NULL.
+-      (combine_chains): Process refs reversely and compute dominance point
+-      for root ref.
+-
+-      Revert
+-      2017-02-23  Bin Cheng  <address@hidden>
+-
+-      PR tree-optimization/79663
+-      * tree-predcom.c (combine_chains): Process refs in reverse order
+-      only for ZERO length chains, and add explaining comment.
+-
+-2017-12-19  Sebastian Huber  <address@hidden>
+-
+-      Backport from mainline
+-      2017-12-19  Sebastian Huber  <address@hidden>
+-
+-      PR target/83387
+-      * config/rs6000/t-rtems (MULTILIB_REQUIRED): Remove 64-bit soft-float
+-      multilib.
+-
+-2017-12-19  Daniel Cederman  <address@hidden>
+-
+-      Backport from mainline
+-      2017-12-19  Daniel Cederman  <address@hidden>
+-
+-      * config/sparc/sparc.c (sparc_do_work_around_errata): Make sure
+-      the jump is to a label.
+-
+-2017-12-17  John David Anglin  <address@hidden>
+-
+-      Backport from mainline
+-      2017-12-03  John David Anglin  <address@hidden>
+-
+-      * config/pa/pa.c (pa_legitimate_address_p): For scaled indexing,
+-      require base operand is a REG_POINTER prior to reload on targets
+-      with non-equivalent space registers.
+-
+-2017-12-15  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/83269
+-      * fold-const.c (fold_binary_loc): Perform (-A) - B -> (-B) - A
+-      subtraction in arg0's type if type is signed and arg0 is unsigned.
+-      Formatting fix.
+-
+-      Backported from mainline
+-      2017-12-14  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/83198
+-      * gimple-ssa-sprintf.c (format_floating): Set type solely based on
+-      dir.modifier, regardless of TREE_TYPE (arg).  Assume non-REAL_CST
+-      value if arg is a REAL_CST with incompatible type.
+-
+-      2017-12-12  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/80631
+-      * tree-vect-loop.c (get_initial_def_for_reduction): Fix comment typo.
+-      (vect_create_epilog_for_reduction): Add INDUC_VAL argument, for
+-      INTEGER_INDUC_COND_REDUCTION use INDUC_VAL instead of
+-      hardcoding zero as the value if COND_EXPR is never true.  For
+-      INTEGER_INDUC_COND_REDUCTION don't emit the final COND_EXPR if
+-      INDUC_VAL is equal to INITIAL_DEF.
+-      (vectorizable_reduction): Compute INDUC_VAL for
+-      vect_create_epilog_for_reduction, if no value is suitable, don't
+-      use INTEGER_INDUC_COND_REDUCTION for now.  Formatting fixes.
+-
+-      2017-12-08  Joseph Myers  <address@hidden>
+-                  Alexander Monakov  <address@hidden>
+-                  Jakub Jelinek  <address@hidden>
+-
+-      PR target/81906
+-      * config/i386/i386.c (ix86_expand_rint): Handle flag_rounding_math.
+-
+-      2017-12-02  Jakub Jelinek  <address@hidden>
+-
+-      PR c++/81212
+-      * tree-cfg.c (pass_warn_function_return::execute): Handle
+-      __builtin_ubsan_handle_missing_return like __builtin_unreachable
+-      with BUILTINS_LOCATION.
+-
+-      PR target/78643
+-      PR target/80583
+-      * expr.c (get_inner_reference): If DECL_MODE of a non-bitfield
+-      is BLKmode for vector field with vector raw mode, use TYPE_MODE
+-      instead of DECL_MODE.
+-
+-      2017-11-29  Jakub Jelinek  <address@hidden>
+-
+-      PR target/80819
+-      * config/i386/sse.md (vec_concatv2di): Remove * from (=Yr,0,*rm)
+-      alternative.
+-
+-      2017-11-25  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/81553
+-      * combine.c (simplify_if_then_else): In (if_then_else COND (OP Z C1) Z)
+-      to (OP Z (mult COND (C1 * STORE_FLAG_VALUE))) optimization, if OP
+-      is a shift where C1 has different mode than the whole shift, use C1's
+-      mode for MULT rather than the shift's mode.
+-
+-      2017-11-24  Jakub Jelinek  <address@hidden>
+-
+-      PR sanitizer/83014
+-      * ubsan.c (ubsan_type_descriptor): Use pp_unsigned_wide_integer
+-      instead of pp_printf with HOST_WIDE_INT_PRINT_DEC.  Avoid calling
+-      tree_to_uhwi twice.
+-
+-      * tree-object-size.c (pass_through_call): Do not handle
+-      BUILT_IN_STPNCPY_CHK which is not a pass through call.
+-
+-      2017-11-23  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/82253
+-      * expr.c (expand_assignment): For CONCAT to_rtx, complex type from and
+-      bitpos/bitsize covering the whole destination, use store_expr only if
+-      the complex mode is the same.  Otherwise, use expand_normal and if
+-      it returns CONCAT, subreg each part separately instead of trying to
+-      subreg the whole result.
+-
+-      2017-11-22  Jakub Jelinek  <address@hidden>
+-
+-      PR debug/83084
+-      * valtrack.c (propagate_for_debug_subst, propagate_for_debug): Reset
+-      debug insns if they would contain UNSPEC_VOLATILE or volatile asm.
+-      (dead_debug_insert_temp): Likewise, but also ignore even non-volatile
+-      asm.
+-
+-      2017-11-21  James Cowgill  <address@hidden>
+-                  Jakub Jelinek  <address@hidden>
+-
+-      PR target/82880
+-      * config/mips/frame-header-opt.c (mips_register_frame_header_opt):
+-      Remove static keyword from f variable.
+-
+-2017-12-15  Richard Biener  <address@hidden>
+-
+-      PR bootstrap/83439
+-      * tree-ssa-pre.c (eliminate_dom_walker::before_dom_children):
+-      Adjust remaining gimple_set_modified to use the modified
+-      variable instead.
+-
+-2017-12-15  Eric Botcazou  <address@hidden>
+-
+-      PR target/66488
+-      * ggc-page.c (HOST_BITS_PER_PTR): Do not define here...
+-      * hwint.h (HOST_BITS_PER_PTR): ...but here instead.
+-      * config/i386/xm-mingw32.h (HOST_BITS_PER_PTR): Delete.
+-
+-2017-12-15  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      PR tree-optimization/82060
+-      * tree-ssa-pre.c (eliminate_dom_walker::before_dom_children):
+-      Move devirtualization after stmt folding and before EH/AB/noreturn
+-      cleanup to get the stmt refs canonicalized.  Use a bool instead
+-      of gimple_modified_p since that doesn't work for NOPs.  Schedule
+-      NOPs generated by folding for removal.
+-
+-2017-12-15  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2017-09-05  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/82102
+-      * tree-ssa-pre.c (eliminate): Check if lhs is NULL.
+-
+-      2017-09-13  Richard Biener  <address@hidden>
+-
+-      PR middle-end/82128
+-      * gimple-fold.c (gimple_fold_call): Update SSA name in-place to
+-      default-def to avoid breaking iterator update with the weird
+-      interaction with cgraph_update_edges_for_call_stmt_node.
+-
+-2017-12-15  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2017-11-24  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/82402
+-      * tree-vect-loop-manip.c (create_lcssa_for_virtual_phi): Properly
+-      set SSA_NAME_OCCURS_IN_ABNORMAL_PHI.
+-
+-      2017-10-24  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/82697
+-      * tree-ssa-phiopt.c (cond_store_replacement): Use alias-set
+-      zero for conditional load and unconditional store.
+-
+-      2017-11-02  Richard Biener  <address@hidden>
+-
+-      PR middle-end/82765
+-      * varasm.c (decode_addr_const): Make offset HOST_WIDE_INT.
+-      Truncate ARRAY_REF index and element size.
+-
+-      2017-11-09  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/82902
+-      * tree-ssa-phiprop.c (propagate_with_phi): Test proper type.
+-
+-2017-12-14  Peter Bergner  <address@hidden>
+-
+-      Backport from mainline
+-      2017-10-02  Peter Bergner  <address@hidden>
+-
+-      PR target/80210
+-      * config/rs6000/rs6000.c (rs6000_option_override_internal): Rewrite
+-      function to not use the have_cpu variable.  Do not set cpu_index,
+-      rs6000_cpu_index or rs6000_tune_index if we end up using TARGET_DEFAULT
+-      or the default cpu.
+-      (rs6000_valid_attribute_p): Remove duplicate initializations of
+-      old_optimize and func_optimize.
+-      (rs6000_pragma_target_parse): Call rs6000_activate_target_options ().
+-      (rs6000_activate_target_options): Make global.
+-      * config/rs6000/rs6000-protos.h (rs6000_activate_target_options): Add
+-      prototype.
+-
+-2017-12-13  Peter Bergner  <address@hidden>
+-
+-      Backport from mainline
+-      2017-12-13  Peter Bergner  <address@hidden>
+-
+-      * config/rs6000/ppc-auxv.h (PPC_FEATURE2_HTM_NO_SUSPEND): New define.
+-      * config/rs6000/rs6000.c (cpu_supports_info): Use it.
+-
+-2017-12-11  Michael Meissner  <address@hidden>
+-
+-      Back port from trunk
+-      2017-12-01  Michael Meissner  <address@hidden>
+-
+-      PR target/81959
+-      * config/rs6000/rs6000.c (rs6000_address_for_fpconvert): Check for
+-      whether we can allocate pseudos before trying to fix an address.
+-      * config/rs6000/rs6000.md (float_<mode>si2_hw): Make sure the
+-      memory address is indexed or indirect.
+-      (floatuns_<mode>si2_hw2): Likewise.
+-
+-2017-12-11  Sudakshina Das  <address@hidden>
+-
+-      Backported from trunk
+-      2017-12-01  Sudakshina Das  <address@hidden>
+-
+-      * config/arm/vfp.md (*movhf_vfp_fp16): Add conds attribute.
+-
+-2017-12-07  Kelvin Nilsen  <address@hidden>
+-
+-      Backport from trunk
+-      2017-05-08  Kelvin Nilsen  <address@hidden>
+-
+-      PR target/80101
+-      * config/rs6000/power6.md: Replace store_data_bypass_p calls with
+-      rs6000_store_data_bypass_p in seven define_bypass directives and
+-      in several comments.
+-      * config/rs6000/rs6000-protos.h: Add prototype for
+-      rs6000_store_data_bypass_p function.
+-      * config/rs6000/rs6000.c (rs6000_store_data_bypass_p): New
+-      function implements slightly different (rs6000-specific) semantics
+-      than store_data_bypass_p, returning false rather than aborting
+-      with assertion error when arguments do not satisfy the
+-      requirements of store data bypass.
+-      (rs6000_adjust_cost): Replace six calls of store_data_bypass_p with
+-      rs6000_store_data_bypass_p.
+-
+-2017-12-06  Eric Botcazou  <address@hidden>
+-
+-      Revert
+-      2017-11-29  Martin Aberg  <address@hidden>
+-
+-      * config/sparc/sparc.md (divdf3_fix): Add NOP and adjust length
+-      to prevent b2bst errata sequence.
+-      (sqrtdf2_fix): Likewise.
+-
+-2017-12-05  Max Filippov  <address@hidden>
+-
+-      Backport from mainline
+-      2017-12-05  Max Filippov  <address@hidden>
+-      * config/xtensa/xtensa.c (xtensa_asan_shadow_offset): New
+-      function.
+-      (TARGET_ASAN_SHADOW_OFFSET): New macro definition.
+-      * config/xtensa/xtensa.h (FRAME_GROWS_DOWNWARD): Set to 1 if
+-      ASAN is enabled.
+-
+-2017-12-05  Max Filippov  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-08  Max Filippov  <address@hidden>
+-      * config/xtensa/xtensa-protos.h
+-      (xtensa_initial_elimination_offset): New declaration.
+-      * config/xtensa/xtensa.c (xtensa_initial_elimination_offset):
+-      New function. Move its body from the INITIAL_ELIMINATION_OFFSET
+-      macro definition, add case for FRAME_POINTER_REGNUM when
+-      FRAME_GROWS_DOWNWARD.
+-      * config/xtensa/xtensa.h (FRAME_GROWS_DOWNWARD): New macro
+-      definition.
+-      (INITIAL_ELIMINATION_OFFSET): Replace body with call to
+-      xtensa_initial_elimination_offset.
+-
+-2017-12-04  Eric Botcazou  <address@hidden>
+-
+-      * config/sparc/sparc.c (sparc_do_work_around_errata): Use mem_ref
+-      instead of MEM_P in a couple more places.  Fix formatting issues.
+-
+-2017-12-04  Sebastian Peryt  <address@hidden>
+-      H.J. Lu  <address@hidden>
+-
+-      Bakcported from trunk
+-      PR target/82941
+-      PR target/82942
+-      PR target/82990
+-      * config/i386/i386.c (pass_insert_vzeroupper): Remove
+-      TARGET_AVX512F check from gate condition.
+-      (ix86_check_avx256_register): Changed to ...
+-      (ix86_check_avx_upper_register): ... this. Add extra check for
+-      VALID_AVX512F_REG_OR_XI_MODE.
+-      (ix86_avx_u128_mode_needed): Changed
+-      ix86_check_avx256_register to ix86_check_avx_upper_register.
+-      (ix86_check_avx256_stores): Changed to ...
+-      (ix86_check_avx_upper_stores): ... this. Changed
+-      ix86_check_avx256_register to ix86_check_avx_upper_register.
+-      (ix86_avx_u128_mode_after): Changed
+-      avx_reg256_found to avx_upper_reg_found. Changed
+-      ix86_check_avx256_stores to ix86_check_avx_upper_stores.
+-      (ix86_avx_u128_mode_entry): Changed
+-      ix86_check_avx256_register to ix86_check_avx_upper_register.
+-      (ix86_avx_u128_mode_exit): Ditto.
+-      (ix86_option_override_internal): Set MASK_VZEROUPPER if
+-      neither -mzeroupper nor -mno-zeroupper is used and
+-      TARGET_EMIT_VZEROUPPER is set.
+-      * config/i386/i386.h: (host_detect_local_cpu): New define.
+-      (TARGET_EMIT_VZEROUPPER): New.
+-      * config/i386/x86-tune.def: Add X86_TUNE_EMIT_VZEROUPPER
+-
+-2017-12-01  Segher Boessenkool  <address@hidden>
+-
+-      Backport from mainline
+-      2017-11-28  Segher Boessenkool  <address@hidden>
+-
+-      PR 81288/target
+-      * config/rs6000/rs6000.c (rs6000_rtx_costs): Do not handle
+-      TARGET_ISEL && !TARGET_MFCRF differently.  Simplify code.
+-
+-2017-11-30  Jim Wilson  <address@hidden>
+-
+-      Backport from mainline
+-      2017-11-30  Jim Wilson  <address@hidden>
+-      * doc/invoke.texi (RISC-V Options): Delete nonexistent -mmemcpy and
+-      -mno-memcpy options.  For -mplt, -mfdiv, -mdiv, -msave-restore, and
+-      -mstrict-align, add info on default value.  Delete redundant lines for
+-      -mabi.  Add missing -mexplicit-relocs docs.
+-
+-      Backport from mainline
+-      2017-11-01  Palmer Dabbelt  <address@hidden>
+-      * doc/invoke.texi (RISC-V Options): Use "@minus{}2 GB", not "-2 GB".
+-      * doc/invoke.texi (RISC-V Options): Explicitly name the medlow
+-      and medany code models, and describe what they do.
+-
+-      2017-10-27  Palmer Dabbelt  <address@hidden>
+-      PR target/82717
+-      * doc/invoke.texi (RISC-V) <-mabi>: Correct and improve.
+-
+-2017-11-29  Martin Jambor  <address@hidden>
+-
+-      PR ipa/82808
+-      * tree.c (expr_type_first_operand_type_p): New function.
+-      * tree.h (expr_type_first_operand_type_p): Declare it.
+-      * ipa-cp.c (ipa_get_jf_pass_through_result): Use it.
+-
+-2017-11-29  Daniel Cederman  <address@hidden>
+-
+-      * config/sparc/sparc.c (sparc_do_work_around_errata): Treat the
+-      movsi_pic_gotdata_op instruction as a load for the UT699 errata
+-      workaround.
+-
+-2017-11-29  Martin Aberg  <address@hidden>
+-
+-      * config/sparc/sparc.md (divdf3_fix): Add NOP and adjust length
+-      to prevent b2bst errata sequence.
+-      (sqrtdf2_fix): Likewise.
+-
+-2017-11-29  Daniel Cederman  <address@hidden>
+-
+-      * config/sparc/sparc.c (fpop_reg_depend_p): New function.
+-      (div_sqrt_insn_p): New function.
+-      (sparc_do_work_around_errata): Insert NOP instructions to
+-      prevent sequences that could trigger the TN-0013 errata for
+-      certain LEON3 processors.
+-      (pass_work_around_errata::gate): Also test sparc_fix_lost_divsqrt.
+-      (sparc_option_override): Set sparc_fix_lost_divsqrt appropriately.
+-      * config/sparc/sparc.md (fix_lost_divsqrt): New attribute.
+-      (in_branch_delay): Prevent div and sqrt in delay slot if
+-      fix_lost_divsqrt.
+-      * config/sparc/sparc.opt (sparc_fix_lost_divsqrt): New variable.
+-
+-2017-11-29  Daniel Cederman  <address@hidden>
+-
+-      * config/sparc/sparc.c (atomic_insn_p): New function.
+-      (sparc_do_work_around_errata): Insert NOP instructions to
+-      prevent sequences that could trigger the TN-0010 errata for
+-      UT700.
+-      * config/sparc/sync.md (atomic_compare_and_swap_leon3_1): Make
+-      instruction referable in atomic_insns_p.
+-
+-2017-11-29  Daniel Cederman  <address@hidden>
+-
+-      * config/sparc/sync.md (swapsi): 16-byte align if sparc_fix_gr712rc.
+-      (atomic_compare_and_swap_leon3_1): Likewise.
+-      (ldstub): Likewise.
+-
+-2017-11-29  Daniel Cederman  <address@hidden>
+-
+-      * config/sparc/sparc.c (fpop_insn_p): New function.
+-      (sparc_do_work_around_errata): Insert NOP instructions to
+-      prevent sequences that could trigger the TN-0012 errata for
+-      GR712RC.
+-      (pass_work_around_errata::gate): Also test sparc_fix_gr712rc.
+-      * config/sparc/sparc.md (fix_gr712rc): New attribute.
+-      (in_branch_annul_delay): Prevent floating-point instructions
+-      in delay slot of annulled integer branch.
+-
+-2017-11-28  Jim Wilson  <address@hidden>
+-
+-      Backport from mainline
+-      2017-11-04  Andrew Waterman  <address@hidden>
+-
+-      * config/riscv/riscv.c (riscv_option_override): Conditionally set
+-      TARGET_STRICT_ALIGN based upon -mtune argument.
+-
+-      Backport from mainline
+-      2017-05-04  Andrew Waterman  <address@hidden>
+-
+-      * config/riscv/riscv.opt (mstrict-align): New option.
+-      * config/riscv/riscv.h (STRICT_ALIGNMENT): Use it.  Update comment.
+-      (SLOW_UNALIGNED_ACCESS): Define.
+-      (riscv_slow_unaligned_access): Declare.
+-      * config/riscv/riscv.c (riscv_tune_info): Add slow_unaligned_access
+-      field.
+-      (riscv_slow_unaligned_access): New variable.
+-      (rocket_tune_info): Set slow_unaligned_access to true.
+-      (optimize_size_tune_info): Set slow_unaligned_access to false.
+-      (riscv_cpu_info_table): Add entry for optimize_size_tune_info.
+-      (riscv_valid_lo_sum_p): Use TARGET_STRICT_ALIGN.
+-      (riscv_option_override): Set riscv_slow_unaligned_access.
+-      * doc/invoke.texi: Add -mstrict-align to RISC-V.
+-
+-      Backport from mainline
+-      2017-11-07  Michael Clark  <address@hidden>
+-
+-      * config/riscv/linux.h (MUSL_ABI_SUFFIX): New define.
+-      (MUSL_DYNAMIC_LINKER): Likewise.
+-
+-2017-11-27  Jim Wilson  <address@hidden>
+-
+-      Backport from mainline
+-      2017-10-25  Palmer Dabbelt  <address@hidden>
+-
+-      * config/riscv/riscv.md (ZERO_EXTEND_LOAD): Define.
+-      * config/riscv/pic.md (local_pic_load): Rename to local_pic_load_s,
+-      mark as a sign-extending load.
+-      (local_pic_load_u): Define.
+-
+-      Backport from mainline
+-      2017-11-03  Kito Cheng  <address@hidden>
+-
+-      * config/riscv/riscv.c (riscv_legitimize_move): Handle
+-      non-legitimate address.
+-
+-2017-11-24  Segher Boessenkool  <address@hidden>
+-
+-      Backport from mainline
+-      2017-11-17  Segher Boessenkool  <address@hidden>
+-
+-      PR rtl-optimization/82621
+-      * combine.c (try_combine): Do not split PARALLELs of two SETs if the
+-      dest of one of those SETs is unused.
+-
+-2017-11-23  Oleg Endo  <address@hidden>
+-
+-      Backport from mainline
+-      2017-11-23  Oleg Endo  <address@hidden>
+-
+-      PR target/83111
+-      * config/sh/sh.md (udivsi3, divsi3, sibcall_value_pcrel,
+-      sibcall_value_pcrel_fdpic): Use local variable instead of
+-      operands[3].
+-      (calli_tbr_rel): Add missing operand 2.
+-      (call_valuei_tbr_rel): Add missing operand 3.
+-
+-2017-11-22  Richard Biener  <address@hidden>
+-
+-      Revert
+-      2017-11-21  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-11-21  Martin Liska  <address@hidden>
+-
+-      PR rtl-optimization/82044
+-      PR tree-optimization/82042
+-      * dse.c (check_mem_read_rtx): Check for overflow.
+-
+-2017-11-21  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-10-27  Martin Liska  <address@hidden>
+-
+-      PR gcov-profile/82457
+-      * doc/invoke.texi: Document that one needs a non-strict ISO mode
+-      for fork-like functions to be properly instrumented.
+-
+-2017-11-21  Pat Haugen  <address@hidden>
+-
+-      Backport from mainline
+-      2017-11-21  Pat Haugen  <address@hidden>
+-
+-      * config/rs6000/ppc-asm.h (f50, vs50): Fix values.
+-
+-2017-11-21  Thomas Preud'homme  <address@hidden>
+-
+-      Backport from mainline
+-      2017-11-09  Thomas Preud'homme  <address@hidden>
+-
+-      * config/arm/arm.c (output_return_instruction): Add comments to
+-      indicate requirement for cmse_nonsecure_entry return to account
+-      for the size of clearing instruction output here.
+-      (thumb_exit): Likewise.
+-      * config/arm/thumb2.md (thumb2_cmse_entry_return): Fix length for
+-      return in hardfloat mode.
+-
+-2017-11-21  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-11-21  Martin Liska  <address@hidden>
+-
+-      PR rtl-optimization/82044
+-      PR tree-optimization/82042
+-      * dse.c (check_mem_read_rtx): Check for overflow.
+-
+-2017-11-21  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-11-08  Martin Liska  <address@hidden>
+-
+-      * gimplify.c (expand_FALLTHROUGH_r): Simplify usage
+-      of gimple_call_internal_p.
+-
+-2017-11-21  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-11-08  Martin Liska  <address@hidden>
+-
+-      PR sanitizer/82792
+-      * gimplify.c (expand_FALLTHROUGH_r): Skip IFN_ASAN_MARK.
+-
+-2017-11-21  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-10-31  Martin Liska  <address@hidden>
+-
+-      PR gcov-profile/82633
+-      * doc/gcov.texi: Document -fkeep-{static,inline}-functions and
+-      their interaction with GCOV infrastructure.
+-
+-2017-11-21  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-10-19  Martin Liska  <address@hidden>
+-
+-      PR driver/81829
+-      * file-find.c (remove_prefix): Remove.
+-      * file-find.h (remove_prefix): Likewise.
+-      * gcc-ar.c: Remove smartness of lookup.
+-
+-2017-11-21  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-10-18  Martin Liska  <address@hidden>
+-
+-      PR sanitizer/82545
+-      * asan.c (asan_expand_poison_ifn): Do not put gimple stmt
+-      on an abnormal edge.
+-
+-2017-11-21  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-10-11  Martin Liska  <address@hidden>
+-
+-      * print-rtl.c (print_insn): Move declaration of idbuf
+-      to same scope as name.
+-
+-2017-11-21  Claudiu Zissulescu  <address@hidden>
+-
+-      Backport from mainline
+-      2017-11-17  Vineet Gupta  <address@hidden>
+-
+-      * config/arc/linux.h: GLIBC_DYNAMIC_LINKER update per glibc
+-      upstreaming review comments.
+-
+-2017-11-21  Rainer Orth  <address@hidden>
+-
+-      Backport from mainline
+-      2017-11-14  Rainer Orth  <address@hidden>
+-
+-      * config.gcc (*-*-solaris2*): Enable default_use_cxa_atexit since
+-      Solaris 11.  Update comment.
+-      * configure.ac (gcc_cv_ld_pid): Adapt comment for Solaris 12
+-      renaming.
+-      * config/sol2.h (STARTFILE_SPEC): Likewise.
+-      * configure: Regenerate.
+-
+-2017-11-20  Segher Boessenkool  <address@hidden>
+-
+-      Backport from mainline
+-      2017-09-20  Segher Boessenkool  <address@hidden>
+-
+-      PR target/77687
+-      * config/rs6000/rs6000.md (stack_restore_tie): Store to a scratch
+-      address instead of to r1 and r11.
+-
+-2017-11-17  Vineet Gupta <address@hidden>
+-
+-      * config.gcc: Remove uclibc from arc target spec.
+-
+-2017-11-16  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/i386.c (x86_print_call_or_nop): Emit 5 byte nop
+-      explicitly as a stream of bytes.
+-
+-2017-11-15  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/82985
+-      Backport from mainline
+-      2017-08-15  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/81790
+-      * tree-ssa-sccvn.c (vn_lookup_simplify_result): Handle both
+-      CONSTRUCTORs from simplifying and VN.
+-
+-2017-11-15  Pierre-Marie de Rodat  <address@hidden>
+-
+-      Backport from mainline
+-      2017-09-25  Pierre-Marie de Rodat  <address@hidden>
+-
+-      PR debug/82155
+-      * dwarf2out.c (dwarf2out_early_global_decl): Call dwarf2out_decl
+-      on the FUNCTION_DECL function context if it has a DIE that is a
+-      declaration.
+-
+-2017-11-13  Rainer Orth  <address@hidden>
+-
+-      Backport from mainline
+-      2017-10-26  Rainer Orth  <address@hidden>
+-
+-      * configure.ac (gcc_cv_as_ix86_xbrace_comment): Check if assembler
+-      supports -xbrace_comment option.
+-      * configure: Regenerate.
+-      * config.in: Regenerate.
+-      * config/i386/sol2.h (ASM_XBRACE_COMMENT_SPEC): Define.
+-      (ASM_CPU_SPEC): Use it.
+-
+-2017-11-09  Segher Boessenkool  <address@hidden>
+-
+-      Backport from mainline
+-      2017-11-01  Segher Boessenkool  <address@hidden>
+-
+-      PR rtl-optimization/64682
+-      PR rtl-optimization/69567
+-      PR rtl-optimization/69737
+-      PR rtl-optimization/82683
+-      * combine.c (distribute_notes) <REG_DEAD>: If the new I2 sets the same
+-      register mentioned in the note, drop the note, unless it came from I3,
+-      in which case it should go to I3 again.
+-
+-2017-11-07  Eric Botcazou  <address@hidden>
+-
+-      Backport from mainline
+-      2017-10-31  Matthew Fortune  <address@hidden>
+-                  Eric Botcazou  <address@hidden>
+-
+-      PR rtl-optimization/81803
+-      * lra-constraints.c (curr_insn_transform): Also reload the whole
+-      register for a strict subreg no wider than a word if this is for
+-      a WORD_REGISTER_OPERATIONS target.
+-
+-2017-11-03  Wilco Dijkstra  <address@hidden>
+-
+-      PR middle-end/60580
+-      * config/aarch64/aarch64.c (aarch64_frame_pointer_required)
+-      Check special value of flag_omit_frame_pointer.
+-      (aarch64_can_eliminate): Likewise.
+-      (aarch64_override_options_after_change_1): Simplify handling of
+-      -fomit-frame-pointer and -fomit-leaf-frame-pointer.
+-
+-2017-11-01  Martin Jambor  <address@hidden>
+-
+-      PR c++/81702
+-      * gimple-fold.c (gimple_get_virt_method_for_vtable): Remove assert.
+-
+-2017-10-31  Uros Bizjak  <address@hidden>
+-
+-      PR target/82772
+-      * config/alpha/sync.md (fetchop_constr) <and>: Change to "rINM".
+-
+-2017-10-27  Jakub Jelinek  <address@hidden>
+-
+-      Backported from mainline
+-      2017-10-12  Jakub Jelinek  <address@hidden>
+-
+-      PR c++/82159
+-      * expr.c (store_field): Don't optimize away bitsize == 0 store
+-      from CALL_EXPR with addressable return type.
+-
+-      2017-09-21  Jakub Jelinek  <address@hidden>
+-
+-      PR sanitizer/81715
+-      * tree-inline.c (expand_call_inline): Emit clobber stmts for
+-      VAR_DECLs to which addressable non-volatile parameters are mapped
+-      and for id->retvar after the return value assignment, though
+-      for -fsanitize=kernel-address only.  Clear id->retval and id->retbnd
+-      after inlining.
+-
+-      2017-09-18  Jakub Jelinek  <address@hidden>
+-
+-      PR c/82234
+-      * doc/extend.texi: Add @findex entry for __builtin_shuffle.
+-
+-      2017-09-15  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/82192
+-      * combine.c (make_extraction): Don't look through non-paradoxical
+-      SUBREGs or TRUNCATE if pos + len is or might be bigger than
+-      inner's mode.
+-
+-2017-10-27  Jakub Jelinek  <address@hidden>
+-
+-      PR target/82703
+-      * config/i386/i386-protos.h (maybe_get_pool_constant): Removed.
+-      * config/i386/i386.c (maybe_get_pool_constant): Removed.
+-      (ix86_split_to_parts): Use avoid_constant_pool_reference instead of
+-      maybe_get_pool_constant.
+-      * config/i386/predicates.md (zero_extended_scalar_load_operand):
+-      Likewise.
+-
+-2017-10-24  Qing Zhao <address@hidden>
+-          Wilco Dijkstra  <address@hidden>
+-
+-      * builtins.c (expand_builtin_update_setjmp_buf): Add a
+-      converstion to Pmode from the buf_addr.
+-
+-2017-10-20  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/82603
+-      * tree-if-conv.c (predicate_mem_writes): Make sure to only
+-      remove false predicated stores.
+-
+-2017-10-20  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2017-10-06  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/82436
+-      * tree-vect-slp.c (vect_supported_load_permutation_p): More
+-      conservatively choose the vectorization factor when checking
+-      whether we can perform the required load permutation.
+-      (vect_transform_slp_perm_load): Assert when we may not fail.
+-
+-2017-10-19  Richard Earnshaw  <address@hidden>
+-
+-      PR target/82445
+-      * config/arm/arm.c (align_ok_ldrd_strd): New function.
+-      (mem_ok_for_ldrd_strd): New parameter align.  Extract the alignment of
+-      the mem into it.
+-      (gen_operands_ldrd_strd): Validate the alignment of the accesses.
+-
+-2017-10-18  Segher Boessenkool  <address@hidden>
+-
+-      PR rtl-optimization/82602
+-      * ira.c (rtx_moveable_p): Return false for volatile asm.
+-
+-2017-10-18  Vladimir Makarov  <address@hidden>
+-
+-      PR middle-end/82556
+-      * lra-constraints.c (curr_insn_transform): Use non-input operand
+-      instead of output one for matched reload.
+-
+-2017-10-17  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/82549
+-      * fold-const.c (optimize_bit_field_compare, fold_truth_andor_1):
+-      Formatting fixes.  Instead of calling make_bit_field_ref with negative
+-      bitpos return 0.
+-
+-2017-10-13  Jakub Jelinek  <address@hidden>
+-
+-      PR target/82274
+-      * internal-fn.c (expand_mul_overflow): If both operands have
+-      the same highpart of -1 or 0 and the topmost bit of lowpart
+-      is different, overflow is if res <= 0 rather than res < 0.
+-
+-      PR target/82524
+-      * config/i386/i386.md (addqi_ext_1, andqi_ext_1,
+-      *andqi_ext_1_cc, *<code>qi_ext_1, *xorqi_ext_1_cc): Change
+-      =Q constraints to +Q and into insn condition add check
+-      that operands[0] and operands[1] are equal.
+-      (*addqi_ext_2, *andqi_ext_2, *<code>qi_ext_2): Change
+-      =Q constraints to +Q and into insn condition add check
+-      that operands[0] is equal to either operands[1] or operands[2].
+-
+-2017-10-10  Andreas Tobler  <address@hidden>
+-
+-      Backported from mainline r253602
+-      2017-10-10  Andreas Tobler  <address@hidden>
+-
+-      * config.gcc: (armv7*-*-freebsd*): New target.
+-      (armv6*-*-freebsd*): Remove obsolete TARGET_FREEBSD_ARMv6 define.
+-
+-2017-10-06  Christophe Lyon  <address@hidden>
+-
+-      Backport from mainline r253242.
+-      2017-09-27  Christophe Lyon  <address@hidden>
+-
+-      PR target/71727
+-      * config/aarch64/aarch64.c
+-      (aarch64_builtin_support_vector_misalignment): Always return false
+-      when misalignment is unknown.
+-
+-2017-10-04  Jason Merrill  <address@hidden>
+-
+-      PR c++/82406 - C++ error with noexcept function type
+-      PR c++/70029 - ICE with ref-qualifier and -flto
+-      * langhooks.h (struct lang_hooks_for_types): Add
+-      copy_lang_qualifiers.
+-      * attribs.c (build_type_attribute_qual_variant): Use it.
+-      * langhooks-def.h (LANG_HOOKS_COPY_LANG_QUALIFIERS): Default to
+-      NULL.
+-      (LANG_HOOKS_FOR_TYPES_INITIALIZER): Use it.
+-      * tree.c (verify_type): Re-enable TYPE_CANONICAL main variant check.
+-
+-2017-10-02  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline
+-      2017-09-29  Bill Schmidt  <address@hidden>
+-
+-      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  <address@hidden>
+-
+-      * config/i386/i386.c (ix86_split_idivmod): Use mode instead of
+-      always SImode for DIV and MOD in REG_EQUAL notes.
+-
+-      Backported from mainline
+-      2017-09-27  Jakub Jelinek  <address@hidden>
+-
+-      PR c++/82159
+-      * gimplify.c (gimplify_modify_expr): Don't optimize away zero sized
+-      lhs from calls if the lhs has addressable type.
+-
+-2017-09-29  Krister Walfridsson  <address@hidden>
+-
+-      Backport from mainline
+-      2017-06-29  Maya Rashish  <address@hidden>
+-
+-      PR target/77480
+-      * config/netbsd.h (NETBSD_LIB_SPEC): Add -lc when creating shared
+-      objects.
+-
+-2017-09-29  Krister Walfridsson  <address@hidden>
+-
+-      Backport from mainline
+-      2017-09-26  Krister Walfridsson  <address@hidden>
+-
+-      PR target/39570
+-      * gcc/config/netbsd-protos.h: New file.
+-      * gcc/config/netbsd.c: New file.
+-      * gcc/config/netbsd.h (SUBTARGET_INIT_BUILTINS): Define.
+-      * gcc/config/t-netbsd: New file.
+-      * gcc/config.gcc (tm_p_file): Add netbsd-protos.h.
+-      (tmake_file) Add t-netbsd.
+-      (extra_objs) Add netbsd.o.
+-
+-2017-09-28  Krister Walfridsson  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-14  Krister Walfridsson  <address@hidden>
+-
+-      PR target/80600
+-      * config/netbsd.h (NETBSD_LIBGCC_SPEC): Always add -lgcc.
+-
+-2017-09-27  Christophe Lyon  <address@hidden>
+-
+-      Backport from trunk r249639.
+-      2017-06-26  Christophe Lyon  <address@hidden>
+-
+-      * doc/sourcebuild.texi (ARM-specific attributes): Document new
+-      arm_neon_ok_no_float_abi effective target.
+-
+-2017-09-26  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2017-09-19  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/82244
+-      * tree-vrp.c (remove_range_assertions): Do not propagate
+-      a constant to abnormals but replace the assert with a copy.
+-
+-      2017-09-21  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/82276
+-      PR tree-optimization/82244
+-      * tree-vrp.c (build_assert_expr_for): Set
+-      SSA_NAME_OCCURS_IN_ABNORMAL_PHI if the variable we assert on
+-      has it set.
+-      (remove_range_assertions): Revert earlier change.
+-
+-      2017-09-20  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/82264
+-      * tree-ssa-sccvn.c (vn_phi_eq): Use safe_dyn_cast to check
+-      for GIMPLE_CONDs.
+-      (vn_phi_lookup): Likewise.
+-      (vn_phi_insert): Likewise.
+-      * is-a.h (safe_dyn_cast): New.
+-
+-      2017-09-25  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/82285
+-      * tree-vect-patterns.c (vect_recog_bool_pattern): Also handle
+-      enumeral types.
+-
+-      2017-09-22  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/82291
+-      * tree-if-conv.c (predicate_mem_writes): Make sure to
+-      remove writes in blocks predicated with false.
+-
+-2017-09-21  Alan Modra  <address@hidden>
+-
+-      PR target/81996
+-      * gcc/config/rs6000/rs6000.c (rs6000_return_addr): Use
+-      stack_pointer_rtx for count 0.  Update comments.  Break up
+-      large rtl expression.
+-
+-2017-09-21  Wilco Dijkstra  <address@hidden>
+-
+-      PR target/71951
+-      * config/aarch64/aarch64.h (LIBGCC2_UNWIND_ATTRIBUTE): Define.
+-
+-2017-09-19  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/i386.c (fold_builtin_cpu): Add M_AMDFAM17H
+-      to processor_model and "amdfam17h" to arch_names_table.
+-      * doc/extend.texi (__builtin_cpu_is): Document amdfam17h CPU name.
+-
+-2017-09-19  Martin Liska  <address@hidden>
+-
+-      PR c++/81355
+-      * config/i386/i386.c (sorted_attr_string): Skip empty strings.
+-
+-2017-09-19  Martin Liska  <address@hidden>
+-
+-      Revert backport:
+-      2017-08-10  Martin Liska  <address@hidden>
+-
+-      PR c++/81355
+-      * c-attribs.c (handle_target_attribute):
+-      Report warning for an empty string argument of target attribute.
+-
+-2017-09-18  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2017-09-04  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/82084
+-      * fold-const.h (can_native_encode_string_p): Declare.
+-      * fold-const.c (can_native_encode_string_p): Factor out from ...
+-      (native_encode_string): ... here.
+-      * tree-vect-stmts.c (vectorizable_store): Call it to avoid
+-      vectorizing stores from constants we later cannot handle.
+-
+-      2017-09-06  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/82108
+-      * tree-vect-stmts.c (vectorizable_load): Fix pointer adjustment
+-      for gap in the non-permutation SLP case.
+-
+-2017-09-15  Jakub Jelinek  <address@hidden>
+-
+-      Backported from mainline
+-      2017-09-14  Jakub Jelinek  <address@hidden>
+-
+-      PR target/81325
+-      * cfgbuild.c (find_bb_boundaries): Ignore debug insns in decisions
+-      if and where to split a bb, except for splitting before debug insn
+-      sequences followed by non-label real insn.  Delete debug insns
+-      in between basic blocks.
+-
+-      2017-09-12  Jakub Jelinek  <address@hidden>
+-
+-      PR target/82112
+-      * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): For
+-      ALTIVEC_BUILTIN_VEC_LD if arg1 has array type call default_conversion
+-      on it early, rather than manual conversion late.  For
+-      ALTIVEC_BUILTIN_VEC_ST if arg2 has array type call default_conversion
+-      instead of performing manual conversion.
+-
+-2017-09-15  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-09-14  Martin Liska  <address@hidden>
+-
+-      * gimple-ssa-strength-reduction.c (create_add_on_incoming_edge):
+-      Add proper printf format.
+-
+-2017-09-15  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-08-30  Martin Liska  <address@hidden>
+-
+-      PR inline-asm/82001
+-      * ipa-icf-gimple.c (func_checker::compare_tree_list_operand):
+-      Rename to ...
+-      (func_checker::compare_asm_inputs_outputs): ... this function.
+-      (func_checker::compare_gimple_asm): Use the function to compare
+-      also ASM constrains.
+-      * ipa-icf-gimple.h: Rename the function.
+-
+-2017-09-15  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-08-29  Martin Liska  <address@hidden>
+-
+-      PR other/39851
+-      * gcc.c (driver_handle_option): Add new argument.
+-      * opts-common.c (handle_option): Pass
+-      target_option_override_hook.
+-      * opts-global.c (lang_handle_option): Add new option.
+-      (set_default_handlers):  Add new argument.
+-      (decode_options): Likewise.
+-      * opts.c (target_handle_option): Likewise.
+-      (common_handle_option): Call target_option_override_hook.
+-      * opts.h (struct cl_option_handler_func): Add hook for
+-      target option override.
+-      (struct cl_option_handlers): Likewise.
+-      (set_default_handlers): Add new argument.
+-      (decode_options): Likewise.
+-      (common_handle_option): Likewise.
+-      (target_handle_option): Likewise.
+-      * toplev.c (toplev::main): Pass targetm.target_option.override
+-      hook.
+-
+-2017-09-15  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-08-10  Martin Liska  <address@hidden>
+-
+-      PR c++/81355
+-      * c-attribs.c (handle_target_attribute):
+-      Report warning for an empty string argument of target attribute.
+-
+-2017-09-15  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-08-08  Martin Liska  <address@hidden>
+-
+-      PR tree-opt/81696
+-      * ipa-icf-gimple.c (func_checker::compare_cst_or_decl): Consider
+-      LABEL_DECLs that can be from a different function.
+-
+-2017-09-15  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-06-28  Martin Liska  <address@hidden>
+-
+-      PR ipa/81128
+-      * ipa-visibility.c (non_local_p): Handle visibility.
+-
+-2017-09-12  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline
+-      2017-09-05  Bill Schmidt  <address@hidden>
+-
+-      PR target/81833
+-      * config/rs6000/altivec.md (altivec_vsum2sws): Convert from a
+-      define_insn to a define_expand.
+-      (altivec_vsum2sws_direct): New define_insn.
+-      (altivec_vsumsws): Convert from a define_insn to a define_expand.
+-
+-2017-09-11  Max Filippov  <address@hidden>
+-
+-      Backport from mainline
+-      PR target/82181
+-      * config/xtensa/xtensa.c (xtensa_mem_offset): Check that both
+-      words of DImode object are reachable by xtensa_uimm8x4 access.
+-
+-2017-09-10  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-11  Bill Schmidt  <address@hidden>
+-
+-      PR target/80695
+-      * config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost):
+-      Account for direct move costs for vec_construct of integer
+-      vectors.
+-
+-      Backport from mainline
+-      2017-07-23  Bill Schmidt  <address@hidden>
+-
+-      PR target/80695
+-      * config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost):
+-      Reduce cost estimate for direct moves.
+-
+-2017-09-08  Eric Botcazou  <address@hidden>
+-
+-      PR target/81988
+-      * config/sparc/sparc.md (mulsi3): Rename into *mulsi3_sp32.
+-      (*mulsi3_sp64): New instruction.
+-      (mulsi3): New expander.
+-
+-2017-09-07  Jakub Jelinek  <address@hidden>
+-
+-      Backported from mainline
+-      2017-09-05  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/81768
+-      * omp-low.c (lower_omp_for): Recompute tree invariant if
+-      gimple_omp_for_initial/final is ADDR_EXPR.
+-
+-      PR middle-end/81768
+-      * omp-expand.c (expand_omp_simd): Force second operands of COND_EXPR
+-      into gimple val before gimplification fo the COND_EXPR.
+-
+-      2017-09-04  Jakub Jelinek  <address@hidden>
+-
+-      * lra-remat.c (reg_overlap_for_remat_p): Fix a pasto.
+-
+-      2017-09-01  Jakub Jelinek  <address@hidden>
+-
+-      PR sanitizer/81923
+-      * asan.c (create_odr_indicator): Strip name encoding from assembler
+-      name before appending it after __odr_asan_.
+-
+-      2017-08-09  Jakub Jelinek  <address@hidden>
+-
+-      PR c/81687
+-      * omp-low.c (omp_copy_decl): Don't remap FORCED_LABEL or DECL_NONLOCAL
+-      LABEL_DECLs.
+-      * tree-cfg.c (move_stmt_op): Don't adjust DECL_CONTEXT of FORCED_LABEL
+-      or DECL_NONLOCAL labels.
+-      (move_stmt_r) <case GIMPLE_LABEL>: Adjust DECL_CONTEXT of FORCED_LABEL
+-      or DECL_NONLOCAL labels here.
+-
+-      2017-08-03  Jakub Jelinek  <address@hidden>
+-
+-      PR target/81621
+-      * bb-reorder.c (pass_partition_blocks::execute): Return TODO_df_finish
+-      after setting changeable df flags.
+-
+-      PR driver/81650
+-      * calls.c (alloc_max_size): Use HOST_WIDE_INT_UC (10??)
+-      instead of 10??LU, perform unit multiplication in wide_int,
+-      don't change alloc_object_size_limit if the limit is larger
+-      than SSIZE_MAX.
+-
+-      PR middle-end/81052
+-      * omp-low.c (diagnose_sb_0): Handle flag_openmp_simd like flag_openmp.
+-      (pass_diagnose_omp_blocks::gate): Enable also for flag_openmp_simd.
+-
+-2017-09-06  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline:
+-      2017-08-30  Bill Schmidt  <address@hidden>
+-
+-      PR tree-optimization/81987
+-      * gimple-ssa-strength-reduction.c (insert_initializers): Don't
+-      insert an initializer in a location not dominated by the stride
+-      definition.
+-
+-2017-09-05  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline
+-      2017-08-29  Bill Schmidt  <address@hidden>
+-                  Jakub Jelinek  <address@hidden>
+-                  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/81503
+-      * gimple-ssa-strength-reduction.c (replace_mult_candidate): Ensure
+-      folded constant fits in the target type; reorder tests for clarity.
+-
+-2017-09-05  Pierre-Marie de Rodat  <address@hidden>
+-
+-      Backport from trunk
+-      PR ada/79542
+-      * dwarf2out.c (modified_type_die): For C typedef types that have
+-      an ultimate origin, process the ultimate origin instead of the
+-      input type.
+-      (gen_typedef_die): Assert that input DECLs have no ultimate
+-      origin.
+-      (gen_type_die_with_usage): For typedef variants that have an
+-      ultimate origin, just call gen_decl_die on the original DECL.
+-      (process_scope_var): Avoid creating DIEs for local typedefs and
+-      concrete static variables.
+-
+-2017-08-31  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline
+-      2017-08-25  Bill Schmidt  <address@hidden>
+-
+-      PR target/81504
+-      * config/rs6000/rs6000.c (find_alignment_op): Add reference
+-      parameter and_insn and return it.
+-      (recombine_lvx_pattern): Insert a copy to ensure availability of
+-      the base register of the copied masking operation at the point of
+-      the instruction replacement.
+-      (recombine_stvx_pattern): Likewise.
+-
+-2017-08-29  Michael Meissner  <address@hidden>
+-
+-      Back port from trunk
+-      2017-08-07  Michael Meissner  <address@hidden>
+-
+-      PR target/81593
+-      * config/rs6000/vsx.md (vsx_concat_<mode>_1): New combiner insns
+-      to recognize inserting into a vector from a double word element
+-      that was extracted from another vector, and eliminate extra
+-      XXPERMDI instructions.
+-      (vsx_concat_<mode>_2): Likewise.
+-      (vsx_concat_<mode>_3): Likewise.
+-      (vsx_set_<mode>, VSX_D): Rewrite vector set in terms of vector
+-      concat to allow optimizing inserts from previous extracts.
+-
+-2017-08-29  Alan Modra  <address@hidden>
+-
+-      Apply from mainline
+-      2017-08-12  Alan Modra  <address@hidden>
+-      PR target/81170
+-      PR target/81295
+-      * config/rs6000/sysv4.h (STARTFILE_LINUX_SPEC): Upgrade to
+-      match gnu-user.h startfile.
+-      (ENDFILE_LINUX_SPEC): Similarly.
+-
+-      2017-08-08  Alan Modra  <address@hidden>
+-                  H.J. Lu  <address@hidden>
+-      PR target/81170
+-      PR target/81295
+-      PR driver/81523
+-      * gcc.c (NO_PIE_SPEC): Delete.
+-      (PIE_SPEC): Define as !no-pie/pie.  Move static|shared|r
+-      exclusion..
+-      (LINK_PIE_SPEC): ..to here.
+-      (LINK_COMMAND_SPEC): Support -no-pie.
+-      * config/gnu-user.h (GNU_USER_TARGET_STARTFILE_SPEC): Correct
+-      chain of crtbegin*.o selection, update for PIE_SPEC changes and
+-      format.
+-      (GNU_USER_TARGET_ENDFILE_SPEC): Similarly.
+-      * config/sol2.h (STARTFILE_CRTBEGIN_SPEC): Similarly.
+-      (ENDFILE_CRTEND_SPEC): Similarly.
+-
+-2017-08-29  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2017-08-28  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/81977
+-      * tree-ssa-sccvn.c (vn_reference_lookup_3): Fix look through
+-      memcpy.
+-
+-      2017-08-28  Richard Biener  <address@hidden>
+-
+-      PR debug/81993
+-      * dwarf2out.c (gen_remaining_tmpl_value_param_die_attributes):
+-      Do nothing for removed DIEs.
+-
+-2017-08-28  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2017-06-14  Richard Biener  <address@hidden>
+-
+-      PR middle-end/81088
+-      * fold-const.c (split_tree): Drop TREE_OVERFLOW flag from
+-      literal constants.
+-      (fold_binary_loc): When associating do not treat pre-existing
+-      TREE_OVERFLOW on literal constants as a reason to allow
+-      TREE_OVERFLOW on associated literal constants.
+-
+-      2017-06-13  Richard Biener  <address@hidden>
+-
+-      PR middle-end/81065
+-      * fold-const.c (extract_muldiv_1): Remove bogus distribution
+-      case of C * (x * C2 + C3).
+-      (fold_addr_of_array_ref_difference): Properly fold index difference.
+-
+-      2017-06-07  Marek Polacek  <address@hidden>
+-
+-      PR sanitizer/80932
+-      * fold-const.c (extract_muldiv_1) <case MINUS_EXPR>: Add
+-      TYPE_OVERFLOW_WRAPS check.
+-
+-2017-08-28  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2017-08-21  Richard Biener  <address@hidden>
+-
+-      PR middle-end/81884
+-      * tree-ssa-alias.c (stmt_kills_ref_p): Handle array accesses
+-      at struct end conservatively when comparing common bases.
+-
+-      2017-05-04  Richard Biener  <address@hidden>
+-
+-      * tree.c (array_at_struct_end_p): Handle arrays at struct
+-      end with flexarrays more conservatively.  Refactor and treat
+-      arrays of arrays or aggregates more strict.  Fix
+-      VIEW_CONVERT_EXPR handling.  Remove allow_compref argument.
+-      * tree.h (array_at_struct_end_p): Adjust prototype.
+-      * gimple-fold.c (get_range_strlen): Likewise.
+-      * tree-chkp.c (chkp_may_narrow_to_field): Likewise.
+-
+-2017-08-28  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2017-08-01  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/81181
+-      * tree-ssa-pre.c (compute_antic_aux): Defer clean() to ...
+-      (compute_antic): ... end of iteration here.
+-
+-      2017-08-08  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/81723
+-      * tree-vect-slp.c (struct bst_traits): New hash traits.
+-      (bst_fail): New global.
+-      (vect_build_slp_tree_2): New worker, split out from ...
+-      (vect_build_slp_tree): ... this now wrapping it with using
+-      bst_fail set to cache SLP tree build fails.  Properly handle
+-      max_tree_size.
+-      (vect_analyze_slp_instance): Allocate and free bst_fail.
+-
+-      2017-08-24  Richard Biener  <address@hidden>
+-
+-      PR target/81921
+-      * config/i386/i386.c: Include symbol-summary.h, ipa-prop.h
+-      and ipa-inline.h.
+-      (ix86_can_inline_p): When ix86_fpmath flags do not match
+-      check whether the callee uses FP math at all.
+-
+-2017-08-23  Peter Bergner  <address@hidden>
+-
+-      Backport from mainline
+-      2017-08-17  Peter Bergner  <address@hidden>
+-
+-      PR target/72804
+-      * config/rs6000/vsx.md (*vsx_le_permute_<mode>): Add support for
+-      operands residing in integer registers.
+-      (*vsx_le_perm_load_<mode>): Likewise.
+-      (*vsx_le_perm_store_<mode>): Likewise.
+-      (define_peephole2): Add peepholes to optimize the above.
+-
+-2017-08-22  Peter Bergner  <address@hidden>
+-
+-      Backport from mainline
+-      2017-08-17  Peter Bergner  <address@hidden>
+-
+-      PR target/80210
+-      * config/rs6000/rs6000.c (rs6000_activate_target_options): New function.
+-      (rs6000_set_current_function): Rewrite function to use it.
+-
+-2017-08-22  Sebastian Huber  <address@hidden>
+-
+-      Backport from mainline
+-      2017-08-22  Sebastian Huber  <address@hidden>
+-
+-      * config.gcc (powerpc-*-rtems*): Add rs6000/linux64.opt.
+-      * config/rs6000/rtems.h (ASM_PREFERRED_EH_DATA_FORMAT): New define.
+-      (DOT_SYMBOLS): Likewise.
+-      (MINIMAL_TOC_SECTION_ASM_OP): Likewise.
+-      (RELOCATABLE_NEEDS_FIXUP): Likewise.
+-      (RS6000_ABI_NAME): Likewise.
+-      (TARGET_CMODEL): Likewise.
+-      (TOC_SECTION_ASM_OP): Likewise.
+-      (SET_CMODEL): New macro.
+-      (SUBSUBTARGET_OVERRIDE_OPTIONS): Evaluate cmodel options.
+-
+-2017-08-22  Georg-Johann Lay  <address@hidden>
+-
+-      Backport from 2017-08-22 trunk r251256.
+-
+-      PR target/81910
+-      * config/avr/avr.c (avr_handle_addr_attribute): Early return if
+-      not VAR_P. Filter attribute warnings with OPT_Wattributes.
+-      (avr_attribute_table) <io, io_low, address>: Initialize
+-      .decl_required with true.
+-
+-2017-08-21  Georg-Johann Lay  <address@hidden>
+-
+-      PR target/79883
+-      * config/avr/avr.c (avr_set_current_function): Typo in diagnostic.
+-
+-2017-08-19  Uros Bizjak  <address@hidden>
+-
+-      PR target/81894
+-      * doc/extend.texi (x86 Built-in Functions): Correct the name of
+-      __builtin_ia32_lzcnt_u16.
+-
+-2017-08-17  Uros Bizjak  <address@hidden>
+-
+-      Backport from mainline
+-      2017-08-17  Maxim Ostapenko  <address@hidden>
+-
+-      PR target/81861
+-      * config/i386/i386.c (ix86_option_override_internal): Save target
+-      specific options after ix86_stack_protector_guard_reg was changed.
+-
+-2017-08-16  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline
+-      2017-08-08  Bill Schmidt  <address@hidden>
+-
+-      PR tree-optimization/81354
+-      * gimple-ssa-strength-reduction.c (create_add_on_incoming_edge):
+-      Insert on edges rather than explicitly creating landing pads.
+-      (analyze_candidates_and_replace): Commit edge inserts.
+-
+-2017-08-15  Joseph Myers  <address@hidden>
+-
+-      PR target/78460
+-      PR target/67712
+-      * config/sh/sh-mem.cc (sh_expand_cmpnstr): Only unroll for
+-      constant count if that count is less than 32.
+-
+-2017-08-14  Richard Biener  <address@hidden>
+-
+-      * BASE-VER: Set to 7.2.1.
+-
+-2017-08-14  Release Manager
+-
+-      * GCC 7.2.0 released.
+-
+-2017-08-08  Richard Biener  <address@hidden>
+-
+-      PR middle-end/81766
+-      * function.c (thread_prologue_and_epilogue_insns): Restore
+-      behavior of always calling find_many_sub_basic_blocks on
+-      the inserted prologue.
+-
+-2017-08-02  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/79499
+-      * function.c (thread_prologue_and_epilogue_insns): Determine blocks
+-      for find_many_sub_basic_blocks bitmap by looking up BLOCK_FOR_INSN
+-      of first NONDEBUG_INSN_P in each of the split_prologue_seq and
+-      prologue_seq sequences - if any.
+-
+-2017-08-01  Uros Bizjak  <address@hidden>
+-
+-      PR target/81641
+-      * config/i386/i386.c (ix86_print_operand_address_as): For -masm=intel
+-      print "ds:" only for immediates in generic address space.
+-
+-2017-08-01  Jakub Jelinek  <address@hidden>
+-
+-      PR target/81622
+-      * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): For
+-      __builtin_vec_cmpne verify both arguments are compatible vectors
+-      before looking at TYPE_MODE on the element type.  For __builtin_vec_ld
+-      verify arg1_type is a pointer or array type.  For __builtin_vec_st,
+-      move computation of aligned to after checking the argument types.
+-      Formatting fixes.
+-
+-2017-08-01  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-07-26  Martin Liska  <address@hidden>
+-
+-      PR gcov-profile/81561
+-      * gcov.c (unblock): Make unblocking safe as we need to preserve
+-      index correspondence of blocks and block_lists.
+-
+-2017-08-01  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/71752
+-      PR tree-optimization/81633
+-      * tree-vect-slp.c (vect_get_slp_defs): Handle null operands
+-      in the original suggested way.
+-
+-2017-08-01  Richard Sandiford  <address@hidden>
+-
+-      PR tree-optimization/80769
+-      * tree-ssa-strlen.c (strinfo): Document that "stmt" is also used
+-      for malloc and calloc.  Document the new invariant that all related
+-      strinfos have delayed lengths or none do.
+-      (get_next_strinfo): New function.
+-      (verify_related_strinfos): Move earlier in file.
+-      (set_endptr_and_length): New function, split out from...
+-      (get_string_length): ...here.  Also set the lengths of related
+-      strinfos.
+-
+-2017-08-01  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/81588
+-      * tree-ssa-reassoc.c (optimize_range_tests_var_bound): If
+-      ranges[i].in_p, invert comparison code ccode.  For >/>=,
+-      swap rhs1 and rhs2 and comparison code unconditionally,
+-      for </<= don't do that.  Don't swap rhs1/rhs2 again if
+-      ranges[i].in_p, instead invert comparison code ccode if
+-      opcode or oe->rank is BIT_IOR_EXPR.
+-
+-2017-07-31  Andreas Krebbel  <address@hidden>
+-
+-      Backport from mainline
+-      2017-07-31  Andreas Krebbel  <address@hidden>
+-
+-      * config.gcc: Add z14.
+-      * config/s390/driver-native.c (s390_host_detect_local_cpu): Add
+-      CPU model numbers for z13s and z14.
+-      * config/s390/s390-c.c (s390_resolve_overloaded_builtin): Replace
+-      arch12 with z14.
+-      * config/s390/s390-opts.h (enum processor_type): Rename
+-      PROCESSOR_ARCH12 to PROCESSOR_3906_Z14.
+-      * config/s390/s390.c (processor_table): Add field for CPU name to
+-      be passed to Binutils.
+-      (s390_asm_output_machine_for_arch): Use the new field in
+-      processor_table for Binutils.
+-      (s390_expand_builtin): Replace arch12 with z14.
+-      (s390_issue_rate): Rename PROCESSOR_ARCH12 to PROCESSOR_3906_Z14.
+-      (s390_get_sched_attrmask): Likewise.
+-      (s390_get_unit_mask): Likewise.
+-      * config/s390/s390.opt: Add z14 to processor_type enum.
+-
+-2017-07-31  Jakub Jelinek  <address@hidden>
+-
+-      PR sanitizer/81604
+-      * ubsan.c (ubsan_type_descriptor): For UBSAN_PRINT_ARRAY don't
+-      change type to the element type, instead add eltype variable and
+-      use it where we are interested in the element type.
+-
+-2017-07-28  Peter Bergner  <address@hidden>
+-
+-      Backport from mainline
+-      2017-07-28  Peter Bergner  <address@hidden>
+-
+-      * config/rs6000/ppc-auxv.h (PPC_FEATURE2_DARN): New define.
+-      (PPC_FEATURE2_SCV): Likewise.
+-      * config/rs6000/rs6000.c (cpu_supports_info): Use them.
+-
+-2017-07-28  David Edelsohn  <address@hidden>
+-
+-      Backport from mainline
+-      2017-07-25  David Edelsohn  <address@hidden>
+-
+-      * dwarf2asm.c (dw2_asm_output_nstring): Encode double quote
+-      character for AIX.
+-      * dwarf2out.c (output_macinfo): Copy debug_line_section_label
+-      to dl_section_ref.  On AIX, append an expression to subtract
+-      the size of the section length to dl_section_ref.
+-
+-2017-07-28  Bin Cheng  <address@hidden>
+-
+-      Backport from mainline r250496
+-      2017-07-25  Bin Cheng  <address@hidden>
+-
+-      PR target/81414
+-      * config/aarch64/cortex-a57-fma-steering.c (analyze): Skip fmul/fmac
+-      instructions if no du chain is found.
+-
+-2017-07-28  Sebastian Huber  <address@hidden>
+-
+-      Backport from mainline
+-      2017-07-28  Sebastian Huber  <address@hidden>
+-
+-      * config.gcc (powerpc-*-rtems*): Remove rs6000/eabi.h.  Add
+-      rs6000/biarch64.h.
+-      * config/rs6000/rtems.h (ASM_DECLARE_FUNCTION_SIZE): New macro.
+-      (ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): Likewise.
+-      (CRT_CALL_STATIC_FUNCTION): Likewise.
+-      (ASM_DEFAULT_SPEC): New define.
+-      (ASM_SPEC32): Likewise.
+-      (ASM_SPEC64): Likewise.
+-      (ASM_SPEC_COMMON): Likewise.
+-      (ASM_SPEC): Likewise.
+-      (INVALID_64BIT): Likewise.
+-      (LINK_OS_DEFAULT_SPEC): Likewise.
+-      (LINK_OS_SPEC32): Likewise.
+-      (LINK_OS_SPEC64): Likewise.
+-      (POWERPC_LINUX): Likewise.
+-      (PTRDIFF_TYPE): Likewise.
+-      (RESTORE_FP_PREFIX): Likewise.
+-      (RESTORE_FP_SUFFIX): Likewise.
+-      (SAVE_FP_PREFIX): Likewise.
+-      (SAVE_FP_SUFFIX): Likewise.
+-      (SIZE_TYPE): Likewise.
+-      (SUBSUBTARGET_OVERRIDE_OPTIONS): Likewise.
+-      (TARGET_64BIT): Likewise.
+-      (TARGET_64BIT): Likewise.
+-      (TARGET_AIX): Likewise.
+-      (WCHAR_TYPE_SIZE): Likewise.
+-      (WCHAR_TYPE): Undefine.
+-      (TARGET_OS_CPP_BUILTINS): Add 64-bit PowerPC defines.
+-      (CPP_OS_DEFAULT_SPEC): Use previous CPP_OS_RTEMS_SPEC.
+-      (CPP_OS_RTEMS_SPEC): Delete.
+-      (SUBSUBTARGET_EXTRA_SPECS): Remove cpp_os_rtems.  Add
+-      asm_spec_common, asm_spec32, asm_spec64, link_os_spec32, and
+-      link_os_spec64.
+-      * config/rs6000/t-rtems: Add mcpu=e6500/m64 multilibs.
+-
+-2017-07-28  Sebastian Huber  <address@hidden>
+-
+-      Backport from mainline
+-      2017-07-27  Sebastian Huber  <address@hidden>
+-
+-      * config.gcc (riscv*-*-elf*): Add (riscv*-*-rtems*).
+-      * config/riscv/rtems.h: New file.
+-
+-2017-07-27  Eric Botcazou  <address@hidden>
+-
+-      * config/sparc/sparc.c (sparc_option_override): Set MASK_FSMULD flag
+-      earlier and only if MASK_FPU is set.  Adjust formatting.
+-
+-2017-07-27  Andreas Krebbel  <address@hidden>
+-
+-      Backport from mainline
+-      2017-07-27  Andreas Krebbel  <address@hidden>
+-
+-      PR target/81534
+-      * config/s390/s390.md ("*atomic_compare_and_swap<mode>_1")
+-      ("*atomic_compare_and_swapdi_2", "*atomic_compare_and_swapsi_3"):
+-      Change s_operand to memory_operand.
+-
+-2017-07-27  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/81555
+-      PR tree-optimization/81556
+-      * tree-ssa-reassoc.c (rewrite_expr_tree): Add NEXT_CHANGED argument,
+-      if true, force CHANGED for the recursive invocation.
+-      (reassociate_bb): Remember original length of ops array, pass
+-      len != orig_len as NEXT_CHANGED in rewrite_expr_tree call.
+-
+-2017-07-27  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-07-17  Martin Liska  <address@hidden>
+-
+-      PR sanitizer/81302
+-      * opts.c (finish_options): Do not allow -fgnu-tm
+-      w/ -fsanitize={kernel-,}address.  Say sorry.
+-
+-2017-07-27  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-07-26  Martin Liska  <address@hidden>
+-
+-      PR sanitize/81186
+-      * function.c (expand_function_start): Make expansion of
+-      nonlocal_goto_save_area after parm_birth_insn.
+-
+-2017-07-27  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-06-30  Martin Liska  <address@hidden>
+-
+-      PR sanitizer/81021
+-      * tree-eh.c (lower_resx): Call BUILT_IN_ASAN_HANDLE_NO_RETURN
+-      before BUILT_IN_UNWIND_RESUME when ASAN is used.
+-
+-2017-07-27  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-06-28  Martin Liska  <address@hidden>
+-
+-      PR sanitizer/81224
+-      * asan.c (instrument_derefs): Bail out inner references
+-      that are hard register variables.
+-
+-2017-07-26  Sebastian Huber  <address@hidden>
+-
+-      Backport from mainline
+-      2017-07-26  Sebastian Huber  <address@hidden>
+-
+-      * config/sparc/sparc.c (dump_target_flag_bits): Dump MASK_FSMULD.
+-      (sparc_option_override): Honour MASK_FSMULD.
+-      * config/sparc/sparc.h (MASK_FEATURES): Add MASK_FSMULD.
+-      * config/sparc/sparc.md (muldf3_extend): Use TARGET_FSMULD.
+-      * config/sparc/sparc.opt (mfsmuld): New option.
+-      * doc/invoke.texi (mfsmuld): Document option.
+-
+-2017-07-26  Georg-Johann Lay  <address@hidden>
+-
+-      Backport from 2017-07-25 trunk r250499.
+-
+-      PR 81487
+-      * hsa-brig.c (brig_init): Use xasprintf instead of asprintf.
+-      * gimple-pretty-print.c (dump_probability): Same.
+-      * tree-ssa-structalias.c (alias_get_name): Same.
+-
+-2017-07-26  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2017-06-18  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/81410
+-      * tree-vect-stmts.c (vectorizable_load): Properly adjust for
+-      the gap in the ! slp_perm SLP case after each group.
+-
+-      2017-07-25  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/81455
+-      * tree-ssa-loop-unswitch.c (find_loop_guard): Make sure to
+-      not walk in cycles when looking for guards.
+-
+-      2017-07-25  Richard Biener  <address@hidden>
+-
+-      PR middle-end/81505
+-      * fold-const.c (fold_negate_const): TREE_OVERFLOW should be
+-      sticky.
+-
+-      2017-06-28  Jakub Jelinek  <address@hidden>
+-
+-      PR target/81175
+-      * config/i386/i386.c (ix86_init_mmx_sse_builtins): Use def_builtin
+-      rather than def_builtin_pure for __builtin_ia32_gatherpf*.
+-
+-      2017-06-26  Richard Biener  <address@hidden>
+-
+-      PR target/81175
+-      * config/i386/i386.c (ix86_init_mmx_sse_builtins):
+-      Use def_builtin_pure for all gather builtins.
+-
+-      2017-06-21  Marc Glisse  <address@hidden>
+-
+-      * config/i386/i386.c (struct builtin_isa): New field pure_p.
+-      Reorder for compactness.
+-      (def_builtin, def_builtin2, ix86_add_new_builtins): Handle pure_p.
+-      (def_builtin_pure, def_builtin_pure2): New functions.
+-      (ix86_init_mmx_sse_builtins) [__builtin_ia32_stmxcsr]: Mark as pure.
+-
+-2017-07-26  Sebastian Huber  <address@hidden>
+-
+-      Backport from mainline
+-      2017-07-26  Sebastian Huber  <address@hidden>
+-
+-      * config/sparc/sparc.c (sparc_option_override): Remove MASK_FPU
+-      from all CPU target flags enable members.
+-
+-2017-07-26  Sebastian Huber  <address@hidden>
+-
+-      Backport from mainline
+-      2017-07-25  Sebastian Huber  <address@hidden>
+-
+-      PR libgcc/61152
+-      * config/aarch64/rtems.h: Add GCC Runtime Library Exception.
+-      Format changes.
+-      * config/arm/rtems.h: Likewise.
+-      * config/bfin/rtems.h: Likewise.
+-      * config/i386/rtemself.h: Likewise.
+-      * config/lm32/rtems.h: Likewise.
+-      * config/m32c/rtems.h: Likewise.
+-      * config/m68k/rtemself.h: Likewise.
+-      * config/microblaze/rtems.h: Likewise.
+-      * config/mips/rtems.h: Likewise.
+-      * config/moxie/rtems.h: Likewise.
+-      * config/nios2/rtems.h: Likewise.
+-      * config/rs6000/rtems.h: Likewise.
+-      * config/rtems.h: Likewise.
+-      * config/sh/rtems.h: Likewise.
+-      * config/sh/rtemself.h: Likewise.
+-      * config/sparc/rtemself.h: Likewise.
+-
+-2017-07-25  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline
+-      2017-07-14  Bill Schmidt  <address@hidden>
+-
+-      PR tree-optimization/81162
+-      * gimple-ssa-strength-reduction.c (replace_mult_candidate): Don't
+-      replace a negate with an add.
+-
+-2017-07-25  Georg-Johann Lay  <address@hidden>
+-
+-      Backport from 2017-07-12 trunk r250151.
+-
+-      PR target/81407
+-      * config/avr/avr.c (avr_encode_section_info)
+-      [progmem && !TREE_READONLY]: Error if progmem object needs
+-      constructing.
+-
+-2017-07-25  Wilco Dijkstra  <address@hidden>
+-
+-      PR target/79041
+-      * config/aarch64/aarch64.c (aarch64_classify_symbol):
+-      Avoid SYMBOL_SMALL_ABSOLUTE for literals with pc-relative literals.
+-
+-2017-07-25  Georg-Johann Lay  <address@hidden>
+-
+-      Backport from trunk r247719.
+-
+-      2017-05-06  Richard Sandiford  <address@hidden>
+-
+-      PR rtl-optimization/75964
+-      * simplify-rtx.c (simplify_const_relational_operation): Remove
+-      invalid handling of comparisons of integer ABS.
+-
+-2017-07-25  Bin Cheng  <address@hidden>
+-
+-      Backport from 2017-07-20 trunk r250384.
+-
+-      PR tree-optimization/81388
+-      Revert r238585:
+-      2016-07-21  Bin Cheng  <address@hidden>
+-
+-      * tree-ssa-loop-niter.c (number_of_iterations_lt_to_ne): Clean up
+-      by removing computation of may_be_zero.
+-
+-2017-07-23  Uros Bizjak  <address@hidden>
+-
+-      PR target/80569
+-      * config/i386/i386.c (ix86_option_override_internal): Disable
+-      BMI, BMI2 and TBM instructions for -m16.
+-
+-2017-07-19  Michael Meissner  <address@hidden>
+-
+-      Back port from trunk
+-      2017-07-12  Michael Meissner  <address@hidden>
+-
+-      PR target/81193
+-      * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): If GLIBC
+-      provides the hardware capability bits, define the macro
+-      __BUILTIN_CPU_SUPPORTS__.
+-      * config/rs6000/rs6000.c (cpu_expand_builtin): Generate a warning
+-      if GLIBC does not provide the hardware capability bits.  Add a
+-      gcc_unreachable call if the built-in cpu function is neither
+-      __builtin_cpu_is nor __builtin_cpu_supports.
+-      * doc/extend.texi (PowerPC built-in functions): Document that
+-      GLIBC 2.23 or newer is needed by __builtin_cpu_is and
+-      __builtin_cpu_supports.  Document the macros defined by GCC if the
+-      newer GLIBC is available.
+-
+-2017-07-18  Uros Bizjak  <address@hidden>
+-
+-      PR target/81471
+-      * config/i386/i386.md (rorx_immediate_operand): New mode attribute.
+-      (*bmi2_rorx<mode>3_1): Use rorx_immediate_operand as
+-      operand 2 predicate.
+-      (*bmi2_rorxsi3_1_zext): Use const_0_to_31_operand as
+-      operand 2 predicate.
+-      (ror,rol -> rorx splitters): Use const_int_operand as
+-      operand 2 predicate.
+-
+-2017-07-18  Tom de Vries  <address@hidden>
+-
+-      backport from mainline:
+-      PR target/81069
+-      2017-07-17  Tom de Vries  <address@hidden>
+-
+-      * config/nvptx/nvptx.c (nvptx_single): Insert diverging branch as late
+-      as possible.
+-
+-2017-07-18  Georg-Johann Lay  <address@hidden>
+-
+-      Backport from 2017-07-18 trunk r250301.
+-
+-      PR target/81473
+-      * config/avr/avr.c (avr_optimize_casesi): Don't use
+-      INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX.
+-
+-2017-07-17  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/81428
+-      * match.pd (X / X -> one): Don't optimize _Fract divisions, as 1
+-      can't be built for those types.
+-
+-      PR tree-optimization/81365
+-      * tree-ssa-phiprop.c (propagate_with_phi): When considering hoisting
+-      aggregate moves onto bb predecessor edges, make sure there are no
+-      loads that could alias the lhs in between the start of bb and the
+-      loads from *phi.
+-
+-      Backported from mainline
+-      2017-06-30  Jakub Jelinek  <address@hidden>
+-
+-      PR target/81225
+-      * config/i386/sse.md (vec_extract_lo_<mode><mask_name>): For
+-      V8FI, V16FI and VI8F_256 iterators, use <store_mask_predicate> instead
+-      of nonimmediate_operand and <store_mask_constraint> instead of m for
+-      the input operand.  For V8FI iterator, always split if input is a MEM.
+-      For V16FI and V8SF_256 iterators, don't test if both operands are MEM
+-      if <mask_applied>.  For VI4F_256 iterator, use <store_mask_predicate>
+-      instead of register_operand and <store_mask_constraint> instead of v for
+-      the input operand.  Make sure both operands aren't MEMs for if not
+-      <mask_applied>.
+-
+-2017-07-17  Georg-Johann Lay  <address@hidden>
+-
+-      Backport from 2017-07-17 trunk r250258.
+-
+-      PR 80929
+-      * config/avr/avr.c (avr_mul_highpart_cost): New static function.
+-      (avr_rtx_costs_1) [TRUNCATE]: Use it to compute mul_highpart cost.
+-      [LSHIFTRT, outer_code = TRUNCATE]: Same.
+-
+-2017-07-17  Sebastian Huber  <address@hidden>
+-
+-      Backport from mainline
+-      2017-07-17  Sebastian Huber  <address@hidden>
+-
+-      *  gcc/config/sparc/rtemself.h (TARGET_OS_CPP_BUILTINS): Add
+-      conditional builtin define __FIX_LEON3FT_B2BST.
+-
+-2017-07-17  Daniel Cederman  <address@hidden>
+-
+-      Backport from mainline
+-      2017-07-17  Daniel Cederman  <address@hidden>
+-
+-      * config/sparc/t-rtems: Add mfix-gr712rc multilibs. Replace
+-      MULTILIB_EXCEPTIONS with MULTILIB_REQUIRED. Match -mfix-gr712rc
+-      with -mfix-ut700.
+-
+-2017-07-16  Eric Botcazou  <address@hidden>
+-
+-      PR rtl-optimization/81424
+-      * optabs.c (prepare_cmp_insn): Use copy_to_reg instead of force_reg
+-      to remove potential trapping from operands if -fnon-call-exceptions.
+-
+-2017-07-16  Daniel Cederman  <address@hidden>
+-
+-      * config/sparc/sparc.md (divdf3_fix): Add NOP to prevent back
+-      to back store errata sensitive sequence from being generated.
+-      (sqrtdf2_fix): Likewise.
+-
+-2017-07-12  Georg-Johann Lay  <address@hidden>
+-
+-      Backport from 2017-07-12 trunk r250156.
+-
+-      PR target/79883
+-      * config/avr/avr.c (avr_set_current_function): In diagnostic
+-      messages: Quote keywords and (parts of) identifiers.
+-      [WITH_AVRLIBC]: Warn for functions named "ISR", "SIGNAL" or
+-      "INTERRUPT".
+-
+-2017-07-11  Daniel Cederman  <address@hidden>
+-
+-      * config/sparc/sparc.opt (mfix-ut700): New option.
+-      (mfix-gr712rc): Likewise.
+-      (sparc_fix_b2bst): New variable.
+-      * doc/invoke.texi (SPARC options): Document them.
+-      (ARM options): Fix warnings.
+-      * config/sparc/sparc.c (sparc_do_work_around_errata): Insert NOP
+-      instructions to prevent sequences that can trigger the store-store
+-      errata for certain LEON3FT processors.
+-      (pass_work_around_errata::gate): Also test sparc_fix_b2bst.
+-      (sparc_option_override): Set sparc_fix_b2bst appropriately.
+-      * config/sparc/sparc.md (fix_b2bst): New attribute.
+-      (in_branch_delay): Prevent stores in delay slot if fix_b2bst.
+-
+-2017-07-10  Uros Bizjak  <address@hidden>
+-
+-      PR target/81375
+-      * config/i386/i386.md (divsf3): Add TARGET_SSE to TARGET_SSE_MATH.
+-      (rcpps): Ditto.
+-      (*rsqrtsf2_sse): Ditto.
+-      (rsqrtsf2): Ditto.
+-      (div<mode>3): Macroize insn from divdf3 and divsf3
+-      using MODEF mode iterator.
+-
+-2017-07-07  Michael Meissner  <address@hidden>
+-
+-      Backport from mainline
+-      2017-07-07  Michael Meissner  <address@hidden>
+-
+-      PR target/81348
+-      * config/rs6000/rs6000.md (HI sign_extend splitter): Use the
+-      correct operand in doing the split.
+-
+-2017-07-07  Jose E. Marchesi  <address@hidden>
+-
+-      * config/sparc/m8.md: New file.
+-      * config/sparc/sparc.md: Include m8.md.
+-
+-2017-07-07  Jose E. Marchesi  <address@hidden>
+-
+-      * config/sparc/sparc.opt: New option -mvis4b.
+-      * config/sparc/sparc.c (dump_target_flag_bits): Handle MASK_VIS4B.
+-      (sparc_option_override): Handle VIS4B.
+-      (enum sparc_builtins): Define
+-      SPARC_BUILTIN_DICTUNPACK{8,16,32},
+-      SPARC_BUILTIN_FPCMP{LE,GT,EQ,NE}{8,16,32}SHL,
+-      SPARC_BUILTIN_FPCMPU{LE,GT}{8,16,32}SHL,
+-      SPARC_BUILTIN_FPCMPDE{8,16,32}SHL and
+-      SPARC_BUILTIN_FPCMPUR{8,16,32}SHL.
+-      (check_constant_argument): New function.
+-      (sparc_vis_init_builtins): Define builtins
+-      __builtin_vis_dictunpack{8,16,32},
+-      __builtin_vis_fpcmp{le,gt,eq,ne}{8,16,32}shl,
+-      __builtin_vis_fpcmpu{le,gt}{8,16,32}shl,
+-      __builtin_vis_fpcmpde{8,16,32}shl and
+-      __builtin_vis_fpcmpur{8,16,32}shl.
+-      (sparc_expand_builtin): Check that the constant operands to
+-      __builtin_vis_fpcmp*shl and _builtin_vis_dictunpack* are indeed
+-      constant and in range.
+-      * config/sparc/sparc-c.c (sparc_target_macros): Handle
+-      TARGET_VIS4B.
+-      * config/sparc/sparc.h (SPARC_IMM2_P): Define.
+-      (SPARC_IMM5_P): Likewise.
+-      * config/sparc/sparc.md (cpu_feature): Add new feagure "vis4b".
+-      (enabled): Handle vis4b.
+-      (UNSPEC_DICTUNPACK): New unspec.
+-      (UNSPEC_FPCMPSHL): Likewise.
+-      (UNSPEC_FPUCMPSHL): Likewise.
+-      (UNSPEC_FPCMPDESHL): Likewise.
+-      (UNSPEC_FPCMPURSHL): Likewise.
+-      (cpu_feature): New CPU feature `vis4b'.
+-      (dictunpack{8,16,32}): New insns.
+-      (FPCSMODE): New mode iterator.
+-      (fpcscond): New code iterator.
+-      (fpcsucond): Likewise.
+-      (fpcmp{le,gt,eq,ne}{8,16,32}{si,di}shl): New insns.
+-      (fpcmpu{le,gt}{8,16,32}{si,di}shl): Likewise.
+-      (fpcmpde{8,16,32}{si,di}shl): Likewise.
+-      (fpcmpur{8,16,32}{si,di}shl): Likewise.
+-      * config/sparc/constraints.md: Define constraints `q' for unsigned
+-      2-bit integer constants and `t' for unsigned 5-bit integer
+-      constants.
+-      * config/sparc/predicates.md (imm5_operand_dictunpack8): New
+-      predicate.
+-      (imm5_operand_dictunpack16): Likewise.
+-      (imm5_operand_dictunpack32): Likewise.
+-      (imm2_operand): Likewise.
+-      * doc/invoke.texi (SPARC Options): Document -mvis4b.
+-      * doc/extend.texi (SPARC VIS Built-in Functions): Document the
+-      ditunpack* and fpcmp*shl builtins.
+-
+-2017-07-07  Jose E. Marchesi  <address@hidden>
+-
+-      * config.gcc: Handle m8 in --with-{cpu,tune} options.
+-      * config.in: Add HAVE_AS_SPARC6 define.
+-      * config/sparc/driver-sparc.c (cpu_names): Add entry for the SPARC
+-      M8.
+-      * config/sparc/sol2.h (CPP_CPU64_DEFAULT_SPEC): Define for
+-      TARGET_CPU_m8.
+-      (ASM_CPU32_DEFAUILT_SPEC): Likewise.
+-      (CPP_CPU_SPEC): Handle m8.
+-      (ASM_CPU_SPEC): Likewise.
+-      * config/sparc/sparc-opts.h (enum processor_type): Add
+-      PROCESSOR_M8.
+-      * config/sparc/sparc.c (m8_costs): New struct.
+-      (sparc_option_override): Handle TARGET_CPU_m8.
+-      (sparc32_initialize_trampoline): Likewise.
+-      (sparc64_initialize_trampoline): Likewise.
+-      (sparc_issue_rate): Likewise.
+-      (sparc_register_move_cost): Likewise.
+-      * config/sparc/sparc.h (TARGET_CPU_m8): Define.
+-      (CPP_CPU64_DEFAULT_SPEC): Define for M8.
+-      (ASM_CPU64_DEFAULT_SPEC): Likewise.
+-      (CPP_CPU_SPEC): Handle M8.
+-      (ASM_CPU_SPEC): Likewise.
+-      (AS_M8_FLAG): Define.
+-      * config/sparc/sparc.md: Add m8 to the cpu attribute.
+-      * config/sparc/sparc.opt: New option -mcpu=m8 for sparc targets.
+-      * configure.ac (HAVE_AS_SPARC6): Check for assembler support for
+-      M8 instructions.
+-      * configure: Regenerate.
+-      * doc/invoke.texi (SPARC Options): Document -mcpu=m8 and
+-      -mtune=m8.
+-
+-2017-07-07  Jose E. Marchesi  <address@hidden>
+-
+-      * config/sparc/niagara7.md: Rework the DFA scheduler to use insn
+-      subtypes.
+-      * config/sparc/sparc.md: Remove the `v3pipe' insn attribute.
+-      ("*movdi_insn_sp32"): Do not set v3pipe.
+-      ("*movsi_insn"): Likewise.
+-      ("*movdi_insn_sp64"): Likewise.
+-      ("*movsf_insn"): Likewise.
+-      ("*movdf_insn_sp32"): Likewise.
+-      ("*movdf_insn_sp64"): Likewise.
+-      ("*zero_extendsidi2_insn_sp64"): Likewise.
+-      ("*sign_extendsidi2_insn"): Likewise.
+-      ("*mov<VM32:mode>_insn"): Likewise.
+-      ("*mov<VM64:mode>_insn_sp64"): Likewise.
+-      ("*mov<VM64:mode>_insn_sp32"): Likewise.
+-      ("<plusminus_insn><VADDSUB:mode>3"): Likewise.
+-      ("<vlop:code><VL:mode>3"): Likewise.
+-      ("*not_<vlop:code><VL:mode>3"): Likewise.
+-      ("*nand<VL:mode>_vis"): Likewise.
+-      ("*<vlnotop:code>_not1<VL:mode>_vis"): Likewise.
+-      ("*<vlnotop:code>_not2<VL:mode>_vis"): Likewise.
+-      ("one_cmpl<VL:mode>2"): Likewise.
+-      ("faligndata<VM64:mode>_vis"): Likewise.
+-      ("alignaddrsi_vis"): Likewise.
+-      ("alignaddrdi_vis"): Likweise.
+-      ("alignaddrlsi_vis"): Likewise.
+-      ("alignaddrldi_vis"): Likewise.
+-      ("fcmp<gcond:code><GCM:gcm_name><P:mode>_vis"): Likewise.
+-      ("bmaskdi_vis"): Likewise.
+-      ("bmasksi_vis"): Likewise.
+-      ("bshuffle<VM64:mode>_vis"): Likewise.
+-      ("cmask8<P:mode>_vis"): Likewise.
+-      ("cmask16<P:mode>_vis"): Likewise.
+-      ("cmask32<P:mode>_vis"): Likewise.
+-      ("pdistn<P:mode>_vis"): Likewise.
+-      ("<vis3_addsub_ss_patname><VASS:mode>3"): Likewise.
+-
+-2017-07-07  Jose E. Marchesi  <address@hidden>
+-
+-      * config/sparc/sparc.md ("subtype"): New insn attribute.
+-      ("*wrgsr_sp64"): Set insn subtype.
+-      ("*rdgsr_sp64"): Likewise.
+-      ("alignaddrsi_vis"): Likewise.
+-      ("alignaddrdi_vis"): Likewise.
+-      ("alignaddrlsi_vis"): Likewise.
+-      ("alignaddrldi_vis"): Likewise.
+-      ("<plusminus_insn><VADDSUB:mode>3"): Likewise.
+-      ("fexpand_vis"): Likewise.
+-      ("fpmerge_vis"): Likewise.
+-      ("faligndata<VM64:mode>_vis"): Likewise.
+-      ("bshuffle<VM64:mode>_vis"): Likewise.
+-      ("cmask8<P:mode>_vis"): Likewise.
+-      ("cmask16<P:mode>_vis"): Likewise.
+-      ("cmask32<P:mode>_vis"): Likewise.
+-      ("fchksm16_vis"): Likewise.
+-      ("v<vis3_shift_patname><GCM:mode>3"): Likewise.
+-      ("fmean16_vis"): Likewise.
+-      ("fp<plusminus_insn>64_vis"): Likewise.
+-      ("<plusminus_insn>v8qi3"): Likewise.
+-      ("<vis3_addsub_ss_patname><VASS:mode>3"): Likewise.
+-      ("<vis4_minmax_patname><VMMAX:mode>3"): Likewise.
+-      ("<vis4_uminmax_patname><VMMAX:mode>3"): Likewise.
+-      ("<vis3_addsub_ss_patname>v8qi3"): Likewise.
+-      ("<vis4_addsub_us_patname><VAUS:mode>3"): Likewise.
+-      ("*movqi_insn"): Likewise.
+-      ("*movhi_insn"): Likewise.
+-      ("*movsi_insn"): Likewise.
+-      ("movsi_pic_gotdata_op"): Likewise.
+-      ("*movdi_insn_sp32"): Likewise.
+-      ("*movdi_insn_sp64"): Likewise.
+-      ("movdi_pic_gotdata_op"): Likewise.
+-      ("*movsf_insn"): Likewise.
+-      ("*movdf_insn_sp32"): Likewise.
+-      ("*movdf_insn_sp64"): Likewise.
+-      ("*zero_extendhisi2_insn"): Likewise.
+-      ("*zero_extendqihi2_insn"): Likewise.
+-      ("*zero_extendqisi2_insn"): Likewise.
+-      ("*zero_extendqidi2_insn"): Likewise.
+-      ("*zero_extendhidi2_insn"): Likewise.
+-      ("*zero_extendsidi2_insn_sp64"): Likewise.
+-      ("ldfsr"): Likewise.
+-      ("prefetch_64"): Likewise.
+-      ("prefetch_32"): Likewise.
+-      ("tie_ld32"): Likewise.
+-      ("tie_ld64"): Likewise.
+-      ("*tldo_ldub_sp32"): Likewise.
+-      ("*tldo_ldub1_sp32"): Likewise.
+-      ("*tldo_ldub2_sp32"): Likewise.
+-      ("*tldo_ldub_sp64"): Likewise.
+-      ("*tldo_ldub1_sp64"): Likewise.
+-      ("*tldo_ldub2_sp64"): Likewise.
+-      ("*tldo_ldub3_sp64"): Likewise.
+-      ("*tldo_lduh_sp32"): Likewise.
+-      ("*tldo_lduh1_sp32"): Likewise.
+-      ("*tldo_lduh_sp64"): Likewise.
+-      ("*tldo_lduh1_sp64"): Likewise.
+-      ("*tldo_lduh2_sp64"): Likewise.
+-      ("*tldo_lduw_sp32"): Likewise.
+-      ("*tldo_lduw_sp64"): Likewise.
+-      ("*tldo_lduw1_sp64"): Likewise.
+-      ("*tldo_ldx_sp64"): Likewise.
+-      ("*mov<VM32:mode>_insn"): Likewise.
+-      ("*mov<VM64:mode>_insn_sp64"): Likewise.
+-      ("*mov<VM64:mode>_insn_sp32"): Likewise.
+-
+-2017-07-07  Jose E. Marchesi  <address@hidden>
+-
+-      * config/sparc/sparc.md ("type"): New insn type viscmp.
+-      ("fcmp<gcond:code><GCM:gcm_name><P:mode>_vis"): Set insn type to
+-      viscmp.
+-      ("fpcmp<gcond:code>8<P:mode>_vis"): Likewise.
+-      ("fucmp<gcond:code>8<P:mode>_vis"): Likewise.
+-      ("fpcmpu<gcond:code><GCM:gcm_name><P:mode>_vis"): Likewise.
+-      * config/sparc/niagara7.md ("n7_vis_logical_v3pipe"): Handle
+-      viscmp.
+-      ("n7_vis_logical_11cycle"): Likewise.
+-      * config/sparc/niagara4.md ("n4_vis_logical"): Likewise.
+-      * config/sparc/niagara2.md ("niag3_vis": Likewise.
+-      * config/sparc/niagara.md ("niag_vis"): Likewise.
+-      * config/sparc/ultra3.md ("us3_fga"): Likewise.
+-      * config/sparc/ultra1_2.md ("us1_fga_double"): Likewise.
+-
+-2017-07-07  Jose E. Marchesi  <address@hidden>
+-
+-      * config/sparc/sparc.md: New instruction type `bmask'.
+-      (bmaskdi_vis): Use the `bmask' type.
+-      (bmasksi_vis): Likewise.
+-      * config/sparc/ultra3.md (us3_array): Likewise.
+-      * config/sparc/niagara7.md (n7_array): Likewise.
+-      * config/sparc/niagara4.md (n4_array): Likewise.
+-      * config/sparc/niagara2.md (niag2_vis): Likewise.
+-      (niag3_vis): Likewise.
+-      * config/sparc/niagara.md (niag_vis): Likewise.
+-
+-2017-07-05  Georg-Johann Lay  <address@hidden>
+-
+-      Backport from 2017-07-05 trunk r249995.
+-
+-      PR target/81305
+-      * config/avr/avr.c (avr_out_movhi_mr_r_xmega) [CONSTANT_ADDRESS_P]:
+-      Don't depend on "optimize > 0".
+-      (out_movhi_r_mr, out_movqi_mr_r): Same.
+-      (out_movhi_mr_r, out_movqi_r_mr): Same.
+-      (avr_address_cost) [CONSTANT_ADDRESS_P]: Don't depend cost for
+-      io_address_operand on "optimize > 0".
+-
+-2017-07-04  Uros Bizjak  <address@hidden>
+-
+-      PR target/81300
+-      * config/i386/i386.md (setcc + movzbl/and to xor + setcc peepholes):
+-      Require dead FLAGS_REG at the beginning of a peephole.
+-
+-2017-07-04  Uros Bizjak  <address@hidden>
+-
+-      PR target/81294
+-      * config/i386/adxintrin.h (_subborrow_u32): Swap _X and _Y
+-      arguments in the call to __builtin_ia32_sbb_u32.
+-      (_subborrow_u64): Swap _X and _Y arguments in the call to
+-      __builtin_ia32_sbb_u64.
+-
+-2017-07-03  Segher Boessenkool  <address@hidden>
+-
+-      Backport from trunk:
+-
+-      2017-06-15  Segher Boessenkool  <address@hidden>
+-
+-      * config/rs6000/rs6000.md (add<mode>3): Use reg_or_subregno instead
+-      of REGNO.
+-
+-2017-07-03  Tom de Vries  <address@hidden>
+-
+-      backport from mainline:
+-      PR tree-optimization/81192
+-      2017-07-03  Tom de Vries  <address@hidden>
+-
+-      * tree-ssa-tail-merge.c (same_succ_flush_bb): Handle
+-      BB_SAME_SUCC (bb) == NULL.
+-
+-2017-06-29  Michael Meissner  <address@hidden>
+-
+-      Backport from mainline
+-      2017-06-23  Michael Meissner  <address@hidden>
+-
+-      PR target/80510
+-      * config/rs6000/rs6000.md (ALTIVEC_DFORM): Do not allow DImode in
+-      32-bit, since indexed is not valid for DImode.
+-      (mov<mode>_hardfloat32): Reorder ISA 2.07 load/stores before ISA
+-      3.0 d-form load/stores to be the same as mov<mode>_hardfloat64.
+-      (define_peephole2 for Altivec d-form load): Add 32-bit support.
+-      (define_peephole2 for Altivec d-form store): Likewise.
+-
+-      Backport from mainline
+-      2017-06-20  Michael Meissner  <address@hidden>
+-
+-      PR target/79799
+-      * config/rs6000/rs6000.c (rs6000_expand_vector_init): Add support
+-      for doing vector set of SFmode on ISA 3.0.
+-      * config/rs6000/vsx.md (vsx_set_v4sf_p9): Likewise.
+-      (vsx_set_v4sf_p9_zero): Special case setting 0.0f to a V4SF
+-      element.
+-      (vsx_insert_extract_v4sf_p9): Add an optimization for inserting a
+-      SFmode value into a V4SF variable that was extracted from another
+-      V4SF variable without converting the element to double precision
+-      and back to single precision vector format.
+-      (vsx_insert_extract_v4sf_p9_2): Likewise.
+-
+-2017-06-29  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2017-06-19  Richard Biener  <address@hidden>
+-
+-      PR ipa/81112
+-      * ipa-prop.c (find_constructor_constant_at_offset): Handle
+-      RANGE_EXPR conservatively.
+-
+-2017-06-28  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2017-06-09  Richard Biener  <address@hidden>
+-
+-      PR middle-end/81007
+-      * ipa-polymorphic-call.c
+-      (ipa_polymorphic_call_context::restrict_to_inner_class):
+-      Skip FIELD_DECLs with error_mark_node type.
+-      * passes.def (all_lowering_passes): Run pass_build_cgraph_edges
+-      last again.
+-
+-      2017-06-14  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/81083
+-      * tree-ssa-sccvn.c (vn_reference_lookup_3): Do not use abnormals
+-      as values.
+-
+-2017-06-27  Segher Boessenkool  <address@hidden>
+-
+-      Backports from trunk:
+-
+-      2017-05-17  Segher Boessenkool  <address@hidden>
+-      PR middle-end/80692
+-      * real.c (do_compare): Give decimal_do_compare preference over
+-      comparing just the signs.
+-
+-      2017-05-31  Segher Boessenkool  <address@hidden>
+-      PR target/80618
+-      * config/rs6000/vector.md (*vector_uneq<mode>): Write the nor in the
+-      splitter result in the canonical way.
+-
+-      2017-06-09  Segher Boessenkool  <address@hidden>
+-      PR target/80966
+-      * config/rs6000/rs6000.c (rs6000_emit_allocate_stack): Assert that
+-      gen_add3_insn did not fail.
+-      * config/rs6000/rs6000.md (add<mode>3): If asked to add a constant to
+-      r0, construct that number in a temporary reg and add that reg to r0.
+-      If asked to put the result in r0 as well, fail.
+-
+-      2017-06-23  Segher Boessenkool  <address@hidden>
+-      PR middle-end/80902
+-      * builtins.c (expand_builtin_atomic_fetch_op): If emitting code after
+-      a call, force the call to not be a tail call.
+-
+-2017-06-27  Jakub Jelinek  <address@hidden>
+-
+-      PR sanitizer/81209
+-      * ubsan.c (ubsan_encode_value): Initialize DECL_CONTEXT on var.
+-
+-      PR middle-end/81207
+-      * gimple-fold.c (replace_call_with_call_and_fold): Handle
+-      gimple_vuse copying separately from gimple_vdef copying.
+-
+-2017-06-24  Jim Wilson  <address@hidden>
+-
+-      * config/aarch64/aarch64-cost-tables.h (qdf24xx_extra_costs): Move to
+-      here.
+-      * config/arm/aarch-cost-tables.h (qdf24xx_extra_costs): From here.
+-      * config/arm/arm-cpu-cdata.h: Regenerate.
+-      * config/arm/arm-cpu-data.h, config/arm/arm-cpu.h: Likewise.
+-      * config/arm/arm-tables.opt, config/arm/arm-tune.md: Likewise.
+-      * config/arm/arm-cpus.in: Delete falkor and qdf24xx entries.
+-      * config/arm/arm.c (arm_qdf24xx_tune): Delete.
+-      * config/arm/bpabi.h (BE8_LINK_SPEC): Delete falkor and qdf24xx
+-      support.
+-      * config/arm/t-aprofile (MULTILIB_MATCHES): Delete falkor and qdf24xx
+-      support.
+-      * config/arm/t-rmprofile: Likewise.
+-      * doc/invoke.texi (ARM Options): Drop falkor and qdf24xx support.
+-
+-2017-06-24  Marek Polacek  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-04  Marek Polacek  <address@hidden>
+-
+-      PR tree-optimization/80612
+-      * calls.c (get_size_range): Check for INTEGRAL_TYPE_P.
+-
+-2017-06-23  Thomas Preud'homme  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-04  Prakhar Bahuguna  <address@hidden>
+-
+-      * config/arm/arm-builtins.c (arm_init_builtins): Rename
+-      __builtin_arm_ldfscr to __builtin_arm_get_fpscr, and rename
+-      __builtin_arm_stfscr to __builtin_arm_set_fpscr.
+-
+-2017-06-23  Jonathan Wakely  <address@hidden>
+-
+-      PR c++/81187
+-      * doc/invoke.texi (-Wnoexcept-type): Fix name of option, from
+-      -Wnoexcept.
+-
+-2017-06-22  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-06-19  Martin Liska  <address@hidden>
+-
+-      PR sanitizer/80879
+-      * gimplify.c (gimplify_switch_expr):
+-      Initialize live_switch_vars for SWITCH_BODY == STATEMENT_LIST.
+-
+-2017-06-22  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-31  Martin Liska  <address@hidden>
+-
+-      PR target/79155
+-      * config/i386/cpuid.h: Fix typo in a comment in cpuid.h.
+-
+-2017-06-22  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-30  Martin Liska  <address@hidden>
+-
+-      PR other/80909
+-      * auto-profile.c (get_function_decl_from_block): Fix
+-      parenthesis.
+-
+-2017-06-22  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-26  Martin Liska  <address@hidden>
+-
+-      PR ipa/80663
+-      * params.def: Bound partial-inlining-entry-probability param.
+-
+-2017-06-22  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-16  Martin Liska  <address@hidden>
+-
+-      PR ipa/79849.
+-      PR ipa/79850.
+-      * ipa-devirt.c (warn_types_mismatch): Fix typo.
+-      (odr_types_equivalent_p): Likewise.
+-
+-2017-06-22  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-15  Martin Liska  <address@hidden>
+-
+-      PR driver/31468
+-      * gcc.c (process_command): Do not allow empty argument of -o option.
+-
+-2017-06-22  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-02  Martin Liska  <address@hidden>
+-
+-      * doc/gcov.texi: Add missing preposition.
+-      * gcov.c (function_info::function_info): Properly fill up
+-      all member variables.
+-
+-2017-06-22  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-02  Martin Liska  <address@hidden>
+-
+-      PR other/80589
+-      * common.opt: Fix typo.
+-      * doc/invoke.texi: Likewise.
+-
+-2017-06-22  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-04-28  Martin Liska  <address@hidden>
+-
+-      * doc/gcov.texi: Enhance documentation of gcov.
+-
+-2017-06-22  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-04-28  Martin Liska  <address@hidden>
+-
+-      * doc/gcov.texi: Sort options in alphabetic order.
+-      * doc/gcov-dump.texi: Likewise.
+-      * doc/gcov-tool.texi: Likewise.
+-      * gcov.c (print_usage): Likewise.
+-      * gcov-dump.c (print_usage): Likewise.
+-      * gcov-tool.c (print_merge_usage_message): Likewise.
+-      (print_rewrite_usage_message): Likewise.
+-      (print_overlap_usage_message): Likewise.
+-
+-2017-06-22  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-04-28  Martin Liska  <address@hidden>
+-
+-      PR gcov-profile/53915
+-      * gcov.c (format_gcov): Print 'NAN %' when top > bottom.
+-
+-2017-06-22  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-04-28  Martin Liska  <address@hidden>
+-
+-      PR driver/56469
+-      * coverage.c (coverage_remove_note_file): New function.
+-      * coverage.h: Declare the function.
+-      * toplev.c (finalize): Clean if an error has been seen.
+-
+-2017-06-21  Jakub Jelinek  <address@hidden>
+-
+-      PR target/81151
+-      * config/i386/sse.md (round<mode>2): Renumber match_dup and
+-      operands indexes to avoid gap between operands and match_dups.
+-
+-      PR c++/81130
+-      * gimplify.c (omp_add_variable): Don't force GOVD_SEEN for types
+-      with ctors/dtors if GOVD_SHARED is set.
+-
+-      Backported from mainline
+-      2017-06-20  Jakub Jelinek  <address@hidden>
+-
+-      PR target/81121
+-      * config/i386/i386.md (TARGET_USE_VECTOR_CONVERTS float si->{sf,df}
+-      splitter): Require TARGET_SSE2 in the condition.
+-
+-      PR sanitizer/81125
+-      * ubsan.h (ubsan_encode_value): Workaround buggy clang++ parser
+-      by removing enum keyword.
+-      (ubsan_type_descriptor): Likewise.  Formatting fix.
+-
+-      2017-06-19  Jakub Jelinek  <address@hidden>
+-
+-      PR sanitizer/81125
+-      * ubsan.h (enum ubsan_encode_value_phase): New.
+-      (ubsan_encode_value): Change second argument to
+-      enum ubsan_encode_value_phase with default value of
+-      UBSAN_ENCODE_VALUE_GENERIC.
+-      * ubsan.c (ubsan_encode_value): Change second argument to
+-      enum ubsan_encode_value_phase PHASE from bool IN_EXPAND_P,
+-      adjust uses, for UBSAN_ENCODE_VALUE_GENERIC use just
+-      create_tmp_var_raw instead of create_tmp_var and use a
+-      TARGET_EXPR.
+-      (ubsan_expand_bounds_ifn, ubsan_build_overflow_builtin,
+-      instrument_bool_enum_load, ubsan_instrument_float_cast): Adjust
+-      ubsan_encode_value callers.
+-
+-      PR sanitizer/81111
+-      * ubsan.c (ubsan_encode_value): If current_function_decl is NULL,
+-      use create_tmp_var_raw instead of create_tmp_var, mark it addressable
+-      just by setting TREE_ADDRESSABLE on the result and use a TARGET_EXPR.
+-
+-2017-06-20  James Greenhalgh  <address@hidden>
+-
+-      Backport from Mainline
+-      * config/aarch64/aarch64-option-extensions.def (fp16): Fix expected
+-      feature string.
+-
+-2017-06-20  Andreas Schwab  <address@hidden>
+-
+-      PR target/80970
+-      * config/m68k/m68k.md (bsetdreg, bchgdreg, bclrdreg): Use "=d"
+-      instead of "+d".
+-
+-2017-06-19  James Greenhalgh  <address@hidden>
+-
+-      Backport from mainline
+-      2017-06-19  James Greenhalgh  <address@hidden>
+-
+-      PR target/71778
+-      * config/arm/arm-builtins.c (arm_expand_builtin_args): Return TARGET
+-      if given a non-constant argument for an intrinsic which requires a
+-      constant.
+-
+-2017-06-19  Alexander Monakov  <address@hidden>
+-
+-      * doc/invoke.texi (mcx16): Rewrite.
+-
+-2017-06-15  Eric Botcazou  <address@hidden>
+-
+-      PR rtl-optimization/80474
+-      * reorg.c (update_block): Do not ignore instructions in a delay slot.
+-
+-2017-06-14  Eric Botcazou  <address@hidden>
+-
+-      * config/sparc/sparc.h (MASK_ISA): Add MASK_LEON and MASK_LEON3.
+-      (MASK_FEATURES): New macro.
+-      * config/sparc/sparc.c (sparc_option_override): Remove the special
+-      handling of -mfpu and generalize it to all MASK_FEATURES switches.
+-
+-2017-06-14  Eric Botcazou  <address@hidden>
+-
+-      * config/sparc/driver-sparc.c (cpu_names): Add SPARC-T5 entry.
+-
+-2017-06-12  David S. Miller  <address@hidden>
+-
+-      PR target/80968
+-      * config/sparc/sparc.md (return expander): Emit frame blockage if
+-      function uses alloca.
+-
+-2017-06-08  Uros Bizjak  <address@hidden>
+-
+-      PR target/81015
+-      Revert:
+-      2016-12-14  Uros Bizjak  <address@hidden>
+-
+-      PR target/59874
+-      * config/i386/i386.md (*ctzhi2): New insn_and_split pattern.
+-      (*clzhi2): Ditto.
+-
+-2017-06-08  David Edelsohn  <address@hidden>
+-
+-      Backport from mainline
+-      2017-06-02  David Edelsohn  <address@hidden>
+-
+-      * dwarf2out.c (DWARF_INITIAL_LENGTH_SIZE_STR): New.
+-      (dl_section_ref): New.
+-      (dwarf2out_finish): Copy debug_line_section_label to dl_section_ref.
+-      On AIX, append an expression to subtract the size of the
+-      section length to dl_section_ref.
+-
+-2017-06-07  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-02  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80549
+-      * tree-cfgcleanup.c (mfb_keep_latches): New helper.
+-      (cleanup_tree_cfg_noloop): Create forwarders to known loop
+-      headers if they do not have a preheader.
+-
+-      2017-05-26  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80842
+-      * tree-ssa-ccp.c (set_lattice_value): Always meet with the old
+-      value.
+-
+-      2017-05-31  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80906
+-      * graphite-isl-ast-to-gimple.c (copy_loop_close_phi_nodes): Get
+-      and pass through iv_map.
+-      (copy_bb_and_scalar_dependences): Adjust.
+-      (translate_pending_phi_nodes): Likewise.
+-      (copy_loop_close_phi_args): Handle code-generating IVs instead
+-      of ICEing.
+-
+-      2017-05-11  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80705
+-      * tree-vect-data-refs.c (vect_analyze_data_refs): DECL_NONALIASED
+-      bases are not vectorizable.
+-
+-2017-06-06  Michael Meissner  <address@hidden>
+-
+-      Back port from mainline
+-      2017-05-19  Michael Meissner  <address@hidden>
+-
+-      PR target/80718
+-      * config/rs6000/vsx.md (vsx_splat_<mode>, VSX_D iterator): Prefer
+-      VSX registers over GPRs, particularly on ISA 2.07 which does not
+-      have the MTVSRDD instruction.
+-
+-2017-06-06  David S. Miller  <address@hidden>
+-
+-      PR target/80968
+-      * config/sparc/sparc.c (sparc_expand_prologue): Emit frame
+-      blockage if function uses alloca.
+-
+-2017-06-05  Volker Reichelt  <address@hidden>
+-
+-      * doc/invoke.texi (-Wduplicated-branches): Add to warning list.
+-
+-2017-06-02  Prakhar Bahuguna  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-05  Andre Vieira  <address@hidden>
+-                  Prakhar Bahuguna  <address@hidden>
+-
+-      PR target/71607
+-      * config/arm/arm.md (use_literal_pool): Remove.
+-      (64-bit immediate split): No longer takes cost into consideration
+-      if arm_disable_literal_pool is enabled.
+-      * config/arm/arm.c (arm_tls_referenced_p): Add diagnostic if TLS is
+-      used when arm_disable_literal_pool is enabled.
+-      (arm_max_const_double_inline_cost): Remove use of
+-      arm_disable_literal_pool.
+-      (push_minipool_fix): Add assert.
+-      (arm_reorg): Add return if arm_disable_literal_pool is enabled.
+-      * config/arm/vfp.md (no_literal_pool_df_immediate): New.
+-      (no_literal_pool_sf_immediate): New.
+-
+-2017-06-02  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/80903
+-      * loop-doloop.c (add_test): Unshare sequence.
+-
+-2017-05-31  Martin Jambor  <address@hidden>
+-
+-      Backport from mainline
+-      2017-04-24  Martin Jambor  <address@hidden>
+-
+-      PR tree-optimization/80293
+-      * tree-sra.c (scalarizable_type_p): New parameter const_decl, make
+-      char arrays not totally scalarizable if it is false.
+-      (analyze_all_variable_accesses): Pass correct value in the new
+-      parameter.  Add a statistics counter.
+-
+-2017-05-30  Max Filippov  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-29  Max Filippov  <address@hidden>
+-
+-      * config/xtensa/xtensa.c (xtensa_emit_call): Use
+-      HOST_WIDE_INT_PRINT_HEX instead of 0x%lx format string.
+-      (print_operand): Use HOST_WIDE_INT_PRINT_DEC instead of %ld
+-      format string.
+-
+-2017-05-29  Eric Botcazou  <address@hidden>
+-
+-      * doc/install.texi (Options specification): Restore entry of
+-      --enable-sjlj-exceptions.
+-
+-2017-05-29  Andreas Krebbel  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-24  Andreas Krebbel  <address@hidden>
+-
+-      PR target/80725
+-      * config/s390/s390.c (s390_check_qrst_address): Check incoming
+-      address against address_operand predicate.
+-      * config/s390/s390.md ("*indirect_jump"): Swap alternatives.
+-
+-2017-05-28  Uros Bizjak  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-23  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/i386.md (*movdi_internal): Remove SSE4
+-      alternative 18 (?r, *v).  Update insn attributes.
+-      (*movsi_internal): Remove SSE4 alternative 13 (?r, *v).
+-      Update insn attributes.
+-      (*zero_extendsidi2): Remove SSE4 alternative (?r, *x).
+-      Update insn attributes.
+-      * config/i386/sse.md (vec_extract<ssevecmodelower>_0): Remove SSE4
+-      alternative 1 (r, v). Remove isa attribute.
+-      * config/i386/i386.c (dimode_scalar_chain::make_vector_copies):
+-      Always move value through stack for !TARGET_INTER_UNIT_MOVES_TO_VEC
+-      and !TARGET_INTER_UNIT_MOVES_TO_VEC targets.
+-
+-      2017-05-16  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/i386.md (*movsi_internal): Split (?rm,*y) alternative
+-      to (?r,*Yn) and (?m,*y) alternatives, and (?*y,rm) to (?*Ym,r)
+-      and (?*y,m).  Update insn attributes.
+-
+-2017-05-26  Sheldon Lobo  <address@hidden>
+-
+-      Backported from mainline
+-      2017-05-24  Sheldon Lobo  <address@hidden>
+-
+-      * config/sparc/sparc.md (length): Return the correct value for -mflat
+-      sibcalls to match output_sibcall.
+-
+-2017-05-26  Marek Polacek  <address@hidden>
+-
+-      Backported from mainline
+-      2017-05-26  Marek Polacek  <address@hidden>
+-
+-      PR sanitizer/80875
+-      * fold-const.c (fold_binary_loc) <case MULT_EXPR>: Check if OP1
+-      can be negated.
+-
+-2017-05-26  Jakub Jelinek  <address@hidden>
+-
+-      Backported from mainline
+-      2017-05-22  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/80809
+-      * omp-low.c (finish_taskreg_remap): New function.
+-      (finish_taskreg_scan): If unit size of ctx->record_type
+-      is non-constant, unshare the size expression and replace
+-      decls in it with possible outer var refs.
+-
+-      PR middle-end/80809
+-      * gimplify.c (omp_add_variable): For GOVD_DEBUG_PRIVATE use
+-      GOVD_SHARED rather than GOVD_PRIVATE with it.
+-      (gimplify_adjust_omp_clauses_1, gimplify_adjust_omp_clauses): Expect
+-      GOVD_SHARED rather than GOVD_PRIVATE with GOVD_DEBUG_PRIVATE.
+-
+-      PR middle-end/80853
+-      * omp-low.c (lower_reduction_clauses): Pass OMP_CLAUSE_PRIVATE
+-      as last argument to build_outer_var_ref for pointer bases of array
+-      section reductions.
+-
+-2017-05-25  Michael Meissner  <address@hidden>
+-
+-      Backport from trunk
+-      2017-05-18  Michael Meissner  <address@hidden>
+-
+-      PR target/80510
+-      * config/rs6000/predicates.md (simple_offsettable_mem_operand):
+-      New predicate.
+-
+-      * config/rs6000/rs6000.md (ALTIVEC_DFORM): New iterator.
+-      (define_peephole2 for Altivec d-form load): Add peepholes to catch
+-      cases where the register allocator uses a move and an offsettable
+-      memory operation to/from a FPR register on ISA 2.06/2.07.
+-      (define_peephole2 for Altivec d-form store): Likewise.
+-
+-      Backport from trunk
+-      2017-05-09  Michael Meissner  <address@hidden>
+-
+-      PR target/68163
+-      * config/rs6000/rs6000.md (f32_lr): Delete mode attributes that
+-      are now unused after splitting mov{sf,sd}_hardfloat.
+-      (f32_lr2): Likewise.
+-      (f32_lm): Likewise.
+-      (f32_lm2): Likewise.
+-      (f32_li): Likewise.
+-      (f32_li2): Likewise.
+-      (f32_lv): Likewise.
+-      (f32_sr): Likewise.
+-      (f32_sr2): Likewise.
+-      (f32_sm): Likewise.
+-      (f32_sm2): Likewise.
+-      (f32_si): Likewise.
+-      (f32_si2): Likewise.
+-      (f32_sv): Likewise.
+-      (f32_dm): Likewise.
+-      (f32_vsx): Likewise.
+-      (f32_av): Likewise.
+-      (mov<mode>_hardfloat): Split into separate movsf and movsd pieces.
+-      For movsf, order stores so the VSX stores occur before the GPR
+-      store which encourages the register allocator to use a traditional
+-      FPR instead of a GPR.  For movsd, order the stores so that the GPR
+-      store comes before the VSX stores to allow the power6 to work.
+-      This is due to the power6 not having a 32-bit integer store
+-      instruction from a FPR.
+-      (movsf_hardfloat): Likewise.
+-      (movsd_hardfloat): Likewise.
+-
+-2017-05-25  Wilco Dijkstra  <address@hidden>
+-
+-      Backport from mainlin
+-      PR rtl-optimization/80754
+-      * lra-remat.c (do_remat): Add overlap checks for dst_regno.
+-
+-2017-05-25  Wilco Dijkstra  <address@hidden>
+-
+-      Backport from mainline
+-      PR target/80671
+-      * config/aarch64/cortex-a57-fma-steering.c (merge_forest):
+-      Move member access before delete.
+-
+-2017-05-23  Sheldon Lobo  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-18  Sheldon Lobo  <address@hidden>
+-
+-      * config/sparc/sparc.c (sparc_option_override): Set function
+-      alignment for -mcpu=niagara7 to 64 to match the I$ line.
+-      * config/sparc/sparc.h (BRANCH_COST): Set the SPARC M7 branch
+-      latency to 1.
+-      * config/sparc/sparc.h (BRANCH_COST): Set the SPARC T4 branch
+-      latency to 2.
+-      * config/sparc/sol2.h: Fix a ASM_CPU32_DEFAULT_SPEC typo.
+-
+-2017-05-19  Uros Bizjak  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-18  Uros Bizjak  <address@hidden>
+-
+-      PR target/80799
+-      * config/i386/mmx.md (*mov<mode>_internal): Enable
+-      alternatives 11, 12, 13 and 14 also for 32bit targets.
+-      Remove alternatives 15, 16, 17 and 18.
+-      * config/i386/sse.md (vec_concatv2di): Change
+-      alternative (!x, *y) to (x, ?!*Yn).
+-
+-2017-05-14  Uros Bizjak  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-11  Uros Bizjak  <address@hidden>
+-
+-      PR target/80706
+-      * config/i386/sync.md (UNSPEC_LDX_ATOMIC): New unspec.
+-      (UNSPEC_STX_ATOMIC): Ditto.
+-      (loaddi_via_sse): New insn.
+-      (storedi_via_sse): Ditto.
+-      (atomic_loaddi_fpu): Emit loaddi_via_sse and storedi_via_sse.
+-      Update corresponding peephole2 patterns.
+-      (atomic_storedi_fpu): Ditto.
+-
+-2017-05-13  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-05  Bill Schmidt  <address@hidden>
+-
+-      * config/rs6000/rs6000.c (rs6000_vect_nonmem): New static var.
+-      (rs6000_init_cost): Initialize rs6000_vect_nonmem.
+-      (rs6000_add_stmt_cost): Update rs6000_vect_nonmem.
+-      (rs6000_finish_cost): Avoid vectorizing simple copy loops with
+-      VF=2 that require versioning.
+-
+-2017-05-12  Bill Schmidt  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-10  Bill Schmidt  <address@hidden>
+-
+-      * config/rs6000/rs6000.c (altivec_init_builtins): Define POWER8
+-      built-ins for vec_xl and vec_xst with short and char pointer
+-      arguments.
+-
+-2017-05-10  John David Anglin  <address@hidden>
+-
+-      PR target/80090
+-      * config/pa/pa.c (pa_assemble_integer): When outputting a SYMBOL_REF,
+-      handle calling assemble_external ourself.
+-
+-      PR target/79027
+-      * config/pa/pa.c (pa_cannot_change_mode_class): Reject changes to/from
+-      modes with zero size.  Enhance comment.
+-
+-2017-05-09  Michael Meissner  <address@hidden>
+-
+-      Back port from mainline
+-      2017-05-05  Michael Meissner  <address@hidden>
+-
+-      PR target/79038
+-      PR target/79202
+-      PR target/79203
+-      * config/rs6000/rs6000.md (u code attribute): Add FIX and
+-      UNSIGNED_FIX.
+-      (extendsi<mode>2): Add support for doing sign extension via
+-      VUPKHSW and XXPERMDI if the value is in Altivec registers and we
+-      don't have ISA 3.0 instructions.
+-      (extendsi<mode>2 splitter): Likewise.
+-      (fix_trunc<mode>si2): If we are at ISA 2.07 (VSX small integer),
+-      generate the normal insns since SImode can now go in vector
+-      registers.  Disallow the special UNSPECs needed for previous
+-      machines to hide SImode being used.  Add new insns
+-      fctiw{,w}_<mode>_smallint if SImode can go in vector registers.
+-      (fix_trunc<mode>si2_stfiwx): Likewise.
+-      (fix_trunc<mode>si2_internal): Likewise.
+-      (fixuns_trunc<mode>si2): Likewise.
+-      (fixuns_trunc<mode>si2_stfiwx): Likewise.
+-      (fctiw<u>z_<mode>_smallint): Likewise.
+-      (fctiw<u>z_<mode>_mem): New combiner pattern to prevent conversion
+-      of floating point to 32-bit integer from doing a direct move to
+-      the GPR registers to do a store.
+-      (fctiwz_<mode>): Break long line.
+-
+-2017-05-08  Tamar Christina  <address@hidden>
+-
+-      PR middle-end/79665
+-      * expr.c (expand_expr_real_2): Move TRUNC_MOD_EXPR, FLOOR_MOD_EXPR,
+-      CEIL_MOD_EXPR, ROUND_MOD_EXPR cases.
+-
+-2017-05-03  Jan Beulich  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-01  Jan Beulich  <address@hidden>
+-
+-      * config/i386/sse.md (xop_vpermil2<mode>3): Do not allow operand
+-      swapping, add (x,x,m,x,n) alternative.
+-
+-2017-05-03  Richard Biener  <address@hidden>
+-
+-      Backport from mainline
+-      2017-04-20  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80453
+-      * tree-ssa-sccvn.h (struct vn_phi_s): Add cclhs and ccrhs members.
+-      * tree-ssa-sccvn.c (cond_stmts_equal_p): Use recorded lhs and rhs
+-      from the conditions.
+-      (vn_phi_eq): Pass them down.
+-      (vn_phi_lookup): Record them.
+-      (vn_phi_insert): Likewise.
+-
+-      2017-04-25  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80492
+-      * alias.c (compare_base_decls): Handle registers with asm
+-      specification conservatively.
+-
+-      2017-04-27  Richard Biener  <address@hidden>
+-
+-      PR middle-end/80539
+-      * tree-chrec.c (chrec_fold_plus_poly_poly): Deal with not
+-      being in loop-closed SSA form conservatively.
+-      (chrec_fold_multiply_poly_poly): Likewise.
+-
+-2017-05-02  Uros Bizjak  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-01  Uros Bizjak  <address@hidden>
+-
+-      PR target/68491
+-      * config/i386/cpuid.h (__get_cpuid): Always return 0 when
+-      __get_cpuid_max returns 0.
+-      (__get_cpuid_count): Ditto.
+-
+-2017-05-02  Jakub Jelinek <address@hidden>
+-
+-      Backported from mainline
+-      2017-04-25 Jakub Jelinek <address@hidden>
+-
+-      * Makefile.in (s-options): Invoke opt-gather.awk with LC_ALL=C in the
+-      environment.
+-
+-2017-05-02  Jakub Jelinek  <address@hidden>
+-
+-      * BASE-VER: Set to 7.1.1.
+-
+-2017-05-02  Release Manager
+-
+-      * GCC 7.1.0 released.
+-
+-2017-05-02  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80591
+-      Revert
+-      2017-04-10  Richard Biener  <address@hidden>
+-
+-      * tree-ssa-structalias.c (find_func_aliases): Properly handle
+-      asm inputs.
+-
+-2017-04-28  Jakub Jelinek  <address@hidden>
+-
+-      PR bootstrap/80531
+-      * cgraph.h (symtab_node::debug_symtab): No longer inline.
+-      * symtab.c (symtab_node::debug_symtab): Move definition here.
+-
+-2017-04-27  Richard Earnshaw  <address@hidden>
+-
+-      PR target/80530
+-      * config/aarch64/aarch64.c (aarch64_emit_approx_sqrt): Ensure
+-      that the logic for permitting reciprocal estimates matches that
+-      in use_rsqrt_p.
+-
+-2017-04-27  Jakub Jelinek  <address@hidden>
+-
+-      PR c++/80534
+-      * tree.c (type_cache_hasher::equal): Only compare
+-      TYPE_TYPELESS_STORAGE flag on non-aggregate element types.
+-      (build_array_type_1): Only hash TYPE_TYPELESS_STORAGE flag on
+-      non-aggregate element types.
+-      * tree.h (TYPE_TYPELESS_STORAGE): Fix comment typo, add more details
+-      about the flag on ARRAY_TYPEs in the comment, formatting fix.
+-
+-      PR target/79430
+-      * reg-stack.c (emit_swap_insn): If i1src mentions the stack pointer,
+-      punt if tmp contains autoinc of stack pointer.
+-
+-      PR target/77728
+-      * config/aarch64/aarch64.c (struct aarch64_fn_arg_alignment): Remove.
+-      (aarch64_function_arg_alignment): Return unsigned int again, but still
+-      ignore TYPE_FIELDS chain decls other than FIELD_DECLs.
+-      (aarch64_layout_arg): Adjust aarch64_function_arg_alignment caller.
+-      Don't emit -Wpsabi note.
+-      (aarch64_function_arg_boundary): Likewise.
+-      (aarch64_gimplify_va_arg_expr): Adjust aarch64_function_arg_alignment
+-      caller.
+-
+-2017-04-25  Martin Sebor  <address@hidden>
+-
+-      PR tree-optimization/80497
+-      * gimple-ssa-sprintf.c (get_int_range): Avoid assuming all integer
+-      constants are representable in HOST_WIDE_INT.
+-      (parse_directive): Ditto.
+-
+-2017-04-25  Marek Polacek  <address@hidden>
+-
+-      2017-04-25  Marek Polacek  <address@hidden>
+-      Backport from mainline
+-
+-      PR sanitizer/80349
+-      * fold-const.c (fold_binary_loc) <case BIT_IOR_EXPR>: Convert arg0's
+-      first argument to type.
+-
+-2017-04-25  Ramana Radhakrishnan  <address@hidden>
+-          Jakub Jelinek  <address@hidden>
+-
+-      PR target/77728
+-      * config/arm/arm.c: Include gimple.h.
+-      (aapcs_layout_arg): Emit -Wpsabi note if arm_needs_doubleword_align
+-      returns negative, increment ncrn only if it returned positive.
+-      (arm_needs_doubleword_align): Return int instead of bool,
+-      ignore DECL_ALIGN of non-FIELD_DECL TYPE_FIELDS chain
+-      members, but if there is any such non-FIELD_DECL
+-      > PARM_BOUNDARY aligned decl, return -1 instead of false.
+-      (arm_function_arg): Emit -Wpsabi note if arm_needs_doubleword_align
+-      returns negative, increment nregs only if it returned positive.
+-      (arm_setup_incoming_varargs): Likewise.
+-      (arm_function_arg_boundary): Emit -Wpsabi note if
+-      arm_needs_doubleword_align returns negative, return
+-      DOUBLEWORD_ALIGNMENT only if it returned positive.
+-
+-2017-04-25  Bill Seurer  <address@hidden>
+-
+-      Backport from mainline
+-      PR target/80482
+-      * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): Change
+-      type checks to test for compatibility instead of equality.
+-
+-2017-04-25  Ramana Radhakrishnan  <address@hidden>
+-          Jakub Jelinek  <address@hidden>
+-
+-      PR target/77728
+-      * config/aarch64/aarch64.c (struct aarch64_fn_arg_alignment): New
+-      type.
+-      (aarch64_function_arg_alignment): Return aarch64_fn_arg_alignment
+-      struct.  Ignore DECL_ALIGN of decls other than FIELD_DECL for
+-      the alignment computation, but return their maximum in warn_alignment.
+-      (aarch64_layout_arg): Adjust aarch64_function_arg_alignment caller.
+-      Emit a -Wpsabi note if warn_alignment is 16 bytes, but alignment
+-      is smaller.
+-      (aarch64_function_arg_boundary): Likewise.  Simplify using MIN/MAX.
+-      (aarch64_gimplify_va_arg_expr): Adjust aarch64_function_arg_alignment
+-      caller.
+-
+-2017-04-25  Andreas Krebbel  <address@hidden>
+-
+-      Backport from mainline
+-      2017-04-25  Andreas Krebbel  <address@hidden>
+-
+-      PR target/80464
+-      * config/s390/vector.md: Split MEM->GPR vector moves for
+-      non-s_operand addresses.
+-
+-2017-04-25  Andreas Krebbel  <address@hidden>
+-
+-      Backport from mainline
+-      2017-04-25  Andreas Krebbel  <address@hidden>
+-
+-      PR target/79895
+-      * config/s390/predicates.md (reload_const_wide_int_operand): New
+-      predicate.
+-      * config/s390/s390.md ("movti"): Remove d/P alternative.
+-      ("movti_bigconst"): New pattern definition.
+-
+-2017-04-25  Dominik Vogt  <address@hidden>
+-
+-      Backport from maineline
+-      2017-04-25  Dominik Vogt  <address@hidden>
+-
+-      PR target/80080
+-      * s390-protos.h (s390_expand_cs_hqi): Removed.
+-      (s390_expand_cs, s390_expand_atomic_exchange_tdsi): New prototypes.
+-      * config/s390/s390.c (s390_emit_compare_and_swap): Handle all integer
+-      modes as well as CCZ1mode and CCZmode.
+-      (s390_expand_atomic_exchange_tdsi, s390_expand_atomic): Adapt to new
+-      signature of s390_emit_compare_and_swap.
+-      (s390_expand_cs_hqi): Likewise, make static.
+-      (s390_expand_cs_tdsi): Generate an explicit compare before trying
+-      compare-and-swap, in some cases.
+-      (s390_expand_cs): Wrapper function.
+-      (s390_expand_atomic_exchange_tdsi): New backend specific expander for
+-      atomic_exchange.
+-      (s390_match_ccmode_set): Allow CCZmode <-> CCZ1 mode.
+-      * config/s390/s390.md ("atomic_compare_and_swap<mode>"): Merge the
+-      patterns for small and large integers.  Forbid symref memory operands.
+-      Move expander to s390.c.  Require cc register.
+-      ("atomic_compare_and_swap<DGPR:mode><CCZZ1:mode>_internal")
+-      ("*atomic_compare_and_swap<TDI:mode><CCZZ1:mode>_1")
+-      ("*atomic_compare_and_swapdi<CCZZ1:mode>_2")
+-      ("*atomic_compare_and_swapsi<CCZZ1:mode>_3"): Use s_operand to forbid
+-      symref memory operands.  Remove CC mode and call s390_match_ccmode
+-      instead.
+-      ("atomic_exchange<mode>"): Allow and implement all integer modes.
+-
+-2017-04-25  Dominik Vogt  <address@hidden>
+-
+-      Backport from mainline
+-      2017-04-25  Dominik Vogt  <address@hidden>
+-
+-      * config/s390/s390.md (define_peephole2): New peephole to help
+-      combining the load-and-test pattern with volatile memory.
+-
+-
+-2017-04-25  Dominik Vogt  <address@hidden>
+-
+-      Backport from mainline
+-      2017-04-25  Dominik Vogt  <address@hidden>
+-
+-      * config/s390/s390.md ("cstorecc4"): Use load-on-condition and deal
+-      with CCZmode for TARGET_Z196.
+-
+-2017-04-25  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/80501
+-      * combine.c (make_compound_operation_int): Set subreg_code to SET
+-      even for AND with mask of the sign bit of mode.
+-
+-      PR rtl-optimization/80500
+-      * loop-unroll.c (combine_var_copies_in_loop_exit): Call copy_rtx on
+-      sum's initial value.
+-
+-2017-04-24  Martin Liska  <address@hidden>
+-
+-      Backport from mainline
+-      2017-04-24  Jan Hubicka  <address@hidden>
+-
+-      PR middle-end/79931
+-      * ipa-devirt.c (dump_possible_polymorphic_call_targets): Fix ICE.
+-
+-2017-04-20  Alexander Monakov  <address@hidden>
+-
+-      Backport from mainline
+-      2017-04-20  Alexander Monakov  <address@hidden>
+-
+-      * omp-low.c (lower_lastprivate_clauses): Correct handling of linear
+-      and lastprivate clauses in SIMT case.
+-
+-2017-04-20  Matthew Fortune  <address@hidden>
+-
+-      Backport from mainline
+-      2017-04-20  Matthew Fortune  <address@hidden>
+-
+-      * config/mips/mips.c (mips_expand_vec_perm_const): Re-fix
+-      uninitialized variable warning to avoid buffer overrun.
+-
+-2017-04-20  Jakub Jelinek  <address@hidden>
+-
+-      * DEV-PHASE: Set to prerelease.
+-
+-2017-04-20  Thomas Preud'homme  <address@hidden>
+-
+-      * config/arm/arm.c (arm_elf_asm_cdtor): Create non-default
+-      priority .init_array and .fini_array section with SECTION_NOTYPE
+-      flag.
+-
+-2017-04-20  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/80423
+-      * tree.h (build_array_type): Add typeless_storage default argument.
+-      * tree.c (type_cache_hasher::equal): Also compare
+-      TYPE_TYPELESS_STORAGE flag for ARRAY_TYPEs.
+-      (build_array_type): Add typeless_storage argument, set
+-      TYPE_TYPELESS_STORAGE to it, if shared also hash it, and pass to
+-      recursive call.
+-      (build_nonshared_array_type): Adjust build_array_type_1 caller.
+-      (build_array_type): Likewise.  Add typeless_storage argument.
+-
+-2017-04-19  Eric Botcazou  <address@hidden>
+-          Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/80426
+-      * tree-vrp.c (extract_range_from_binary_expr_1): For an additive
+-      operation on symbolic operands, also compute the overflow for the
+-      invariant part when the operation degenerates into a negation.
+-
+-2017-04-19  Jakub Jelinek  <address@hidden>
+-
+-      PR debug/80461
+-      * dwarf2out.c (modified_type_die, gen_type_die_with_usage):
+-      Check for t with zero TYPE_QUALS_NO_ADDR_SPACE.
+-
+-      PR debug/80436
+-      * tree-ssa-loop-manip.c (find_uses_to_rename_def): Ignore debug uses.
+-
+-2017-04-19  Georg-Johann Lay  <address@hidden>
+-
+-      PR target/80462
+-      * config/avr/avr.c (tree.h): Include it.
+-      (cgraph.h): Include it.
+-      (avr_encode_section_info): Don't warn for uninitialized progmem
+-      variable if it's just an alias.
+-
+-2017-04-19  Richard Biener  <address@hidden>
+-
+-      PR ipa/65972
+-      * auto-profile.c (afdo_vpt_for_early_inline): Update SSA
+-      when needed by AutoPGO.
+-
+-2017-04-19  Paulo J. Matos  <address@hidden>
+-
+-      PR lto/50345
+-      * doc/lto.texi: Remove an extra 'that'.
+-
+-2017-04-19  Segher Boessenkool  <address@hidden>
+-
+-      PR rtl-optimization/80429
+-      * ira.c (split_live_ranges_for_shrink_wrap): Don't split regs that
+-      are only used in debug insns.
+-
+-2017-04-19  Eric Botcazou  <address@hidden>
+-          Vladimir Makarov  <address@hidden>
+-
+-      * config/sparc/predicates.md (input_operand): Add comment.  Return
+-      true for any memory operand when LRA is in progress.
+-      * config/sparc/sparc.c (sparc_expand_move): Minor formatting fix.
+-
+-2017-04-18  Jeff Law  <address@hidden>
+-
+-      PR target/74563
+-      * mips.md ({return,simple_return}_internal): Do not overwrite
+-      operands[0].
+-
+-2017-04-18  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/80443
+-      * tree-vrp.c (intersect_ranges): For signed 1-bit precision type,
+-      instead of adding 1, subtract -1 and similarly instead of subtracting
+-      1 add -1.
+-
+-2017-04-18  Richard Sandiford  <address@hidden>
+-
+-      PR rtl-optimization/80357
+-      * haifa-sched.c (tmp_bitmap): New variable.
+-      (model_recompute): Handle duplicate use records.
+-      (alloc_global_sched_pressure_data): Initialize tmp_bitmap.
+-      (free_global_sched_pressure_data): Free it.
+-
+-2017-04-18  Bernd Edlinger  <address@hidden>
+-
+-      Revert:
+-      2017-02-20  Bernd Edlinger  <address@hidden>
+-      * Makefile.in (BUILD_SYSTEM_HEADER_DIR): New make variabe.
+-      (LIMITS_H_TEST, if_multiarch, stmp-fixinc): Use BUILD_SYSTEM_HEADER_DIR
+-      instead of SYSTEM_HEADER_DIR.
+-
+-2017-04-18  Jeff Law  <address@hidden>
+-
+-      PR middle-end/80422
+-      * cfgcleanup.c (try_crossjump_to_edge): Verify SRC1 and SRC2 have
+-      predecessors after walking up the insn chain.
+-
+-2017-04-18  Jakub Jelinek  <address@hidden>
+-
+-      PR debug/80263
+-      * dwarf2out.c (modified_type_die): Try harder not to emit internal
+-      sizetype type into debug info.
+-
+-2017-04-18  Michael Meissner  <address@hidden>
+-
+-      PR target/80099
+-      * config/rs6000/rs6000.c (rs6000_expand_vector_extract): Eliminate
+-      unneeded test for TARGET_UPPER_REGS_SF.
+-      * config/rs6000/vsx.md (vsx_extract_v4sf_var): Likewise.
+-
+-2017-04-18  Jakub Jelinek  <address@hidden>
+-
+-      PR sanitizer/80444
+-      * sancov.c (sancov_pass): Use gsi_start_nondebug_after_labels_bb
+-      instead of gsi_after_labels.
+-
+-2017-04-18  Jeff Law  <address@hidden>
+-
+-      * regcprop.c (maybe_mode_change): Avoid creating copies of the
+-      stack pointer.
+-
+-      Revert:
+-      2017-04-13  Jeff Law  <address@hidden>
+-      * config/mips.mips.md (zero_extendsidi2): Do not allow SP to appear
+-      in operands[1] if it is a MEM and TARGET_MIPS16 is active.
+-
+-2017-04-18  Georg-Johann Lay  <address@hidden>
+-
+-      PR target/79453
+-      * config/avr/avr.c (intl.h): Include it.
+-      (avr_pgm_check_var_decl) [reason]: Wrap diagnostic snippets into _().
+-
+-2017-04-18  Martin Liska  <address@hidden>
+-
+-      PR gcov-profile/78783
+-      * gcov-tool.c (gcov_output_files): Validate that destination
+-      file is either removed by the tool or by a user.
+-
+-2017-04-14  Andrew Burgess  <address@hidden>
+-          Guy Benyei  <address@hidden>
+-
+-      * config/arc/arc.c (arc_reorg): Move loop_end_id into a more local
+-      block, and do not negate it, the stored id is already negative.
+-
+-2017-04-14  Andrew Burgess  <address@hidden>
+-
+-      * config/arc/arc.md (doloop_begin_i): Use @pcl assembler syntax.
+-
+-2017-04-14  Michael Meissner  <address@hidden>
+-
+-      PR target/80098
+-      * config/rs6000/rs6000-cpus.def (OTHER_P9_VECTOR_MASKS): Define
+-      masks of options that should be turned off if the VSX vector
+-      options are turned off.
+-      (OTHER_P8_VECTOR_MASKS): Likewise.
+-      (OTHER_VSX_VECTOR_MASKS): Likewise.
+-      * config/rs6000/rs6000.c (rs6000_option_override_internal): Call
+-      rs6000_disable_incompatible_switches to validate no type switches
+-      like -mvsx.
+-      (rs6000_incompatible_switch): New function to disallow turning on
+-      other vector options if -mno-vsx, -mno-power8-vector, or
+-      -mno-power9-vector are specified.
+-
+-2017-04-14  Claudiu Zissulescu  <address@hidden>
+-
+-      * config/arc/arc.h (CRT_CALL_STATIC_FUNCTION): Use long calls.
+-
+-2017-04-14  Claudiu Zissulescu  <address@hidden>
+-
+-      * config/arc/arc-protos.h (arc_decl_pretend_args): Remove.
+-      * config/arc/arc.c (arc_decl_pretend_args): Likewise.
+-      * config/arc/arc.h (CFA_FRAME_BASE_OFFSET): Likewise.
+-      (ARG_POINTER_CFA_OFFSET): Likewise.
+-
+-2017-04-14  Claudiu Zissulescu  <address@hidden>
+-
+-      * config/arc/arc.c (arc_mode_dependent_address_p): Relax
+-      conditions to take advantage of various optimizations.
+-
+-2017-04-13  Jeff Law  <address@hidden>
+-
+-      * config/mips.mips.md (zero_extendsidi2): Do not allow SP to appear
+-      in operands[1] if it is a MEM and TARGET_MIPS16 is active.
+-      (zero_extendsidi2_dext): Likewise.
+-
+-2017-04-13  Jakub Jelinek  <address@hidden>
+-
+-      PR sanitizer/80403
+-      * fold-const.c (fold_ternary_loc): Revert
+-      use op0 instead of fold_convert_loc (loc, type, arg0) part of
+-      2017-04-12 change.
+-
+-2017-04-13  Vladimir Makarov  <address@hidden>
+-
+-      PR rtl-optimization/80343
+-      * lra-remat.c (update_scratch_ops): Assign original hard reg to
+-      new scratch pseudo.
+-
+-2017-04-13  Denis Khalikov <address@hidden>
+-
+-      PR sanitizer/80414
+-      * ubsan.c (ubsan_expand_bounds_ifn): Pass original index
+-      to ubsan_encode_value.
+-
+-2017-04-13  Jeff Law  <address@hidden>
+-
+-      * reload1.c (eliminate_regs_1): Call gen_rtx_raw_SUBREG for SUBREGs
+-      appearing in DEBUG_INSNs.
+-
+-2017-04-13  Martin Liska  <address@hidden>
+-
+-      PR gcov-profile/80413
+-      * gcov-io.c (gcov_write_string): Copy to buffer just when
+-      allocated size is greater than zero.
+-
+-2017-04-13  Jakub Jelinek  <address@hidden>
+-
+-      PR debug/80321
+-      * dwarf2out.c (decls_for_scope): Ignore declarations of
+-      current_function_decl in BLOCK_NONLOCALIZED_VARS.
+-
+-2017-04-12  Jan Hubicka  <address@hidden>
+-
+-      PR lto/69953 
+-      * ipa-visibility.c (non_local_p): Fix typos.
+-      (localize_node): When localizing symbol in same comdat group,
+-      dissolve the group only when we know external symbols are going
+-      to be privatized.
+-      (function_and_variable_visibility): Do not localize DECL_EXTERNAL.
+-
+-2017-04-12  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/79390
+-      * optabs.c (emit_conditional_move): If the preferred op2/op3 operand
+-      order does not result in usable sequence, retry with reversed operand
+-      order.
+-
+-      PR sanitizer/80403
+-      PR sanitizer/80404
+-      PR sanitizer/80405
+-      * fold-const.c (fold_ternary_loc): Use op1 instead of arg1 as argument
+-      to fold_build2_loc.  Convert TREE_OPERAND (tem, 0) to type.  Use
+-      op0 instead of fold_convert_loc (loc, type, arg0).
+-
+-2017-04-12  Jeff Law  <address@hidden>
+-
+-      * genattrtab.c (write_eligible_delay): Verify DELAY_INSN still
+-      has a delay slot in the generated code.
+-
+-      * config/cris/cris.md (cris_preferred_reload_class): Return
+-      GENNONACR_REGS rather than GENERAL_REGS.
+-
+-2017-04-12  Jakub Jelinek  <address@hidden>
+-
+-      PR c/80163
+-      * expr.c <CASE_CONVERT>: For EXPAND_INITIALIZER determine SIGN_EXTEND
+-      vs. ZERO_EXTEND based on signedness of treeop0's type rather than
+-      signedness of the result type.
+-
+-2017-04-12  Richard Biener  <address@hidden>
+-          Jeff Law  <address@hidden>
+-
+-      PR tree-optimization/80359
+-      * tree-ssa-dse.c (maybe_trim_partially_dead_store): Do not
+-      trim stores to TARGET_MEM_REFs.
+-
+-2017-04-12  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79390
+-      * gimple-ssa-split-paths.c (is_feasible_trace): Restrict
+-      threading case even more.
+-
+-2017-04-12  Segher Boessenkool  <address@hidden>
+-
+-      PR target/80382
+-      * config/rs6000/sync.md (atomic_load<mode>, atomic_store<mode): Test
+-      for quad_address_p for TImode, instead of just not indexed_address.
+-
+-2017-04-12  Richard Biener  <address@hidden>
+-          Bernd Edlinger  <address@hidden>
+-
+-      PR middle-end/79671
+-      * alias.c (component_uses_parent_alias_set_from): Handle
+-      TYPE_TYPELESS_STORAGE.
+-      (get_alias_set): Likewise.
+-      * tree-core.h (tree_type_common): Add typeless_storage flag.
+-      * tree.h (TYPE_TYPELESS_STORAGE): New macro.
+-      * stor-layout.c (place_union_field): Set TYPE_TYPELESS_STORAGE
+-      for types containing members with TYPE_TYPELESS_STORAGE.
+-      (place_field): Likewise.
+-      (layout_type): Likewise for ARRAY_TYPE.
+-      * lto-streamer-out.c (hash_tree): Hash TYPE_TYPELESS_STORAGE.
+-      * tree-streamer-in.c (unpack_ts_type_common_value_fields): Stream
+-      TYPE_TYPELESS_STORAGE.
+-      * tree-streamer-out.c (pack_ts_type_common_value_fields): Likewise.
+-
+-2017-04-12  Jakub Jelinek  <address@hidden>
+-
+-      PR sanitizer/80349
+-      * fold-const.c (fold_binary_loc) <case BIT_IOR_EXPR>: Convert arg0's
+-      first argument to type.
+-
+-2017-04-11  Bill Schmidt  <address@hidden>
+-
+-      PR target/80376
+-      PR target/80315
+-      * config/rs6000/rs6000.c (rs6000_expand_unop_builtin): Return
+-      CONST0_RTX (mode) rather than const0_rtx where appropriate.
+-      (rs6000_expand_binop_builtin): Likewise.
+-      (rs6000_expand_ternop_builtin): Likewise; also add missing
+-      vsx_xxpermdi_* variants; also fix typo (arg1 => arg2) for
+-      vshasigma built-ins.
+-      * doc/extend.texi: Document that vec_xxpermdi's third argument
+-      must be a constant.
+-
+-2017-04-11  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/i386.c (dimode_scalar_chain::compute_convert_gain):
+-      Use shift_const cost parameter when calculating gain of STV shifts.
+-
+-2017-04-11  Vladimir Makarov  <address@hidden>
+-
+-      PR rtl-optimization/70478
+-      * lra-constraints.c (process_alt_operands): Check memory for
+-      disfavoring memory insn operand.
+-
+-2017-04-11  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/80100
+-      * simplify-rtx.c (simplify_binary_operation_1) <case IOR>: Perform
+-      left shift in unsigned HOST_WIDE_INT type.
+-
+-      PR rtl-optimization/80385
+-      * simplify-rtx.c (simplify_unary_operation_1): Don't transform
+-      (not (neg X)) into (plus X -1) for complex or non-integral modes.
+-
+-      PR libgomp/80394
+-      * omp-low.c (scan_omp_task): Don't optimize away empty tasks
+-      if they have any depend clauses.
+-
+-2017-04-11  Martin Liska  <address@hidden>
+-
+-      PR ipa/80212
+-      * cgraph.c (cgraph_node::dump): Dump calls_comdat_local.
+-      * ipa-split.c (split_function): Create a local comdat symbol
+-      if caller is in a comdat group.
+-
+-2017-04-11  Martin Liska  <address@hidden>
+-
+-      PR ipa/80212
+-      * ipa-cp.c (determine_versionability): Handle calls_comdat_local
+-      flags.
+-
+-2017-04-11  Martin Sebor  <address@hidden>
+-
+-      PR middle-end/80364
+-      * gimple-ssa-sprintf.c (get_int_range): Remove second argument and
+-      always use the int type.  Use INTEGRAL_TYPE_P() rather than testing
+-      for INTEGER_TYPE.
+-      (directive::set_width, directive::set_precision, format_character):
+-      Adjust.
+-      (parse_directive): Use INTEGRAL_TYPE_P() rather than testing for
+-      INTEGER_TYPE.
+-
+-2017-04-11  Richard Earnshaw  <address@hidden>
+-
+-      PR target/80389
+-      * config/arm/arm.c (arm_configure_build_target): When -mcpu and -arch
+-      conflict, set target->arch_name instead of target->cpu_name.
+-
+-2017-04-11  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80374
+-      * tree-ssa-dom.c (derive_equivalences_from_bit_ior): Use
+-      build_zero_cst, remove fold_convertible_p check again.
+-
+-2017-04-11  Martin Liska  <address@hidden>
+-
+-      PR sanitizer/70878
+-      * ubsan.c (instrument_object_size): Do not instrument register
+-      variables.
+-
+-2017-04-11  Jakub Jelinek  <address@hidden>
+-
+-      PR target/80381
+-      * config/i386/i386-builtin-types.def
+-      (V16HI_FTYPE_V16HI_INT_V16HI_UHI_COUNT,
+-      V16HI_FTYPE_V16HI_V8HI_V16HI_UHI_COUNT,
+-      V16SI_FTYPE_V16SI_INT_V16SI_UHI_COUNT,
+-      V16SI_FTYPE_V16SI_V4SI_V16SI_UHI_COUNT,
+-      V2DI_FTYPE_V2DI_INT_V2DI_UQI_COUNT,
+-      V2DI_FTYPE_V2DI_V2DI_V2DI_UQI_COUNT,
+-      V32HI_FTYPE_V32HI_INT_V32HI_USI_COUNT,
+-      V32HI_FTYPE_V32HI_V8HI_V32HI_USI_COUNT,
+-      V4DI_FTYPE_V4DI_INT_V4DI_UQI_COUNT,
+-      V4DI_FTYPE_V4DI_V2DI_V4DI_UQI_COUNT,
+-      V4SI_FTYPE_V4SI_INT_V4SI_UQI_COUNT,
+-      V4SI_FTYPE_V4SI_V4SI_V4SI_UQI_COUNT,
+-      V8DI_FTYPE_V8DI_INT_V8DI_UQI_COUNT,
+-      V8DI_FTYPE_V8DI_V2DI_V8DI_UQI_COUNT,
+-      V8HI_FTYPE_V8HI_INT_V8HI_UQI_COUNT,
+-      V8HI_FTYPE_V8HI_V8HI_V8HI_UQI_COUNT,
+-      V8SI_FTYPE_V8SI_INT_V8SI_UQI_COUNT,
+-      V8SI_FTYPE_V8SI_V4SI_V8SI_UQI_COUNT): New function type aliases.
+-      * config/i386/i386-builtin.def (__builtin_ia32_pslld512_mask,
+-      __builtin_ia32_pslldi512_mask, __builtin_ia32_psllq512_mask,
+-      __builtin_ia32_psllqi512_mask, __builtin_ia32_psrad512_mask,
+-      __builtin_ia32_psradi512_mask, __builtin_ia32_psraq512_mask,
+-      __builtin_ia32_psraqi512_mask, __builtin_ia32_psrld512_mask,
+-      __builtin_ia32_psrldi512_mask, __builtin_ia32_psrlq512_mask,
+-      __builtin_ia32_psrlqi512_mask, __builtin_ia32_psllwi128_mask,
+-      __builtin_ia32_pslldi128_mask, __builtin_ia32_psllqi128_mask,
+-      __builtin_ia32_psllw128_mask, __builtin_ia32_pslld128_mask,
+-      __builtin_ia32_psllq128_mask, __builtin_ia32_psllwi256_mask,
+-      __builtin_ia32_psllw256_mask, __builtin_ia32_pslldi256_mask,
+-      __builtin_ia32_pslld256_mask, __builtin_ia32_psllqi256_mask,
+-      __builtin_ia32_psllq256_mask, __builtin_ia32_psradi128_mask,
+-      __builtin_ia32_psrad128_mask, __builtin_ia32_psradi256_mask,
+-      __builtin_ia32_psrad256_mask, __builtin_ia32_psraqi128_mask,
+-      __builtin_ia32_psraq128_mask, __builtin_ia32_psraqi256_mask,
+-      __builtin_ia32_psraq256_mask, __builtin_ia32_psrldi128_mask,
+-      __builtin_ia32_psrld128_mask, __builtin_ia32_psrldi256_mask,
+-      __builtin_ia32_psrld256_mask, __builtin_ia32_psrlqi128_mask,
+-      __builtin_ia32_psrlq128_mask, __builtin_ia32_psrlqi256_mask,
+-      __builtin_ia32_psrlq256_mask, __builtin_ia32_psrawi256_mask,
+-      __builtin_ia32_psraw256_mask, __builtin_ia32_psrawi128_mask,
+-      __builtin_ia32_psraw128_mask, __builtin_ia32_psrlwi256_mask,
+-      __builtin_ia32_psrlw256_mask, __builtin_ia32_psrlwi128_mask,
+-      __builtin_ia32_psrlw128_mask, __builtin_ia32_psllwi512_mask,
+-      __builtin_ia32_psllw512_mask, __builtin_ia32_psrawi512_mask,
+-      __builtin_ia32_psraw512_mask, __builtin_ia32_psrlwi512_mask,
+-      __builtin_ia32_psrlw512_mask): Use _COUNT suffixed function type
+-      aliases.
+-      * config/i386/i386.c (ix86_expand_args_builtin): Rename last_arg_count
+-      flag to second_arg_count, handle 4 argument function type _COUNT
+-      aliases, handle second_arg_count on second argument rather than last.
+-
+-2017-04-10  Jeff Law  <address@hidden>
+-
+-      PR tree-optimization/80374
+-      * tree-ssa-dom.c (derive_equivalences_from_bit_ior): Do not try to
+-      record anything if we can not convert integer_zero_node to the
+-      desired type.
+-
+-2017-04-10  Kelvin Nilsen  <address@hidden>
+-
+-      PR target/80108
+-      * config/rs6000/rs6000.c (rs6000_option_override_internal):
+-      Enhance special handling given to the TARGET_P9_MINMAX option in
+-      relation to certain other options.
+-
+-2017-04-10  Bin Cheng  <address@hidden>
+-
+-      PR tree-optimization/80153
+-      * tree-ssa-loop-ivopts.c (add_iv_candidate_for_use): Check and
+-      remove POINTER_PLUS_EXPR's base part directly, rather than through
+-      aff_tree.
+-
+-2017-04-10  Richard Biener  <address@hidden>
+-          Bin Cheng  <address@hidden>
+-
+-      PR tree-optimization/80153
+-      * tree-affine.c (aff_combination_to_tree): Get base pointer from
+-      the first element of pointer type aff_tree.  Build result expr in
+-      aff_tree's type.
+-      (add_elt_to_tree): Convert to type unconditionally.  Remove other
+-      fold_convert calls.
+-      * tree-ssa-loop-ivopts.c (alloc_iv): Pass in consistent types.
+-      (rewrite_use_nonlinear_expr): Check invariant using iv information.
+-
+-2017-04-10  Richard Biener  <address@hidden>
+-
+-      * tree-ssa-structalias.c (find_func_aliases): Properly handle
+-      asm inputs.
+-
+-2017-04-10  Vladimir Makarov  <address@hidden>
+-
+-      PR rtl-optimization/70478
+-      * lra-constraints.c (curr_small_class_check): New.
+-      (update_and_check_small_class_inputs): New.
+-      (process_alt_operands): Update curr_small_class_check.  Disfavor
+-      alternative insn memory operands.  Check available regs for small
+-      class operands.
+-
+-2017-03-31  Matthew Fortune  <address@hidden>
+-
+-      PR target/80057
+-      * config/mips/mips.opt (-mvirt): Update description.
+-      * doc/invoke.texi (-mvirt): Likewise.
+-
+-2017-04-10  Richard Biener  <address@hidden>
+-
+-      PR middle-end/80362
+-      * fold-const.c (fold_binary_loc): Look at unstripped ops when
+-      looking for NEGATE_EXPR in -A / -B to A / B folding.
+-
+-2017-04-10  Martin Liska  <address@hidden>
+-
+-      PR gcov-profile/80224
+-      * gcov.c (print_usage): Fix usage string.
+-      (get_gcov_intermediate_filename): Remove.
+-      (output_gcov_file): Use both for normal and intermediate format.
+-      (generate_results): Do not initialize special file for
+-      intermediate format.
+-
+-2017-04-10  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80304
+-      * tree-ssa-loop-im.c (ref_indep_loop_p_1): Also recurse
+-      for safelen.
+-
+-2017-04-10  Nathan Sidwell  <address@hidden>
+-
+-      PR target/79905
+-      * config/rs6000/rs6000.c (rs6000_vector_type): New.
+-      (rs6000_init_builtins): Use it.
+-
+-2016-04-10  Kyrylo Tkachov  <address@hidden>
+-
+-      * config/arm/arm.md (<mrc>): Add mode to SET source.
+-      (<mrrc>): Likewise.
+-
+-2017-04-10  Richard Biener  <address@hidden>
+-
+-      PR middle-end/80344
+-      * gimplify.c (is_gimple_mem_rhs_or_call): Allow CLOBBERs.
+-
+-2017-04-10  Jakub Jelinek  <address@hidden>
+-
+-      PR target/80324
+-      * config/i386/avx512fintrin.h (_mm512_reduce_add_epi32,
+-      _mm512_reduce_mul_epi32, _mm512_reduce_and_epi32,
+-      _mm512_reduce_or_epi32, _mm512_mask_reduce_add_epi32,
+-      _mm512_mask_reduce_mul_epi32, _mm512_mask_reduce_and_epi32,
+-      _mm512_mask_reduce_or_epi32, _mm512_reduce_min_epi32,
+-      _mm512_reduce_max_epi32, _mm512_reduce_min_epu32,
+-      _mm512_reduce_max_epu32, _mm512_mask_reduce_min_epi32,
+-      _mm512_mask_reduce_max_epi32, _mm512_mask_reduce_min_epu32,
+-      _mm512_mask_reduce_max_epu32, _mm512_reduce_add_ps,
+-      _mm512_reduce_mul_ps, _mm512_mask_reduce_add_ps,
+-      _mm512_mask_reduce_mul_ps, _mm512_reduce_min_ps, _mm512_reduce_max_ps,
+-      _mm512_mask_reduce_min_ps, _mm512_mask_reduce_max_ps,
+-      _mm512_reduce_add_epi64, _mm512_reduce_mul_epi64,
+-      _mm512_reduce_and_epi64, _mm512_reduce_or_epi64,
+-      _mm512_mask_reduce_add_epi64, _mm512_mask_reduce_mul_epi64,
+-      _mm512_mask_reduce_and_epi64, _mm512_mask_reduce_or_epi64,
+-      _mm512_reduce_min_epi64, _mm512_reduce_max_epi64,
+-      _mm512_mask_reduce_min_epi64, _mm512_mask_reduce_max_epi64,
+-      _mm512_reduce_min_epu64, _mm512_reduce_max_epu64,
+-      _mm512_mask_reduce_min_epu64, _mm512_mask_reduce_max_epu64,
+-      _mm512_reduce_add_pd, _mm512_reduce_mul_pd, _mm512_mask_reduce_add_pd,
+-      _mm512_mask_reduce_mul_pd, _mm512_reduce_min_pd, _mm512_reduce_max_pd,
+-      _mm512_mask_reduce_min_pd, _mm512_mask_reduce_max_pd): New intrinsics.
+-
+-2017-04-08  Vladimir Makarov  <address@hidden>
+-
+-      PR rtl-optimization/70478
+-      * lra-constraints.c: Reverse the last patch.
+-
+-2017-04-08  Andreas Tobler  <address@hidden>
+-
+-      * config/aarch64/aarch64-freebsd.h: Define MCOUNT_NAME.
+-      Add comment for WCHAR_T.
+-
+-2017-04-08  Martin Liska  <address@hidden>
+-
+-      Revert:
+-      2017-04-07  Martin Liska  <address@hidden>
+-
+-      PR ipa/80212
+-      * ipa-split.c (split_function): Add function part to a same comdat
+-      group.
+-
+-2017-04-08  Aaron Sawdey  <address@hidden>
+-
+-      PR target/80358
+-      * config/rs6000/rs6000.c (expand_block_compare): Fix boundary check.
+-
+-2017-04-07  Pat Haugen  <address@hidden>
+-
+-      * rs6000/rs6000.c (vec_load_pendulum): Rename...
+-      (vec_pairing): ...to this.
+-      (power9_sched_reorder2): Rewrite code for pairing vector/vecload insns.
+-      (rs6000_sched_init): Adjust for name change.
+-      (struct rs6000_sched_context): Likewise.
+-      (rs6000_init_sched_context): Likewise.
+-      (rs6000_set_sched_context): Likewise.
+-
+-2017-04-07  Jakub Jelinek  <address@hidden>
+-
+-      PR target/80322
+-      PR target/80323
+-      PR target/80325
+-      PR target/80326
+-      * config/i386/avxintrin.h (_mm256_cvtsd_f64, _mm256_cvtss_f32): New
+-      intrinsics.
+-      * config/i386/avx512fintrin.h (_mm512_int2mask, _mm512_mask2int,
+-      _mm512_abs_ps, _mm512_mask_abs_ps, _mm512_abs_pd, _mm512_mask_abs_pd,
+-      _mm512_cvtsd_f64, _mm512_cvtss_f32): Likewise.
+-
+-2017-04-07  Andreas Tobler  <address@hidden>
+-
+-      * config/aarch64/aarch64-freebsd.h: Define WCHAR_TYPE.
+-
+-2017-04-07  Vladimir Makarov  <address@hidden>
+-
+-      PR rtl-optimization/70703
+-      * ira-color.c (update_conflict_hard_regno_costs): Use
+-      int64_t instead of HOST_WIDE_INT.
+-
+-2017-04-07  Vladimir Makarov  <address@hidden>
+-
+-      PR rtl-optimization/70478
+-      * lra-constraints.c (process_alt_operands): Disfavor alternative
+-      insn memory operands.
+-
+-2017-04-07  Jeff Law  <address@hidden>
+-
+-      * config/iq2000/iq2000.c (final_prescan_insn): Do not separate a
+-      CALL and NOTE_INSN_CALL_ARG_LOCATION.
+-
+-2017-04-07  Martin Liska  <address@hidden>
+-
+-      PR target/79889
+-      * config/aarch64/aarch64.c (aarch64_process_target_attr):
+-      Show error message instead of an ICE.
+-
+-2017-04-07  Martin Liska  <address@hidden>
+-
+-      PR ipa/80212
+-      * ipa-split.c (split_function): Add function part to a same comdat
+-      group.
+-
+-2017-04-07  Richard Biener  <address@hidden>
+-
+-      PR middle-end/80341
+-      * tree.c (get_unwidened): Also handle ! for_type case for
+-      INTEGER_CSTs.
+-      * convert.c (do_narrow): Split out from ...
+-      (convert_to_integer_1): ... here.  Do not pass final truncation
+-      type to get_unwidened for TRUNC_DIV_EXPR.
+-
+-2017-04-07  Richard Biener  <address@hidden>
+-
+-      * tree-affine.c (wide_int_ext_for_comb): Take type rather
+-      than aff_tree.
+-      (aff_combination_const): Adjust.
+-      (aff_combination_scale): Likewise.
+-      (aff_combination_add_elt): Likewise.
+-      (aff_combination_add_cst): Likewise.
+-      (aff_combination_convert): Likewise.
+-      (add_elt_to_tree): Likewise.  Remove unused argument.
+-      (aff_combination_to_tree): Adjust calls to add_elt_to_tree.
+-
+-2017-04-07  Sebastian Huber  <address@hidden>
+-
+-      * config/arm/arm.h (ARM_DEFAULT_SHORT_ENUMS): Provide default
+-      definition.
+-      * config/arm/arm.c (arm_default_short_enums): Use
+-      ARM_DEFAULT_SHORT_ENUMS.
+-      * config/arm/rtems.h (ARM_DEFAULT_SHORT_ENUMS): Define.
+-
+-2017-04-06  Jakub Jelinek  <address@hidden>
+-
+-      PR debug/80234
+-      * dwarf2out.c (gen_member_die): Handle C++17 inline static data
+-      members with redundant out-of-class redeclaration.
+-
+-2017-04-06  Uros Bizjak  <address@hidden>
+-
+-      PR target/80286
+-      * config/i386/sse.md (*vec_extractv4si_0_zext_sse4): New pattern.
+-      * config/i386/i386.md (*zero_extendsidi2):
+-      Add (?*x,*x) and (?*v,*v) alternatives.
+-
+-2017-04-06  Uros Bizjak  <address@hidden>
+-
+-      PR target/79733
+-      * config/i386/i386.c (ix86_expand_builtin)
+-      <case IX86_BUILTIN_K{,OR}TEST{C,Z}{8,16,32,64}>: Determine insn operand
+-      mode from insn data. Convert operands to insn operand mode.
+-      Copy operands that don't satisfy insn predicate to a register.
+-
+-2017-04-06  Sam Thursfield  <address@hidden>
+-
+-      * config/rs6000/x-aix: Increase memory limit for genautomata on AIX.
+-      Update comments.
+-
+-2017-04-06  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80334
+-      * tree-ssa-loop-ivopts.c (rewrite_use_address): Properly
+-      preserve alignment of accesses.
+-
+-2017-04-06  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80262
+-      * tree-sra.c (build_ref_for_offset): Preserve address-space
+-      information.
+-      * tree-ssa-sccvn.c (vn_reference_maybe_forwprop_address):
+-      Drop useless address-space information on MEM_REF offsets.
+-
+-2017-04-05  Andreas Schwab  <address@hidden>
+-
+-      * builtins.def (BUILT_IN_UPDATE_SETJMP_BUF): Fix type.
+-
+-2017-04-05  Vladimir Makarov  <address@hidden>
+-
+-      PR rtl-optimization/70703
+-      * ira-color.c (update_conflict_hard_regno_costs): Use
+-      HOST_WIDE_INT instead of long.
+-
+-2017-04-05  Uros Bizjak  <address@hidden>
+-
+-      PR target/80298
+-      * config/i386/mmintrin.h: Add -msse target option when __SSE__ is
+-      not defined for x86_64 target.  Add -mmmx target option when __SSE2__
+-      is not defined.
+-      * config/i386/mm3dnow.h: Add -msse target when __SSE__ is not defined
+-      for x86_64 target.  Handle -m3dnowa option.
+-
+-2017-04-05  Vladimir Makarov  <address@hidden>
+-
+-      PR rtl-optimization/70703
+-      * ira-color.c (update_costs_from_allocno): Use the smallest mode.
+-      (update_conflict_hard_regno_costs): Use long instead of unsigned
+-      arithmetic for cost calculation.
+-
+-2017-04-05  Jakub Jelinek  <address@hidden>
+-          Bernd Edlinger  <address@hidden>
+-
+-      PR sanitizer/80308
+-      * asan.c (asan_store_shadow_bytes): Fix location of last_chunk_value
+-      for big endian.
+-
+-2017-04-05  Eric Botcazou  <address@hidden>
+-
+-      PR target/78002
+-      * config/aarch64/aarch64.c (aarch64_emit_probe_stack_range): Replace
+-      ptr_mode with Pmode throughout.
+-      * config/aarch64/aarch64.md (probe_stack_range_<PTR:mode): Rename
+-      into probe_stack_range and use DImode.
+-
+-2017-04-05  Dominik Vogt  <address@hidden>
+-
+-      PR target/79890
+-      * config/s390/s390.c (s390_register_info_gprtofpr): Return if
+-      call_eh_return is true.
+-
+-2017-04-05  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390-c.c (s390_resolve_overloaded_builtin):
+-      Initialize last_match_fntype_index.
+-
+-2017-04-05  Jakub Jelinek  <address@hidden>
+-
+-      PR target/80310
+-      * tree-nvr.c: Include internal-fn.h.
+-      (pass_return_slot::execute): Ignore internal calls without
+-      direct optab.
+-
+-2017-04-04  Jakub Jelinek  <address@hidden>
+-          Richard Biener  <address@hidden>
+-
+-      PR c++/80297
+-      * genmatch.c (capture::gen_transform): For GENERIC unshare_expr
+-      captures used multiple times, except for the last use.
+-      * generic-match-head.c: Include gimplify.h.
+-
+-2017-04-04  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/79390
+-      * target.h (struct noce_if_info): Declare.
+-      * targhooks.h (default_noce_conversion_profitable_p): Declare.
+-      * target.def (noce_conversion_profitable_p): New target hook.
+-      * ifcvt.h (struct noce_if_info): New type, moved from ...
+-      * ifcvt.c (struct noce_if_info): ... here.
+-      (noce_conversion_profitable_p): Renamed to ...
+-      (default_noce_conversion_profitable_p): ... this.  No longer
+-      static nor inline.
+-      (noce_try_store_flag_constants, noce_try_addcc,
+-      noce_try_store_flag_mask, noce_try_cmove, noce_try_cmove_arith,
+-      noce_convert_multiple_sets): Use targetm.noce_conversion_profitable_p
+-      instead of noce_conversion_profitable_p.
+-      * config/i386/i386.c: Include ifcvt.h.
+-      (ix86_option_override_internal): Don't override
+-      PARAM_MAX_RTL_IF_CONVERSION_INSNS default.
+-      (ix86_noce_conversion_profitable_p): New function.
+-      (TARGET_NOCE_CONVERSION_PROFITABLE_P): Redefine.
+-      * config/i386/x86-tune.def (X86_TUNE_ONE_IF_CONV_INSN): Adjust comment.
+-      * doc/tm.texi.in (TARGET_NOCE_CONVERSION_PROFITABLE_P): Add.
+-      * doc/tm.texi: Regenerated.
+-
+-2017-04-04  Bill Schmidt  <address@hidden>
+-
+-      * doc/extend.texi (PowerPC AltiVec Built-in Functions): Grammar
+-      correction.
+-
+-2017-04-04  Thomas Preud'homme  <address@hidden>
+-
+-      PR target/80307
+-      * config/arm/arm.c (thumb1_rtx_costs): Give a cost of 32
+-      instructions for small multiply cores.
+-
+-2017-04-04  Jeff Law  <address@hidden>
+-
+-      * config/mips/mips.c (mips_multi_add): Zero initialize the newly
+-      added member.
+-      (mips_expand_vec_perm_const): Initialize elements in orig_perm
+-      that are not set by the loop over the elements.
+-
+-2017-04-04  Jakub Jelinek  <address@hidden>
+-
+-      PR target/80286
+-      * config/i386/i386.c (ix86_expand_args_builtin): If op has scalar
+-      int mode, convert_modes it to mode as unsigned, otherwise use
+-      lowpart_subreg to mode rather than SImode.
+-      * config/i386/sse.md (<mask_codefor>ashr<mode>3<mask_name>,
+-      ashr<mode>3, ashr<mode>3<mask_name>, <shift_insn><mode>3<mask_name>):
+-      Use DImode instead of SImode for the shift count operand.
+-      * config/i386/mmx.md (mmx_ashr<mode>3, mmx_<shift_insn><mode>3):
+-      Likewise.
+-
+-2017-04-04  Richard Biener  <address@hidden>
+-
+-      PR middle-end/80281
+-      * match.pd (A + (-B) -> A - B): Make sure to preserve unsigned
+-      arithmetic done for the negate or the plus.  Simplify.
+-      (A - (-B) -> A + B): Likewise.
+-      * fold-const.c (split_tree): Make sure to not negate pointers.
+-
+-2017-04-04  Segher Boessenkool  <address@hidden>
+-
+-      PR rtl-optimization/60818
+-      * simplify-rtx.c (simplify_binary_operation_1): Do not replace
+-      a compare of comparisons with the thing compared if this results
+-      in a different machine mode.
+-
+-2017-04-03  Jonathan Wakely  <address@hidden>
+-
+-      * alias.c (base_alias_check): Fix typo in comment.
+-      * cgraph.h (class ipa_polymorphic_call_context): Likewise.
+-      * cgraphunit.c (symbol_table::compile): Likewise.
+-      * collect2.c (maybe_run_lto_and_relink): Likewise.
+-      * config/arm/arm.c (arm_thumb1_mi_thunk): Likewise.
+-      * config/avr/avr-arch.h (avr_arch_info_t): Likewise.
+-      * config/avr/avr.c (avr_map_op_t): Likewise.
+-      * config/cr16/cr16.h (DATA_ALIGNMENT): Likewise.
+-      * config/epiphany/epiphany.c (TARGET_ARG_PARTIAL_BYTES): Likewise.
+-      * config/epiphany/epiphany.md (movcc): Likewise.
+-      * config/i386/i386.c (legitimize_pe_coff_extern_decl): Likewise.
+-      * config/m68k/m68k.c (struct _sched_ib, m68k_sched_variable_issue):
+-      Likewise.
+-      * config/mips/mips.c (mips_save_restore_reg): Likewise.
+-      * config/rx/rx.c (rx_is_restricted_memory_address): Likewise.
+-      * config/s390/s390.c (Z10_EARLYLOAD_DISTANCE): Likewise.
+-      * config/sh/sh.c (sh_rtx_costs): Likewise.
+-      * fold-const.c (fold_truth_andor): Likewise.
+-      * genautomata.c (collapse_flag): Likewise.
+-      * gengtype.h (struct type::u::s): Likewise.
+-      * gensupport.c (has_subst_attribute, add_mnemonic_string): Likewise.
+-      * input.c (FORMAT_AMOUNT): Likewise.
+-      * ipa-cp.c (class ipcp_lattice, agg_replacements_to_vector)
+-      (known_aggs_to_agg_replacement_list): Likewise.
+-      * ipa-inline-analysis.c: Likewise.
+-      * ipa-inline.h (estimate_edge_time, estimate_edge_hints): Likewise.
+-      * ipa-polymorphic-call.c
+-      (ipa_polymorphic_call_context::restrict_to_inner_class): Likewise.
+-      * loop-unroll.c (analyze_insn_to_expand_var): Likewise.
+-      * lra.c (lra_optional_reload_pseudos, lra_subreg_reload_pseudos):
+-      Likewise.
+-      * modulo-sched.c (apply_reg_moves): Likewise.
+-      * omp-expand.c (build_omp_regions_1): Likewise.
+-      * trans-mem.c (struct tm_wrapper_hasher): Likewise.
+-      * tree-ssa-loop-ivopts.c (may_eliminate_iv): Likewise.
+-      * tree-ssa-loop-niter.c (maybe_lower_iteration_bound): Likewise.
+-      * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Likewise.
+-      * value-prof.c: Likewise.
+-      * var-tracking.c (val_reset): Likewise.
+-
+-2017-04-03  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80275
+-      * fold-const.c (split_address_to_core_and_offset): Handle
+-      POINTER_PLUS_EXPR.
+-
+-2017-04-03  Eric Botcazou  <address@hidden>
+-
+-      * tree-nested.c (get_descriptor_type): Make sure that the alignment of
+-      descriptors is at least equal to that of functions.
+-
+-2017-04-02  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/sse.md (movdi_to_sse): Add missing DONE.
+-
+-2017-04-02  Uros Bizjak  <address@hidden>
+-
+-      PR target/80250
+-      * config/i386/sse.md (mov<IMOD4:mode>): Remove insn pattern.
+-      (mov<IMOD4:mode>): New expander.
+-      (*mov<IMOD4:mode>_internal): New insn and split pattern.
+-
+-2017-03-31  Segher Boessenkool  <address@hidden>
+-
+-      PR rtl-optimization/79405
+-      * fwprop.c (propagations_left): New variable.
+-      (forward_propagate_into): Decrement it.
+-      (fwprop_init): Initialize it.
+-      (fw_prop): If the variable has reached zero, stop propagating.
+-      (fwprop_addr): Ditto.
+-
+-2017-03-31  Jakub Jelinek  <address@hidden>
+-
+-      PR debug/79255
+-      * dwarf2out.c (decls_for_scope): If BLOCK_NONLOCALIZED_VAR is
+-      a FUNCTION_DECL, pass it as decl instead of origin to
+-      process_scope_var.
+-
+-2017-03-31  Alexander Monakov  <address@hidden>
+-
+-      * config/nvptx/nvptx.c (nvptx_output_softstack_switch): Correct format
+-      string.
+-
+-2017-03-31  Pat Haugen  <address@hidden>
+-
+-      PR target/80107
+-      * config/rs6000/rs6000.md (extendhi<mode>2): Add test for
+-      TARGET_VSX_SMALL_INTEGER.
+-
+-2017-03-31  Bill Schmidt  <address@hidden>
+-
+-      * doc/extend.texi (PowerPC AltiVec Built-in Functions): Add
+-      reference to the OpenPOWER 64-Bit ELF V2 ABI Specification.
+-
+-2017-03-31  Matthew Fortune  <address@hidden>
+-
+-      * config/mips/mips-msa.md (msa_vec_extract_<msafmt_f>): Update
+-      extraction from odd-numbered MSA register.
+-
+-2017-03-31  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/80173
+-      * expmed.c (store_bit_field_1): Don't attempt to create
+-      a word subreg out of hard registers wider than word if they
+-      have HARD_REGNO_NREGS of 1 for their mode.
+-
+-      PR middle-end/80163
+-      * varasm.c (initializer_constant_valid_p_1): Disallow sign-extending
+-      conversions to integer types wider than word and pointer.
+-
+-      PR debug/80025
+-      * cselib.h (rtx_equal_for_cselib_1): Add depth argument.
+-      (rtx_equal_for_cselib_p): Pass 0 to it.
+-      * cselib.c (cselib_hasher::equal): Likewise.
+-      (rtx_equal_for_cselib_1): Add depth argument.  If depth
+-      is 128, don't look up VALUE locs and punt.  Increment
+-      depth in recursive calls when walking VALUE locs.
+-
+-2017-03-31  Bernd Edlinger  <address@hidden>
+-
+-      * gcov.c (md5sum_to_hex): Fix output of MD5 hex bytes.
+-      (make_gcov_file_name): Use the canonical path name for generating
+-      the MD5 value.
+-      (read_line): Fix handling of files with ascii null bytes.
+-
+-2017-03-30  Matthew Fortune  <address@hidden>
+-
+-      * config/mips/mips.c (mips_expand_vector_init): Create a const_vector
+-      to initialise a vector register instead
+-      of using a const_int.
+-
+-2017-03-30  Jakub Jelinek  <address@hidden>
+-
+-      PR translation/80189
+-      * gimplify.c (omp_default_clause): Use %qs instead of %s in
+-      diagnostic messages.
+-
+-2017-03-30  Peter Bergner  <address@hidden>
+-
+-      PR target/80246
+-      * config/rs6000/dfp.md (dfp_dxex_<mode>): Update mode of operand 0.
+-      (dfp_diex_<mode>): Update mode of operand 1.
+-      * doc/extend.texi (dxex, dxexq): Document change to return type.
+-      (diex, diexq): Document change to argument type.
+-
+-2017-03-30  Martin Jambor  <address@hidden>
+-
+-      PR ipa/77333
+-      * cgraph.h (cgraph_build_function_type_skip_args): Declare.
+-      * cgraph.c (redirect_call_stmt_to_callee): Set gimple fntype so that
+-      it reflects the signature changes performed at the callee side.
+-      * cgraphclones.c (build_function_type_skip_args): Make public, renamed
+-      to cgraph_build_function_type_skip_args.
+-      (build_function_decl_skip_args): Adjust call to the above function.
+-
+-2017-03-30  Jakub Jelinek  <address@hidden>
+-
+-      PR target/80206
+-      * config/i386/sse.md
+-      (<extract_type>_vextract<shuffletype><extract_suf>_mask): Use
+-      register as dest whenever it is a MEM not rtx_equal_p to the
+-      corresponding dup operand, and when forcing into reg move the
+-      reg into the memory afterwards.
+-      (<extract_type_2>_vextract<shuffletype><extract_suf_2>_mask):
+-      Likewise.  Use <ssehalfvecmode> instead of <ssequartermode>
+-      for the force_reg mode.
+-      (avx512vl_vextractf128<mode>): Use register as dest either
+-      always when a MEM, or when it is a MEM not rtx_equal_p to the
+-      corresponding dup operand, or even not when it is a CONST_VECTOR
+-      depending on the mode and lo vs. hi.
+-      (avx512dq_vextract<shuffletype>64x2_1_maskm): Remove extraneous
+-      parens.
+-      (avx512f_vextract<shuffletype>32x4_1_maskm): Likewise.
+-      (<mask_codefor>avx512dq_vextract<shuffletype>64x2_1<mask_name>):
+-      Likewise.  Require that operands[2] is even.
+-      (<mask_codefor>avx512f_vextract<shuffletype>32x4_1<mask_name>):
+-      Remove extraneous parens.  Require that operands[2] is a multiple
+-      of 4.
+-      (vec_extract_lo_<mode><mask_name>): Don't bother testing if
+-      operands[0] is a MEM if <mask_applied>, the predicates/constraints
+-      disallow memory then.
+-
+-2017-03-30  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/77498
+-      * tree-ssa-pre.c (phi_translate_1): Do not allow simplifications
+-      to non-constants over backedges.
+-
+-2017-03-29  Segher Boessenkool  <address@hidden>
+-
+-      PR rtl-optimization/80233
+-      * combine.c (combine_instructions): Only take NONDEBUG_INSN_P insns
+-      as last_combined_insn.  Do not test for BARRIER_P separately.
+-
+-2017-03-29  Andreas Schwab  <address@hidden>
+-
+-      PR ada/80146
+-      * calls.c (prepare_call_address): Convert funexp to Pmode before
+-      copying to temp reg.
+-
+-2017-03-29  Bill Schmidt  <address@hidden>
+-
+-      PR tree-optimization/80158
+-      * gimple-ssa-strength-reduction.c (replace_mult_candidate):
+-      Handle possible future case of more than one alternate
+-      interpretation.
+-      (replace_rhs_if_not_dup): Likewise.
+-      (replace_one_candidate): Likewise.
+-
+-2017-03-28  Vladimir Makarov  <address@hidden>
+-
+-      PR rtl-optimization/80193
+-      * ira.c (ira): Do not check allocation for LRA.
+-
+-2017-03-28  Alexander Monakov  <address@hidden>
+-
+-      * config/nvptx/nvptx-protos.h (nvptx_output_simt_enter): Declare.
+-      (nvptx_output_simt_exit): Declare.
+-      * config/nvptx/nvptx.c (nvptx_init_unisimt_predicate): Use
+-      cfun->machine->unisimt_location.  Handle NULL unisimt_predicate.
+-      (init_softstack_frame): Move initialization of crtl->is_leaf to...
+-      (nvptx_declare_function_name): ...here.  Emit declaration of local
+-      memory space buffer for omp_simt_enter insn.
+-      (nvptx_output_unisimt_switch): New.
+-      (nvptx_output_softstack_switch): New.
+-      (nvptx_output_simt_enter): New.
+-      (nvptx_output_simt_exit): New.
+-      * config/nvptx/nvptx.h (struct machine_function): New fields
+-      has_simtreg, unisimt_location, simt_stack_size, simt_stack_align.
+-      * config/nvptx/nvptx.md (UNSPECV_SIMT_ENTER): New unspec.
+-      (UNSPECV_SIMT_EXIT): Ditto.
+-      (omp_simt_enter_insn): New insn.
+-      (omp_simt_enter): New expansion.
+-      (omp_simt_exit): New insn.
+-      * config/nvptx/nvptx.opt (msoft-stack-reserve-local): New option.
+-
+-      * internal-fn.c (expand_GOMP_SIMT_ENTER): New.
+-      (expand_GOMP_SIMT_ENTER_ALLOC): New.
+-      (expand_GOMP_SIMT_EXIT): New.
+-      * internal-fn.def (GOMP_SIMT_ENTER): New internal function.
+-      (GOMP_SIMT_ENTER_ALLOC): Ditto.
+-      (GOMP_SIMT_EXIT): Ditto.
+-      * target-insns.def (omp_simt_enter): New insn.
+-      (omp_simt_exit): Ditto.
+-      * omp-low.c (struct omplow_simd_context): New fields simt_eargs,
+-      simt_dlist.
+-      (lower_rec_simd_input_clauses): Implement SIMT privatization.
+-      (lower_rec_input_clauses): Likewise.
+-      (lower_lastprivate_clauses): Handle SIMT privatization.
+-
+-      * omp-offload.c: Include langhooks.h, tree-nested.h, stor-layout.h.
+-      (ompdevlow_adjust_simt_enter): New.
+-      (find_simtpriv_var_op): New.
+-      (execute_omp_device_lower): Handle IFN_GOMP_SIMT_ENTER,
+-      IFN_GOMP_SIMT_ENTER_ALLOC, IFN_GOMP_SIMT_EXIT.
+-
+-      * tree-inline.h (struct copy_body_data): New field dst_simt_vars.
+-      * tree-inline.c (expand_call_inline): Handle SIMT privatization.
+-      (copy_decl_for_dup_finish): Ditto.
+-
+-      * tree-ssa.c (execute_update_addresses_taken): Handle GOMP_SIMT_ENTER.
+-
+-2017-03-28  Uros Bizjak  <address@hidden>
+-
+-      PR target/53383
+-      * config/i386/i386.c (ix86_option_override_internal): Always
+-      allow -mpreferred-stack-boundary=3 for 64-bit targets.
+-
+-2017-03-28  Bin Cheng  <address@hidden>
+-
+-      * tree-vect-loop.c (optimize_mask_stores): Add bb to the right loop.
+-
+-2017-03-28  Bin Cheng  <address@hidden>
+-
+-      * tree-vect-loop-manip.c (slpeel_add_loop_guard): New param and
+-      mark new edge's irreducible flag accordign to it.
+-      (vect_do_peeling): Check loop preheader edge's irreducible flag
+-      and pass it to function slpeel_add_loop_guard.
+-
+-2017-03-28  Richard Sandiford  <address@hidden>
+-
+-      PR tree-optimization/80218
+-      * tree-call-cdce.c (shrink_wrap_one_built_in_call_with_conds):
+-      Update block frequencies and counts.
+-
+-2017-03-28  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/78644
+-      * tree-ssa-ccp.c (evaluate_stmt): When we may not use the value
+-      of a simplification result we may not use it at all.
+-
+-2017-03-28  Richard Biener  <address@hidden>
+-
+-      PR ipa/80205
+-      * tree-inline.c (copy_phis_for_bb): Do not create PHI node
+-      without arguments, generate default definition of a SSA name.
+-
+-2017-03-28  Richard Biener  <address@hidden>
+-
+-      PR middle-end/80222
+-      * gimple-fold.c (gimple_fold_indirect_ref): Do not touch
+-      TYPE_REF_CAN_ALIAS_ALL references.
+-      * fold-const.c (fold_indirect_ref_1): Likewise.
+-
+-2017-03-28  Martin Liska  <address@hidden>
+-
+-      PR ipa/80104
+-      * cgraphunit.c (cgraph_node::expand_thunk): Mark argument of a
+-      thunk call as DECL_GIMPLE_REG_P when vector or complex type.
+-
+-2017-03-28  Claudiu Zissulescu  <address@hidden>
+-          Thomas Petazzoni  <address@hidden>
+-
+-      * config/arc/arc.h (CPP_SPEC): Add subtarget_cpp_spec.
+-      (EXTRA_SPECS): Define.
+-      (SUBTARGET_EXTRA_SPECS): Likewise.
+-      (SUBTARGET_CPP_SPEC): Likewise.
+-      * config/arc/elf.h (EXTRA_SPECS): Renamed to
+-      SUBTARGET_EXTRA_SPECS.
+-      * config/arc/linux.h (SUBTARGET_CPP_SPEC): Define.
+-
+-2017-03-28  Claudiu Zissulescu  <address@hidden>
+-
+-      * config/arc/simdext.md (vst64_insn): Update pattern.
+-      (vld32wh_insn): Likewise.
+-      (vld32wl_insn): Likewise.
+-      (vld64_insn): Likewise.
+-      (vld32_insn): Likewise.
+-
+-2017-03-28  Marek Polacek  <address@hidden>
+-
+-      PR sanitizer/80067
+-      * fold-const.c (fold_comparison): Use protected_set_expr_location
+-      instead of SET_EXPR_LOCATION.
+-
+-2017-03-28  Markus Trippelsdorf  <address@hidden>
+-
+-      * tree.c (add_expr): Avoid name lookup warning.
+-
+-2017-03-27  Jeff Law  <address@hidden>
+-
+-      PR tree-optimization/80216
+-      * tree-ssa-dom.c (derive_equivalences_from_bit_ior): Fix typo in
+-      function name.  Limit recursion depth.
+-      (record_temporary_equivalences): Corresponding changes.
+-
+-2017-03-27  Jonathan Wakely  <address@hidden>
+-
+-      * doc/invoke.texi (-Wno-narrowing): Reorder so default behavior is
+-      covered first.
+-
+-2017-03-27  Jakub Jelinek  <address@hidden>
+-
+-      PR target/80102
+-      * reg-notes.def (REG_CFA_NOTE): Define.  Use it for CFA related
+-      notes.
+-      * cfgcleanup.c (reg_note_cfa_p): New array.
+-      (insns_have_identical_cfa_notes): New function.
+-      (old_insns_match_p): Don't cross-jump in between /f
+-      and non-/f instructions.  If both i1 and i2 are frame related,
+-      verify all CFA notes, their order and content.
+-
+-2017-03-27  Michael Meissner  <address@hidden>
+-
+-      PR target/78543
+-      * config/rs6000/rs6000.md (bswaphi2_extenddi): Combine bswap
+-      HImode and SImode with zero extend to DImode to one insn.
+-      (bswap<mode>2_extenddi): Likewise.
+-      (bswapsi2_extenddi): Likewise.
+-      (bswaphi2_extendsi): Likewise.
+-      (bswaphi2): Combine bswap HImode and SImode into one insn.
+-      Separate memory insns from swapping register.
+-      (bswapsi2): Likewise.
+-      (bswap<mode>2): Likewise.
+-      (bswaphi2_internal): Delete, no longer used.
+-      (bswapsi2_internal): Likewise.
+-      (bswap<mode>2_load): Split bswap HImode/SImode into separate load,
+-      store, and gpr<-gpr swap insns.
+-      (bswap<mode>2_store): Likewise.
+-      (bswaphi2_reg): Register only splitter, combine with the splitter.
+-      (bswaphi2 splitter): Likewise.
+-      (bswapsi2_reg): Likewise.
+-      (bswapsi2 splitter): Likewise.
+-      (bswapdi2): If we have the LDBRX and STDBRX instructions, split
+-      the insns into load, store, and register/register insns.
+-      (bswapdi2_ldbrx): Likewise.
+-      (bswapdi2_load): Likewise.
+-      (bswapdi2_store): Likewise.
+-      (bswapdi2_reg): Likewise.
+-
+-2017-03-27  Gunther Nikl  <address@hidden>
+-
+-      * system.h (HAVE_DESIGNATED_INITIALIZERS): Fix non C++ case.
+-      (HAVE_DESIGNATED_UNION_INITIALIZERS): Likewise.
+-
+-2017-03-27  Kelvin Nilsen  <address@hidden>
+-
+-      PR target/80103
+-      * config/rs6000/rs6000-c.c (rs6000_target_modify_macros): Edit and
+-      add comments.
+-      * config/rs6000/rs6000.c (rs6000_option_override_internal): Add
+-      special handling for target option conflicts between dform
+-      options (-mpower9-dform, -mpower9-dform-vector,
+-      -mpower9-dform-scalar) and -mno-direct-move.
+-
+-2017-03-27  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80181
+-      * tree-ssa-ccp.c (likely_value): UNDEFINED ^ X is UNDEFINED.
+-
+-2017-03-27  Claudiu Zissulescu  <address@hidden>
+-
+-      * config/arc/predicates.md (move_double_src_operand): Replace the
+-      call to move_double_src_operand with a call to address_operand.
+-
+-2017-03-27  Claudiu Zissulescu  <address@hidden>
+-
+-      * config/arc/elf.h (ARGET_ARC_TP_REGNO_DEFAULT): Define.
+-      * config/arc/linux.h (ARGET_ARC_TP_REGNO_DEFAULT): Likewise.
+-      * config/arc/arc.opt (mtp-regno): Use ARGET_ARC_TP_REGNO_DEFAULT.
+-
+-2017-03-27  Claudiu Zissulescu  <address@hidden>
+-
+-      * config/arc/predicates.md (long_immediate_loadstore_operand):
+-      Consider scaled addresses cases.
+-
+-2017-03-27  Claudiu Zissulescu  <address@hidden>
+-
+-      * config/arc/arc.c (arc_epilogue_uses): BLINK should be also
+-      restored when in interrupt.
+-      * config/arc/arc.md (simple_return): ARCv2 rtie instruction
+-      doesn't have delay slot.
+-
+-2017-03-27  Richard Biener  <address@hidden>
+-
+-      PR ipa/79776
+-      * tree-ssa-structalias.c (associate_varinfo_to_alias): Skip
+-      inlined thunk clones.
+-
+-2017-03-27  Jakub Jelinek  <address@hidden>
+-
+-      PR sanitizer/80168
+-      * asan.c (instrument_derefs): Copy over last operand from
+-      original COMPONENT_REF to the new COMPONENT_REF with
+-      DECL_BIT_FIELD_REPRESENTATIVE.
+-      * ubsan.c (instrument_object_size): Likewise.
+-
+-2017-03-27  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80170
+-      * tree-vect-data-refs.c (vect_compute_data_ref_alignment): Make
+-      sure DR/SCEV didnt fold in constants we do not see when looking
+-      at the reference base alignment.
+-
+-2017-03-27  Richard Biener  <address@hidden>
+-
+-      PR middle-end/80171
+-      * gimple-fold.c (fold_ctor_reference): Properly guard against
+-      NULL return value from canonicalize_constructor_val.
+-
+-2017-03-25  Uros Bizjak  <address@hidden>
+-
+-      PR target/80180
+-      * config/i386/i386.c (ix86_expand_builtin)
+-      <IX86_BUILTIN_RDSEED{16,32,64}_STEP>: Do not expand arg0 between
+-      flags reg setting and flags reg using instructions.
+-      <IX86_BUILTIN_RDRAND{16,32,64}_STEP>: Ditto.  Use non-flags reg
+-      clobbering instructions to zero extend op2.
+-
+-2017-03-25  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/install.texi (Configuration) <--with-aix-soname>:
+-      Update link to AIX ld.
+-
+-2017-03-25  Bernd Schmidt  <address@hidden>
+-
+-      PR rtl-optimization/80160
+-      PR rtl-optimization/80159
+-      * lra-assigns.c (must_not_spill_p): Tighten new test to also take
+-      reg_alternate_class into account.
+-
+-2017-03-24  Vladimir Makarov  <address@hidden>
+-
+-      PR target/80148
+-      * lra-assigns.c (assign_by_spills): Add spilled non-reload pseudos
+-      to consider in curr_insn_transform.
+-
+-2017-03-24  Jakub Jelinek  <address@hidden>
+-
+-      * genrecog.c (validate_pattern): Add VEC_SELECT validation.
+-      * genmodes.c (emit_min_insn_modes_c): Call emit_mode_nunits
+-      and emit_mode_inner.
+-
+-2017-03-24  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390-builtins.def: Add VXE builtins.  Add a flags
+-      argument to the overloaded builtin variants.  Use the new flag to
+-      deprecate certain builtin variants.
+-      * config/s390/s390-builtin-types.def: Add new builtin types.
+-      * config/s390/s390-builtins.h: Support new flags field for
+-      overloaded builtins.
+-      * config/s390/s390-c.c (OB_DEF_VAR): New flags field.
+-      (s390_macro_to_expand): Enable vector float data type.
+-      (s390_cpu_cpp_builtins_internal): Indicate support of the new
+-      builtins by incrementing the __VEC__ version number.
+-      (s390_expand_overloaded_builtin): Support expansion of vec_xl and
+-      vec_xst.
+-      (s390_resolve_overloaded_builtin): Emit error messages depending
+-      on the builtin flags.
+-      * config/s390/s390.c (s390_expand_builtin): Support additional
+-      flags argument.  Change error message to match the messages
+-      emitted in s390-c.c.
+-      * config/s390/s390.md: New UNSPEC_* constants.
+-      (op_type): Add new instruction types.
+-      * config/s390/vecintrin.h: Add new builtins and test data class
+-      constants.
+-      * config/s390/vx-builtins.md (V_HW_32_64): Add V4SF.
+-      (V_HW_4, VEC_HW, VECF_HW): New mode iterators.
+-      (VEC_INEXACT, VEC_NOINEXACT): New constants.
+-      ("vec_splats<mode>", "vec_insert<mode>", "vec_promote<mode>")
+-      ("vec_insert_and_zero<mode>", "vec_mergeh<mode>")
+-      ("vec_mergel<mode>"): V_HW -> VEC_HW.
+-
+-      ("vlrlrv16qi", "vstrlrv16qi", "vbpermv16qi", "vec_msumv2di")
+-      ("vmslg", "*vftci<mode>_cconly", "vftci<mode>_intcconly")
+-      ("*vftci<mode>", "vftci<mode>_intcc", "vec_double_s64")
+-      ("vec_double_u64", "vfmin<mode>", "vfmax<mode>"): New definition.
+-
+-      ("and_av2df3", "and_cv2df3", "vec_andc_av2df3")
+-      ("vec_andc_cv2df3", "xor_av2df3", "xor_cv2df3", "vec_nor_av2df3")
+-      ("vec_nor_cv2df3", "ior_av2df3", "ior_cv2df3", "vec_nabs")
+-      ("*vftcidb", "*vftcidb_cconly", "vftcidb"): Remove definition.
+-
+-      ("vec_all_<fpcmpcc:code>v2df", "vec_any_<fpcmpcc:code>v2df")
+-      ("vec_scatter_elementv4si_DI", "vec_cmp<fpcmp:code>v2df")
+-      ("vec_di_to_df_s64", "vec_di_to_df_u64", "vec_df_to_di_u64")
+-      ("vfidb", "*vldeb", "*vledb", "*vec_cmp<insn_cmp>v2df_cconly")
+-      ("vec_cmpeqv2df_cc", "vec_cmpeqv2df_cc", "vec_cmphv2df_cc")
+-      ("vec_cmphev2df_cc", "*vec_cmpeqv2df_cc")
+-      ("*vec_cmphv2df_cc", "*vec_cmphev2df_cc"): Enable new modes as ...
+-
+-      ("vec_all_<fpcmpcc:code><mode>", "vec_any_<fpcmpcc:code><mode>")
+-      ("vec_scatter_element<V_HW_4:mode>_DI")
+-      ("vec_cmp<fpcmp:code><mode>", "vcdgb", "vcdlgb", "vclgdb")
+-      ("vec_fpint<mode>", "vflls")
+-      ("vflrd", "*vec_cmp<insn_cmp><mode>_cconly", "vec_cmpeq<mode>_cc")
+-      ("vec_cmpeq<mode>_cc", "vec_cmph<mode>_cc", "vec_cmphe<mode>_cc")
+-      ("*vec_cmpeq<mode>_cc", "*vec_cmph<mode>_cc")
+-      ("*vec_cmphe<mode>_cc"): ... these.
+-
+-      ("vec_ctd_s64", "vec_ctsl", "vec_ctul", "vec_st2f"): Use rounding
+-      mode constant instead of magic value.
+-
+-2017-03-24  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390.c (s390_expand_vec_compare): Support other
+-      vector floating point modes than just V2DF.
+-      (s390_expand_vcond): Likewise.
+-      (s390_hard_regno_mode_ok): Allow SFmode values in VRs.
+-      (s390_cannot_change_mode_class): Prevent mode changes between TF
+-      and V1TF in vector registers.
+-      * config/s390/s390.md (DF, SF): New mode attributes.
+-      ("*cmp<mode>_ccs", "add<mode>3", "sub<mode>3", "mul<mode>3")
+-      ("fma<mode>4", "fms<mode>4", "div<mode>3", "*neg<mode>2"): Add
+-      SFmode support for VRs.
+-      * config/s390/vector.md (V_HW, V_HW2, VT_HW, ti*, nonvec): Add new
+-      vector fp modes.
+-      (VFT, VF_HW): New mode iterators.
+-      (vw, sdx): New mode attributes.
+-      ("addv2df3", "subv2df3", "mulv2df3", "divv2df3", "sqrtv2df2")
+-      ("fmav2df4","fmsv2df4", "negv2df2", "absv2df2", "*negabsv2df2")
+-      ("smaxv2df3", "sminv2df3", "*vec_cmp<VFCMP_HW_OP:code>v2df_nocc")
+-      ("vec_cmpuneqv2df", "vec_cmpltgtv2df", "vec_orderedv2df")
+-      ("vec_unorderedv2df"): Adjust the v2df only patterns to support
+-      also the new vector floating point modes.  Renaming to ...
+-
+-      ("add<mode>3", "sub<mode>3", "mul<mode>3", "div<mode>3")
+-      ("sqrt<mode>2", "fma<mode>4", "fms<mode>4", "neg<mode>2")
+-      ("abs<mode>2", "negabs<mode>2", "smax<mode>3")
+-      ("smin<mode>3", "*vec_cmp<VFCMP_HW_OP:code><mode>_nocc")
+-      ("vec_cmpuneq<mode>", "vec_cmpltgt<mode>", "vec_ordered<mode>")
+-      ("vec_unordered<mode>"): ... these.
+-
+-      ("neg_fma<mode>4", "neg_fms<mode>4", "*smax<mode>3_vxe")
+-      ("*smin<mode>3_vxe", "*sminv2df3_vx", "*vec_extendv4sf")
+-      ("*vec_extendv2df"): New insn definitions.
+-
+-2017-03-24  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390.md ("*adddi3_sign", "*subdi3_sign", "mulditi3")
+-      ("mulditi3_2", "*muldi3_sign"): New patterns.
+-      ("muldi3", "*muldi3", "mulsi3", "*mulsi3"): Add an expander and
+-      rename the pattern definition.
+-
+-2017-03-24  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390.md ("indirect_jump"): Turn insn definition into
+-      expander.
+-      ("*indirect_jump", "*indirect2_jump"): New pattern definitions.
+-
+-2017-03-24  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390.c (s390_expand_vec_init): Use vllezl
+-      instruction if possible.
+-      * config/s390/vector.md (vec_halfnumelts): New mode
+-      attribute.
+-      ("*vec_vllezlf<mode>"): New pattern.
+-
+-2017-03-24  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/vector.md ("popcountv16qi2", "popcountv8hi2")
+-      ("popcountv4si2", "popcountv2di2"): Rename to ...
+-      ("popcount<mode>2", "popcountv8hi2_vx", "popcountv4si2_vx")
+-      ("popcountv2di2_vx"): ... these and add !TARGET_VXE to the
+-      condition.
+-      ("popcount<mode>2_vxe"): New pattern.
+-
+-2017-03-24  Andreas Krebbel  <address@hidden>
+-
+-      * common/config/s390/s390-common.c (processor_flags_table): Add
+-      arch12.
+-      * config.gcc: Add arch12.
+-      * config/s390/driver-native.c (s390_host_detect_local_cpu):
+-      Default to arch12 for unknown CPU model numbers.
+-      * config/s390/s390-builtins.def: Add B_VXE builtin flag.
+-      * config/s390/s390-c.c (s390_cpu_cpp_builtins_internal): Adjust
+-      PROCESSOR_max sanity check.
+-      * config/s390/s390-opts.h (enum processor_type): Add
+-      PROCESSOR_ARCH12.
+-      * config/s390/s390.c (processor_table): Add arch12.
+-      (s390_expand_builtin): Add check for B_VXE flag.
+-      (s390_issue_rate): Add PROCESSOR_ARCH12.
+-      (s390_get_sched_attrmask): Likewise.
+-      (s390_get_unit_mask): Likewise.
+-      (s390_sched_score): Enable z13 scheduling for arch12.
+-      (s390_sched_reorder): Likewise.
+-      (s390_sched_variable_issue): Likewise.
+-      * config/s390/s390.h (enum processor_flags): Add PF_ARCH12 and
+-      PF_VXE.
+-      (s390_tune_attr): Use z13 scheduling also for arch12.
+-      (TARGET_CPU_ARCH12, TARGET_CPU_ARCH12_P, TARGET_CPU_VXE)
+-      (TARGET_CPU_VXE_P, TARGET_ARCH12, TARGET_ARCH12_P, TARGET_VXE)
+-      (TARGET_VXE_P): New macros.
+-      * config/s390/s390.md: Add arch12 to cpu attribute.  Add arch12
+-      and vxe to cpu_facility.  Add arch12 and vxe to enabled attribute.
+-      * config/s390/s390.opt: Add arch12 as processor_type.
+-
+-2017-03-24  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390.md
+-      ("fixuns_truncdddi2", "fixuns_trunctddi2")
+-      ("fixuns_trunc<BFP:mode><GPR:mode>2"): Merge into ...
+-      ("fixuns_trunc<FP:mode><GPR:mode>2"): New expander.
+-
+-      ("fixuns_trunc<BFP:mode><GPR:mode>2", "fixuns_trunc<mode>si2"):
+-      Rename expanders to ...
+-
+-      ("fixuns_trunc<BFP:mode><GPR:mode>2_emu")
+-      ("fixuns_truncdddi2_emu"): ... these.
+-
+-      ("fixuns_trunc<mode>si2_emu"): New expander.
+-
+-      ("*fixuns_truncdfdi2_z13"): Rename to ...
+-      ("*fixuns_truncdfdi2_vx"): ... this.
+-
+-2017-03-24  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/2964.md: Remove the single element vector compare
+-      instructions which are no longer used.
+-      * config/s390/s390.c (s390_select_ccmode): Remove handling of
+-      vector CCmodes.
+-      (s390_canonicalize_comparison): Remove handling of DFmode
+-      compares.
+-      (s390_expand_vec_compare_scalar): Remove function.
+-      (s390_emit_compare): Don't call s390_expand_vec_compare_scalar.
+-      * config/s390/s390.md ("*vec_cmp<insn_cmp>df_cconly"): Remove
+-      pattern.
+-      ("*cmp<mode>_ccs"): Add wfcdb instruction.
+-
+-2017-03-24  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390.md ("mov<mode>_64dfp" DD_DF): Use vleig for loading a
+-      FP zero.
+-      ("*mov<mode>_64" DD_DF): Remove the vector instructions. These
+-      will anyway by matched by mov<mode>_64dfp.
+-
+-2017-03-24  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390.md ("mov<mode>" SD_SF): Change vleg/vsteg to
+-      vlef/vstef.  Add missing operand to vleif.
+-
+-2017-03-24  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390.c (s390_expand_vec_init): Enable vector load
+-      pair for all vector types with 64 bit elements.
+-      * config/s390/vx-builtins.md (V_HW_64): Move mode iterator to ...
+-      * config/s390/vector.md (V_HW_64): ... here.
+-      (V_128_NOSINGLE): New mode iterator.
+-      ("vec_init<V_HW:mode>"): Use V_128 as mode iterator.
+-      ("*vec_splat<mode>"): Use V_128_NOSINGLE mode iterator.
+-      ("*vec_tf_to_v1tf", "*vec_ti_to_v1ti"): New pattern definitions.
+-      ("*vec_load_pairv2di"): Change to ...
+-      ("*vec_load_pair<mode>"): ... this one.
+-
+-2017-03-24  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/constraints.md: Add comments.
+-      (jKK): Reject element sizes > 8 bytes.
+-      * config/s390/s390.c (s390_split_ok_p): Enable splitting also for
+-      s_operands.
+-      * config/s390/s390.md: Add the s_operand checks formerly in
+-      s390_split_ok_p to various splitters where they are still
+-      required.
+-      * config/s390/vector.md ("mov<mode>" V_128): Add GPR alternatives
+-      for 128 bit vectors.  Plus two splitters.
+-
+-2017-03-24  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390.md: Rename the cpu facilty vec to vx throughout
+-      the file.
+-
+-2017-03-24  Andreas Krebbel  <address@hidden>
+-
+-      PR target/79893
+-      * config/s390/s390-c.c (s390_adjust_builtin_arglist): Issue an
+-      error if the boundary argument is not constant.
+-
+-2017-03-24  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/80112
+-      * loop-doloop.c (doloop_condition_get): Don't check condition
+-      if cmp isn't SET with IF_THEN_ELSE src.
+-
+-2017-03-24  Bill Schmidt  <address@hidden>
+-
+-      PR tree-optimization/80158
+-      * gimple-ssa-strength-reduction.c (replace_mult_candidate): When
+-      replacing a candidate statement, also replace it for the
+-      candidate's alternate interpretation.
+-      (replace_rhs_if_not_dup): Likewise.
+-      (replace_one_candidate): Likewise.
+-
+-2017-03-24  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80167
+-      * graphite-isl-ast-to-gimple.c
+-      (translate_isl_ast_to_gimple::is_valid_rename): Handle default-defs
+-      properly.
+-      (translate_isl_ast_to_gimple::get_rename): Likewise.
+-
+-2017-03-23  Kelvin Nilsen  <address@hidden>
+-
+-      * config/rs6000/rs6000.c (rs6000_option_override_internal): Change
+-      handling of certain combinations of target options, including the
+-      combinations -mpower8-vector vs. -mno-vsx, -mpower9-vector vs.
+-      -mno-power8-vector, and -mpower9_dform vs. -mno-power9-vector.
+-
+-2017-03-23  Kyrylo Tkachov  <address@hidden>
+-
+-      PR target/71436
+-      * config/arm/arm.md (*load_multiple): Add reload_completed to
+-      matching condition.
+-
+-2017-03-23  Bill Schmidt  <address@hidden>
+-          Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79908
+-      PR tree-optimization/80136
+-      * tree-stdarg.c (expand_ifn_va_arg_1): For a VA_ARG whose LHS has
+-      been cast away, gimplify_and_add suffices.
+-
+-2017-03-23  Markus Trippelsdorf  <address@hidden>
+-
+-      * tree-vrp.c (identify_jump_threads): Delete avail_exprs.
+-
+-2017-03-23  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80032
+-      * gimplify.c (gimple_push_cleanup): Forced unconditional
+-      cleanups still have to go to the conditional_cleanups
+-      sequence.
+-
+-2017-03-22  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/80072
+-      * tree-ssa-reassoc.c (struct operand_entry): Change id field type
+-      to unsigned int.
+-      (next_operand_entry_id): Change type to unsigned int.
+-      (sort_by_operand_rank): Make sure to return the right return value
+-      even if unsigned fields are bigger than INT_MAX.
+-      (struct oecount): Change cnt and id type to unsigned int.
+-      (oecount_hasher::equal): Formatting fix.
+-      (oecount_cmp): Make sure to return the right return value
+-      even if unsigned fields are bigger than INT_MAX.
+-      (undistribute_ops_list): Change next_oecount_id type to unsigned int.
+-
+-      PR c++/80129
+-      * gimplify.c (gimplify_modify_expr_rhs) <case COND_EXPR>: Clear
+-      TREE_READONLY on result if writing it more than once.
+-
+-      PR sanitizer/80110
+-      * doc/invoke.texi (-fsanitize=thread): Document that with
+-      -fnon-call-exceptions atomics are not able to throw
+-      exceptions.
+-
+-      PR sanitizer/80110
+-      * tsan.c: Include tree-eh.h.
+-      (instrument_builtin_call): Call maybe_clean_eh_stmt or
+-      maybe_clean_or_replace_eh_stmt where needed.
+-      (instrument_memory_accesses): Add cfg_changed argument.
+-      Call gimple_purge_dead_eh_edges on each block and set *cfg_changed
+-      if it returned true.
+-      (tsan_pass): Adjust caller.  Return TODO_cleanup_cfg if cfg_changed.
+-
+-      PR rtl-optimization/63191
+-      * config/i386/i386.c (ix86_delegitimize_address): Turn into small
+-      wrapper function, moved the whole old content into ...
+-      (ix86_delegitimize_address_1): ... this.  New inline function.
+-      (ix86_find_base_term): Use ix86_delegitimize_address_1 with
+-      true as last argument instead of ix86_delegitimize_address.
+-
+-2017-03-22  Wilco Dijkstra  <address@hidden>
+-
+-      * config/aarch64/aarch64.c (generic_branch_cost): Copy
+-      cortexa57_branch_cost.
+-
+-2017-03-22  Wilco Dijkstra  <address@hidden>
+-
+-      * config/aarch64/aarch64.c (generic_tunings): Add AES fusion.
+-
+-2017-03-21  Aaron Sawdey  <address@hidden>
+-
+-      PR target/80123
+-      * doc/md.texi (Constraints): Document wA constraint.
+-      * config/rs6000/constraints.md (wA): New.
+-      * config/rs6000/rs6000.c (rs6000_debug_reg_global): Add wA reg_class.
+-      (rs6000_init_hard_regno_mode_ok): Init wA constraint.
+-      * config/rs6000/rs6000.h (RS6000_CONSTRAINT_wA): New.
+-      * config/rs6000/vsx.md (vsx_splat_<mode>): Use wA constraint.
+-
+-2017-03-22  Cesar Philippidis  <address@hidden>
+-
+-      PR c++/80029
+-      * gimplify.c (is_oacc_declared): New function.
+-      (oacc_default_clause): Use it to set default flags for acc declared
+-      variables inside parallel regions.
+-      (gimplify_scan_omp_clauses): Strip firstprivate pointers for acc
+-      declared variables.
+-      (gimplify_oacc_declare): Gimplify the declare clauses.  Add the
+-      declare attribute to any decl as necessary.
+-
+-2017-03-22  Thomas Preud'homme  <address@hidden>
+-
+-      PR target/80082
+-      * config/arm/arm-isa.h (isa_bit_lpae): New feature bit.
+-      (ISA_ARMv7ve): Add isa_bit_lpae to the definition.
+-      * config/arm/arm-protos.h (arm_arch7ve): Rename into ...
+-      (arm_arch_lpae): This.
+-      * config/arm/arm.c (arm_arch7ve): Rename into ...
+-      (arm_arch_lpae): This.  Define it in term of isa_bit_lpae.
+-      * config/arm/arm.h (TARGET_HAVE_LPAE): Redefine in term of
+-      arm_arch_lpae.
+-
+-2017-03-22  Martin Liska  <address@hidden>
+-
+-      PR target/79906
+-      * config/rs6000/rs6000.c (rs6000_inner_target_options): Show
+-      error message instead of an ICE.
+-
+-2017-03-21  Bill Schmidt  <address@hidden>
+-
+-      * doc/extend.texi (6.11 Additional Floating Types): Revise.
+-
+-2017-03-21  Kelvin Nilsen  <address@hidden>
+-
+-      * config/rs6000/rs6000-c.c (rs6000_target_modify_macros): Add
+-      comments.
+-      * config/rs6000/rs6000.c (rs6000_option_override_internal): Add
+-      comments.
+-
+-2017-03-21  Martin Sebor  <address@hidden>
+-
+-      * doc/extend.texi: Use "cannot" instead of "can't."
+-      * doc/hostconfig.texi: Same.
+-      * doc/install.texi: Same.
+-      * doc/invoke.texi: Same.
+-      * doc/loop.texi: Same.
+-      * doc/md.texi: Same.
+-      * doc/objc.texi: Same.
+-      * doc/rtl.texi: Same.
+-      * doc/tm.texi: Same.
+-      * doc/tm.texi.in: Same.
+-      * doc/trouble.texi: Same.
+-
+-2017-03-21  Alexandre Oliva <address@hidden>
+-
+-      PR debug/63238
+-      * dwarf2out.c (struct checksum_attributes): Add at_alignment.
+-      (collect_checksum_attributes): Set it.
+-      (die_checksum_ordered): Use it.
+-
+-2017-03-21  Bill Schmidt  <address@hidden>
+-
+-      PR tree-optimization/79908
+-      * tree-stdarg.c (expand_ifn_va_arg_1): Revert the following
+-      change: For a VA_ARG whose LHS has been cast away, use
+-      force_gimple_operand to construct the side effects.
+-
+-2017-03-21  David Malcolm  <address@hidden>
+-
+-      PR translation/80001
+-      * omp-offload.c (oacc_loop_fixed_partitions): Make diagnostics
+-      more amenable to translation.
+-      (oacc_loop_auto_partitions): Likewise.
+-
+-2017-03-21  Marek Polacek  <address@hidden>
+-          Martin Sebor  <address@hidden>
+-
+-      PR tree-optimization/80109
+-      * gimple-ssa-warn-alloca.c (alloca_call_type): Only call get_range_info
+-      on INTEGRAL_TYPE_P.
+-
+-2017-03-21  Jakub Jelinek  <address@hidden>
+-          Segher Boessenkool  <address@hidden>
+-
+-      PR target/80125
+-      * combine.c (can_combine_p): Revert the 2017-03-20 change, only
+-      check reg_used_between_p between insn and one of succ or succ2
+-      depending on if succ is artificial insn not inserted into insn
+-      stream.
+-
+-2017-03-21  Martin Liska  <address@hidden>
+-
+-      PR gcov-profile/80081
+-      * Makefile.in: Add gcov-dump and fix installation of gcov-tool.
+-      * doc/gcc.texi: Include gcov-dump stuff.
+-      * doc/gcov-dump.texi: New file.
+-
+-2017-03-21  Toma Tabacu  <address@hidden>
+-
+-      PR rtl-optimization/79150
+-      * config/mips/mips.c (mips_block_move_loop): Emit a NOP after the
+-      conditional jump, if the jump is the last insn of the loop.
+-
+-2017-03-21  Bill Schmidt  <address@hidden>
+-          Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79908
+-      * tree-stdarg.c (expand_ifn_va_arg_1): For a VA_ARG whose LHS has
+-      been cast away, use force_gimple_operand to construct the side
+-      effects.
+-
+-2017-03-21  Martin Liska  <address@hidden>
+-
+-      PR libfortran/79956
+-      * simplify-rtx.c (simplify_immed_subreg): Initialize a variable
+-      to NULL.
+-
+-2017-03-21  Brad Spengler <address@hidden>
+-
+-      PR plugins/80094
+-      * plugin.c (htab_hash_plugin): New function.
+-      (add_new_plugin): Use it and adjust.
+-      (parse_plugin_arg_opt): Adjust.
+-      (init_one_plugin): Likewise.
+-
+-2017-03-21  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80032
+-      * gimplify.c (gimple_push_cleanup): Add force_uncond parameter,
+-      if set force the cleanup to happen unconditionally.
+-      (gimplify_target_expr): Push inserted clobbers with force_uncond
+-      to avoid them being removed by control-dependent DCE.
+-
+-2017-03-21  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80122
+-      * tree-inline.c (copy_bb): Do not expans va-arg packs or
+-      va_arg_pack_len when the inlined call stmt requires pack
+-      expansion itself.
+-      * tree-inline.h (struct copy_body_data): Make call_stmt a gcall *.
+-
+-2017-03-21  Jakub Jelinek  <address@hidden>
+-
+-      PR sanitizer/78158
+-      * tsan.c (instrument_builtin_call): If the memory model argument
+-      is not a constant, assume it is valid.
+-
+-      PR c/67338
+-      * fold-const.c (round_up_loc): Negate divisor in unsigned type to
+-      avoid UB.
+-
+-2017-03-20  Segher Boessenkool  <address@hidden>
+-
+-      PR rtl-optimization/79910
+-      * combine.c (can_combine_p): Do not allow combining an I0 or I1
+-      if its dest is used by an insn before I2 (other than the combined
+-      insns themselves, which are properly handled already).
+-
+-2017-03-20  Segher Boessenkool  <address@hidden>
+-
+-      Revert:
+-      2017-03-17  Bernd Schmidt  <address@hidden>
+-
+-      * combine.c (record_used_regs): New static function.
+-      (try_combine): Handle situations where there is an additional
+-      instruction between I2 and I3 which needs to have a LOG_LINK
+-      updated.
+-
+-      Revert:
+-      2017-03-17  Jim Wilson  <address@hidden>
+-
+-      * combine.c (try_combine): Delete redundant i1 test.  Call
+-      prev_nonnote_nondebug_insn instead of prev_nonnote_insn.
+-
+-2017-03-20  Aaron Sawdey  <address@hidden>
+-
+-      PR target/80083
+-      * config/rs6000/rs6000.md (*movsi_internal1): Fix constraints for
+-      alternatives 13/14.
+-
+-2017-03-20  Bill Schmidt  <address@hidden>
+-
+-      PR tree-optimization/80054
+-      * gimple-ssa-strength-reduction.c (all_phi_incrs_profitable): Fail
+-      the optimization if a PHI or any of its arguments is not dominated
+-      by the candidate's basis.  Use gphi* rather than gimple* as
+-      appropriate.
+-      (replace_profitable_candidates): Clean up a gimple* variable that
+-      should be a gphi* variable.
+-
+-2017-03-20  Martin Sebor  <address@hidden>
+-
+-      PR c++/52477
+-      * doc/extend.texi (attribute constructor): Document present limitation.
+-
+-2017-03-20  Kelvin Nilsen  <address@hidden>
+-
+-      PR target/79963
+-      * config/rs6000/altivec.h (vec_all_ne): Under __cplusplus__ and
+-      __POWER9_VECTOR__ #ifdef control, change template definition to
+-      use Power9-specific built-in function.
+-      (vec_any_eq): Likewise.
+-      * config/rs6000/vector.md (vector_ae_v2di_p): Change the flag used
+-      to control outcomes from this test.
+-      (vector_ae_<mode>p): For VEC_F modes, likewise.
+-
+-2017-03-20  Ian Lance Taylor  <address@hidden>
+-
+-      * config/i386/i386.c (ix86_function_regparm): Save an extra
+-      register for -fsplit-stack with DECL_STATIC_CHAIN.
+-
+-2017-03-17  Palmer Dabbelt  <address@hidden>
+-
+-      PR target/79912
+-      * config/riscv/riscv.c (riscv_preferred_reload_class): Remove.
+-      (TARGET_PREFERRED_RELOAD_CLASS): Likewise.
+-
+-2017-03-17  Palmer Dabbelt  <address@hidden>
+-
+-      * config/riscv/riscv.c (riscv_print_operand): Use "fence
+-      iorw,ow".
+-      * config/riscv/sync.mc (mem_thread_fence_1): Use "fence
+-      iorw,iorw".
+-
+-2017-03-20  Marek Polacek  <address@hidden>
+-
+-      PR sanitizer/80063
+-      * asan.c (DEF_SANITIZER_BUILTIN): Use do { } while (0).
+-
+-2017-03-20  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80113
+-      * graphite-isl-ast-to-gimple.c (copy_loop_phi_nodes): Do not
+-      allocate extra SSA name for PHI def.
+-      (add_close_phis_to_outer_loops): Likewise.
+-      (add_close_phis_to_merge_points): Likewise.
+-      (copy_loop_close_phi_args): Likewise.
+-      (copy_cond_phi_nodes): Likewise.
+-
+-2017-03-20  Martin Liska  <address@hidden>
+-
+-      PR middle-end/79753
+-      * tree-chkp.c (chkp_build_returned_bound): Do not build
+-      returned bounds for a LHS that's not a BOUNDED_P type.
+-
+-2017-03-20  Martin Liska  <address@hidden>
+-
+-      PR target/79769
+-      PR target/79770
+-      * tree-chkp.c (chkp_find_bounds_1): Handle REAL_CST,
+-      COMPLEX_CST and VECTOR_CST.
+-
+-2017-03-20  Andreas Krebbel  <address@hidden>
+-
+-      PR target/78857
+-      * config/s390/s390.md ("cmp<mode>_ccs_0"): Add a clobber of the
+-      target operand.  A new splitter adds the clobber statement in case
+-      the target operand is dead anyway.
+-
+-2017-03-19  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/install.texi (Specific) <sparc-*-linux*>: No longer refer
+-      to age-old versions of binutils and glibc.
+-
+-2017-03-18  Segher Boessenkool  <address@hidden>
+-
+-      * doc/contrib.texi (Contributors): Remove duplicate entry for myself.
+-
+-2017-03-18  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/contrib.texi (Contributors): Add Segher Boessenkool.
+-
+-2017-03-18  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/install.texi (Specific) <arm-*-eabi>: Remove old
+-      requirement for binutils 2.13.
+-
+-2017-03-17  Jim Wilson  <address@hidden>
+-
+-      * combine.c (try_combine): Delete redundant i1 test.  Call
+-      prev_nonnote_nondebug_insn instead of prev_nonnote_insn.
+-
+-2017-03-17  Palmer Dabbelt  <address@hidden
+-
+-      * doc/install.texi (Specific) <riscv32-*-elf>: Add riscv32-*-elf,
+-      riscv32-*-linux, riscv64-*-elf, riscv64-*-linux to the table of
+-      contents.
+-      <riscv64-*-elf>: Re-arrange section
+-      <riscv32-*-elf>: Add a note about requiring binutils 2.28.
+-      <riscv32-*-linux>: Likewise.
+-      <riscv64-*-elf>: Likewise
+-      <riscv64-*-linux>: Likewise.
+-
+-2017-03-17  Richard Earnshaw  <address@hidden>
+-
+-      PR target/80052
+-      * aarch64.opt(verbose-cost-dump): Fix typo.
+-
+-2017-03-17  Pat Haugen  <address@hidden>
+-
+-      PR target/79951
+-      * config/rs6000/rs6000.md (copysign<mode>3_fcpsgn): Test
+-      for VECTOR_UNIT_VSX_P (<MODE>mode) too.
+-
+-2017-03-17  Bernd Schmidt  <address@hidden>
+-
+-      * reload.c (find_reloads): When reloading a nonoffsettable address,
+-      use RELOAD_OTHER for it and its address reloads.
+-
+-      PR rtl-optimization/79910
+-      * combine.c (record_used_regs): New static function.
+-      (try_combine): Handle situations where there is an additional
+-      instruction between I2 and I3 which needs to have a LOG_LINK
+-      updated.
+-
+-2017-03-17  Jeff Law  <address@hidden>
+-
+-      PR tree-optimization/71437
+-      * tree-vrp.c (simplify_stmt_for_jump_threading): Lookup the
+-      conditional in the hash table first.
+-      (vrp_dom_walker::before_dom_children): Extract condition from
+-      ASSERT_EXPR.  Record condition, its inverion and any implied
+-      conditions as well.
+-
+-2017-03-17  Marek Polacek  <address@hidden>
+-          Markus Trippelsdorf  <address@hidden>
+-
+-      PR tree-optimization/80079
+-      * gimple-ssa-store-merging.c (class pass_store_merging): Initialize
+-      m_stores_head.
+-
+-2017-03-17  Richard Biener  <address@hidden>
+-
+-      PR middle-end/80075
+-      * tree-eh.c (stmt_could_throw_1_p): Only handle gimple assigns.
+-      Properly verify the LHS before the RHS possibly claims to be
+-      handled.
+-      (stmt_could_throw_p): Hande gimple conds fully here.  Clobbers
+-      do not throw.
+-
+-2017-03-17  Martin Jambor  <address@hidden>
+-
+-      * doc/invoke.texi (Option Options): Include -fipa-vrp in the list.
+-      (List of -O2 options): Likewise.
+-      (-fipa-bit-cp): Replace "ipa" with "interprocedural."
+-      (-fipa-vrp) New.
+-
+-2017-03-17  Tom de Vries  <address@hidden>
+-
+-      * gcov-dump.c (print_usage): Print bug_report_url.
+-
+-2017-03-17  Richard Biener  <address@hidden>
+-
+-      PR middle-end/80050
+-      * genmatch.c (parser::next): Remove pointless check for CPP_EOF.
+-      (parser::peek): Likewise.
+-
+-2017-03-17  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80048
+-      * sese.c (free_sese_info): Properly release rename_map and
+-      copied_bb_map elements.
+-
+-2017-03-16  Alexandre Oliva <address@hidden>
+-
+-      * gimple-ssa-store-merging.c (struct imm_store_chain_info):
+-      Add linked-list forward and backlinks.  Insert on
+-      construction, remove on destruction.
+-      (class pass_store_merging): Add m_stores_head field.
+-      (pass_store_merging::terminate_and_process_all_chains):
+-      Iterate over m_stores_head list.
+-      (pass_store_merging::terminate_all_aliasing_chains):
+-      Likewise.
+-      (pass_store_merging::execute): Check for debug stmts first.
+-      Push new chains onto the m_stores_head stack.
+-
+-2017-03-16  Michael Meissner  <address@hidden>
+-
+-      PR target/71294
+-      * config/rs6000/vsx.md (vsx_splat_<mode>, VSX_D iterator): Allow a
+-      SPLAT operation on ISA 2.07 64-bit systems that have direct move,
+-      but no MTVSRDD support, by doing MTVSRD and XXPERMDI.
+-
+-2017-03-16  Jeff Law  <address@hidden>
+-
+-      PR tree-optimization/71437
+-      * tree-ssa-dom.c (dom_opt_dom_walker): Remove thread_across_edge
+-      member function.  Implementation moved into after_dom_children
+-      member function and into the threader's thread_outgoing_edges
+-      function.
+-      (dom_opt_dom_walker::after_dom_children): Simplify by moving
+-      some code into new thread_outgoing_edges.
+-      * tree-ssa-threadedge.c (thread_across_edge): Make static and simplify
+-      definition.  Simplify marker handling (do it here).   Assume we always
+-      have the available expression and the const/copies tables.
+-      (thread_outgoing_edges): New function extracted from tree-ssa-dom.c
+-      and tree-vrp.c
+-      * tree-ssa-threadedge.h (thread_outgoing_edges): Declare.
+-      * tree-vrp.c (equiv_stack): No longer file scoped.
+-      (vrp_dom_walker): New class.
+-      (vrp_dom_walker::before_dom_children): New member function.
+-      (vrp_dom_walker::after_dom_children): Likewise.
+-      (identify_jump_threads):  Setup domwalker.  Use it rather than
+-      walking edges in a random order by hand.  Simplify setup/finalization.
+-      (finalize_jump_threads): Remove.
+-      (vrp_finalize): Do not call identify_jump_threads here.
+-      (execute_vrp): Do it here instead and call thread_through_all_blocks
+-      here too.
+-
+-      PR tree-optimization/71437
+-      * tree-ssa-dom.c (pfn_simplify): Add basic_block argument.  All
+-      callers changed.
+-      (simplify_stmt_for_jump_threading): Add basic_block argument.  All
+-      callers changed.
+-      (lhs_of_dominating_assert): Moved from here into tree-vrp.c.
+-      (dom_opt_dom_walker::thread_across_edge): Remove
+-      handle_dominating_asserts argument.  All callers changed.
+-      (record_temporary_equivalences_from_stmts_at_dest): Corresponding
+-      changes.  Remove calls to lhs_of_dominating_assert.  Other
+-      uses of handle_dominating_asserts turn into unconditional code
+-      (simplify_control_stmt_condition_1): Likewise.
+-      (simplify_control_stmt_condition): Likewise.
+-      (thread_through_normal_block, thread_across_edge): Likewise.
+-      * tree-ssa-threadedge.h (thread_across_edge): Corresponding changes.
+-      * tree-vrp.c (lhs_of_dominating_assert): Move here.  Return original
+-      object if it is not an SSA_NAME.
+-      (simplify_stmt_for_jump_threading): Call lhs_of_dominating_assert
+-      before calling into the VRP specific simplifiers.
+-      (identify_jump_threads): Remove handle_dominating_asserts
+-      argument.
+-
+-2017-03-16  Jakub Jelinek  <address@hidden>
+-
+-      PR fortran/79886
+-      * tree-diagnostic.c (default_tree_printer): No longer static.
+-      * tree-diagnostic.h (default_tree_printer): New prototype.
+-
+-2017-03-16  Tamar Christina  <address@hidden>
+-
+-      * config/aarch64/aarch64-simd.md (*aarch64_simd_mov<mode>)
+-      Change ins into fmov.
+-
+-2017-03-16  Kyrylo Tkachov  <address@hidden>
+-
+-      * config/aarch64/iterators.md (h_con): Return "x" for V4HF and V8HF.
+-      * config/aarch64/aarch64-simd.md (*aarch64_fma4_elt_from_dup<mode>):
+-      Use h_con constraint for operand 1.
+-      (*aarch64_fnma4_elt_from_dup<mode>): Likewise.
+-      (*aarch64_mulx_elt_from_dup<mode>): Likewise for operand 2.
+-
+-2017-03-15  Jeff Law  <address@hidden>
+-
+-      PR tree-optimization/71437
+-      * tree-ssa-dom.c (derive_equivalences_from_bit_ior): New function.
+-      (record_temporary_equivalences): Use it.
+-
+-      PR tree-optimization/71437
+-      * tree-ssa-dom.c (struct cond_equivalence): Moved from here into
+-      tree-ssa-scopedtables.
+-      (lookup_avail_expr, build_and_record_new_cond): Likewise.
+-      (record_conditions, record_cond, vuse_eq): Likewise.
+-      (record_edge_info): Adjust to API tweak of record_conditions.
+-      (simplify_stmt_for_jump_threading): Similarly for lookup_avail_expr.
+-      (record_temporary_equivalences, optimize_stmt): Likewise.
+-      (eliminate_redundant_computations): Likewise.
+-      (record_equivalences_from_stmt): Likewise.
+-      * tree-ssa-scopedtables.c: Include options.h and params.h.
+-      (vuse_eq): New function, moved from tree-ssa-dom.c
+-      (build_and_record_new_cond): Likewise.
+-      (record_conditions): Likewise.  Accept vector of conditions rather
+-      than edge_equivalence structure for first argument.
+-      for the first argument.
+-      (avail_exprs_stack::lookup_avail_expr): New member function, moved
+-      from tree-ssa-dom.c.
+-      (avail_exprs_stack::record_cond): Likewise.
+-      * tree-ssa-scopedtables.h (struct cond_equivalence): Moved here
+-      from tree-ssa-dom.c.
+-      (avail_exprs_stack): Add new member functions lookup_avail_expr
+-      and record_cond.
+-      (record_conditions): Declare.
+-
+-2017-03-15  Vladimir Makarov  <address@hidden>
+-
+-      PR target/80017
+-      * lra-constraints.c (process_alt_operands): Increase reject for
+-      reloading an input/output operand.
+-
+-2017-03-15  Michael Meissner  <address@hidden>
+-
+-      PR target/79038
+-      * config/rs6000/rs6000.md (float<QHI:mode><IEEE128:mode>2): Define
+-      insns to convert from signed/unsigned char/short to IEEE 128-bit
+-      floating point.
+-      (floatuns<QHI:mode><IEEE128:mode>2): Likewise.
+-
+-2017-03-15  Uros Bizjak  <address@hidden>
+-
+-      PR target/80019
+-      * config/i386/i386.c (ix86_vector_duplicate_value): Create
+-      subreg of inner mode for values already in registers.
+-
+-2017-03-15  Bernd Schmidt  <address@hidden>
+-
+-      * config/c6x/c6x.c (hwloop_optimize): Handle case where the old
+-      iteration reg is used after the loop.
+-
+-2017-03-14  Martin Sebor  <address@hidden>
+-
+-      PR tree-optimization/79800
+-      * gimple-ssa-sprintf.c (format_floating: Add argument.  Handle
+-      precision in negative-positive range.
+-      (format_floating): Call non-const overload with adjusted precision.
+-
+-2017-03-14  Michael Meissner  <address@hidden>
+-
+-      PR target/79947
+-      * config/rs6000/rs6000.h (TARGET_FRSQRTES): Add check for
+-      -mpowerpc-gfxopt.
+-
+-2017-03-14  Martin Sebor  <address@hidden>
+-
+-      PR middle-end/80020
+-      * builtin-attrs.def (ATTR_ALLOC_SIZE_2_NOTHROW_LIST): New macro.
+-      * builtins.def (aligned_alloc): Use it.
+-
+-      PR c/79936
+-      * Makefile.in (GTFILES): Add calls.c.
+-      * calls.c: Include "gt-calls.h".
+-
+-2017-03-14  Bernd Schmidt  <address@hidden>
+-
+-      PR rtl-optimization/79728
+-      * regs.h (struct target_regs): New field
+-      x_contains_allocatable_regs_of_mode.
+-      (contains_allocatable_regs_of_mode): New macro.
+-      * reginfo.c (init_reg_sets_1): Initialize it, and change
+-      contains_reg_of_mode so it includes global regs as well.
+-      * reload.c (push_reload): Use contains_allocatable_regs_of_mode
+-      rather than contains_regs_of_mode.
+-
+-2017-03-14  Martin Liska  <address@hidden>
+-
+-      * doc/invoke.texi: Document options that can't be combined with
+-      -fcheck-pointer-bounds.
+-
+-2017-03-14  Martin Liska  <address@hidden>
+-
+-      PR middle-end/79831
+-      * doc/invoke.texi (-Wchkp): Document the option.
+-
+-2017-03-14  Martin Liska  <address@hidden>
+-
+-      * Makefile.in: Install gcov-dump.
+-
+-2017-03-14  Martin Liska  <address@hidden>
+-
+-      * multiple_target.c (expand_target_clones): Bail out for
+-      an invalid attribute.
+-
+-2017-03-14  Richard Biener  <address@hidden>
+-
+-      * alias.c (struct alias_set_entry): Pack properly.
+-      * cfgloop.h (struct loop): Likewise.
+-      * cse.c (struct set): Likewise.
+-      * ipa-utils.c (struct searchc_env): Likewise.
+-      * loop-invariant.c (struct invariant): Likewise.
+-      * lra-remat.c (struct cand): Likewise.
+-      * recog.c (struct change_t): Likewise.
+-      * rtl.h (struct address_info): Likewise.
+-      * symbol-summary.h (function_summary): Likewise.
+-      * tree-loop-distribution.c (struct partition): Likewise.
+-      * tree-object-size.c (struct object_size_info): Likewise.
+-      * tree-ssa-loop-ivopts.c (struct cost_pair): Likewise.
+-      * tree-ssa-threadupdate.c (struct ssa_local_info_t): Likewise.
+-      * tree-vect-data-refs.c (struct _vect_peel_info): Likewise.
+-      * tree-vect-slp.c (struct _slp_oprnd_info): Likewise.
+-      * tree-vect-stmts.c (struct simd_call_arg_info): Likewise.
+-      * tree-vectorizer.h (struct _loop_vec_info): Likewise.
+-      (struct _stmt_vec_info): Likewise.
+-
+-2017-03-14  Martin Liska  <address@hidden>
+-
+-      PR target/79892
+-      * multiple_target.c (create_dispatcher_calls): Check that
+-      a target can create a function dispatcher.
+-
+-2017-03-14  Martin Liska  <address@hidden>
+-
+-      PR lto/66295
+-      * multiple_target.c (expand_target_clones): Drop local.local
+-      flag for default implementation.
+-
+-2017-03-14  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/80030
+-      * tree-vect-stmts.c (vectorizable_store): Plug memleak.
+-
+-2017-03-13  Kito Cheng  <address@hidden>
+-
+-      * config/riscv/riscv.c (riscv_emit_float_compare>: Use
+-      gcc_fallthrough() instead of __attribute__((fallthrough));
+-
+-2017-03-13  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/gcc.texi: Remove "up" link to (DIR).
+-      * doc/gccint.texi: Ditto.
+-
+-2017-03-13  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/install.texi (Specific) <avr>: Remove reference to
+-      binutils 2.13.
+-
+-2017-03-13  Jeff Law  <address@hidden>
+-
+-      * config/riscv/riscv.c (riscv_emit_float_compare): Use fallthru
+-      attribute rather than comments.
+-
+-      * config/pdp11/pdp11.md (movmemhi): Adjust operand numbers to
+-      match_scratch operand is highest.
+-
+-2017-03-13  Martin Liska  <address@hidden>
+-
+-      PR middle-end/78339
+-      * ipa-pure-const.c (warn_function_noreturn): If the declarations
+-      is a CHKP clone, use original declaration.
+-
+-2017-03-13  Claudiu Zissulescu  <address@hidden>
+-
+-      * config/arc/arc.c (arc_init): Use multiplier whenever we have it.
+-      (arc_conditional_register_usage): Use a different allocation order
+-      when optimizing for size.
+-      * common/config/arc/arc-common.c (arc_option_optimization_table):
+-      Section anchors default on when optimizing for size.
+-
+-2017-03-13  Claudiu Zissulescu  <address@hidden>
+-
+-      * config/arc/arc.md (*tst_bitfield_tst): Fix pattern.
+-
+-2017-03-13  Claudiu Zissulescu  <address@hidden>
+-
+-      * config/arc/arc.c (arc_output_addsi): Emit code density adds.
+-      * config/arc/arc.md (cpu_facility): Add cd variant.
+-      (*movqi_insn): Add code density variant.
+-      (*movhi_insn): Likewise.
+-      (*movqi_insn): Likewise.
+-      (*addsi3_mixed): Likewise.
+-      (subsi3_insn): Likewise.
+-
+-2017-03-13  Claudiu Zissulescu  <address@hidden>
+-
+-      * config/arc/arc.md (movsi_cond_exec): Update constraint.
+-
+-2017-03-13  Claudiu Zissulescu  <address@hidden>
+-
+-      * config/arc/arc.c (arc_legitimize_pic_address): Handle PIC
+-      expressions with MINUS and UNARY ops.
+-
+-2017-03-13  Kyrylo Tkachov  <address@hidden>
+-
+-      PR target/79911
+-      * config/arm/neon.md (vec_sel_widen_ssum_lo<VQI:mode><VW:mode>3):
+-      Rename to...
+-      (vec_sel_widen_ssum_lo<mode><V_half>3): ... This. Avoid mismatch
+-      between vec_select and vector argument.
+-      (vec_sel_widen_ssum_hi<VQI:mode><VW:mode>3): Rename to...
+-      (vec_sel_widen_ssum_hi<mode><V_half>3): ... This. Likewise.
+-      (vec_sel_widen_usum_lo<VQI:mode><VW:mode>3): Rename to...
+-      (vec_sel_widen_usum_lo<mode><V_half>3): ... This.
+-      (vec_sel_widen_usum_hi<VQI:mode><VW:mode>3): Rename to...
+-      (vec_sel_widen_usum_hi<mode><V_half>3): ... This.
+-
+-2017-03-13  Richard Biener  <address@hidden>
+-
+-      PR other/79991
+-      * params.def (vect-max-peeling-for-alignment): Fix typo.
+-
+-2017-03-12  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/install.texi (Specific) <mips-*-*>: Remove description of
+-      issue that only occurred with binutils below 2.18.
+-
+-2017-03-12  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/install.texi (Specific) <cris-axis-elf>: No longer
+-      refer to binutils 2.11/2.12 minimum.
+-
+-2017-03-12  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/install.texi (Specific) <powerpc-*-*>: Remove link to
+-      ftp.kernel.org and simplify binutils requirement.
+-
+-2017-03-11  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/invoke.texi (Warning Options): Fix spelling of link-time
+-      optimization.
+-      (Optimize Options): Ditto.  Also remove redundancy.
+-
+-2017-03-10  David Malcolm  <address@hidden>
+-
+-      PR translation/79848
+-      * ipa-devirt.c (warn_types_mismatch): Simplify uses of "%<%s%>" to
+-      "%qs".
+-      * ipa-pure-const.c (suggest_attribute): Likewise.  Convert _
+-      to G_ to avoid double translation.
+-
+-2017-03-10  David Malcolm  <address@hidden>
+-
+-      PR translation/79923
+-      * auto-profile.c (get_combined_location): Convert leading
+-      character of diagnostics to lower case and remove trailing period.
+-      (read_profile): Likewise for various diagnostics.
+-      * config/arm/arm.c (arm_option_override): Remove trailing period
+-      from various diagnostics.
+-      * config/msp430/msp430.c (msp430_expand_delay_cycles): Likewise.
+-      (msp430_expand_delay_cycles): Likewise.
+-
+-2017-03-10  David Malcolm  <address@hidden>
+-
+-      PR target/79925
+-      * config/aarch64/aarch64.c (aarch64_validate_mcpu): Quote the
+-      full command-line argument, rather than just "str".
+-      (aarch64_validate_march): Likewise.
+-      (aarch64_validate_mtune): Likewise.
+-
+-2017-03-10  Bernd Schmidt  <address@hidden>
+-
+-      PR rtl-optimization/78911
+-      * lra-assigns.c (must_not_spill_p): New function.
+-      (spill_for): Use it.
+-
+-2017-03-10  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/79981
+-      * tree-vrp.c (extract_range_basic): Handle IMAGPART_EXPR of
+-      ATOMIC_COMPARE_EXCHANGE ifn result.
+-      (stmt_interesting_for_vrp, vrp_visit_stmt): Handle
+-      IFN_ATOMIC_COMPARE_EXCHANGE.
+-
+-2017-03-10  David Malcolm  <address@hidden>
+-
+-      PR driver/79875
+-      * opts.c (parse_sanitizer_options): Add missing question mark to
+-      "did you mean" message.
+-
+-2017-03-10  Bill Schmidt  <address@hidden>
+-
+-      * config/rs6000/rs6000-builtin.def (VMULEUB_UNS): Remove orphaned
+-      built-in.
+-      (VMULEUH_UNS): Likewise.
+-      (VMULOUB_UNS): Likewise.
+-      (VMULOUH_UNS): Likewise.
+-      * config/rs6000/rs6000.c (builtin_function_type): Remove
+-      references to ALTIVEC_BUILTIN_VMUL[EO]U[BH]_UNS.
+-
+-2017-03-10  David Malcolm  <address@hidden>
+-
+-      PR bootstrap/79952
+-      * read-rtl-function.c (function_reader::read_rtx_operand): Update
+-      x with result of extra_parsing_for_operand_code_0.
+-      (function_reader::extra_parsing_for_operand_code_0): Convert
+-      return type from void to rtx, returning x.  When reading
+-      SYMBOL_REF with SYMBOL_FLAG_HAS_BLOCK_INFO, reallocate x to the
+-      larger size containing struct block_symbol.
+-
+-2017-03-10  Segher Boessenkool  <address@hidden>
+-
+-      * config/rs6000/rs6000.c (rs6000_option_override_internal): Disallow
+-      -mfloat128-hardware without -m64.
+-
+-2017-03-10  Will Schmidt <address@hidden>
+-
+-      PR target/79941
+-      * config/rs6000/rs6000.c (builtin_function_type): Add VMUL*U[HB]
+-      entries to the case statement that marks unsigned arguments to
+-      overloaded functions.
+-
+-2017-03-10  Kelvin Nilsen  <address@hidden>
+-
+-      * config/rs6000/rs6000.c (rs6000_option_override_internal): Fix
+-      two typographic errors in the handling of TARGET_UPPER_REGS_DI.
+-
+-2017-03-10  Pat Haugen  <address@hidden>
+-
+-      PR target/79907
+-      * config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Test
+-      TARGET_UPPER_REGS_DI when setting 'wi' constraint regclass.
+-
+-2017-03-10  Martin Liska  <address@hidden>
+-
+-      PR target/65705
+-      PR target/69804
+-      * toplev.c (process_options): Enable MPX with LSAN and UBSAN.
+-      * tree-chkp.c (chkp_walk_pointer_assignments): Verify that
+-      FIELD != NULL.
+-
+-2017-03-10  Olivier Hainque  <address@hidden>
+-
+-      * tree-switch-conversion (array_value_type): Start by resetting
+-      candidate type to it's main variant.
+-
+-2017-03-10  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/79909
+-      * combine.c (try_combine): Use simplify_replace_rtx on individual
+-      CALL_INSN_FUNCTION_USAGE elements instead of replace_rtx on copy_rtx
+-      of the whole CALL_INSN_FUNCTION_USAGE.
+-
+-      PR tree-optimization/79972
+-      * gimple-ssa-warn-alloca.c (alloca_call_type): Only call
+-      get_range_info on SSA_NAMEs.  Formatting fixes.
+-
+-2017-03-10  Richard Biener  <address@hidden>
+-          Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/77975
+-      * tree-ssa-loop-niter.c (get_base_for): Allow phi argument from latch
+-      edge to be constant.
+-      (get_val_for): For constant x return it.  Formatting fix.
+-      (loop_niter_by_eval): Avoid pointless looping if the next iteration
+-      would use the same bases as the current one.
+-
+-2017-03-09  Bill Schmidt  <address@hidden>
+-
+-      * config/rs6000/rs6000.c (rs6000_gen_le_vsx_permute): Use rotate
+-      instead of vec_select for V1TImode.
+-      * conifg/rs6000/vsx.md (VSX_LE): Remove mode iterator that is no
+-      longer needed.
+-      (VSX_LE_128): Add V1TI to this mode iterator.
+-      (*vsx_le_perm_load_<mode>): Change to use VSX_D mode iterator.
+-      (*vsx_le_perm_store_<mode>): Likewise.
+-      (pre-reload splitter for VSX stores): Likewise.
+-      (post-reload splitter for VSX stores): Likewise.
+-      (*vsx_xxpermdi2_le_<mode>): Likewise.
+-      (*vsx_lxvd2x2_le_<mode>): Likewise.
+-      (*vsx_stxvd2x2_le_<mode>): Likewise.
+-
+-2017-03-09  Michael Eager  <address@hidden>
+-
+-      Correct failures with --enable-checking=yes,rtl.
+-
+-      * config/microblaze/microblaze.c (microblaze_expand_shift):
+-      Replace GET_CODE test with CONST_INT_P and INTVAL test with
+-      test for const0_rtx.
+-      * config/microblaze/microblaze.md (ashlsi3_byone, ashrsi3_byone,
+-      lshrsi3_byone): Replace INTVAL with test for const1_rtx.
+-
+-2017-03-09  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79977
+-      * graphite-scop-detection.c (scop_detection::merge_sese):
+-      Handle the case of extra exits to blocks dominating the entry.
+-
+-2017-03-09  Toma Tabacu  <address@hidden>
+-
+-      * doc/sourcebuild.texi (Effective-Target Keywords, Other attributes):
+-      Document rdynamic.
+-
+-2017-03-09  Vladimir Makarov  <address@hidden>
+-
+-      PR rtl-optimization/79949
+-      * lra-constraints.c (process_alt_operands): Check memory when
+-      trying to predict a cycle.  Print about the overall increase.
+-
+-2017-03-09  Richard Biener  <address@hidden>
+-
+-      PR middle-end/79971
+-      * gimple-expr.c (useless_type_conversion_p): Preserve
+-      TYPE_SATURATING for fixed-point types.
+-
+-2017-03-09  Richard Biener  <address@hidden>
+-
+-      PR ipa/79970
+-      * ipa-prop.c (ipa_modify_formal_parameters): Avoid changing
+-      alignment of BLKmode params.
+-
+-2017-03-09  Kyrylo Tkachov  <address@hidden>
+-
+-      PR target/79913
+-      * config/aarch64/iterators.md (VALL_F16_NO_V2Q): New mode iterator.
+-      (VALL_NO_V2Q): Likewise.
+-      (VDQF_DF): Delete.
+-      * config/aarch64/aarch64-simd.md
+-      (aarch64_dup_lane_<vswap_width_name><mode>): Use VALL_F16_NO_V2Q
+-      iterator.
+-      (*aarch64_simd_vec_copy_lane_<vswap_width_name><mode>): Use
+-      VALL_NO_V2Q mode iterator.
+-      (*aarch64_vgetfmulx<mode>): Use VDQF iterator.
+-
+-2017-03-09  Martin Liska  <address@hidden>
+-
+-      PR tree-optimization/79631
+-      * tree-chkp-opt.c (chkp_is_constant_addr): Call
+-      tree_int_cst_sign_bit just for INTEGER constants.
+-
+-2017-03-09  Martin Liska  <address@hidden>
+-
+-      PR target/65705
+-      PR target/69804
+-      * toplev.c (process_options): Disable -fcheck-pointer-bounds with
+-      sanitizers.
+-
+-2017-03-09  Marek Polacek  <address@hidden>
+-
+-      PR c++/79672
+-      * tree.c (inchash::add_expr): Handle TREE_VEC.
+-
+-2017-03-09  Martin Liska  <address@hidden>
+-
+-      PR ipa/79764
+-      (chkp_narrow_size_and_offset): New function.
+-      (chkp_parse_array_and_component_ref): Support BIT_FIELD_REF.
+-      (void chkp_parse_bit_field_ref): New function.
+-      (chkp_make_addressed_object_bounds): Add case for BIT_FIELD_REF.
+-      (chkp_process_stmt): Use chkp_parse_bit_field_ref.
+-
+-2017-03-09  Martin Liska  <address@hidden>
+-
+-      PR ipa/79761
+-      * tree-chkp.c (chkp_get_bound_for_parm): Get bounds for a param.
+-      (chkp_find_bounds_1): Remove gcc_unreachable.
+-
+-2017-03-09  Jakub Jelinek  <address@hidden>
+-
+-      PR sanitizer/79944
+-      * asan.c (get_mem_refs_of_builtin_call): For BUILT_IN_ATOMIC* and
+-      BUILT_IN_SYNC*, determine the access type from the size suffix and
+-      always build a MEM_REF with that type.  Handle forgotten
+-      BUILT_IN_SYNC_FETCH_AND_NAND_16 and BUILT_IN_SYNC_NAND_AND_FETCH_16.
+-
+-      PR target/79932
+-      * config/i386/avx512vlintrin.h (_mm256_cmpge_epi32_mask,
+-      _mm256_cmpge_epi64_mask, _mm256_cmpge_epu32_mask,
+-      _mm256_cmpge_epu64_mask, _mm256_cmple_epi32_mask,
+-      _mm256_cmple_epi64_mask, _mm256_cmple_epu32_mask,
+-      _mm256_cmple_epu64_mask, _mm256_cmplt_epi32_mask,
+-      _mm256_cmplt_epi64_mask, _mm256_cmplt_epu32_mask,
+-      _mm256_cmplt_epu64_mask, _mm256_cmpneq_epi32_mask,
+-      _mm256_cmpneq_epi64_mask, _mm256_cmpneq_epu32_mask,
+-      _mm256_cmpneq_epu64_mask, _mm256_mask_cmpge_epi32_mask,
+-      _mm256_mask_cmpge_epi64_mask, _mm256_mask_cmpge_epu32_mask,
+-      _mm256_mask_cmpge_epu64_mask, _mm256_mask_cmple_epi32_mask,
+-      _mm256_mask_cmple_epi64_mask, _mm256_mask_cmple_epu32_mask,
+-      _mm256_mask_cmple_epu64_mask, _mm256_mask_cmplt_epi32_mask,
+-      _mm256_mask_cmplt_epi64_mask, _mm256_mask_cmplt_epu32_mask,
+-      _mm256_mask_cmplt_epu64_mask, _mm256_mask_cmpneq_epi32_mask,
+-      _mm256_mask_cmpneq_epi64_mask, _mm256_mask_cmpneq_epu32_mask,
+-      _mm256_mask_cmpneq_epu64_mask, _mm_cmpge_epi32_mask,
+-      _mm_cmpge_epi64_mask, _mm_cmpge_epu32_mask, _mm_cmpge_epu64_mask,
+-      _mm_cmple_epi32_mask, _mm_cmple_epi64_mask, _mm_cmple_epu32_mask,
+-      _mm_cmple_epu64_mask, _mm_cmplt_epi32_mask, _mm_cmplt_epi64_mask,
+-      _mm_cmplt_epu32_mask, _mm_cmplt_epu64_mask, _mm_cmpneq_epi32_mask,
+-      _mm_cmpneq_epi64_mask, _mm_cmpneq_epu32_mask, _mm_cmpneq_epu64_mask,
+-      _mm_mask_cmpge_epi32_mask, _mm_mask_cmpge_epi64_mask,
+-      _mm_mask_cmpge_epu32_mask, _mm_mask_cmpge_epu64_mask,
+-      _mm_mask_cmple_epi32_mask, _mm_mask_cmple_epi64_mask,
+-      _mm_mask_cmple_epu32_mask, _mm_mask_cmple_epu64_mask,
+-      _mm_mask_cmplt_epi32_mask, _mm_mask_cmplt_epi64_mask,
+-      _mm_mask_cmplt_epu32_mask, _mm_mask_cmplt_epu64_mask,
+-      _mm_mask_cmpneq_epi32_mask, _mm_mask_cmpneq_epi64_mask,
+-      _mm_mask_cmpneq_epu32_mask, _mm_mask_cmpneq_epu64_mask): Move
+-      definitions outside of __OPTIMIZE__ guarded section.
+-
+-      PR target/79932
+-      * config/i386/avx512bwintrin.h (_mm512_packs_epi32,
+-      _mm512_maskz_packs_epi32, _mm512_mask_packs_epi32,
+-      _mm512_packus_epi32, _mm512_maskz_packus_epi32,
+-      _mm512_mask_packus_epi32): Move definitions outside of __OPTIMIZE__
+-      guarded section.
+-
+-2017-03-09  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/vx-builtins.md ("vfee<mode>", "vfeez<mode>")
+-      ("vfenez<mode>"): Add missing constraints.
+-
+-2017-03-08  Martin Sebor  <address@hidden>
+-
+-      PR target/79928
+-      * config/nds32/nds32.c (nds32_option_override):
+-      Fix misspelled diagnostic.
+-
+-2017-03-08  Jakub Jelinek  <address@hidden>
+-
+-      PR c/79940
+-      * gimplify.c (gimplify_omp_for): Replace index var in outer
+-      taskloop statement with an artificial variable and add
+-      OMP_CLAUSE_PRIVATE clause for it.
+-
+-2017-03-08  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79955
+-      * tree-ssa-uninit.c (warn_uninitialized_vars): Do not warn
+-      for accesses that are completely outside of the variable.
+-
+-2017-03-08  Andrew Haley  <address@hidden>
+-
+-      PR tree-optimization/79943
+-      * tree-ssa-loop-split.c (compute_new_first_bound): When
+-      calculating the new upper bound, (END-BEG) should be added, not
+-      subtracted.
+-
+-2017-03-08  Jakub Jelinek  <address@hidden>
+-
+-      * config/avr/avr.md (setmemhi): Make sure match_dup
+-      operand number comes before match_scratch.
+-
+-2017-03-08  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79920
+-      * tree-vect-slp.c (vect_create_mask_and_perm): Remove and inline
+-      with ncopies == 1 to ...
+-      (vect_transform_slp_perm_load): ... here.  Properly compute
+-      all element loads by iterating VF times over the group.  Do
+-      not handle ncopies (computed in a broken way) in
+-      vect_create_mask_and_perm.
+-
+-2017-03-08  Jakub Jelinek  <address@hidden>
+-
+-      PR sanitizer/79904
+-      * internal-fn.c (expand_vector_ubsan_overflow): If arg0 or arg1
+-      is a uniform vector, use uniform_vector_p return value instead of
+-      building ARRAY_REF on folded VIEW_CONVERT_EXPR to array type.
+-
+-2017-03-07  Marek Polacek  <address@hidden>
+-
+-      PR middle-end/79809
+-      * gimple-ssa-warn-alloca.c (pass_walloca::gate): Use HOST_WIDE_INT.
+-      (alloca_call_type): Likewise.
+-
+-2017-03-07  Martin Liska  <address@hidden>
+-
+-      * gcov.c (process_args): Put comment to correct location.
+-
+-2017-03-07  Martin Liska  <address@hidden>
+-
+-      PR middle-end/68270
+-      * tree-chkp.c (chkp_may_narrow_to_field): Add new argument ref.
+-      Use array_at_struct_end_p instead of DECL_CHAIN (field).
+-      (chkp_narrow_bounds_for_field): Likewise.
+-      (chkp_parse_array_and_component_ref): Pass one more argument to
+-      call.
+-
+-2017-03-07  Richard Biener  <address@hidden>
+-
+-      * tree-vect-loop-manip.c (slpeel_add_loop_guard): Preserve
+-      preheaders.
+-
+-2017-03-07  Segher Boessenkool  <address@hidden>
+-
+-      * config/i386/i386.c (ix86_local_alignment): Align most aggregates
+-      of 16 bytes and more to 16 bytes, not those of 16 bits and more.
+-
+-2017-03-07  Kyrylo Tkachov  <address@hidden>
+-
+-      PR c/79855
+-      * params.def (PARAM_STORE_MERGING_ALLOW_UNALIGNED): Add full stop
+-      to end of description.
+-      (PARAM_MAX_STORES_TO_MERGE): Likewise.
+-
+-2017-03-07  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/79901
+-      * config/i386/sse.md (*avx512bw_<code><mode>3<mask_name>): Renamed to
+-      ...
+-      (*avx512f_<code><mode>3<mask_name>): ... this.
+-      (<code><mode>3 with maxmin code iterator): Use VI8_AVX2_AVX512F
+-      iterator instead of VI8_AVX2_AVX512BW.
+-
+-      PR rtl-optimization/79901
+-      * expr.c (expand_expr_real_2): For vector MIN/MAX, if there is no
+-      min/max expander, expand it using expand_vec_cond_expr.
+-
+-      PR sanitizer/79897
+-      * ubsan.c (ubsan_encode_value): Call mark_addressable on the
+-      temporary.
+-
+-2017-03-06  Jakub Jelinek  <address@hidden>
+-
+-      PR c++/79821
+-      * dwarf2out.h (dw_vec_const): Change array type from unsigned char *
+-      to void * for PCH reasons.
+-      * dwarf2out.c (output_loc_operands, output_die): Cast
+-      v.val_vec.array to unsigned char *.
+-
+-2017-03-06  John David Anglin  <address@hidden>
+-
+-      PR target/77850
+-      * config/pa/pa-64.h (PAD_VARARGS_DOWN): Don't pad down complex and
+-      vector types.
+-
+-2017-03-06  Vladimir Makarov  <address@hidden>
+-
+-      PR rtl-optimization/79571
+-      * lra-constraints.c (process_alt_operands): Calculate static
+-      reject and subtract it from overall when only addresses will be
+-      reloaded.
+-
+-2017-03-06  Julia Koval  <address@hidden>
+-
+-      PR target/79793
+-      * config/i386/i386.c (ix86_minimum_incoming_stack_boundary): Set
+-      incoming stack boundary to 128 for 64-bit targets.
+-
+-2017-03-06  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79894
+-      * tree-vectorizer.c (vectorize_loops): Set loop_vectorized_call
+-      to NULL after folding it.
+-
+-2017-03-06  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79824
+-      * tree-vect-stmts.c (get_group_load_store_type): Fix alignment
+-      check disabling peeling for gaps.
+-
+-2017-03-06  Toma Tabacu  <address@hidden>
+-
+-      * doc/sourcebuild.texi (Effective-Target Keywords, Environment
+-      attributes): Document gettimeofday.
+-
+-2017-03-06  Robin Dapp  <address@hidden>
+-
+-      * config/s390/s390.c (s390_option_override_internal): Set
+-      PARAM_MIN_VECT_LOOP_BOUND
+-
+-2017-03-06  Robin Dapp  <address@hidden>
+-
+-      * config/s390/s390.c (s390_asm_output_function_label): Use nopr %r0.
+-      * config/s390/s390.md: Likewise.
+-
+-2017-03-06  Jakub Jelinek  <address@hidden>
+-
+-      PR target/79812
+-      * config/i386/sse.md (VI8F_256_512): Remove mode iterator.
+-      (<avx2_avx512>_perm<mode>): Rename to ...
+-      (avx2_perm<mode>): ... this.  Use VI8F_256 iterator instead
+-      of VI8F_256_512.
+-      (<avx512>_perm<mode>_mask): Rename to ...
+-      (avx512vl_perm<mode>_mask): ... this.  Use VI8F_256 iterator instead
+-      of VI8F_256_512.
+-      (<avx2_avx512>_perm<mode>_1<mask_name>): Rename to ...
+-      (avx2_perm<mode>_1<mask_name): ... this.  Use VI8F_256 iterator
+-      instead of VI8F_256_512.
+-      (avx512f_perm<mode>): New define_expand.
+-      (avx512f_perm<mode>_mask): Likewise.
+-      (avx512f_perm<mode>_1<mask_name>): New define_insn.
+-      (<avx512>_vec_dup<mode>_1): Fix up vec_select mode.
+-
+-2017-03-06  Prachi Godbole  <address@hidden>
+-
+-      * config/mips/mips-msa.md (msa_fmax_a_<msafmt>, msa_fmin_a_<msafmt>,
+-      msa_max_a_<msafmt>, msa_min_a_<msafmt>): Introduce mode interator for
+-      if_then_else.
+-      (smin<mode>3, smax<mode>3): Change operand print code from 'B' to 'E'.
+-
+-2017-03-06  Martin Liska  <address@hidden>
+-
+-      PR sanitize/79783
+-      * asan.c (asan_expand_poison_ifn): Do not expand ASAN_POISON
+-      when having a SSA NAME w/o VAR_DECL assigned to it.
+-
+-2017-03-06  Prachi Godbole  <address@hidden>
+-
+-      * config/mips/mips-msa.md (msa_dotp_<su>_d, msa_dpadd_<su>_d,
+-      msa_dpsub_<su>_d): Fix MODE for vec_select.
+-
+-2017-03-06  Prachi Godbole  <address@hidden>
+-
+-      * config/mips/mips.c (mips_gen_const_int_vector): Change type of last
+-      argument.
+-      * config/mips/mips-protos.h (mips_gen_const_int_vector): Likewise.
+-
+-2017-03-06  Richard Biener  <address@hidden>
+-
+-      * lto-streamer.c (lto_check_version): Use %qs in diagnostics.
+-      * plugin.c (register_plugin_info): Likewise.
+-      * tree-chkp.c (chkp_make_static_const_bounds): Likewise.
+-
+-2017-03-05  Jakub Jelinek  <address@hidden>
+-
+-      * config/i386/sse.md (sse_storehps, sse_storelps,
+-      avx_<castmode><avxsizesuffix>_<castmode>,
+-      avx512f_<castmode><avxsizesuffix>_<castmode>,
+-      avx512f_<castmode><avxsizesuffix>_256<castmode>): Require
+-      in condition that at least one operand is not a MEM.
+-
+-2017-03-03  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/79805
+-      * internal-fn.def (ATOMIC_BIT_TEST_AND_SET, ATOMIC_BIT_TEST_AND_RESET,
+-      ATOMIC_BIT_TEST_AND_COMPLEMENT, ATOMIC_COMPARE_EXCHANGE): Remove
+-      ECF_NOTHROW.
+-      * gimple-fold.c (fold_builtin_atomic_compare_exchange): Set
+-      gimple_call_nothrow_p flag based on whether original builtin can throw.
+-      If it can, emit following stmts on the fallthrough edge.
+-      * tree-ssa-ccp.c (optimize_atomic_bit_test_and): Similarly, except
+-      don't create new bb if inserting just debug stmts on the edge, try to
+-      insert them on the fallthru bb or just reset debug stmts.
+-
+-2017-03-03  Segher Boesssenkool  <address@hidden>
+-
+-      PR target/43763
+-      * config/rs6000/rs6000.c (rs6000_final_prescan_insn): Save and
+-      restore recog_data (including the operand rtxes inside it) around
+-      the call to get_insn_template.
+-
+-2017-03-03  Martin Sebor  <address@hidden>
+-
+-      PR tree-optimization/79699
+-      * context.c (context::~context): Free MPFR caches to avoid
+-      a memory leak on program exit.
+-
+-2017-03-03  Kyrylo Tkachov  <address@hidden>
+-
+-      * config/aarch64/aarch64.c (aarch64_float_const_representable_p):
+-      Use wide_int::ulow () instead of .elt (0).
+-
+-2017-03-03  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/i386.md (*pushtf): Change *roF constraint to *roC.
+-      (*pushxf): Limit oF constraint to 32bit targets and add oC
+-      constraint for 64bit targets.
+-      (pushxf splitter): Use PUSH_ROUNDING to calculate stack adjustment.
+-      (*pushdf): Change rmF constraint to rmC.
+-
+-2017-03-03  Martin Liska  <address@hidden>
+-
+-      * tree-ssa-loop-prefetch.c (pass_loop_prefetch::execute):
+-      Remove unused variable.
+-
+-2017-03-03  Jakub Jelinek  <address@hidden>
+-
+-      PR target/79807
+-      * config/i386/i386.c (ix86_expand_multi_arg_builtin): If target
+-      is a memory operand, increase num_memory.
+-      (ix86_expand_args_builtin): Likewise.
+-
+-2017-03-03  Jan Hubicka  <address@hidden>
+-
+-      PR lto/79760
+-      * ipa-devirt.c (maybe_record_node): Properly handle
+-      __cxa_pure_virtual visibility.
+-
+-2017-03-03  Martin Liska  <address@hidden>
+-
+-      PR tree-optimization/79803
+-      * tree-ssa-loop-prefetch.c (tree_ssa_prefetch_arrays): Remove
+-      assert.
+-      (pass_loop_prefetch::execute): Disabled optimization if an
+-      assumption about L1 cache size is not met.
+-
+-2017-03-03  Martin Liska  <address@hidden>
+-
+-      PR rtl-optimization/79574
+-      * gcse.c (struct gcse_expr): Use HOST_WIDE_INT instead of int.
+-      (hash_scan_set): Likewise.
+-      (dump_hash_table): Likewise.
+-      (hoist_code): Likewise.
+-
+-2017-03-03  Richard Biener  <address@hidden>
+-
+-      * fixed-value.c (fixed_from_string): Restore use of elt (1)
+-      in place of uhigh ().
+-      (fixed_convert_from_real): Likewise.
+-
+-2017-03-03  Uros Bizjak  <address@hidden>
+-
+-      PR target/79514
+-      * config/i386/i386.md (*pushxf_rounded): Use Pmode instead of DImode.
+-
+-2017-03-03  Richard Biener  <address@hidden>
+-
+-      PR middle-end/79818
+-      * match.pd ( X +- C1 CMP C2 -> X CMP C2 -+ C1): Add missing
+-      TYPE_OVERFLOW_UNDEFINED check.
+-
+-2017-03-02  Bill Schmidt  <address@hidden>
+-
+-      * config/rs6000/vector.md (vector_ne_<mode>_p): Correct operand
+-      numbers.
+-      (vector_ae_<mode>_p): Likewise.
+-      (vector_nez_<mode>_p): Likewise.
+-      (vector_ne_v2di_p): Likewise.
+-      (vector_ae_v2di_p): Likewise.
+-      (vector_ne_<mode>_p): Likewise.
+-      * config/rs6000/vsx.md (vsx_tsqrt<mode>2_fg): Correct operand
+-      numbers.
+-      (vsx_tsqrt<mode>2_fe): Likewise.
+-
+-2017-03-02  Uros Bizjak  <address@hidden>
+-
+-      PR target/79514
+-      * config/i386/i386.md (*pushxf_rounded): New insn_and_split pattern.
+-
+-2017-03-02  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/79780
+-      * cprop.c (one_cprop_pass): When second and further conditional trap
+-      in a single basic block is turned into an unconditional trap, turn it
+-      into a deleted note to avoid RTL verification failures.
+-
+-2017-03-02  Richard Biener  <address@hidden>
+-
+-      * fold-const.c (const_binop): Use ulow () instead of elt (0).
+-
+-2017-03-02  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79345
+-      PR c++/42000
+-      * tree-ssa-alias.c (walk_aliased_vdefs_1): Take a limit
+-      param and abort the walk, returning -1 if it is hit.
+-      (walk_aliased_vdefs): Take a limit param and pass it on.
+-      * tree-ssa-alias.h (walk_aliased_vdefs): Add a limit param,
+-      defaulting to 0 and return a signed int.
+-      * tree-ssa-uninit.c (struct check_defs_data): New struct.
+-      (check_defs): New helper.
+-      (warn_uninitialized_vars): Use walk_aliased_vdefs to warn
+-      about uninitialized memory.
+-      * fixed-value.c (fixed_from_string): Use ulow/uhigh to avoid
+-      bogus uninitialized warning.
+-      (fixed_convert_from_real): Likewise.
+-
+-2017-03-02  Bin Cheng  <address@hidden>
+-
+-      PR tree-optimization/66768
+-      * tree-ssa-loop-ivopts.c (find_interesting_uses_address): Skip addr
+-      iv_use if base object can't be determined.
+-
+-2017-03-02  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/79345
+-      * gensupport.h (struct pattern_stats): Add min_scratch_opno field.
+-      * gensupport.c (get_pattern_stats_1) <case MATCH_SCRATCH>: Update it.
+-      (get_pattern_stats): Initialize it.
+-      * genemit.c (gen_expand): Verify match_scratch numbers come after
+-      match_operand/match_dup numbers.
+-      * config/i386/i386.md (<s>mul<mode>3_highpart): Swap match_dup and
+-      match_scratch numbers.
+-      * config/i386/sse.md (avx2_gathersi<mode>, avx2_gatherdi<mode>):
+-      Likewise.
+-      * config/s390/s390.md (trunctdsd2): Likewise.
+-
+-2017-03-02  Richard Biener  <address@hidden>
+-
+-      * wide-int.h (wide_int_storage::operator=): Implement in terms
+-      of wi::copy.
+-
+-2017-03-02  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79777
+-      * tree-ssa-pre.c (eliminate_insert): Give up if we simplify
+-      the to insert expression to sth existing.
+-
+-2017-03-01  Martin Sebor  <address@hidden>
+-
+-      PR middle-end/79692
+-      * gimple-ssa-sprintf.c
+-      (directive::known_width_and_precision): New function.
+-      (format_integer): Use it.
+-      (get_mpfr_format_length): Consider the full range of precision
+-      when computing %g output with the # flag.  Set the likely byte
+-      count to 3 rather than 1 when precision is indeterminate.
+-      (format_floating): Correct the lower bound of precision.
+-
+-2017-03-01  Bill Schmidt  <address@hidden>
+-
+-      * doc/invoke.texi: Document default code model for 64-bit Linux.
+-
+-2017-03-01  Aaron Sawdey  <address@hidden>
+-
+-      PR target/79752
+-      * config/rs6000/rs6000.md (peephole2 for udiv/umod): Should emit
+-      udiv rather than div since input pattern is unsigned.
+-
+-2017-03-01  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/i386.c (print_reg): Warn for values of
+-      unsupported size in integer register.
+-
+-2017-03-01  Michael Meissner  <address@hidden>
+-
+-      PR target/79439
+-      * config/rs6000/predicates.md (current_file_function_operand): Do
+-      not allow self calls to be local if the function is replaceable.
+-
+-2017-03-01  Kelvin Nilsen  <address@hidden>
+-
+-      PR target/79395
+-      * config/rs6000/altivec.h (vec_ctz and others): Change the
+-      preprocessor macro that controls conditional compilation from
+-      _ARCH_PWR9 to __POWER9_VECTOR__.
+-      (vec_all_ne): Change parameterization of __altivec_scalar_pred
+-      macro expansion under preprocessor #ifdef __POWER9_VECTOR__
+-      control (instead of _ARCH_PWR9 control) so that template
+-      definition uses power9-specific function.
+-      (vec_any_eq): Likewise.
+-      (vec_all_ne): Change macro definition to use a power9-specific
+-      expansion under #ifdef __POWER9_VECTOR__ control (instead of
+-      _ARCH_PWR9 control).
+-      (vec_any_eq) Likewise.
+-      * config/rs6000/rs6000-builtin.def (CMPNEF): Remove BU_P9V_AV_2
+-      expansion for CMPNEF to remove support for xvcmpnesp instruction.
+-      (CMPNED): Remove BU_P9V_AV2 expansion for CMPNED to remove
+-      support for xvcmpnedp instruction.
+-      (VCMPNEB_P): Replace BU_P9V_AV_P macro expansion with BU_P9V_AV_2
+-      macro expansion so that Power9 implementation of vec_all_ne does
+-      not use the AltiVec predicate framework.
+-      (VCMPNEH_P): Likewise.
+-      (VCMPNEW_P): Likewise.
+-      (VCMPNED_P): Likewise.
+-      (VCMPNEFP_P): Likewise.
+-      (VCMPNEDP_P): Likewise.
+-      (VCMPAEB_P): Add BU_P9V_AV_2 macro expansion to change
+-      implementation of vec_any_eq to not use AltiVec predicate
+-      framework.
+-      (VCMPAEH_P): Likewise.
+-      (VCMPAEW_P): Likewise.
+-      (VCMPAED_P): Likewise.
+-      (VCMPAEFP_P): Likewise.
+-      (VCMPAEDP_P): Likewise.
+-      (VCMPNE_P): Replace BU_P9V_OVERLOAD_P macro expansion with
+-      BU_P9V_OVERLOAD_2 so that Power9 implementation of vec_all_ne does
+-      not use the AltiVec predicate framework.
+-      (VCMPAE_P): Add BU_P9V_OVERLOAD_2 macro to change implementation
+-      of vec_any_eq to not use AltiVec predicate framework.
+-      * config/rs6000/rs6000-c.c (rs6000_target_modify_macros): Add
+-      support for predefined __POWER9_VECTOR__ macro to indicate that
+-      Power9 instruction selection is enabled.
+-      (altivec_overloaded_builtins): Remove extraneous
+-      ALTIVEC_BUILTIN_VEC_CMPNE entry for overloaded
+-      function argument types RS6000_BTI_bool_V16QI and
+-      RS6000_BTI_bool_V16QI.  Remove erroneous ALTIVEC_BUILTIN_VEC_CMPNE
+-      entry for overloaded function argument types RS6000_BTI_bool_V4SI
+-      andRS6000_BTI_bool_V4SI, mapping to P9V_BUILTIN_CMPNEB.  Remove
+-      two entries mapping to P9V_BUITIN_CMPNED and one entry mapping to
+-      P9V_BUILTIN_CMPNEF to force use of instructions not specific to
+-      Power9 for implementations of vec_cmpne.  Change the signature for
+-      all definitions of the overloaded P9V_BUILTIN_VEC_CMPNE_P function
+-      (representing vec_all_ne) to remove the previously described first
+-      argument of type RS6000_BTI_INTSI, as this was an artifact of
+-      reliance on the AltiVec predicate framework, which is no longer
+-      used in the implementation of these functions.  Add
+-      P9V_BUILTIN_VEC_VCMPAE_P entries (representing the vec_anyeq
+-      function) to match all of the P9V_BUILTIN_VEC_VCMNE_P entries
+-      since, unlike the AltiVec predicate framework implementation, we
+-      do not share function descriptors between vec_alle and vec_anyeq.
+-      (altivec_resolve_overloaded_builtin): Add SFmode and DFmode to the
+-      set of modes that receive special treatment even when
+-      TARGET_P9_VECTOR is true.  The special treatment emits code that
+-      does not depend on Power9 instructions.
+-      * config/rs6000/vector.md (vector_ne_<mode>_p): Change this
+-      define_expand to not rely on AltiVec predicate framework.
+-      (vector_ae_<mode>p): New define_expand to represent vec_any_eq
+-      function.
+-      (vector_ne_v2di_p): Change this define_expand to not rely on
+-      AltiVec predicate framework.
+-      (vector_ae_v2di_p): New define_expand to represent vec_any_eq
+-      function.
+-      (vector_ne_<mode>_p): Change this define_expand to not rely on
+-      AltiVec predicate framework.
+-      (vector_ae_<mode>p): New define_expand to represent vec_any_eq
+-      function.
+-      * config/rs6000/vsx.md (*vsx_ne_<mode>_p): For modes VSX_EXTRACT_I
+-      (V16QI, V8HI, V4SI), correct a typo in the code emitted for this
+-      define_insn pattern.
+-      (*vsx_ne_<mode>_p): For modes VSX_F (V4SF and V2DF), remove this
+-      define_insn pattern because the xvcmpne<VSs>. instruction is not
+-      supported.
+-      (vcmpne<VSs>): Remove this define_insn because xvcmpne<VSs>
+-      instruction is not supported.
+-
+-2017-03-01  Jakub Jelinek  <address@hidden>
+-
+-      * config/nvptx/nvptx.c: Include intl.h.
+-
+-2017-03-01  Martin Jambor  <address@hidden>
+-
+-      PR lto/78140
+-      * ipa-prop.h (ipa_bits): Removed field known.
+-      (ipa_jump_func): Removed field vr_known.  Changed fields bits and m_vr
+-      to pointers.  Adjusted their comments to warn about their sharing.
+-      (ipcp_transformation_summary): Change bits to a vector of pointers.
+-      (ipa_check_create_edge_args): Moved to ipa-prop.c, declare.
+-      (ipa_get_ipa_bits_for_value): Declare.
+-      * tree-vrp.h (value_range): Mark as GTY((for_user)).
+-      * ipa-prop.c (ipa_bit_ggc_hash_traits): New.
+-      (ipa_bits_hash_table): Likewise.
+-      (ipa_vr_ggc_hash_traits): Likewise.
+-      (ipa_vr_hash_table): Likewise.
+-      (ipa_print_node_jump_functions_for_edge): Adjust for bits and m_vr
+-      being pointers and vr_known being removed.
+-      (ipa_set_jf_unknown): Likewise.
+-      (ipa_get_ipa_bits_for_value): New function.
+-      (ipa_set_jfunc_bits): Likewise.
+-      (ipa_get_value_range): New overloaded functions.
+-      (ipa_set_jfunc_vr): Likewise.
+-      (ipa_compute_jump_functions_for_edge): Use the above functions to
+-      construct bits and vr parts of jump functions.
+-      (ipa_check_create_edge_args): Move here from ipa-prop.h, also allocate
+-      ipa_bits_hash_table and ipa_vr_hash_table if they do not already
+-      exist.
+-      (ipcp_grow_transformations_if_necessary): Also allocate
+-      ipa_bits_hash_table and ipa_vr_hash_table if they do not already
+-      exist.
+-      (ipa_node_params_t::duplicate): Do not copy bits, just pointers to
+-      them.  Fix too long lines.
+-      (ipa_write_jump_function): Adjust for bits and m_vr being pointers and
+-      vr_known being removed.
+-      (ipa_read_jump_function): Use new setter functions to construct bits
+-      and vr parts of jump functions or set them to NULL.
+-      (write_ipcp_transformation_info): Adjust for bits being pointers.
+-      (read_ipcp_transformation_info): Likewise.
+-      (ipcp_update_bits): Likewise.  Fix excessively long lines a trailing
+-      space.
+-      Include gt-ipa-prop.h.
+-      * ipa-cp.c (propagate_bits_across_jump_function): Adjust for bits
+-      being pointers.
+-      (ipcp_store_bits_results): Likewise.
+-      (propagate_vr_across_jump_function): Adjust for m_vr being a pointer.
+-      Do not write to existing jump functions but use a temporary instead.
+-
+-2017-03-01  Jakub Jelinek  <address@hidden>
+-
+-      PR c++/79681
+-      * fold-const.c (make_bit_field_ref): If orig_inner is COMPONENT_REF,
+-      attempt to use its first operand as BIT_FIELD_REF base.
+-
+-2017-03-01  Richard Biener  <address@hidden>
+-
+-      PR middle-end/79721
+-      * tree-chrec.c (chrec_evaluate): Perform computation of Newtons
+-      interpolating formula in wrapping arithmetic.
+-      (chrec_apply): Convert chrec_evaluate return value to wanted type.
+-
+-2017-03-01  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/79734
+-      * tree-vect-generic.c (expand_vector_condition): Optimize
+-      AVX512 vector boolean VEC_COND_EXPRs into bitwise operations.
+-      Handle VEC_COND_EXPR where comparison has different inner width from
+-      type's inner width.
+-
+-2017-02-28  Sandra Loosemore  <address@hidden>
+-
+-      * doc/invoke.texi (ARC Options): Copy-edit to fix punctuation,
+-      markup, and similar issues.  Remove @opindex entries for things
+-      that aren't options.  Add missing -mmpy-option entries.
+-
+-2017-02-28  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/79737
+-      * gimple-ssa-store-merging.c (encode_tree_to_bitpos): If bitlen is
+-      a multiple of BITS_PER_UNIT and !BYTES_BIG_ENDIAN, clear
+-      tmpbuf[byte_size - 1].  Call natice_encode_expr with byte_size - 1
+-      instead of byte_size.  Formatting fix.
+-      (shift_bytes_in_array_right): Formatting fix.
+-
+-2017-02-28  Eric Botcazou  <address@hidden>
+-
+-      PR target/79749
+-      * config/sparc/sparc.c (sparc_frame_pointer_required): Add missing
+-      condition on optimize for the leaf function test.
+-
+-2017-02-28  Martin Liska  <address@hidden>
+-
+-      PR lto/79625
+-      * read-rtl-function.c (function_reader::handle_unknown_directive):
+-      Bail out when one uses -flto.
+-
+-2017-02-28  Martin Liska  <address@hidden>
+-
+-      * common.opt: Replace space with tabular for options of <number>
+-      type.
+-      * config/i386/i386.opt: Show <number> value for
+-      -mlarge-data-threshold.
+-      * opts.c (print_filtered_help): Do not display number in hexadecimal
+-      format.
+-
+-2017-02-28  Martin Liska  <address@hidden>
+-
+-      * common.opt: Fix --help=option -Q for options which are of
+-      an enum type.
+-
+-2017-02-28  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/i386.c (print_reg): Error out for values
+-      of 8-bit size in invalid integer register.
+-
+-2017-02-28  Martin Sebor  <address@hidden>
+-
+-      PR tree-optimization/79691
+-      * passes.def (pass_all_optimizations_g): Enable pass_sprintf_length.
+-
+-2017-02-28  Jakub Jelinek  <address@hidden>
+-
+-      PR target/79729
+-      * config/i386/i386.c (ix86_print_operand) <case 'R'>: Replace
+-      gcc_unreachable with output_operand_lossage.
+-
+-2017-02-28  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79740
+-      * tree-ssa-sccvn.c (vn_nary_op_insert_into): Allow redundant
+-      inserts.
+-      (visit_nary_op): Insert the nary into the hashtable if we
+-      pattern-matched sth.
+-      * tree-ssa-pre.c (eliminate_insert): Robustify.
+-
+-2017-02-28  Richard Biener  <address@hidden>
+-
+-      PR middle-end/79731
+-      * fold-const.c (decode_field_reference): Reject out-of-bound
+-      accesses.
+-
+-2017-02-28  Jakub Jelinek  <address@hidden>
+-
+-      * config/i386/i386.c: Include intl.h.
+-      (ix86_option_override_internal): Use cond ? G_("...") : G_("...")
+-      instead of just cond ? "..." : "...".
+-      * config/nvptx/nvptx.c (nvptx_goacc_validate_dims): Likewise.
+-      * coverage.c (read_counts_file): Likewise.
+-      * omp-offload.c: Include intl.h.
+-      (oacc_loop_fixed_partitions): Use cond ? G_("...") : G_("...") instead
+-      of just cond ? "..." : "...".
+-      * gcov.c (read_count_file): Use cond ? N_("...") : N_("...") instead
+-      of just cond ? "..." : "...".
+-
+-2017-02-28  Richard Earnshaw  <address@hidden>
+-
+-      PR target/79742
+-      * config/arm/parsecpu.awk (gen_data): Set tuning target to 'tune for'
+-      entry, if present.
+-      * config/arm/arm-cpus.in (cortex-m0plus.small-multiply): Correct
+-      'tune for' CPU name.
+-      * config/arm/arm-cpu-data.h: Regenerated.
+-
+-2017-02-28  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79732
+-      * tree-inline.c (expand_call_inline): Do not shadow var.
+-
+-2017-02-28  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79723
+-      * tree-vect-stmts.c (get_vectype_for_scalar_type_and_size): Preserve
+-      address-space properly.
+-
+-2017-02-28  Thomas Schwinge  <address@hidden>
+-
+-      * doc/optinfo.texi (Optimization groups): Fix option used for
+-      OPTGROUP_ALL.
+-      * doc/invoke.texi (-fopt-info): Document "omp".
+-      * dumpfile.h: Sort OPTGROUP_OMP before OPTGROUP_VEC.
+-      (OPTGROUP_ALL): Add OPTGROUP_OMP.
+-      * hsa-gen.c (pass_data_gen_hsail): Use OPTGROUP_OMP.
+-      * ipa-hsa.c (pass_data_ipa_hsa): Likewise.
+-      * omp-simd-clone.c (pass_data_omp_simd_clone): Likewise.
+-
+-      * dumpfile.h (OPTGROUP_OPENMP): Rename to OPTGROUP_OMP.  Adjust
+-      all users.
+-      * dumpfile.c (optgroup_options): Instead of "openmp", associate
+-      OPTGROUP_OMP with "omp".
+-
+-2017-02-27  Pat Haugen  <address@hidden>
+-
+-      PR target/79544
+-      * config/rs6000/rs6000-c.c (struct altivec_builtin_types): Use VSRAD
+-      for arithmetic shift of unsigned V2DI.
+-
+-2017-02-27  Claudiu Zissulescu  <address@hidden>
+-
+-      * config.gcc (arc*-): Clean up, use arc/big.h, arc/elf.h, and
+-      arc/linux.h headers.
+-      * config/arc/arc.h (TARGET_OS_CPP_BUILTINS): Remove.
+-      (LINK_SPEC): Likewise.
+-      (ARC_TLS_EXTRA_START_SPEC): Likewise.
+-      (EXTRA_SPECS): Likewise.
+-      (STARTFILE_SPEC): Likewise.
+-      (ENDFILE_SPEC): Likewise.
+-      (LIB_SPEC): Likewise.
+-      (TARGET_SDATA_DEFAULT): Likewise.
+-      (TARGET_MMEDIUM_CALLS_DEFAULT): Likewise.
+-      (MULTILIB_DEFAULTS): Likewise.
+-      (DWARF2_UNWIND_INFO): Likewise.
+-      * config/arc/big.h: New file.
+-      * config/arc/elf.h: Likewise.
+-      * config/arc/linux.h: Likewise.
+-      * config/arc/t-uClibc: Remove.
+-
+-2017-02-27  Bin Cheng  <address@hidden>
+-
+-      PR tree-optimization/77536
+-      * tree-ssa-loop-manip.c (niter_for_unrolled_loop): New function.
+-      (tree_transform_and_unroll_loop): Use above function to compute the
+-      estimated niter of unrolled loop and use it when scaling profile.
+-      Also use count info rather than frequency if it's non-zero.
+-      * tree-ssa-loop-manip.h niter_for_unrolled_loop(): New declaration.
+-      * tree-vect-loop.c (scale_profile_for_vect_loop): New function.
+-      (vect_transform_loop): Call above function.
+-
+-2017-02-27  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/45397
+-      * tree-ssa-pre.c (eliminate_insert): Handle BIT_AND_EXPR.
+-      * tree-ssa-sccvn.c (valueized_wider_op): New helper.
+-      (visit_nary_op): Add pattern matching for CSEing sign-changed
+-      or truncated operations with wider ones.
+-
+-2017-02-27  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79690
+-      * tree-vect-stmts.c (vectorizable_store): Use vector type
+-      built from the DR with address-space.
+-
+-2017-02-26  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/invoke.texi (Optimize Options): Refine the description
+-      of asan-use-after-return.
+-
+-2017-02-25  Alan Modra  <address@hidden>
+-
+-      PR rtl-optimization/79584
+-      * lra-constraints.c (base_to_reg): Reload ad->base, the entire
+-      base, not ad->base_term, the reg within base.  Remove assertion
+-      that ad->base == ad->base_term.  Replace gen_int_mode using
+-      bogus mode with const0_rtx.
+-
+-2017-02-25  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/79396
+-      * tree-eh.c (operation_could_trap_p, stmt_could_throw_1_p): Handle
+-      FMA_EXPR like tcc_binary or tcc_unary.
+-
+-      * tree-ssa-loop-niter.c (number_of_iterations_exit): Simplify warning.
+-
+-      PR debug/77589
+-      * dwarf2out.c (struct dw_loc_list_struct): Add noted_variable_value
+-      bitfield.
+-      (size_of_loc_descr): Handle DW_OP_GNU_variable_value.
+-      (output_loc_operands): Handle DW_OP_call_ref and
+-      DW_OP_GNU_variable_value.
+-      (struct variable_value_struct): New type.
+-      (struct variable_value_hasher): Likewise.
+-      (variable_value_hash): New variable.
+-      (string_types): Remove.
+-      (copy_loc_descr): New function.
+-      (add_loc_descr_to_each): Clarify comment.  Use copy_loc_descr.
+-      (prepend_loc_descr_to_each): New function.
+-      (add_loc_list): Fix comment typo.  Use prepend_loc_descr_to_each
+-      instead of add_loc_descr_to_each if the first argument is single
+-      location list and the second has multiple.
+-      (resolve_args_picking_1): Handle DW_OP_GNU_variable_value.
+-      (loc_list_from_tree_1): For early_dwarf, emit DW_OP_GNU_variable_value
+-      when looking for variable value which doesn't have other location info.
+-      (loc_list_from_tree): Formatting fix.
+-      (gen_array_type_die): Simplify DW_AT_string_length handling.
+-      (adjust_string_types): Remove.
+-      (gen_subprogram_die): Don't call adjust_string_types nor test/set
+-      string_types.  Call resolve_variable_values.
+-      (prune_unused_types_walk_loc_descr): Handle DW_OP_GNU_variable_value.
+-      (resolve_addr_in_expr): Likewise.  Add A argument.
+-      (copy_deref_exprloc): Remove deref argument.  Adjust for the
+-      original expression being DW_OP_GNU_variable_value with optionally
+-      DW_OP_stack_value after it instead of DW_OP_call4 with DW_OP_deref
+-      optionally after it.
+-      (optimize_string_length): Rework for DW_OP_GNU_variable_value.
+-      (resolve_addr): Adjust optimize_string_length and resolve_addr_in_expr
+-      callers.  Set remove_AT_byte_size if removing DW_AT_string_length.
+-      (variable_value_hasher::hash, variable_value_hasher::equal): New
+-      methods.
+-      (resolve_variable_value_in_expr, resolve_variable_value,
+-      resolve_variable_values, note_variable_value_in_expr,
+-      note_variable_value): New functions.
+-      (dwarf2out_early_finish): Call note_variable_value on all toplevel
+-      DIEs.
+-
+-2017-02-24  Jakub Jelinek  <address@hidden>
+-
+-      PR c/79677
+-      * opts.h (handle_generated_option): Add GENERATED_P argument.
+-      * opts-common.c (handle_option): Adjust function comment.
+-      (handle_generated_option): Add GENERATED_P argument, pass it to
+-      handle_option.
+-      (control_warning_option): Pass false to handle_generated_option
+-      GENERATED_P.
+-      * opts.c (maybe_default_option): Pass true to handle_generated_option
+-      GENERATED_P.
+-      * optc-gen.awk: Likewise.
+-
+-2017-02-24  Segher Boessenkool  <address@hidden>
+-
+-      * config/sh/sh.md (tstsi_t): If operands[0] is a SUBREG instead of
+-      a REG, look at the REG it is a SUBREG of.
+-      (splitter for cmpeqsi_t): Ditto.
+-
+-2017-02-24  Segher Boessenkool  <address@hidden>
+-
+-      * config/pa/pa.c (pa_combine_instructions): Do not share RTL.  Make
+-      the special USEs with the pattern of the insn, not the insn itself.
+-
+-2017-02-24  Matthew Fortune  <address@hidden>
+-
+-      PR target/79473
+-      * doc/invoke.texi: Document -mload-store-pairs.
+-
+-2017-02-24  Segher Boessenkool  <address@hidden>
+-          Sandra Loosemore  <address@hidden>
+-
+-      * config/nios2/nios2.c (nios2_simple_const_p): Returns false if the
+-      argument isn't a CONST_INT.
+-      (nios2_alternate_compare_const): Assert op is a CONST_INT.
+-      (nios2_valid_compare_const_p): Assert op is a CONST_INT.
+-      (nios2_validate_compare): Bypass alternate compare logic if *op2
+-      is not a CONST_INT.
+-      (ldstwm_operation_p): Return false if first_base is not a REG or
+-      if first_offset is not a CONST_INT.
+-
+-2017-02-24  Segher Boessenkool  <address@hidden>
+-
+-      * config/cris/cris.md: Use correct operand in a define_peephole2.
+-
+-2017-02-24  Segher Boessenkool  <address@hidden>
+-
+-      * config/c6x/c6x.c (predicate_insn): Do not incorrectly share RTL.
+-
+-2017-02-24  Segher Boessenkool  <address@hidden>
+-
+-      * config/arc/arc.c (arc_ccfsm_advance): Only take the PATTERN of
+-      this_insn if it is an INSN or JUMP_INSN.
+-      (force_offsettable): Look at base, not at addr.
+-      * config/arc/predicates.md (brcc_nolimm_operator): Don't call INTVAL
+-      on things that aren't necessarily CONST_INTs.
+-
+-2017-02-24  Uros Bizjak  <address@hidden>
+-
+-      * doc/invoke.texi (x86 Options, -mfpmath=sse): Mention that
+-      -mfpmath=sse is the default also for x86-32 targets with SSE2
+-      instruction set when @option{-ffast-math} is enabled
+-
+-2017-02-24  Jeff Law  <address@hidden>
+-
+-      PR rtl-optimizatoin/79286
+-      * ira.c (update_equiv_regs): Drop may_trap_p exception to
+-      dominance test.
+-
+-2017-02-24  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79389
+-      * gimple-ssa-split-paths.c (is_feasible_trace): Properly skip
+-      debug insns.
+-
+-2017-02-24  Aldy Hernandez  <address@hidden>
+-
+-      * tree-ssa-loop-niter.c (number_of_iterations_exit): Update
+-      function comment to reflect reality.
+-      (loop_exits_before_overflow): Fix typo in function description.
+-
+-2017-02-24  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79389
+-      * gimple-ssa-split-paths.c (is_feasible_trace): Verify more
+-      properly that a threading opportunity exists.  Detect conditional
+-      copy/constant propagation opportunities.
+-
+-2017-02-23  Eric Botcazou  <address@hidden>
+-
+-      * config/visium/visium.md (type): Add trap.
+-      (b): New mode attribute.
+-      (*btst): Rename into...
+-      (*btst<mode>): ...this and adjust.
+-      (*cbranchsi4_btst_insn): Rename into...
+-      (*cbranch<mode>4_btst_insn): ...this and adjust.
+-      (trap): New define_insn.
+-
+-2017-02-23  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/79389
+-      * ifcvt.c (struct noce_if_info): Add rev_cond field.
+-      (noce_reversed_cond_code): New function.
+-      (noce_emit_store_flag): Use rev_cond if non-NULL instead of
+-      reversed_comparison_code.  Formatting fix.
+-      (noce_try_store_flag): Test rev_cond != NULL in addition to
+-      reversed_comparison_code.
+-      (noce_try_store_flag_constants): Likewise.
+-      (noce_try_store_flag_mask): Likewise.
+-      (noce_try_addcc): Use rev_cond if non-NULL instead of
+-      reversed_comparison_code.
+-      (noce_try_cmove_arith): Likewise.  Formatting fixes.
+-      (noce_try_minmax, noce_try_abs): Clear rev_cond.
+-      (noce_find_if_block): Initialize rev_cond.
+-      (find_cond_trap): Call noce_get_condition with then_bb == trap_bb
+-      instead of false as last argument never attempt to reverse it
+-      afterwards.
+-
+-2017-02-23  Bin Cheng  <address@hidden>
+-
+-      PR tree-optimization/79663
+-      * tree-predcom.c (combine_chains): Process refs in reverse order
+-      only for ZERO length chains, and add explaining comment.
+-
+-2017-02-23  Jeff Law  <address@hidden>
+-
+-      PR tree-optimization/79578
+-      * tree-ssa-dse.c (clear_bytes_written_by): Use OEP_ADDRESS_OF
+-      in call to operand_equal_p.
+-
+-2017-01-23  Dominique d'Humieres  <address@hidden>
+-
+-      PR target/71017
+-      * config/i386/cpuid.h: Fix another undefined behavior.
+-
+-2017-02-23  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79683
+-      * tree-vect-stmts.c (vect_analyze_stmt): Do not overwrite
+-      vector types for data-refs.
+-
+-2017-02-23  Martin Liska  <address@hidden>
+-
+-      * params.def (PARAM_MIN_NONDEBUG_INSN_UID): Change default to 0.
+-
+-2017-02-23  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/79665
+-      * internal-fn.c (get_range_pos_neg): Moved to ...
+-      * tree.c (get_range_pos_neg): ... here.  No longer static.
+-      * tree.h (get_range_pos_neg): New prototype.
+-      * expr.c (expand_expr_real_2) <case TRUNC_DIV_EXPR>: If both arguments
+-      are known to be in between 0 and signed maximum inclusive, try to
+-      expand both unsigned and signed divmod and use the cheaper one from
+-      those.
+-
+-2017-02-22  Jeff Law  <address@hidden>
+-
+-      PR tree-optimization/79578
+-      * tree-ssa-dse.c (clear_bytes_written_by): Use operand_equal_p
+-      to compare base operands.
+-
+-2017-02-22  Segher Boessenkool  <address@hidden>
+-
+-      PR target/79211
+-      * config/rs6000/rs6000.md (*fsel<SFDF:mode><SFDF2:mode>4): Use
+-      gpc_reg_operand instead of fpr_reg_operand.
+-
+-2017-02-22  Sameera Deshpande  <address@hidden>
+-
+-      * config/mips/mips.c (mips_return_in_memory): Force FP
+-      vector types to be returned in memory for o32 ABI.
+-
+-2017-02-22  Jakub Jelinek  <address@hidden>
+-
+-      * dwarf2out.c (gen_variable_die): For -gdwarf-5, use DW_TAG_variable
+-      instead of DW_TAG_member for static data member declarations and don't
+-      set no_linkage_name for static inline data members.
+-      (gen_member_die): For -gdwarf-5 don't change DW_TAG_variable
+-      to DW_TAG_member.
+-
+-2017-02-22  Martin Liska  <address@hidden>
+-
+-      * doc/invoke.texi: Replace inequality signs with square brackets
+-      for -Wnormalized.
+-
+-2017-02-22  Matthew Fortune  <address@hidden>
+-
+-      PR target/78660
+-      * lra-constraints.c (simplify_operand_subreg): Handle
+-      WORD_REGISTER_OPERATIONS targets.
+-
+-2017-02-22  Jakub Jelinek  <address@hidden>
+-
+-      PR target/70465
+-      * reg-stack.c (emit_swap_insn): Treat (float_extend:?F (mem:?F))
+-      and (const_double:?F) like (mem:?F) for the purpose of fxch %st(1)
+-      elimination by swapping fld*.
+-
+-2017-02-22  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79673
+-      * tree-ssa-pre.c (compute_avail): Use wide_int_to_tree to
+-      convert the [TARGET_]MEM_REF offset INTEGER_CST, scrapping off
+-      irrelevant address-space qualifiers and avoiding a
+-      ADDR_SPACE_CONVERT_EXPR from fold_convert.
+-
+-2017-02-22  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79666
+-      * tree-vrp.c (extract_range_from_binary_expr_1): Make sure
+-      to not symbolically negate if that may introduce undefined
+-      overflow.
+-
+-2017-02-22  Martin Liska  <address@hidden>
+-
+-      PR lto/79587
+-      * data-streamer-in.c (streamer_read_gcov_count): Remove assert.
+-      * data-streamer-out.c (streamer_write_gcov_count_stream):
+-      Likewise.
+-      * value-prof.c (stream_out_histogram_value): Make assert more
+-      precise based on type of counter.
+-
+-2017-02-21  Uros Bizjak  <address@hidden>
+-
+-      PR target/79593
+-      * config/i386/i386.md (standard_x87sse_constant_load splitter):
+-      Use nonimmediate_operand instead of memory_operand for operand 1.
+-      (float-extend standard_x87sse_constant_load splitter): Ditto.
+-
+-2017-02-21 Jeff Law  <address@hidden>
+-
+-      PR tree-optimization/79621
+-      * gimple-ssa-isolate-paths.c (find_implicit_erroneous_behavior): Ignore
+-      blocks with edges to themselves.
+-
+-2017-02-21  Jakub Jelinek  <address@hidden>
+-
+-      PR target/79633
+-      * tree-chkp-opt.c (chkp_optimize_string_function_calls): Use
+-      is_gimple_call instead of comparing gimple_code with GIMPLE_CALL.
+-      Use gimple_call_builtin_p.
+-
+-      PR target/79570
+-      * sel-sched.c (moveup_expr_cached): Don't call sel_bb_head
+-      on temporarily removed DEBUG_INSNs.
+-
+-      PR tree-optimization/79649
+-      * tree-loop-distribution.c (classify_partition): Give up on
+-      non-generic address space loads/stores.
+-
+-2017-02-21  Aldy Hernandez  <address@hidden>
+-
+-      * doc/loop.texi (Loop manipulation): Remove nonexistent
+-      tree_ssa_loop_version from the documentation.
+-      * cfgloopmanip.c (loop_version): Document CONDITION_BB argument.
+-
+-2017-02-21  Jakub Jelinek  <address@hidden>
+-
+-      PR target/79494
+-      * config/i386/i386.c (ix86_expand_split_stack_prologue): Call
+-      make_reg_eh_region_note_nothrow_nononlocal on call_insn.
+-      * config/rs6000/rs6000.c: Include except.h.
+-      (rs6000_expand_split_stack_prologue): Call
+-      make_reg_eh_region_note_nothrow_nononlocal on the call insn.
+-
+-2017-02-21  Martin Jambor  <address@hidden>
+-
+-      PR lto/79579
+-      * ipa-prop.c (ipa_prop_write_jump_functions): Bail out if no edges
+-      have been analyzed.
+-
+-2017-02-21  Martin Jambor  <address@hidden>
+-
+-      * common.opt (-fipa-cp-alignment): Mark as ignored and preserved
+-      for backward compatibility only.
+-      * doc/invoke.texi (Option Summary): Remove all references to
+-      -fipa-cp-alignment.
+-
+-2017-02-21  Matthew Fortune  <address@hidden>
+-
+-      PR target/78660
+-      Revert:
+-      2017-02-20  Matthew Fortune  <address@hidden>
+-
+-      * lra-constraints.c (curr_insn_transform): Handle
+-      WORD_REGISTER_OPERATIONS requirements when reloading SUBREGs.
+-
+-2017-02-21  Martin Liska  <address@hidden>
+-
+-      * config/i386/i386.opt: Replace -masm-dialect with -masm.
+-
+-2017-02-21  Thomas Schwinge  <address@hidden>
+-
+-      PR translation/79638
+-      * config/nvptx/nvptx.c (ENTRY_TEMPLATE): Single out "%ntid.y".
+-
+-2017-02-21  Eric Botcazou  <address@hidden>
+-
+-      PR ada/67205
+-      * config/arm/arm.c (TARGET_CUSTOM_FUNCTION_DESCRIPTORS): Define.
+-      (arm_function_ok_for_sibcall): Return false for an indirect call by
+-      descriptor if all the argument registers are used.
+-      (arm_relayout_function): Use FUNCTION_ALIGNMENT macro to adjust the
+-      alignment of the function.
+-
+-2017-02-21  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/61441
+-      * simplify-rtx.c (simplify_const_unary_operation): For
+-      -fsignaling-nans and sNaN operand, return NULL_RTX rather than
+-      the sNaN unmodified.
+-
+-2017-02-20  Bernd Edlinger  <address@hidden>
+-
+-      * Makefile.in (BUILD_SYSTEM_HEADER_DIR): New make variabe.
+-      (LIMITS_H_TEST, if_multiarch, stmp-fixinc): Use BUILD_SYSTEM_HEADER_DIR
+-      instead of SYSTEM_HEADER_DIR.
+-
+-2017-02-20  Gerald Pfeifer  <address@hidden>
+-          Martin Liška  <address@hidden>
+-
+-      * doc/invoke.texi (use-after-scope-direct-emission-threshold):
+-      Fix typos and grammar, use active voice, and clarify.
+-
+-2017-02-20  Marek Polacek  <address@hidden>
+-
+-      PR middle-end/79537
+-      * gimplify.c (gimplify_expr): Handle unused *&&L;.
+-
+-      PR sanitizer/79558
+-      * ubsan.c (ubsan_type_descriptor): Check if TYPE_MAX_VALUE is null.
+-
+-2017-02-20  Jakub Jelinek  <address@hidden>
+-
+-      PR target/79568
+-      * config/i386/i386.c (ix86_expand_builtin): Handle
+-      OPTION_MASK_ISA_AVX512VL and OPTION_MASK_ISA_64BIT in
+-      ix86_builtins_isa[fcode].isa as a requirement of those
+-      flags and any other flag in the bitmask.
+-      (ix86_init_mmx_sse_builtins): Use 0 instead of
+-      ~OPTION_MASK_ISA_64BIT as mask.
+-      * config/i386/i386-builtin.def (__builtin_ia32_rdtsc,
+-      __builtin_ia32_rdtscp, __builtin_ia32_pause, __builtin_ia32_bsrsi,
+-      __builtin_ia32_rdpmc, __builtin_ia32_rolqi, __builtin_ia32_rolhi,
+-      __builtin_ia32_rorqi, __builtin_ia32_rorhi): Likewise.
+-
+-2017-02-20  Matthew Fortune  <address@hidden>
+-
+-      PR target/78012
+-      * lra-constraints.c (split_reg): Check requested split mode
+-      is supported by the register.
+-
+-2017-02-20  Matthew Fortune  <address@hidden>
+-
+-      * lra-constraints.c (simplify_operand_subreg): Remove early
+-      return false.
+-
+-2017-02-20  Matthew Fortune  <address@hidden>
+-
+-      PR target/78660
+-      * lra-constraints.c (curr_insn_transform): Tighten condition
+-      for converting SUBREG reloads from OP_OUT to OP_INOUT.
+-
+-2017-02-20  Matthew Fortune  <address@hidden>
+-
+-      PR target/78660
+-      * lra-constraints.c (curr_insn_transform): Handle
+-      WORD_REGISTER_OPERATIONS requirements when reloading SUBREGs.
+-
+-2017-02-19  Uros Bizjak  <address@hidden>
+-
+-      Revert:
+-      2016-05-30  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/sync.md (mfence_nosse): Use "lock orl $0, -4(%esp)".
+-
+-2017-02-19  Jonathan Wakely  <address@hidden>
+-
+-      PR c++/69523
+-      * doc/invoke.texi (C++ Dialect Options) [-Wliteral-suffix]: Update
+-      description.
+-
+-2017-02-19  Prathamesh Kulkarni  <address@hidden>
+-
+-      * gimple-pretty-print.c (dump_ternary_rhs): Adjust gimple dump format
+-      for FMA_EXPR.
+-
+-2017-02-18  Jakub Jelinek  <address@hidden>
+-
+-      * final.c (last_columnnum, override_columnnum): New variables.
+-      (final_start_function): Set last_columnnum, pass it to begin_prologue
+-      hook and pass 0 to dwarf2out_begin_prologue.
+-      (final_scan_insn): Update override_columnnum.  Pass last_columnnum
+-      to source_line debug hook.
+-      (notice_source_line): Compute last_columnnum and for debug_column_info
+-      return true on column changes.
+-      * debug.h (struct gcc_debug_hooks): Add column argument to
+-      source_line and begin_prologue hooks.
+-      (debug_nothing_int_charstar_int_bool): Remove prototype.
+-      (debug_nothing_int_int_charstar,
+-      debug_nothing_int_int_charstar_int_bool): New prototypes.
+-      (dwarf2out_begin_prologue): Add column argument.
+-      * debug.c (do_nothing_debug_hooks): Adjust source_line and
+-      begin_prologue hooks.
+-      (debug_nothing_int_charstar_int_bool): Remove.
+-      (debug_nothing_int_int_charstar,
+-      debug_nothing_int_int_charstar_int_bool): New functions.
+-      * dwarf2out.c (dwarf2out_begin_prologue): Add column argument, pass it
+-      through to dwarf2out_source_line.
+-      (dwarf2_lineno_debug_hooks): Adjust begin_prologue hook.
+-      (dwarf2out_source_line): Add column argument, emit it if requested.
+-      * sdbout.c (sdbout_source_line, sdbout_begin_prologue): Add column
+-      arguments.
+-      * xcoffout.h (xcoffout_begin_prologue, xcoffout_source_line): Likewise.
+-      * xcoffout.c (xcoffout_begin_prologue, xcoffout_source_line): Likewise.
+-      * vmsdbgout.c (vmsdbgout_begin_prologue): Add column argument, pass it
+-      through to dwarf2out_begin_prologue.
+-      (vmsdbgout_source_line): Add column argument, pass it through to
+-      dwarf2out_source_line.
+-      * dbxout.c (dbxout_begin_prologue): Add column argument, adjust
+-      dbxout_source_line caller.
+-      (dbxout_source_line): Add column argument.
+-
+-      * common.opt (gno-column-info, gcolumn-info): New options.
+-      * dwarf2out.c (dwarf2_lineno_debug_hooks): Formatting fix.
+-      (check_die): Also test for multiple DW_AT_decl_column attributes.
+-      (add_src_coords_attributes, dwarf2out_imported_module_or_decl_1): Add
+-      DW_AT_decl_column if requested.
+-      (gen_subprogram_die): Compare and/or add also DW_AT_decl_column
+-      if requested.
+-      (gen_variable_die): Likewise.
+-      (add_call_src_coords_attributes): Add DW_AT_call_column if requested.
+-      * doc/invoke.texi (-gcolumn-info, -gno-column-info): Document.
+-
+-      PR target/79569
+-      * config/i386/i386.opt (m3dnowa): Replace Undocumented with Report.
+-      * common/config/i386/i386-common.c (OPTION_MASK_ISA_3DNOW_A_SET): 
Define.
+-      (ix86_handle_option): Handle OPT_m3dnowa.
+-      * doc/invoke.texi (-m3dnowa): Document.
+-      * doc/extend.texi (__builtin_ia32_pmulhuw, __builtin_ia32_pf2iw): Use
+-      -m3dnowa instead of -m3dnow -march=athlon.
+-
+-      PR target/79559
+-      * config/i386/i386.c (ix86_print_operand): Use output_operand_lossage
+-      instead of gcc_assert for K, r and R code checks.  Formatting fixes.
+-
+-2017-02-17  Bill Schmidt  <address@hidden>
+-
+-      PR target/79261
+-      * config/rs6000/rs6000.c (rs6000_expand_ternop_builtin): Add
+-      support for CODE_FOR_vsx_xxpermdi_v2d[fi]_be.
+-      * config/rs6000/rs6000.md (reload_gpr_from_vsx<mode>): Call
+-      generator for vsx_xxpermdi_<mode>_be.
+-      * config/rs6000/vsx.md (vsx_xxpermdi_<mode>): Remove logic to
+-      force big-endian semantics.
+-      (vsx_xxpermdi_<mode>_be): New define_expand with same
+-      implementation as previous version of vsx_xxpermdi_<mode>.
+-
+-2017-02-17  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/79327
+-      * gimple-ssa-sprintf.c (format_integer): Remove likely_adjust
+-      variable, its initialization and use.
+-
+-2017-02-17  Julia Koval  <address@hidden>
+-
+-      * common/config/i386/i386-common.c (OPTION_MASK_ISA_RDPID_SET): New.
+-      (OPTION_MASK_ISA_PKU_UNSET): New.
+-      (ix86_handle_option): Handle -mrdpid.
+-      * config/i386/cpuid.h (bit_RDPID): New.
+-      * config/i386/driver-i386.c (host_detect_local_cpu):
+-      Detect RDPID feature.
+-      * config/i386/i386-builtin.def (__builtin_ia32_rdpid): New.
+-      * config/i386/i386-c.c (ix86_target_macros_internal):
+-      Handle RDPID flag.
+-      * config/i386/i386.c (ix86_target_string): Add -mrdpid to isa2_opts.
+-      (ix86_valid_target_attribute_inner_p): Add "rdpid".
+-      (ix86_expand_builtin): Handle IX86_BUILTIN_RDPID.
+-      * config/i386/i386.h (TARGET_RDPID, TARGET_RDPID_P): New.
+-      * config/i386/i386.md (define_insn "rdpid"): New.
+-      * config/i386/i386.opt Add -mrdpid.
+-      * config/i386/immintrin.h (_rdpid_u32): New.
+-
+-2017-02-17  Vladimir Makarov  <address@hidden>
+-
+-      PR rtl-optimization/79541
+-      * lra-constraints.c (curr_insn_transform): Remove wrong asm insn
+-      instead of transforming it into USE.
+-
+-2017-02-17  Segher Boessenkool  <address@hidden>
+-
+-      * config/rs6000/rs6000.md (extendsfdf2): Remove default arguments.
+-      If HONOR_SNANS (SFmode) force the input to a register.
+-      (*extendsfdf2_fpr): Add !HONOR_SNANS (SFmode) condition.
+-      (*extendsfdf2_snan): New pattern, used when using SNaNs; it generates
+-      an frsp or similar insn.
+-
+-2017-02-17  Martin Liska  <address@hidden>
+-
+-      PR rtl-optimization/79577
+-      * params.def (selsched-max-sched-times): Increase minimum to 1.
+-
+-2017-02-17  Martin Liska  <address@hidden>
+-
+-      PR rtl-optimization/79574
+-      * gcse.c (want_to_gcse_p): Prevent integer overflow.
+-
+-2017-02-17  Martin Liska  <address@hidden>
+-
+-      PR tree-optimization/79529
+-      * tree-ssa-loop-unswitch.c (is_maybe_undefined): Use
+-      ssa_defined_default_def_p to handle cases which are implicitly
+-      defined.
+-      * tree-ssa.c (ssa_defined_default_def_p): New function.
+-      (ssa_undefined_value_p): Use ssa_defined_default_def_p to handle cases
+-      which are implicitly defined.
+-      * tree-ssa.h (ssa_defined_default_def_p): Declare.
+-
+-2017-02-17  Richard Biener  <address@hidden>
+-
+-      PR middle-end/79576
+-      * params.def (max-ssa-name-query-depth): Limit to 10.
+-
+-2017-02-17  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79552
+-      * tree-ssa-structalias.c (visit_loadstore): Properly verify
+-      default defs.
+-
+-2017-02-17  Richard Biener  <address@hidden>
+-
+-      PR bootstrap/79567
+-      * genmatch.c (output_line_directive): Handle DIR_SEPARATOR_2.
+-
+-2017-02-17  Marek Polacek  <address@hidden>
+-
+-      PR middle-end/79536
+-      * fold-const.c (fold_negate_expr_1): Renamed from fold_negate_expr.
+-      (fold_negate_expr): New wrapper.
+-
+-2017-02-16  Sandra Loosemore  <address@hidden>
+-
+-      * doc/invoke.texi (C++ Dialect Options) [-Wno-non-template-friend]: 
+-      Correct terminology and de-emphasize pre-standard behavior.
+-
+-2017-02-16  Alan Modra  <address@hidden>
+-
+-      PR rtl-optimization/79286
+-      * ira.c (def_dominates_uses): New function.
+-      (update_equiv_regs): Don't create an equivalence for insns that
+-      may trap where the register def does not dominate the use.
+-
+-2017-02-16  Vladimir Makarov  <address@hidden>
+-
+-      PR rtl-optimization/78127
+-      * lra.c (lra): Call lra_eliminate before finish the loop after
+-      lra_constraint.
+-
+-2017-02-16  Richard Biener  <address@hidden>
+-
+-      * graphite.h: Do not include isl/isl_val_gmp.h, instead include
+-      isl/isl_val.h.
+-      * graphite-isl-ast-to-gimple.c (gmp_cst_to_tree): Remove.
+-      (gcc_expression_from_isl_expr_int): Use generic isl_val interface.
+-      * graphite-sese-to-poly.c: Do not include isl/isl_val_gmp.h.
+-      (isl_val_int_from_wi): New function.
+-      (extract_affine_gmp): Rename to ...
+-      (extract_affine_wi): ... this, take a widest_int.
+-      (extract_affine_int): Just wrap extract_affine_wi.
+-      (add_param_constraints): Use isl_val_int_from_wi.
+-      (add_loop_constraints): Likewise, and extract_affine_wi.
+-
+-2017-02-15 Jeff Law  <address@hidden>
+-
+-      PR middle-end/79521
+-      * ira-costs.c (scan_one_insn): Check have_regs_of_mode before calling
+-      ira_init_register_move_cost_if_necessary.
+-
+-2017-02-15  Martin Sebor  <address@hidden>
+-
+-      PR middle-end/32003
+-      * doc/invoke.texi (-fdump-final-insns): Replace option accidentally
+-      removed in a prior commit.
+-
+-2017-02-15  Bin Cheng  <address@hidden>
+-
+-      PR tree-optimization/79347
+-      * tree-vect-loop-manip.c (vect_do_peeling): Maintain profile
+-      counters during peeling.
+-
+-2017-02-15  Thomas Schwinge  <address@hidden>
+-
+-      * Makefile.in (site.exp): Remove "set ISLVER".
+-
+-2017-02-15  Jakub Jelinek  <address@hidden>
+-
+-      PR target/79487
+-      * real.c (real_from_integer): Call real_convert even for decimal.
+-
+-2017-02-15  Dominik Vogt  <address@hidden>
+-
+-      PR target/79421
+-      * config/s390/s390.c: define TARGET_CUSTOM_FUNCTION_DESCRIPTORS.
+-
+-2017-02-14  Andrew Pinski  <address@hidden>
+-
+-      * config/aarch64/aarch64-cores.def (thunderx2t99): Move to under 'C"
+-      cores and change the partno/implementer to be correct.
+-      (thunderx2t99p1): New core which replaces thunderx2t99 and still has
+-      the 'B" as the implementer.
+-      * config/aarch64/aarch64-tune.md: Regenerate.
+-
+-2017-02-14  Carl Love  <address@hidden>
+-
+-      * config/rs6000/rs6000.c: Add case statement entry to make the
+-      xvcvuxdsp built-in argument unsigned.
+-      * config/rs6000/vsx.md: Fix the source and return operand types so they
+-      match the instruction definitions from the ISA document.  Fix typo
+-      in the instruction generation for the (define_insn "vsx_xvcvuxdsp"
+-      statement.
+-
+-2017-02-14  Vladimir Makarov  <address@hidden>
+-
+-      PR target/79282
+-      * lra-int.h (struct lra_operand_data, struct lra_insn_reg): Add
+-      member early_clobber_alts.
+-      * lra-lives.c (reg_early_clobber_p): New.
+-      (process_bb_lives): Use it.
+-      * lra.c (new_insn_reg): New arg early_clobber_alts.  Use it.
+-      (debug_operand_data): Initialize early_clobber_alts.
+-      (setup_operand_alternative): Set up early_clobber_alts.
+-      (collect_non_operand_hard_regs): Ditto.  Pass early clobber
+-      alternatives to new_insn_reg.
+-      (add_regs_to_insn_regno_info): Add arg early_clobber_alts.  Use
+-      it.
+-      (lra_update_insn_regno_info): Pass the new arg.
+-
+-2017-02-14  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/79505
+-      * omp-offload.c (free_oacc_loop): Release loop->ifns vector.
+-      (new_oacc_loop_raw): Don't clear already cleared fields.
+-
+-      PR target/79481
+-      * config/i386/avx512pfintrin.h (_mm512_prefetch_i32gather_pd,
+-      _mm512_prefetch_i32gather_ps, _mm512_prefetch_i64gather_pd,
+-      _mm512_prefetch_i64gather_ps): New inline functions and macros.
+-
+-2017-02-14  Uros Bizjak  <address@hidden>
+-
+-      PR target/79495
+-      * config/i386/i386.md (*movxf_internal): Add (o,rC) alternative.
+-
+-2017-02-14  H.J. Lu  <address@hidden>
+-
+-      PR target/79498
+-      * config/i386/i386.c (timode_scalar_chain::convert_insn): Insert
+-      the extra instruction to the right place to store 128-bit constant
+-      when needed.
+-
+-2017-02-14  Martin Sebor  <address@hidden>
+-
+-      PR middle-end/79448
+-      * gimple-ssa-sprintf.c (format_directive): Avoid issuing INT_MAX
+-        warning for strings of unknown length.
+-
+-2017-02-13  Segher Boessenkool  <address@hidden>
+-
+-      * config.gcc (supported_defaults) [powerpc*-*-*]: Update.
+-
+-2017-02-14 Jeff Law  <address@hidden>
+-
+-      PR target/79404
+-      * ira-costs.c (scan_one_insn): Initialize register move costs
+-      for pseudos seen in USE/CLOBBER insns.
+-
+-      PR tree-optimization/79095
+-      * tree-vrp.c (extract_range_from_binary_expr_1): For EXACT_DIV_EXPR,
+-      if the numerator has the range ~[0,0] make the resultant range ~[0,0].
+-      (extract_range_from_binary_expr): For MINUS_EXPR with no derived range,
+-      if the operands are known to be not equal, then the resulting range
+-      is ~[0,0].
+-      (intersect_ranges): If the new range is ~[0,0] and the old range is
+-      wide, then prefer ~[0,0].
+-      * tree-vrp.c (overflow_comparison_p_1): New function.
+-      (overflow_comparison_p): New function.
+-      * tree-vrp.c (register_edge_assert_for_2): Register additional asserts
+-      if NAME is used in an overflow test.
+-      (vrp_evaluate_conditional_warnv_with_ops): If the ops represent an
+-      overflow check that can be expressed as an equality test, then adjust
+-      ops to be that equality test.
+-
+-2017-02-14  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390-builtin-types.def: Remove flags argument.
+-      * config/s390/s390.c (s390_init_builtins): Likewise.
+-
+-2017-02-14  Martin Liska  <address@hidden>
+-
+-      * tree-ssa-loop-unswitch.c (hoist_guard): Release get_loop_body
+-      vector.  Fix trailing white spaces.
+-
+-2017-02-14  James Greenhalgh  <address@hidden>
+-
+-      * config/aarch64/aarch64.c (aarch64_simd_container_mode): Handle
+-      HFmode.
+-
+-2017-02-14  Kyrylo Tkachov  <address@hidden>
+-
+-      PR rtl-optimization/68664
+-      * config/arm/arm.c (arm_sched_can_speculate_insn):
+-      New function.  Declare prototype.
+-      (TARGET_SCHED_CAN_SPECULATE_INSN): Define.
+-
+-2017-02-14  Kyrylo Tkachov  <address@hidden>
+-
+-      PR rtl-optimization/68664
+-      * config/aarch64/aarch64.c (aarch64_sched_can_speculate_insn):
+-      New function.
+-      (TARGET_SCHED_CAN_SPECULATE_INSN): Define.
+-
+-2017-02-14  Amit Pawar  <address@hidden>
+-
+-      * config/i386/i386.c (znver1_cost): Fix the alignment for function and
+-      max skip bytes for function, loop and jump.
+-
+-2017-02-14  Prathamesh Kulkarni  <address@hidden>
+-
+-      * gimple-pretty-print.c (dump_unary_rhs): Adjust dump format for
+-      ABS_EXPR for gimple dump.
+-
+-2017-02-14  Jakub Jelinek  <address@hidden>
+-
+-      PR target/79462
+-      * config/sh/sh.c (expand_cbranchdi4): Don't clear operands[4].
+-
+-      PR tree-optimization/79408
+-      * tree-vrp.c (simplify_div_or_mod_using_ranges): Handle also the
+-      case when on TRUNC_MOD_EXPR op0 is INTEGER_CST.
+-      (simplify_stmt_using_ranges): Call simplify_div_or_mod_using_ranges
+-      also if rhs1 is INTEGER_CST.
+-
+-2017-02-14  Richard Biener  <address@hidden>
+-
+-      PR middle-end/79432
+-      * tree-into-ssa.c (insert_phi_nodes): When the function can
+-      have abnormal edges rewrite SSA names with broken use-def
+-      dominance out of SSA and register them for PHI insertion.
+-
+-2017-02-13  Martin Sebor  <address@hidden>
+-
+-      PR middle-end/79496
+-      * gimple-ssa-sprintf.c (pass_sprintf_length::handle_gimple_call): Avoid
+-      clearing info.nowrite flag when snprintf size argument is a range.
+-
+-2017-02-13  Jakub Jelinek  <address@hidden>
+-
+-      * cprop.c (cprop_jump): Add missing space in string literal.
+-      * tree-ssa-structalias.c (rewrite_constraints): Likewise.
+-      (get_constraint_for_component_ref): Likewise.
+-      * df-core.c (df_worklist_dataflow_doublequeue): Likewise.
+-      * tree-outof-ssa.c (insert_partition_copy_on_edge): Likewise.
+-      * lra-constraints.c (process_alt_operands): Likewise.
+-      * ipa-inline.c (inline_small_functions): Likewise.
+-      * tree-ssa-sccvn.c (visit_reference_op_store): Likewise.
+-      * cgraph.c (cgraph_edge::redirect_call_stmt_to_callee): Likewise.
+-      * trans-mem.c (diagnose_tm_1_op): Likewise.
+-      * omp-grid.c (grid_find_single_omp_among_assignments): Likewise.
+-      (grid_parallel_clauses_gridifiable): Likewise.
+-
+-      * config/nvptx/mkoffload.c (process): Add space in between
+-      , and %d.
+-
+-      * config/i386/i386.h (REG_CLASS_NAMES): Add , in between
+-      "MOD4_SSE_REGS" and "ALL_REGS".
+-
+-      * spellcheck.c (test_data): Add , in between "foo" and "food".
+-
+-2017-02-13  Aaron Sawdey  <address@hidden>
+-
+-      PR target/79449
+-      * config/rs6000/rs6000.c (expand_block_compare): Make sure runtime
+-      boundary crossing check and subsequent code generation agree.
+-
+-2017-02-13  Kyrylo Tkachov  <address@hidden>
+-
+-      * config/aarch64/aarch64.c (has_memory_op): Delete.
+-      (aarch64_madd_needs_nop): Use contains_mem_rtx_p instead of
+-      has_memory_op.
+-
+-2017-02-13  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/79388
+-      PR rtl-optimization/79450
+-      * combine.c (distribute_notes): When removing TEM_INSN for which
+-      corresponding dest has last value recorded, invalidate that last
+-      value.
+-
+-2017-02-13  Kyrylo Tkachov  <address@hidden>
+-
+-      * config/arm/arm.c (arm_print_tune_info): Use ASM_COMMENT_START instead
+-      of explicit '@'.  Add missing assembly comment marker on branch costs
+-      printout.
+-
+-2017-02-13  Nathan Sidwell  <address@hidden>
+-
+-      * gengtype-lex.l (<in_struct>): Add '/'.
+-
+-2017-02-13  Martin Liska  <address@hidden>
+-
+-      PR c/79471
+-      * calls.c (expand_call): Replace XALLOCAVEC with XCNEWVEC.
+-
+-2017-02-13  Richard Biener  <address@hidden>
+-
+-      * configure.ac (HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS):
+-      Remove.
+-      * configure: Re-generate.
+-      * config.in: Likewise.
+-      * graphite-dependences.c: Simplify as if
+-      HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS was defined.
+-      * graphite-isl-ast-to-gimple.c: Likewise.
+-      * graphite-optimize-isl.c: Likewise.
+-      * graphite-poly.c: Likewise.
+-      * graphite-sese-to-poly.c: Likewise.
+-      * graphite.h: Likewise.
+-      * toplev.c: Include isl/version.h and use isl_version () for
+-      printing the ISL version.
+-      * doc/install.texi: Update ISL requirement.
+-
+-2017-02-12  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/standards.texi (Standards): Update reference to
+-      Objective-C 2.0.
+-
+-2017-02-12  Gerald Pfeifer  <address@hidden>
+-      
+-      * doc/extend.texi (Named Address Spaces): sourceware.org now
+-      defaults to https.
+-      * doc/install.texi (Binaries): Ditto.
+-      (Specific): Ditto.
+-
+-2017-02-11  Sandra Loosemore  <address@hidden>
+-
+-      * doc/cpp.texi: Replace "stringify"/"stringification" with C 
+-      standard terminology "stringize"/"stringizing" throughout.
+-      * doc/cppinternals.texi: Likewise.
+-
+-2017-02-11  Sandra Loosemore  <address@hidden>
+-
+-      * doc/extend.texi: Fix some spelling mistakes and typos.
+-      * doc/invoke.texi: Likewise.
+-
+-2017-02-11  Jan Hubicka  <address@hidden>
+-
+-      PR ipa/79224
+-      * params.def (inline-min-speedup) Change from 10 to 8.
+-
+-2017-02-11  Jakub Jelinek  <address@hidden>
+-
+-      * doc/invoke.texi (fopenmp): Bump OpenMP version from 4.0 to
+-      4.5.
+-
+-2017-02-11  Jan Hubicka  <address@hidden>
+-
+-      PR ipa/79224
+-      * ipa-inline-analysis.c (get_minimal_bb): New function.
+-      (record_modified): Use it.
+-      (remap_edge_change_prob): Handle also ancestor functions.
+-
+-2017-02-11  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/contrib.texi (Contributors): Remove broken link into
+-      the Mauve CVS repository.
+-
+-2017-02-11  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/79454
+-      * internal-fn.c (expand_vector_ubsan_overflow): Use piece-wise
+-      result computation whenever lhs doesn't have vector mode, not
+-      just when it has BLKmode.
+-
+-2017-02-10  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/makefile.texi (profiledbootstrap): Refer to the
+-      installation instructions only in textual form.
+-
+-2017-02-10  Aaron Sawdey  <address@hidden>
+-
+-      PR target/79295
+-      * config/rs6000/altivec.md (bcd<bcd_add_sub>): Fix constraints.
+-
+-2017-02-10  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/install.texi (Specific): Use https for blackfin.uclinux.org.
+-      (Specific): Update mingw-w64 reference.
+-      (Binaries): Ditto.
+-      (Specific): Remove broken link to Renesas RX processor.
+-
+-2017-02-10  Richard Biener  <address@hidden>
+-
+-      * toplev.c (process_options): Do not mention obsolete graphite
+-      options when printing sorry message about missing graphite support.
+-      Mention -floop-nest-optimize.
+-
+-2017-02-10  Christophe Lyon  <address@hidden>
+-
+-      * config/aarch64/arm_neon.h (vtst_p8): Rewrite without asm.
+-      (vtst_p16): Likewise.
+-      (vtstq_p8): Likewise.
+-      (vtstq_p16): Likewise.
+-      (vtst_p64): New.
+-      (vtstq_p64): Likewise.
+-      * config/arm/arm_neon.h (vgetq_lane_p64): New.
+-      (vset_lane_p64): New.
+-      (vsetq_lane_p64): New.
+-
+-2017-02-10  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/79411
+-      * tree-ssa-reassoc.c (is_reassociable_op): Return false if
+-      stmt operands are SSA_NAMEs used in abnormal phis.
+-      (can_reassociate_p): Return false if op is SSA_NAME used in abnormal
+-      phis.
+-
+-2017-02-09  Jan Hubicka  <address@hidden>
+-
+-      PR ipa/70795
+-      * cgraphunit.c (cgraph_node::add_new_function): Set externally_visible
+-      flag if needed.
+-
+-2017-02-09  Jan Hubicka  <address@hidden>
+-
+-      * tree-ssa-loop-unswitch.c (hoist_guard): Update profile.
+-
+-2017-02-09  Jakub Jelinek  <address@hidden>
+-
+-      * omp-offload.c (oacc_loop_auto_partitions): Use || instead of |
+-      to avoid warning.
+-
+-      PR c/79413
+-      * gimplify.h (is_gimple_sizepos): Only test for INTEGER_CST constants,
+-      not arbitrary TREE_CONSTANT.
+-
+-      PR c/79431
+-      * gimplify.c (gimplify_adjust_omp_clauses): Ignore
+-      "omp declare target link" attribute unless is_global_var.
+-      * omp-offload.c (find_link_var_op): Likewise.
+-
+-2017-02-09  Nathan Sidwell  <address@hidden>
+-          Chung-Lin Tang  <address@hidden>
+-
+-      * gimplify.c (gimplify_scan_omp_clauses): No special handling for
+-      OMP_CLAUSE_TILE.
+-      (gimplify_adjust_omp_clauses): Don't delete TILE.
+-      (gimplify_omp_for): Deal with TILE.
+-      * internal-fn.c (expand_GOACC_TILE): New function.
+-      * internal-fn.def (GOACC_DIM_POS): Comment may be overly conservative.
+-      (GOACC_TILE): New.
+-      * omp-expand.c (struct oacc_collapse): Add tile and outer fields.
+-      (expand_oacc_collapse_init): Add LOC paramter.  Initialize tile
+-      element fields.
+-      (expand_oacc_collapse_vars): Add INNER parm, adjust for tiling,
+-      avoid DIV for outermost collapse var.
+-      (expand_oacc_for): Insert tile element loop as needed.  Adjust.
+-      Remove out of date comments, fix whitespace.
+-      * omp-general.c (omp_extract_for_data): Deal with tiling.
+-      * omp-general.h (enum oacc_loop_flags): Add OLF_TILE flag,
+-      adjust OLF_DIM_BASE value.
+-      (struct omp_for_data): Add tiling field.
+-      * omp-low.c (scan_sharing_clauses): Allow OMP_CLAUSE_TILE.
+-      (lower_oacc_head_mark): Add OLF_TILE as appropriate.  Ensure 2 levels
+-      for auto loops.  Remove default auto determining, moved to
+-      oacc_loop_fixed_partitions.
+-      * omp-offload.c (struct oacc_loop): Change 'ifns' to vector of call
+-      stmts, add e_mask field.
+-      (oacc_dim_call): New function, abstracted out from oacc_thread_numbers.
+-      (oacc_thread_numbers): Use oacc_dim_call.
+-      (oacc_xform_tile): New.
+-      (new_oacc_loop_raw): Initialize e_mask, adjust for ifns vector.
+-      (finish_oacc_loop): Adjust for ifns vector.
+-      (oacc_loop_discover_walk): Append loop abstraction sites to list,
+-      add case for GOACC_TILE fns.
+-      (oacc_loop_xform_loop): Delete.
+-      (oacc_loop_process): Iterate over call list directly, and add
+-      handling for GOACC_TILE fns.
+-      (oacc_loop_fixed_partitions): Determine default auto, deal with TILE,
+-      dump partitioning.
+-      (oacc_loop_auto_partitions): Add outer_assign parm. Assign all but
+-      vector partitioning to outer loops.  Assign 2 partitions to loops
+-      when available. Add TILE handling.
+-      (oacc_loop_partition): Adjust oacc_loop_auto_partitions call.
+-      (execite_oacc_device_lower): Process GOACC_TILE fns, ignore unknown 
specs.
+-      * tree-nested.c (convert_nonlocal_omp_clauses): Allow OMP_CLAUSE_TILE.
+-      * tree.c (omp_clause_num_ops): Adjust TILE ops.
+-      * tree.h (OMP_CLAUSE_TILE_ITERVAR, OMP_CLAUSE_TILE_COUNT): New.
+-
+-2017-02-09  Gerald Pfeifer  <address@hidden>
+-
+-      * configure.ac (ACX_BUGURL): Update.
+-      * configure: Regenerate.
+-
+-2017-02-09  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/69823
+-      * graphite-scop-detection.c (scop_detection::harmful_loop_in_region):
+-      Properly enumerate all BBs in the region.  Use auto_vec/auto_bitmap.
+-
+-2017-02-09  Andrew Burgess  <address@hidden>
+-
+-      * config/arc/arc-c.def: Add __NPS400__ definition.
+-      * config/arc/arc.h (CPP_SPEC): Don't define __NPS400__ here.
+-      (TARGET_NPS400): Define.
+-
+-2017-02-09  Andrew Burgess  <address@hidden>
+-
+-      * config/arc/arc-arch.h (arc_arch_t): Move unchanged to earlier in
+-      file.
+-      (arc_cpu_t): Change base_architecture field, arch, to a arc_arc_t
+-      pointer, arch_info.
+-      (arc_cpu_types): Fill the arch_info field with a pointer into the
+-      arc_arch_types table.
+-      (arc_selected_cpu): Declare.
+-      * config/arc/arc.c (arc_selected_cpu): Make global.
+-      (arc_selected_arch): Delete.
+-      (arc_base_cpu): Delete.
+-      (arc_override_options): Remove references to deleted variables,
+-      update access to arch information.
+-      (ARC_OPT): Update access to arch information.
+-      (ARC_OPTX): Likewise.
+-      * config/arc/arc.h (arc_base_cpu): Remove declaration.
+-      (TARGET_ARC600): Update access to arch information.
+-      (TARGET_ARC601): Likewise.
+-      (TARGET_ARC700): Likewise.
+-      (TARGET_EM): Likewise.
+-      (TARGET_HS): Likewise.
+-      * config/arc/driver-arc.c (arc_cpu_to_as): Update access to arch
+-      information.
+-
+-2017-02-08  Pat Haugen  <address@hidden>
+-
+-      PR target/78604
+-      * config/rs6000/rs6000.c (rs6000_emit_vector_cond_expr): Invert
+-      condition/operands for integer GE/LE/GEU/LEU operations.
+-
+-2017-02-08  Segher Boessenkool  <address@hidden>
+-
+-      PR translation/79397
+-      * config/rs6000/rs6000.opt (maltivec=le, maltivec=be): Fix spelling
+-      of AltiVec.
+-
+-2017-02-08  Martin Jambor  <address@hidden>
+-
+-      PR ipa/79375
+-      * ipa-prop.c (ipa_alloc_node_params): Make static, return bool
+-      whether allocation happened.
+-      (ipa_initialize_node_params): Do not call ipa_alloc_node_params if
+-      nothing was allocated.
+-
+-2017-02-08  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/79408
+-      * tree-vrp.c (simplify_div_or_mod_using_ranges): If op1 is not
+-      constant, but SSA_NAME with a known integer range, use the minimum
+-      of that range instead of op1 to determine if modulo can be replaced
+-      with its first operand.
+-
+-2016-02-08  Kyrylo Tkachov  <address@hidden>
+-
+-      * config/riscv/riscv.c (riscv_build_integer_1): Avoid use of INT16_MAX.
+-
+-2017-02-08  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/71824
+-      * graphite-scop-detection.c (scop_detection::build_scop_breadth):
+-      Check all loops contained in the merged region.
+-
+-2017-02-07  Andrew Pinski  <address@hidden>
+-
+-      * config/aarch64/aarch64.md (popcount<mode>2): New pattern.
+-
+-2017-02-07  Andrew Pinski  <address@hidden>
+-
+-      * config/aarch64/aarch64-cores.def (thunderx): Disable LSE.
+-      (thunderxt88): Likewise.
+-      (thunderxt81): Disable LSE and change v8.1 to v8.
+-      (thunderxt83): Likewise.
+-
+-2017-02-07  Jakub Jelinek  <address@hidden>
+-          Richard Biener  <address@hidden>
+-
+-      PR middle-end/79399
+-      * ira-int.h (struct target_ira_int): Change x_max_struct_costs_size
+-      type from int to size_t.
+-      * ira-costs.c (struct_costs_size): Change type from int to size_t.
+-
+-2017-02-07  Jakub Jelinek  <address@hidden>
+-
+-      PR rtl-optimization/79386
+-      * cprop.c (bypass_conditional_jumps): Initialize
+-      bypass_last_basic_block already before splitting bbs after
+-      unconditional traps...
+-      (bypass_conditional_jumps): ... rather than here.
+-
+-      PR target/79299
+-      * config/i386/sse.md (xtg_mode, gatherq_mode): New mode attrs.
+-      (*avx512f_gathersi<mode>, *avx512f_gathersi<mode>_2,
+-      *avx512f_gatherdi<mode>, *avx512f_gatherdi<mode>_2): Use them,
+-      fix -masm=intel patterns.
+-
+-2017-02-07  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79256
+-      PR middle-end/79278
+-      * builtins.c (get_object_alignment_2): Use min_align_of_type
+-      to extract alignment for MEM_REFs to honor BIGGEST_FIELD_ALIGNMENT
+-      and ADJUST_FIELD_ALIGN.
+-
+-      * doc/tm.texi.in (ADJUST_FIELD_ALIGN): Adjust to take additional
+-      type parameter.
+-      * doc/tm.texi: Regenerate.
+-      * stor-layout.c (layout_decl): Adjust.
+-      (update_alignment_for_field): Likewise.
+-      (place_field): Likewise.
+-      (min_align_of_type): Likewise.
+-      * config/arc/arc.h (ADJUST_FIELD_ALIGN): Adjust.
+-      * config/epiphany/epiphany.h (ADJUST_FIELD_ALIGN): Likewise.
+-      * config/epiphany/epiphany.c (epiphany_adjust_field_align): Likewise.
+-      * config/frv/frv.h (ADJUST_FIELD_ALIGN): Likewise.
+-      * config/frv/frv.c (frv_adjust_field_align): Likewise.
+-      * config/i386/i386.h (ADJUST_FIELD_ALIGN): Likewise.
+-      * config/i386/i386.c (x86_field_alignment): Likewise.
+-      * config/rs6000/aix.h (ADJUST_FIELD_ALIGN): Likewise.
+-      * config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Likewise.
+-      * config/rs6000/freebsd64.h (ADJUST_FIELD_ALIGN): Likewise.
+-      * config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Likewise.
+-      * config/rs6000/sysv4.h (ADJUST_FIELD_ALIGN): Likewise.
+-      * config/rs6000/rs6000.c (rs6000_special_adjust_field_align_p):
+-       Likewise.
+-
+-      Revert
+-      2017-01-30  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79256
+-      * targhooks.c (default_builtin_vector_alignment_reachable): Honor
+-      BIGGEST_FIELD_ALIGNMENT and ADJUST_FIELD_ALIGN to fix up bogus
+-      alignment on TYPE.
+-
+-2017-02-07  Toma Tabacu  <address@hidden>
+-
+-      * config/mips/mips.c (mips_expand_builtin_insn): Convert the QImode
+-      argument of the pshufh, psllh, psllw, psrah, psraw, psrlh, psrlw
+-      builtins to SImode and emit a zero-extend, if necessary.
+-
+-2017-02-06  Palmer Dabbelt  <address@hidden>
+-
+-      * docs/invoke.texi (RISC-V Options): Alphabetize.
+-
+-2017-02-06  Palmer Dabbelt  <address@hidden>
+-
+-      * doc/invoke.texi (RISC-V Options): Use two spaces to separate
+-      options.
+-
+-2017-02-06  Palmer Dabbelt  <address@hidden>
+-
+-      * config/riscv/riscv.c: New file.
+-      * gcc/common/config/riscv/riscv-common.c: Likewise.
+-      * config.gcc: Likewise.
+-      * config/riscv/constraints.md: Likewise.
+-      * config/riscv/elf.h: Likewise.
+-      * config/riscv/generic.md: Likewise.
+-      * config/riscv/linux.h: Likewise.
+-      * config/riscv/multilib-generator: Likewise.
+-      * config/riscv/peephole.md: Likewise.
+-      * config/riscv/pic.md: Likewise.
+-      * config/riscv/predicates.md: Likewise.
+-      * config/riscv/riscv-builtins.c: Likewise.
+-      * config/riscv/riscv-c.c: Likewise.
+-      * config/riscv/riscv-ftypes.def: Likewise.
+-      * config/riscv/riscv-modes.def: Likewise.
+-      * config/riscv/riscv-opts.h: Likewise.
+-      * config/riscv/riscv-protos.h: Likewise.
+-      * config/riscv/riscv.h: Likewise.
+-      * config/riscv/riscv.md: Likewise.
+-      * config/riscv/riscv.opt: Likewise.
+-      * config/riscv/sync.md: Likewise.
+-      * config/riscv/t-elf-multilib: Likewise.
+-      * config/riscv/t-linux: Likewise.
+-      * config/riscv/t-linux-multilib: Likewise.
+-      * config/riscv/t-riscv: Likewise.
+-      * configure.ac: Likewise.
+-      * doc/contrib.texi: Add Kito Cheng, Palmer Dabbelt, and Andrew
+-      Waterman as RISC-V maintainers.
+-      * doc/install.texi: Add RISC-V entries.
+-      * doc/invoke.texi: Add RISC-V options section.
+-      * doc/md.texi: Add RISC-V constraints section.
+-      * configure: Regenerated.
+-
+-2017-02-06  Michael Meissner  <address@hidden>
+-
+-      PR target/66144
+-      * config/rs6000/vector.md (vcond<mode><mode>): Allow the true and
+-      false values to be constant vectors with all 0 or all 1 bits set.
+-      (vcondu<mode><mode>): Likewise.
+-      * config/rs6000/predicates.md (vector_int_reg_or_same_bit): New
+-      predicate.
+-      (fpmask_comparison_operator): Update comment.
+-      (vecint_comparison_operator): New predicate.
+-      * config/rs6000/rs6000.c (rs6000_emit_vector_cond_expr): Optimize
+-      vector conditionals when the true and false values are constant
+-      vectors with all 0 bits or all 1 bits set.
+-
+-2017-02-06  Martin Sebor  <address@hidden>
+-
+-      PR  tree-optimization/79376
+-      * gimple-fold.c (get_range_strlen): Set the minimum length to zero.
+-
+-2017-02-06  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/sse.md (vector modes -> vec_extract* splitter): Use
+-      explicit subreg RTX with operand 1.  Use VECTOR_MODE_P predicate
+-      to simplify split condition.
+-
+-2017-02-06  Jakub Jelinek  <address@hidden>
+-
+-      * omp-expand.c (oxpand_omp_atomic_fetch_op,
+-      expand_omp_atomic_pipeline): Return false if can_atomic_load_p is
+-      false.
+-
+-2017-02-06  Segher Boessenkool  <address@hidden>
+-
+-      PR rtl-optimization/68664
+-      * target.def (can_speculate_insn): New hook.
+-      * doc/tm.texi.in (TARGET_SCHED_CAN_SPECULATE_INSN): New hook.
++      * target.def (flags_regnum): Also mention effect on delay slot filling.
+       * doc/tm.texi: Regenerate.
+-      * sched-rgn.c (can_schedule_ready_p): Use the new hook.
+-      * config/rs6000/rs6000.c (TARGET_SCHED_CAN_SPECULATE_INSN): New macro.
+-      (rs6000_sched_can_speculate_insn): New function.
+-
+-2017-02-06  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/79284
+-      * tree-vectorizer.h (VECT_SCALAR_BOOLEAN_TYPE_P): Define.
+-      * tree-vect-stmts.c (vect_get_vec_def_for_operand,
+-      vectorizable_mask_load_store, vectorizable_operation,
+-      vect_is_simple_cond, get_same_sized_vectype): Use it instead
+-      of comparing TREE_CODE of a type against BOOLEAN_TYPE.
+-      * tree-vect-patterns.c (check_bool_pattern, search_type_for_mask_1,
+-      vect_recog_bool_pattern, vect_recog_mask_conversion_pattern): Likewise.
+-      * tree-vect-slp.c (vect_get_constant_vectors): Likewise.
+-      * tree-vect-loop.c (vect_determine_vectorization_factor): Likewise.
+-      Remove redundant gimple_code (stmt) == GIMPLE_ASSIGN test after
+-      is_gimple_assign (stmt).  Replace another such test with
+-      is_gimple_assign (stmt).
+-
+-2017-02-06  Georg-Johann Lay  <address@hidden>
+-
+-      PR target/78883
+-      * config/avr/avr.c (rtl-iter.h): Include it.
+-      (TARGET_LEGITIMATE_COMBINED_INSN): New hook define...
+-      (avr_legitimate_combined_insn): ...and implementation.
+-
+-2017-02-06  Dominik Vogt  <address@hidden>
+-
+-      * config/s390/predicates.md ("larl_operand"): Use macros from hwint.h.
+-      * config/s390/s390.c (s390_const_operand_ok)
+-      (s390_canonicalize_comparison, s390_extract_part)
+-      (s390_single_part, s390_contiguous_bitmask_nowrap_p)
+-      (s390_contiguous_bitmask_p, s390_rtx_costs)
+-      (legitimize_pic_address): Likewise.
+-      * config/s390/s390.md ("clzdi2", "clztidi2"): Likewise.
+-      * config/s390/vx-builtins.md ("vec_genbytemaskv16qi")
+-      ("vec_permi<mode>", "vfae<mode>", "*vfaes<mode>", "vstrc<mode>")
+-      ("*vstrcs<mode>"): Use UINTVAL() to set unsigned HOST_WIDE_INT.
+-      * config/s390/vector.md ("vec_vfenes<mode>"): Likewise.
+-
+-2017-02-06  Georg-Johann Lay  <address@hidden>
+-
+-      * config/avr/avr.md (*addhi3_zero_extend): Add alternative where
+-      REGNO($0) == REGNO($1).
+ 
+-2017-02-06  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/linux.h(SIZE_TYPE): Add comment.
++2020-01-23  Jeff Law  <address@hidden>
+ 
+-2017-02-06  Julian Brown  <address@hidden>
+-          Naveen H.S  <address@hidden>
+-          Virendra Pathak  <address@hidden>
++      * config/h8300/h8300.c (h8300_option_override): Fix diagnostic text.
+ 
+-      * config/aarch64/aarch64-cores.def: Change the scheduler
+-      to Thunderx2t99.
+-      * config/aarch64/aarch64.md: Include thunderx2t99.md.
+-      * config/aarch64/thunderx2t99.md: New file.
++2020-01-23  Mikael Tillenius  <address@hidden>
+ 
+-2017-02-05  Gerald Pfeifer  <address@hidden>
++      * config/h8300/h8300.h (FUNCTION_PROFILER): Fix emission of
++      profiling label
+ 
+-      * doc/standards.texi (Go Language): Update link to language
+-      standard.
++2020-01-23  Jakub Jelinek  <address@hidden>
+ 
+-2017-02-05  Jan Hubicka  <address@hidden>
++      PR rtl-optimization/93402
++      * postreload.c (reload_combine_recognize_pattern): Don't try to adjust
++      USE insns.
+ 
+-      * tree-eh.c (lower_resx): Sanitize profile.
+-      (cleanup_empty_eh_move_lp): Likewise.
++2020-01-23  Dragan Mladjenovic  <address@hidden>
+ 
+-2017-02-05  Jan Hubicka  <address@hidden>
++      * config.in: Regenerated.
++      * config/mips/linux.h (NEED_INDICATE_EXEC_STACK): Define to 1
++      for TARGET_LIBC_GNUSTACK.
++      * configure: Regenerated.
++      * configure.ac: Define TARGET_LIBC_GNUSTACK if glibc version is
++      found to be 2.31 or greater.
+ 
+-      PR tree-ssa/79347
+-      * cfgloopmanip.c (lv_adjust_loop_entry_edge, loop_version): Add
+-      ELSE_PROB.
+-      * cfgloopmanip.h (loop_version): Update prototype.
+-      * modulo-sched.c (sms_schedule): Update call of loop_version.
+-      * tree-if-conv.c(version_loop_for_if_conversion): Likewise.
+-      * tree-parloops.c (gen_parallel_loop): Likewise.
+-      * tree-ssa-loop-manip.c (tree_transform_and_unroll_loop): Likewise.
+-      * tree-ssa-loop-split.c (split_loop): Likewise.
+-      * tree-ssa-loop-unswitch.c (tree_unswitch_loop): Likewise.
+-      * tree-vect-loop-manip.c (vect_loop_versioning): Likewise.
+-
+-2017-02-05  Martin Liska  <address@hidden>
+-
+-      PR bootstrap/78985
+-      * config/s390/s390.c (s390_gimplify_va_arg): Initialize local
+-      variable to NULL.
+-      (print_operand_address): Initialize a struct to zero.
+-
+-2017-02-05  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/contrib.texi (Contributors): Refer to Hans Boehm's
+-      garbage collector only in textual form.
++2020-01-23  Dragan Mladjenovic  <address@hidden>
+ 
+-2017-02-05  Gerald Pfeifer  <address@hidden>
+-      
+-      * doc/extend.texi (x86 specific memory model extensions for
+-      transactional memory): Simplify a phrase.
++      * config/mips/linux.h (NEED_INDICATE_EXEC_STACK): Define to
++      TARGET_SOFT_FLOAT.
++      * config/mips/mips.c (TARGET_ASM_FILE_END): Define to ...
++      (mips_asm_file_end): New function. Delegate to
++      file_end_indicate_exec_stack if NEED_INDICATE_EXEC_STACK is true.
++      * config/mips/mips.h (NEED_INDICATE_EXEC_STACK): Define to 0.
+ 
+-2017-02-05  Eric Botcazou  <address@hidden>
++2020-01-23  Jakub Jelinek  <address@hidden>
+ 
+-      PR target/79353
+-      * config/sparc/sync.md (atomic_loaddi_1): Replace 'U' constraint with
+-      'r', 'm' constraint with 'T' and !TARGET_ARCH64 with TARGET_ARCH32.
+-      (atomic_storedi_1): Likewise.
++      PR target/93376
++      * config/i386/i386-modes.def (POImode): New mode.
++      (MAX_BITSIZE_MODE_ANY_INT): Change from 128 to 160.
++      * config/i386/i386.md (DPWI): New mode attribute.
++      (addv<mode>4, subv<mode>4): Use <DPWI> instead of <DWI>.
++      (QWI): Rename to...
++      (QPWI): ... this.  Use POI instead of OI for TImode.
++      (*addv<dwi>4_doubleword, *addv<dwi>4_doubleword_1,
++      *subv<dwi>4_doubleword, *subv<dwi>4_doubleword_1): Use <QPWI>
++      instead of <QWI>.
+ 
+-2017-02-04  Jakub Jelinek  <address@hidden>
++2020-01-23  Richard Sandiford  <address@hidden>
+ 
+-      PR tree-optimization/79338
+-      * tree-parloops.c (gather_scalar_reductions): Don't call
+-      vect_analyze_loop_form for loop->inner before destroying loop's
+-      loop_vinfo.
++      PR target/93341
++      * config/aarch64/aarch64.md (UNSPEC_SPECULATION_TRACKER_REV): New
++      unspec.
++      (speculation_tracker_rev): New pattern.
++      * config/aarch64/aarch64-speculation.cc (aarch64_do_track_speculation):
++      Use speculation_tracker_rev to track the inverse condition.
+ 
+-2017-02-03  Martin Sebor  <address@hidden>
++2020-01-23  Richard Biener  <address@hidden>
+ 
+-      PR tree-optimization/79327
+-      * gimple-ssa-sprintf.c (tree_digits): Avoid adding the base prefix
+-      when precision has resulted in leading zeros.
+-      (format_integer): Adjust the likely counter to assume an unknown
+-      argument that may be zero is non-zero.
++      PR tree-optimization/93381
++      * tree-ssa-sccvn.c (vn_walk_cb_data::push_partial_def): Take
++      alias-set of the def as argument and record the first one.
++      (vn_walk_cb_data::first_set): New member.
++      (vn_reference_lookup_3): Pass the alias-set of the current def
++      to push_partial_def.  Fix alias-set used in the aggregate copy
++      case.
++      (vn_reference_lookup): Consistently set *last_vuse_ptr.
++      * real.c (clear_significand_below): Fix out-of-bound access.
+ 
+-2017-02-03  Jason Merrill  <address@hidden>
++2020-01-23  Jakub Jelinek  <address@hidden>
+ 
+-      PR c++/78689
+-      * tree-inline.c (copy_tree_body_r) [COND_EXPR]: Revert change to
+-      avoid copying non-taken branch.
++      PR target/93346
++      * config/i386/i386.md (*bmi2_bzhi_<mode>3_2, *bmi2_bzhi_<mode>3_3):
++      New define_insn patterns.
+ 
+-2017-02-03  Jakub Jelinek  <address@hidden>
++2020-01-23  Richard Sandiford  <address@hidden>
+ 
+-      PR tree-optimization/79340
+-      * tree-vect-loop.c (vectorizable_reduction): Release
+-      vec_defs elements after safe_splicing them into other vectors.
+-      Formatting fixes.
++      * doc/sourcebuild.texi (check-function-bodies): Add an
++      optional target/xfail selector.
+ 
+-      PR tree-optimization/79327
+-      * gimple-ssa-sprintf.c (adjust_range_for_overflow): If returning
+-      true, always set *argmin and *argmax to TYPE_{MIN,MAX}_VALUE of
+-      dirtype.
+-      (format_integer): Use wide_int_to_tree instead of build_int_cst
+-      + to_?hwi.  If argmin is NULL, just set argmin and argmax to
+-      TYPE_{MIN,MAX}_VALUE of argtype.  Simplify and fix computation
+-      of shortest and longest sequence.
++2020-01-23  Richard Sandiford  <address@hidden>
+ 
+-2017-02-03  Uros Bizjak  <address@hidden>
++      PR rtl-optimization/93124
++      * auto-inc-dec.c (merge_in_block): Don't add auto inc/decs to
++      bare USE and CLOBBER insns.
+ 
+-      * config/i386/i386.c (dimode_scalar_chain::convert_reg):
+-      Use pextrd for TARGET_SSE4_1 when creating scalar copy.
++2020-01-22  Andrew Pinski  <address@hidden>
+ 
+-2017-02-03  Walter Lee  <address@hidden>
++      * config/arc/arc.c (output_short_suffix): Check insn for nullness.
+ 
+-      PR target/78862
+-      * config/tilegx/tilegx.md (tilegx_expand_prologue): Add blockage
+-      after initial stackframe link reg save.
+-      * config/tilepro/tilepro.md (tilepro_expand_prologue): Likewise.
++2020-01-22  David Malcolm  <address@hidden>
+ 
+-2017-02-03  Jakub Jelinek  <address@hidden>
++      PR analyzer/93307
++      * gdbinit.in (break-on-saved-diagnostic): Update for move of
++      diagnostic_manager into "ana" namespace.
++      * selftest-run-tests.c (selftest::run_tests): Update for move of
++      selftest::run_analyzer_selftests to
++      ana::selftest::run_analyzer_selftests.
+ 
+-      PR target/79354
+-      * config/rs6000/rs6000.md (movsi_from_sf): Use wb constraint instead of
+-      wu for stxssp alternative.
++2020-01-22  Richard Sandiford  <address@hidden>
+ 
+-2017-02-03  Martin Sebor  <address@hidden>
++      * cfgexpand.c (union_stack_vars): Update the size.
+ 
+-      PR tree-optimization/79352
+-      * gimple-fold.c (get_range_strlen): Add argument.
+-      (get_range_strlen): Change return type to bool.
+-      (get_maxval_strlen): Pass in a dummy argument.
+-      * gimple-fold.h (get_range_strlen): Change return type to bool.
+-      * gimple-ssa-sprintf.c (get_string_length): Set unlikely counter.
+-      * tree.h (array_at_struct_end_p): Add argument.
+-      * tree.c (array_at_struct_end_p): Handle it.
++2020-01-22  Richard Biener  <address@hidden>
+ 
+-2017-02-03  Martin Liska  <address@hidden>
++      PR tree-optimization/93381
++      * tree-ssa-structalias.c (find_func_aliases): Assume offsetting
++      throughout, handle all conversions the same.
+ 
+-      PR lto/66295
+-      * multiple_target.c (create_dispatcher_calls): Redirect edge
+-      from a caller of a dispatcher.
+-      (expand_target_clones): Make the clones local.
+-      (ipa_target_clone): Do both target clones and resolvers.
+-      (ipa_dispatcher_calls): Remove the pass.
+-      (pass_dispatcher_calls::gate): Likewise.
+-      (make_pass_dispatcher_calls): Likewise.
+-      * passes.def (pass_target_clone): Put as very first IPA early
+-      pass.
++2020-01-22  Jakub Jelinek  <address@hidden>
+ 
+-2017-02-03  Martin Liska  <address@hidden>
++      PR target/93335
++      * config/aarch64/aarch64.c (aarch64_expand_subvti): Only use
++      gen_subdi3_compare1_imm if low_in2 satisfies aarch64_plus_immediate
++      predicate, not whenever it is CONST_INT.  Otherwise, force_reg it.
++      Call force_reg on high_in2 unconditionally.
+ 
+-      * symtab.c (symtab_node::binds_to_current_def_p): Bail out
+-      in case of a function with ifunc attribute.
++2020-01-22  Martin Liska  <address@hidden>
+ 
+-2017-02-03  Martin Liska  <address@hidden>
++      PR tree-optimization/92924
++      * profile.c (compute_value_histograms): Divide
++      all counter values.
+ 
+-      * cgraph.c (cgraph_node::dump): Dump function version info.
+-      * symtab.c (symtab_node::dump_base): Add missing new line.
++2020-01-22  Jakub Jelinek  <address@hidden>
+ 
+-2017-02-02  Jan Hubicka  <address@hidden>
++      PR target/91298
++      * output.h (assemble_name_resolve): Declare.
++      * varasm.c (assemble_name_resolve): New function.
++      (assemble_name): Use it.
++      * config/i386/i386.h (ASM_OUTPUT_SYMBOL_REF): Define.
+ 
+-      * tree-ssa-ifcombine.c (update_profile_after_ifcombine): New function.
+-      (ifcombine_ifandif): Use it.
++2020-01-22  Joseph Myers  <address@hidden>
+ 
+-2017-02-03  Martin Liska  <address@hidden>
++      * doc/sourcebuild.texi (Texinfo Manuals, Front End): Refer to
++      update_web_docs_git instead of update_web_docs_svn.
+ 
+-      * doc/invoke.texi: Document default value for
+-      use-after-scope-direct-emission-threshold.
++2020-01-21  Andrew Pinski  <address@hidden>
+ 
+-2017-02-03  Martin Liska  <address@hidden>
++      PR target/9311
++      * config/aarch64/aarch64.md (tlsgd_small_<mode>): Have operand 0
++      as PTR mode. Have operand 1 as being modeless, it can be P mode.
++      (*tlsgd_small_<mode>): Likewise.
++      * config/aarch64/aarch64.c (aarch64_load_symref_appropriately)
++      <case SYMBOL_SMALL_TLSGD>: Call gen_tlsgd_small_* with a ptr_mode
++      register.  Convert that register back to dest using convert_mode.
+ 
+-      PR tree-optimization/79339
+-      * gimple-ssa-sprintf.c (format_floating_max): Call mpfr_clear.
+-      (format_floating): Likewise.
++2020-01-21  Jim Wilson  <address@hidden>
+ 
+-2017-02-03  Martin Liska  <address@hidden>
++      * config/riscv/riscv-sr.c (riscv_sr_match_prologue): Use INTVAL
++      instead of XINT.
+ 
+-      PR ipa/79337
+-      * ipa-prop.c (ipa_node_params_t::insert): Remove current
+-      implementation.
+-      (ipa_node_params_t::remove): Likewise.
+-      * ipa-prop.h (ipa_node_params::ipa_node_params): Make default
+-      initialization from removed ipa_node_params_t::insert.
+-      (ipa_node_params::~ipa_node_params): Move from removed
+-      ipa_node_params_t::release.
+-      * symbol-summary.h (symbol_summary::m_released): New member.
+-      Do not release a summary twice.  Do not allow to call finalizer
+-      for types of a summary that live in GGC memory.
++2020-01-21  H.J. Lu  <address@hidden>
++          Uros Bizjak    <address@hidden>
+ 
+-2017-02-02  Naveen H.S  <address@hidden>
++      PR target/93319
++      * config/i386/i386.c (ix86_tls_module_base): Replace Pmode
++      with ptr_mode.
++      (legitimize_tls_address): Do GNU2 TLS address computation in
++      ptr_mode and zero-extend result to Pmode.
++      *  config/i386/i386.md (@tls_dynamic_gnu2_64_<mode>): Replace
++      :P with :PTR and Pmode with ptr_mode.
++      (*tls_dynamic_gnu2_lea_64_<mode>): Likewise.
++      (*tls_dynamic_gnu2_call_64_<mode>): Likewise.
++      (*tls_dynamic_gnu2_combine_64_<mode>): Likewise.
+ 
+-      * config/aarch64/aarch64.c (thunderx2t99_tunings): Enable AES and
+-      cmp_branch fusion.
+-
+-2017-02-02  Martin Sebor  <address@hidden>
+-
+-      PR middle-end/79275
+-      * gimple-ssa-sprintf.c (get_string_length): Set lower bound to zero.
+-      (format_string): Tighten up the range of output for non-constant
+-      strings and correct the expected range for wide non-constant strings.
+-
+-2017-02-02  Martin Sebor  <address@hidden>
++2020-01-21  Jakub Jelinek  <address@hidden>
+ 
+-      * doc/invoke.texi (-maccumulate-args): Fix bad grammar.
++      PR target/93333
++      * config/riscv/riscv.c (riscv_rtx_costs) <case ZERO_EXTRACT>: Verify
++      the last two operands are CONST_INT_P before using them as such.
+ 
+-      PR middle-end/32003
+-      * doc/invoke.texi (-fdump-tree-): Remove pass-specific options from
+-      index.
+-      (-fdump-tree-@var): Add to index and document how to come up
+-      with pass-specific option and dump file names.
+-      (-fdump-passes): Clarify where to look for output.
++2020-01-21  Richard Sandiford  <address@hidden>
+ 
+-2017-02-02  Jan Hubicka  <address@hidden>
++      * config/aarch64/aarch64-sve-builtins.def: Use get_typenode_from_name
++      to get the integer element types.
+ 
+-      PR middle-end/77445
+-      * tree-ssa-threadbackward.c (profitable_jump_thread_path): Dump
+-      statistics of the analyzed path; allow threading for speed when
+-      any of BBs along the path are optimized for speed.
++2020-01-21  Richard Sandiford  <address@hidden>
+ 
+-2017-02-02  Eric Botcazou  <address@hidden>
++      * config/aarch64/aarch64-sve-builtins.h
++      (function_expander::convert_to_pmode): Declare.
++      * config/aarch64/aarch64-sve-builtins.cc
++      (function_expander::convert_to_pmode): New function.
++      (function_expander::get_contiguous_base): Use it.
++      (function_expander::prepare_gather_address_operands): Likewise.
++      * config/aarch64/aarch64-sve-builtins-sve2.cc
++      (svwhilerw_svwhilewr_impl::expand): Likewise.
+ 
+-      PR middle-end/78468
+-      * emit-rtl.c (init_emit): Add ??? comment for problematic alignment
+-      settings of the virtual registers.
++2020-01-21  Szabolcs Nagy  <address@hidden>
+ 
+-      Revert again
+-      2016-08-23  Dominik Vogt  <address@hidden>
++      PR target/92424
++      * config/aarch64/aarch64.c (aarch64_declare_function_name): Set
++      cfun->machine->label_is_assembled.
++      (aarch64_print_patchable_function_entry): New.
++      (TARGET_ASM_PRINT_PATCHABLE_FUNCTION_ENTRY): Define.
++      * config/aarch64/aarch64.h (struct machine_function): New field,
++      label_is_assembled.
+ 
+-      * explow.c (get_dynamic_stack_size): Take known alignment of stack
+-      pointer + STACK_DYNAMIC_OFFSET into account when calculating the size
+-      needed.
++2020-01-21  David Malcolm  <address@hidden>
+ 
+-2017-02-02  Andreas Krebbel  <address@hidden>
++      PR ipa/93315
++      * ipa-profile.c (ipa_profile): Delete call_sums and set it to
++      NULL on exit.
+ 
+-      * config/s390/vx-builtins.md ("vec_ceil", "vec_floor")
+-      ("vec_trunc", "vec_roundc", "vec_round"): Remove expanders.
++2020-01-18  Jan Hubicka  <address@hidden>
+ 
+-2017-02-02  Andreas Krebbel  <address@hidden>
++      PR lto/93318    
++      * cgraph.c (cgraph_edge::resolve_speculation,
++      cgraph_edge::redirect_call_stmt_to_callee): Fix update of
++      call_stmt_site_hash.
+ 
+-      * config/s390/s390.md: Add missing comments with the expanded
+-      mnemonics.
+-      * config/s390/vector.md: Likewise.
+-      * config/s390/vx-builtins.md: Likewise.
++2020-01-21  Martin Liska  <address@hidden>
+ 
+-2017-02-02  Jakub Jelinek  <address@hidden>
++      * config/rs6000/rs6000.c (common_mode_defined): Remove
++      unused variable.
+ 
+-      PR target/79197
+-      * config/rs6000/rs6000.md (*fixuns_trunc<mode>di2_fctiduz): Rename to 
...
+-      (fixuns_trunc<mode>di2): ... this, remove previous expander.  Put all
+-      conditions on a single line.
++2020-01-21  Richard Biener  <address@hidden>
+ 
+-2017-02-02  Andreas Krebbel  <address@hidden>
++      PR tree-optimization/92328
++      * tree-ssa-sccvn.c (vn_reference_lookup_3): Preserve
++      type when value-numbering same-sized store by inserting a
++      VIEW_CONVERT_EXPR.
++      (eliminate_dom_walker::eliminate_stmt): When eliminating
++      a redundant store handle bit-reinterpretation of the same value.
+ 
+-      * config/s390/s390-c.c (s390_cpu_cpp_builtins_internal): Rename
+-      __S390_VX__ to __VX__.
++2020-01-21  Andrew Pinski  <address@hidden>
+ 
+-2017-02-01  Andrew Pinski  <address@hidden>
+-
+-      * tree-vect-loop.c (vect_compute_single_scalar_iteration_cost): Pass
+-      stmt_info to record_stmt_cost.
+-      (vect_get_known_peeling_cost): Pass stmt_info if known to
+-      record_stmt_cost.
+-      * config/aarch64/aarch64-protos.h (cpu_vector_cost): Split
+-      cpu_vector_cost field into
+-      scalar_int_stmt_cost and scalar_fp_stmt_cost.  Split vec_stmt_cost
+-      field into vec_int_stmt_cost and vec_fp_stmt_cost.
+-      * config/aarch64/aarch64.c (generic_vector_cost): Update for the
+-      splitting of scalar_stmt_cost and vec_stmt_cost.
+-      (thunderx_vector_cost): Likewise.
+-      (cortexa57_vector_cost): LIkewise.
+-      (exynosm1_vector_cost): Likewise.
+-      (xgene1_vector_cost): Likewise.
+-      (thunderx2t99_vector_cost): Improve after the splitting of the two
+-      fields.
+-      (aarch64_builtin_vectorization_cost): Update for the splitting of
+-      scalar_stmt_cost and vec_stmt_cost.
+-
+-2017-02-01  Torvald Riegel  <address@hidden>
+-          Richard Henderson  <address@hidden>
+-
+-      * builtins.c (fold_builtin_atomic_always_lock_free): Make "lock-free"
+-      conditional on existance of a fast atomic load.
+-      * optabs-query.c (can_atomic_load_p): New function.
+-      * optabs-query.h (can_atomic_load_p): Declare it.
+-      * optabs.c (expand_atomic_exchange): Always delegate to libatomic if
+-      no fast atomic load is available for the particular size of access.
+-      (expand_atomic_compare_and_swap): Likewise.
+-      (expand_atomic_load): Likewise.
+-      (expand_atomic_store): Likewise.
+-      (expand_atomic_fetch_op): Likewise.
+-      * testsuite/lib/target-supports.exp
+-      (check_effective_target_sync_int_128): Remove x86 because it provides
+-      no fast atomic load.
+-      (check_effective_target_sync_int_128_runtime): Likewise.
+-
+-2017-02-01  Richard Biener  <address@hidden>
+-
+-      * graphite.c: Include tree-vectorizer.h for find_loop_location.
+-      (graphite_transform_loops): Provide opt-info for optimized nests.
+-      * tree-parloop.c (parallelize_loops): Provide opt-info for
+-      parallelized loops.
+-
+-2017-02-01  Richard Biener  <address@hidden>
+-
+-      PR middle-end/79315
+-      * tree-cfg.c (move_stmt_op): Never set TREE_BLOCK when it
+-      was not set before.
+-
+-2017-02-01  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/71824
+-      * graphite-scop-detection.c (scop_detection::build_scop_breadth):
+-      Verify the loops are valid in the merged SESE region.
+-      (scop_detection::can_represent_loop_1): Check analyzing the
+-      evolution of the number of iterations in the region succeeds.
+-
+-2017-01-31  Ian Lance Taylor  <address@hidden>
+-
+-      * config/i386/i386.c (ix86_expand_split_stack_prologue): Add
+-      REG_ARGS_SIZE note to 32-bit push insns and call insn.
+-
+-2017-01-31  David Malcolm  <address@hidden>
+-
+-      PR preprocessor/79210
+-      * input.c (get_substring_ranges_for_loc): Replace line_width
+-      assertion with error-handling.
+-
+-2017-01-31  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/77318
+-      * graphite-sese-to-poly.c (extract_affine): Fix assert.
+-      (create_pw_aff_from_tree): Take loop parameter.
+-      (add_condition_to_pbb): Pass loop of the condition to
+-      create_pw_aff_from_tree.
+-
+-2017-01-31  Jakub Jelinek  <address@hidden>
+-
+-      * config/s390/s390.c (s390_asan_shadow_offset): New function.
+-      (TARGET_ASAN_SHADOW_OFFSET): Redefine.
+-
+-2017-01-31  Michael Meissner  <address@hidden>
+-
+-      PR target/78597
+-      PR target/79038
+-      * config/rs6000/rs6000-protos.h (convert_float128_to_int): Delete,
+-      no longer used.
+-      (convert_int_to_float128): Likewise.
+-      * config/rs6000/rs6000.c (convert_float128_to_int): Likewise.
+-      (convert_int_to_float128): Likewise.
+-      * config/rs6000/rs6000.md (UNSPEC_IEEE128_MOVE): Likewise.
+-      (UNSPEC_IEEE128_CONVERT): Likewise.
+-      (floatsi<mode>2, FLOAT128 iterator): Bypass calling
+-      rs6000_expand_float128_convert if we have IEEE 128-bit hardware.
+-      Use local variables for IBM extended format.
+-      (fix_trunc<mode>si2, FLOAT128 iterator): Likewise.
+-      (fix_trunc<mode>si2_fprs): Likewise.
+-      (fixuns_trunc<IEEE128:mode><SDI:mode>2): Likewise.
+-      (floatuns<IEEE128:mode>2, IEEE128 iterator): Likewise.
+-      (fix<uns>_<mode>si2_hw): Rework the IEEE 128-bt hardware support
+-      to know that we can now have integers of all sizes in vector
+-      registers.
+-      (fix<uns>_<mode>di2_hw): Likewise.
+-      (float<uns>_<mode>si2_hw): Likewise.
+-      (fix_<mode>si2_hw): Likewise.
+-      (fixuns_<mode>si2_hw): Likewise.
+-      (float<uns>_<mode>di2_hw): Likewise.
+-      (float_<mode>di2_hw): Likewise.
+-      (float_<mode>si2_hw): Likewise.
+-      (floatuns_<mode>di2_hw): Likewise.
+-      (floatuns_<mode>si2_hw): Likewise.
+-      (xscvqp<su>wz_<mode>): Delete, no longer used.
+-      (xscvqp<su>dz_<mode>): Likewise.
+-      (xscv<su>dqp_<mode>): Likewise.
+-      (ieee128_mfvsrd_64bit): Likewise.
+-      (ieee128_mfvsrd_32bit): Likewise.
+-      (ieee128_mfvsrwz): Likewise.
+-      (ieee128_mtvsrw): Likewise.
+-      (ieee128_mtvsrd_64bit): Likewise.
+-      (ieee128_mtvsrd_32bit): Likewise.
+-
+-2017-01-31  Martin Liska  <address@hidden>
+-
+-      PR ipa/79285
+-      * ipa-prop.c (ipa_free_all_node_params): Call release method
+-      instead of ~sumbol_summary to not to trigger double times
+-      dtor of hash_map.
+-
+-2017-01-31  Aldy Hernandez  <address@hidden>
+-
+-      PR tree-optimization/71691
+-      * bitmap.h (class auto_bitmap): New.
+-      * tree-ssa-loop-unswitch.c (tree_may_unswitch_on): Call
+-      is_maybe_undefined instead of ssa_undefined_value_p.
+-
+-2017-01-31  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390-c.c (s390_cpu_cpp_builtins_internal): Rename
+-      __S390_ARCH_LEVEL__ to __ARCH__.
+-
+-2017-01-31  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/79267
+-      * value-prof.c (gimple_ic): Only drop lhs for noreturn calls
+-      if should_remove_lhs_p is true.
+-
+-2017-01-30  Alexandre Oliva <address@hidden>
+-
+-      PR debug/63238
+-      * dwarf2out.c (clone_as_declaration): Drop DW_AT_alignment.
+-      (add_alignment_attribute): New.
+-      (base_type_die): Add alignment attribute.
+-      (subrange_type_die): Likewise.
+-      (modified_type_die): Likewise.
+-      (gen_array_type_die): Likewise.
+-      (gen_descr_array_type_die: Likewise.
+-      (gen_enumeration_type_die): Likewise.
+-      (gen_subprogram_die): Likewise.
+-      (gen_variable_die): Likewise.
+-      (gen_field_die): Likewise.
+-      (gen_ptr_to_mbr_type_die): Likewise.
+-      (gen_struct_or_union_type_die): Likewise.
+-      (gen_subroutine_type_die): Likewise.
+-      (gen_typedef_die): Likewise.
+-      (base_type_cmp): Compare alignment attribute.
+-
+-2017-01-30  Aaron Sawdey  <address@hidden>
+-
+-      PR target/79170
+-      * config/rs6000/altivec.md (*setb_internal): Rename to setb_signed.
+-      (setb_unsigned) New pattern for setb with CCUNS.
+-      * config/rs6000/rs6000.c (expand_block_compare): Use a different
+-      subfc./subfe sequence to avoid overflow problems.  Generate a
+-      shorter sequence with cmpld/setb for power9.
+-      * config/rs6000/rs6000.md (subf<mode>3_carry_dot2): Add a new pattern
+-      for generating subfc. instruction.
+-      (cmpstrsi): Add TARGET_POPCNTD predicate as the generate sequence
+-      now uses this instruction.
+-
+-2017-01-30  Ian Lance Taylor  <address@hidden>
+-
+-      PR debug/79289
+-      * dwarf2out.c (gen_type_die_with_usage): When picking a variant
+-      for FUNCTION_TYPE/METHOD_TYPE, use the first matching one.
+-
+-2017-01-30  Martin Sebor  <address@hidden>
+-
+-      * gimple-ssa-sprintf.c (fmtresult::adjust_for_width_or_precision):
+-      Move constant to the right of a relational operator.
+-      (get_mpfr_format_length, format_character, format_string): Ditto.
+-      (should_warn_p, maybe_warn): Same.
+-
+-      * doc/invoke.texi (-Wformat-truncation=1): Fix typo.
++      PR tree-opt/93321
++      * tree-into-ssa.c (prepare_block_for_update_1): Split out
++      from ...
++      (prepare_block_for_update): This.  Use a worklist instead of
++      recursing.
+ 
+-2017-01-30  Maxim Ostapenko  <address@hidden>
++2020-01-21  Mihail-Calin Ionescu  <address@hidden>
+ 
+-      PR lto/79061
+-      * asan.c (get_translation_unit_decl): Remove function.
+-      (asan_add_global): Force has_dynamic_init to zero in LTO mode.
++      * gcc/config/arm/arm.c (clear_operation_p):
++      Initialise last_regno, skip first iteration
++      based on the first_set value and use ints instead
++      of the unnecessary HOST_WIDE_INTs.
+ 
+-2017-01-30  Martin Liska  <address@hidden>
++2020-01-21  Jakub Jelinek  <address@hidden>
+ 
+-      PR gcov-profile/79259
+-      * opts.c (common_handle_option): Enable flag_ipa_bit_cp w/
+-      -fprofile-generate.
++      PR target/93073
++      * config/rs6000/rs6000.c (rs6000_emit_cmove): If using fsel, punt for
++      compare_mode other than SFmode or DFmode.
+ 
+-2017-01-30  Martin Liska  <address@hidden>
++2020-01-21  Kito Cheng  <address@hidden>
+ 
+-      PR bootstrap/78985
+-      * config/aarch64/cortex-a57-fma-steering.c (func_fma_steering::analyze):
+-      Initialize variables with NULL value.
++      PR target/93304
++      * config/riscv/riscv-protos.h (riscv_hard_regno_rename_ok): New.
++      * config/riscv/riscv.c (riscv_hard_regno_rename_ok): New.
++      * config/riscv/riscv.h (HARD_REGNO_RENAME_OK): Defined.
++
++2020-01-20  Wilco Dijkstra  <address@hidden>
++
++      * config/aarch64/aarch64.c (neoversen1_tunings): Set jump_align to 4.
++
++2020-01-20  Andrew Pinski  <address@hidden>
+ 
+-2017-01-30  Richard Earnshaw  <address@hidden>
++      PR middle-end/93242
++      * targhooks.c (default_print_patchable_function_entry): Use
++      output_asm_insn to emit the nop instruction.
+ 
+-      PR target/79260
+-      * config.gcc (arm*-*-*): Add arm/arm-flags.h and arm/arm-isa.h to
+-      tm_p_file.
+-      * arm/arm-protos.h: Don't directly include arm-flags.h and arm-isa.h.
++2020-01-20  Fangrui Song  <address@hidden>
+ 
+-2017-01-30  Richard Biener  <address@hidden>
++      PR middle-end/93194
++      * targhooks.c (default_print_patchable_function_entry): Align to
++      POINTER_SIZE.
+ 
+-      PR tree-optimization/79276
+-      * tree-vrp.c (process_assert_insertions): Properly adjust common
+-      when removing a duplicate.
++2020-01-20  H.J. Lu  <address@hidden>
+ 
+-2017-01-30  Richard Biener  <address@hidden>
++      PR target/93319
++      * config/i386/i386.c (legitimize_tls_address): Pass Pmode to
++      gen_tls_dynamic_gnu2_64.  Compute GNU2 TLS address in ptr_mode.
++      * config/i386/i386.md (tls_dynamic_gnu2_64): Renamed to ...
++      (@tls_dynamic_gnu2_64_<mode>): This.  Replace DI with P.
++      (*tls_dynamic_gnu2_lea_64): Renamed to ...
++      (*tls_dynamic_gnu2_lea_64_<mode>): This.  Replace DI with P.
++      Remove the {q} suffix from lea.
++      (*tls_dynamic_gnu2_call_64): Renamed to ...
++      (*tls_dynamic_gnu2_call_64_<mode>): This.  Replace DI with P.
++      (*tls_dynamic_gnu2_combine_64): Renamed to ...
++      (*tls_dynamic_gnu2_combine_64_<mode>): This.  Replace DI with P.
++      Pass Pmode to gen_tls_dynamic_gnu2_64.
+ 
+-      PR tree-optimization/79256
+-      * targhooks.c (default_builtin_vector_alignment_reachable): Honor
+-      BIGGEST_FIELD_ALIGNMENT and ADJUST_FIELD_ALIGN to fix up bogus
+-      alignment on TYPE.
+-      * tree.c (build_aligned_type): Set TYPE_USER_ALIGN.
++2020-01-20  Wilco Dijkstra  <address@hidden>
+ 
+-2017-01-30  Dominik Vogt  <address@hidden>
++      * config/aarch64/aarch64.h (SLOW_BYTE_ACCESS): Set to 1.
++
++2020-01-20  Richard Sandiford  <address@hidden>
++
++      * config/aarch64/aarch64-sve-builtins-base.cc
++      (svld1ro_impl::memory_vector_mode): Remove parameter name.
++
++2020-01-20  Richard Biener  <address@hidden>
++
++      PR debug/92763
++      * dwarf2out.c (prune_unused_types): Unconditionally mark
++      called function DIEs.
+ 
+-      PR target/79240
+-      * config/s390/s390.md ("*r<noxa>sbg_<mode>_srl_bitmask")
+-      ("*r<noxa>sbg_<mode>_sll_bitmask")
+-      ("*extzv_<mode>_srl<clobbercc_or_nocc>")
+-      ("*extzv_<mode>_sll<clobbercc_or_nocc>"):
+-      Use contiguous_bitmask_nowrap_operand.
++2020-01-20  Martin Liska  <address@hidden>
++
++      PR tree-optimization/93199
++      * tree-eh.c (struct leh_state): Add
++      new field outer_non_cleanup.
++      (cleanup_is_dead_in): Pass leh_state instead
++      of eh_region.  Add a checking that state->outer_non_cleanup
++      points to outer non-clean up region.
++      (lower_try_finally): Record outer_non_cleanup
++      for this_state.
++      (lower_catch): Likewise.
++      (lower_eh_filter): Likewise.
++      (lower_eh_must_not_throw): Likewise.
++      (lower_cleanup): Likewise.
++
++2020-01-20  Richard Biener  <address@hidden>
++
++      PR tree-optimization/93094
++      * tree-vectorizer.h (vect_loop_versioning): Adjust.
++      (vect_transform_loop): Likewise.
++      * tree-vectorizer.c (try_vectorize_loop_1): Pass down
++      loop_vectorized_call to vect_transform_loop.
++      * tree-vect-loop.c (vect_transform_loop): Pass down
++      loop_vectorized_call to vect_loop_versioning.
++      * tree-vect-loop-manip.c (vect_loop_versioning): Use
++      the earlier discovered loop_vectorized_call.
++
++2020-01-19  Eric S. Raymond <address@hidden>
++
++      * doc/contribute.texi: Update for SVN -> Git transition.
++      * doc/install.texi: Likewise.
++
++2020-01-18  Jan Hubicka  <address@hidden>
++
++      PR lto/93318
++      * cgraph.c (cgraph_edge::make_speculative): Increase number of
++      speculative targets.
++      (verify_speculative_call): New function
++      (cgraph_node::verify_node): Use it.
++      * ipa-profile.c (ipa_profile): Fix formating; do not set number of
++      speculations.
++
++2020-01-18  Jan Hubicka  <address@hidden>
++
++      PR lto/93318
++      * cgraph.c (cgraph_edge::resolve_speculation): Fix foramting.
++      (cgraph_edge::make_direct): Remove all indirect targets.
++      (cgraph_edge::redirect_call_stmt_to_callee): Use make_direct..
++      (cgraph_node::verify_node): Verify that only one call_stmt or
++      lto_stmt_uid is set.
++      * cgraphclones.c (cgraph_edge::clone): Set only one call_stmt or
++      lto_stmt_uid.
++      * lto-cgraph.c (lto_output_edge): Simplify streaming of stmt.
++      (lto_output_ref): Simplify streaming of stmt.
++      * lto-streamer-in.c (fixup_call_stmt_edges_1): Clear lto_stmt_uid.
++
++2020-01-18  Tamar Christina  <address@hidden>
++
++      * config/aarch64/aarch64-sve-builtins-base.cc (memory_vector_mode):
++      Mark parameter unused.
++
++2020-01-18  Hans-Peter Nilsson  <address@hidden>
++
++      * config.gcc <obsolete targets>: Add crisv32-*-* and cris-*-linux*
++
++2019-01-18  Gerald Pfeifer  <address@hidden>
++
++      * varpool.c (ctor_useable_for_folding_p): Fix grammar.
++
++2020-01-18  Iain Sandoe  <address@hidden>
++
++      * Makefile.in: Add coroutine-passes.o.
++      * builtin-types.def (BT_CONST_SIZE): New.
++      (BT_FN_BOOL_PTR): New.
++      (BT_FN_PTR_PTR_CONST_SIZE_BOOL): New.
++      * builtins.def (DEF_COROUTINE_BUILTIN): New.
++      * coroutine-builtins.def: New file.
++      * coroutine-passes.cc: New file.
++      * function.h (struct GTY function): Add a bit to indicate that the
++      function is a coroutine component.
++      * internal-fn.c (expand_CO_FRAME): New.
++      (expand_CO_YIELD): New.
++      (expand_CO_SUSPN): New.
++      (expand_CO_ACTOR): New.
++      * internal-fn.def (CO_ACTOR): New.
++      (CO_YIELD): New.
++      (CO_SUSPN): New.
++      (CO_FRAME): New.
++      * passes.def: Add pass_coroutine_lower_builtins,
++      pass_coroutine_early_expand_ifns.
++      * tree-pass.h (make_pass_coroutine_lower_builtins): New.
++      (make_pass_coroutine_early_expand_ifns): New.
++      * doc/invoke.texi: Document the fcoroutines command line
++      switch.
++
++2020-01-18  Jakub Jelinek  <address@hidden>
++
++      * config/arm/vfp.md (*clear_vfp_multiple): Remove unused variable.
++
++      PR target/93312
++      * config/arm/arm.c (clear_operation_p): Don't use REGNO until
++      after checking the argument is a REG.  Don't use REGNO (reg)
++      again to set last_regno, reuse regno variable instead.
++
++2020-01-17  David Malcolm  <address@hidden>
++
++      * doc/analyzer.texi (Limitations): Add note about NaN.
++
++2020-01-17  Mihail-Calin Ionescu  <address@hidden>
++          Sudakshina Das  <address@hidden>
++
++      * config/arm/arm.md (ashldi3): Generate thumb2_lsll for both reg
++      and valid immediate.
++      (ashrdi3): Generate thumb2_asrl for both reg and valid immediate.
++      (lshrdi3): Generate thumb2_lsrl for valid immediates.
++      * config/arm/constraints.md (Pg): New.
++      * config/arm/predicates.md (long_shift_imm): New.
++      (arm_reg_or_long_shift_imm): Likewise.
++      * config/arm/thumb2.md (thumb2_asrl): New immediate alternative.
++      (thumb2_lsll): Likewise.
++      (thumb2_lsrl): New.
++
++2020-01-17  Mihail-Calin Ionescu  <address@hidden>
++          Sudakshina Das  <address@hidden>
+ 
+-2017-01-29  Bill Schmidt  <address@hidden>
++      * config/arm/arm.md (ashldi3): Generate thumb2_lsll for TARGET_HAVE_MVE.
++      (ashrdi3): Generate thumb2_asrl for TARGET_HAVE_MVE.
++      * config/arm/arm.c (arm_hard_regno_mode_ok): Allocate even odd
++      register pairs for doubleword quantities for ARMv8.1M-Mainline.
++      * config/arm/thumb2.md (thumb2_asrl): New.
++      (thumb2_lsll): Likewise.
++
++2020-01-17  Jakub Jelinek  <address@hidden>
++
++      * config/arm/arm.c (cmse_nonsecure_call_inline_register_clear): Remove
++      unused variable.
++
++2020-01-17  Alexander Monakov  <address@hidden>
++
++      * gdbinit.in (help-gcc-hooks): New command.
++      (pp, pr, prl, pt, pct, pgg, pgq, pgs, pge, pmz, ptc, pdn, ptn, pdd, prc,
++      pi, pbm, pel, trt): Take $arg0 instead of $ if supplied. Update
++      documentation.
++
++2020-01-17  Matthew Malcomson  <address@hidden>
++
++      * config/aarch64/aarch64-sve.md (@aarch64_sve_ld1ro<mode>): Use the
++      correct target macro.
+ 
+-      PR target/79268
+-      * config/rs6000/altivec.h (vec_xl): Revise #define.
+-      (vec_xst): Likewise.
++2020-01-17  Matthew Malcomson  <address@hidden>
+ 
+-2017-01-27  Uros Bizjak  <address@hidden>
++      * config/aarch64/aarch64-protos.h
++      (aarch64_sve_ld1ro_operand_p): New.
++      * config/aarch64/aarch64-sve-builtins-base.cc
++      (class load_replicate): New.
++      (class svld1ro_impl): New.
++      (class svld1rq_impl): Change to inherit from load_replicate.
++      (svld1ro): New sve intrinsic function base.
++      * config/aarch64/aarch64-sve-builtins-base.def (svld1ro):
++      New DEF_SVE_FUNCTION.
++      * config/aarch64/aarch64-sve-builtins-base.h
++      (svld1ro): New decl.
++      * config/aarch64/aarch64-sve-builtins.cc
++      (function_expander::add_mem_operand): Modify assert to allow
++      OImode.
++      * config/aarch64/aarch64-sve.md (@aarch64_sve_ld1ro<mode>): New
++      pattern.
++      * config/aarch64/aarch64.c
++      (aarch64_sve_ld1rq_operand_p): Implement in terms of ...
++      (aarch64_sve_ld1rq_ld1ro_operand_p): This.
++      (aarch64_sve_ld1ro_operand_p): New.
++      * config/aarch64/aarch64.md (UNSPEC_LD1RO): New unspec.
++      * config/aarch64/constraints.md (UOb,UOh,UOw,UOd): New.
++      * config/aarch64/predicates.md
++      (aarch64_sve_ld1ro_operand_{b,h,w,d}): New.
++
++2020-01-17  Matthew Malcomson  <address@hidden>
++
++      * config/aarch64/aarch64-c.c (_ARM_FEATURE_MATMUL_FLOAT64):
++      Introduce this ACLE specified predefined macro.
++      * config/aarch64/aarch64-option-extensions.def (f64mm): New.
++      (fp): Disabling this disables f64mm.
++      (simd): Disabling this disables f64mm.
++      (fp16): Disabling this disables f64mm.
++      (sve): Disabling this disables f64mm.
++      * config/aarch64/aarch64.h (AARCH64_FL_F64MM): New.
++      (AARCH64_ISA_F64MM): New.
++      (TARGET_F64MM): New.
++      * doc/invoke.texi (f64mm): Document new option.
++
++2020-01-17  Wilco Dijkstra  <address@hidden>
++
++      * config/aarch64/aarch64.c (generic_tunings): Add branch fusion.
++      (neoversen1_tunings): Likewise.
++
++2020-01-17  Wilco Dijkstra  <address@hidden>
++
++      PR target/92692
++      * config/aarch64/aarch64.c (aarch64_split_compare_and_swap)
++      Add assert to ensure prolog has been emitted.
++      (aarch64_split_atomic_op): Likewise.
++      * config/aarch64/atomics.md (aarch64_compare_and_swap<mode>)
++      Use epilogue_completed rather than reload_completed.
++      (aarch64_atomic_exchange<mode>): Likewise.
++      (aarch64_atomic_<atomic_optab><mode>): Likewise.
++      (atomic_nand<mode>): Likewise.
++      (aarch64_atomic_fetch_<atomic_optab><mode>): Likewise.
++      (atomic_fetch_nand<mode>): Likewise.
++      (aarch64_atomic_<atomic_optab>_fetch<mode>): Likewise.
++      (atomic_nand_fetch<mode>): Likewise.
++
++2020-01-17  Richard Sandiford  <address@hidden>
++
++      PR target/93133
++      * config/aarch64/aarch64.h (REVERSIBLE_CC_MODE): Return false
++      for FP modes.
++      (REVERSE_CONDITION): Delete.
++      * config/aarch64/iterators.md (CC_ONLY): New mode iterator.
++      (CCFP_CCFPE): Likewise.
++      (e): New mode attribute.
++      * config/aarch64/aarch64.md (ccmp<GPI:mode>): Rename to...
++      (@ccmp<CC_ONLY:mode><GPI:mode>): ...this, using CC_ONLY instead of CC.
++      (fccmp<GPF:mode>, fccmpe<GPF:mode>): Merge into...
++      (@ccmp<CCFP_CCFPE:mode><GPF:mode>): ...this combined pattern.
++      (@ccmp<CC_ONLY:mode><GPI:mode>_rev): New pattern.
++      (@ccmp<CCFP_CCFPE:mode><GPF:mode>_rev): Likewise.
++      * config/aarch64/aarch64.c (aarch64_gen_compare_reg): Update
++      name of generator from gen_ccmpdi to gen_ccmpccdi.
++      (aarch64_gen_ccmp_next): Use code_for_ccmp.  If we want to reverse
++      the previous comparison but aren't able to, use the new ccmp_rev
++      patterns instead.
++
++2020-01-17  Richard Sandiford  <address@hidden>
++
++      * gimplify.c (gimplify_return_expr): Use poly_int_tree_p rather
++      than testing directly for INTEGER_CST.
++      (gimplify_target_expr, gimplify_omp_depend): Likewise.
++
++2020-01-17  Jakub Jelinek  <address@hidden>
++
++      PR tree-optimization/93292
++      * tree-vect-stmts.c (vectorizable_comparison): Punt also if
++      get_vectype_for_scalar_type returns NULL.
++
++2020-01-16  Jan Hubicka  <address@hidden>
++
++      * params.opt (-param=max-predicted-iterations): Increase range from 0.
++      * predict.c (estimate_loops): Add 1 to param_max_predicted_iterations.
++
++2020-01-16  Jan Hubicka  <address@hidden>
++
++      * ipa-fnsummary.c (estimate_calls_size_and_time): Fix formating of
++      dump.
++      * params.opt: (max-predicted-iterations): Set bounds.
++      * predict.c (real_almost_one, real_br_prob_base,
++      real_inv_br_prob_base, real_one_half, real_bb_freq_max): Remove.
++      (propagate_freq): Add max_cyclic_prob parameter; cap cyclic
++      probabilities; do not truncate to reg_br_prob_bases.
++      (estimate_loops_at_level): Pass max_cyclic_prob.
++      (estimate_loops): Compute max_cyclic_prob.
++      (estimate_bb_frequencies): Do not initialize real_*; update calculation
++      of back edge prob.
++      * profile-count.c (profile_probability::to_sreal): New.
++      * profile-count.h (class sreal): Move up in file.
++      (profile_probability::to_sreal): Declare.
++
++2020-01-16  Stam Markianos-Wright  <address@hidden>
++
++      * config/arm/arm.c
++      (arm_invalid_conversion): New function for target hook.
++      (arm_invalid_unary_op): New function for target hook.
++      (arm_invalid_binary_op): New function for target hook.
++
++2020-01-16  Stam Markianos-Wright  <address@hidden>
++
++      * config.gcc: Add arm_bf16.h.
++      * config/arm/arm-builtins.c (arm_mangle_builtin_type): Fix comment.
++      (arm_simd_builtin_std_type): Add BFmode.
++      (arm_init_simd_builtin_types): Define element types for vector types.
++      (arm_init_bf16_types): New function.
++      (arm_init_builtins): Add arm_init_bf16_types function call.
++      * config/arm/arm-modes.def: Add BFmode and V4BF, V8BF vector modes.
++      * config/arm/arm-simd-builtin-types.def: Add V4BF, V8BF.
++      * config/arm/arm.c (aapcs_vfp_sub_candidate):  Add BFmode.
++      (arm_hard_regno_mode_ok): Add BFmode and tidy up statements.
++      (arm_vector_mode_supported_p): Add V4BF, V8BF.
++      (arm_mangle_type):  Add __bf16.
++      * config/arm/arm.h: Add V4BF, V8BF to VALID_NEON_DREG_MODE, 
++      VALID_NEON_QREG_MODE respectively. Add export arm_bf16_type_node,
++      arm_bf16_ptr_type_node.
++      * config/arm/arm.md: Add BFmode to movhf expand, mov pattern and
++      define_split between ARM registers.
++      * config/arm/arm_bf16.h: New file.
++      * config/arm/arm_neon.h: Add arm_bf16.h and Bfloat vector types.
++      * config/arm/iterators.md: (ANY64_BF, VDXMOV, VHFBF, HFBF, fporbf): New.
++      (VQXMOV): Add V8BF.
++      * config/arm/neon.md: Add BF vector types to movhf NEON move patterns.
++      * config/arm/vfp.md: Add BFmode to movhf patterns.
++
++2020-01-16  Mihail Ionescu  <address@hidden>
++          Andre Vieira  <address@hidden>
++
++      * config/arm/arm-cpus.in (mve, mve_float): New features.
++      (dsp, mve, mve.fp): New options.
++      * config/arm/arm.h (TARGET_HAVE_MVE, TARGET_HAVE_MVE_FLOAT): Define.
++      * config/arm/t-rmprofile: Map v8.1-M multilibs to v8-M.
++      * doc/invoke.texi: Document the armv8.1-m mve and dps options.
++
++2020-01-16  Mihail-Calin Ionescu  <address@hidden>
++          Thomas Preud'homme  <address@hidden>
++
++      * config/arm/arm-cpus.in (ARMv8_1m_main): Redefine as an extension to
++      Armv8-M Mainline.
++      * config/arm/arm.c (arm_options_perform_arch_sanity_checks): Remove
++      error for using -mcmse when targeting Armv8.1-M Mainline.
++
++2020-01-16  Mihail-Calin Ionescu  <address@hidden>
++          Thomas Preud'homme  <address@hidden>
++
++      * config/arm/arm.md (nonsecure_call_internal): Do not force memory
++      address in r4 when targeting Armv8.1-M Mainline.
++      (nonsecure_call_value_internal): Likewise.
++      * config/arm/thumb2.md (nonsecure_call_reg_thumb2): Make memory address
++      a register match_operand again.  Emit BLXNS when targeting
++      Armv8.1-M Mainline.
++      (nonsecure_call_value_reg_thumb2): Likewise.
++
++2020-01-16  Mihail-Calin Ionescu  <address@hidden>
++          Thomas Preud'homme  <address@hidden>
++
++      * config/arm/arm.c (arm_add_cfa_adjust_cfa_note): Declare early.
++      (cmse_nonsecure_call_inline_register_clear): Define new lazy_fpclear
++      variable as true when floating-point ABI is not hard.  Replace
++      check against TARGET_HARD_FLOAT_ABI by checks against lazy_fpclear.
++      Generate VLSTM and VLLDM instruction respectively before and
++      after a function call to cmse_nonsecure_call function.
++      * config/arm/unspecs.md (VUNSPEC_VLSTM): Define unspec.
++      (VUNSPEC_VLLDM): Likewise.
++      * config/arm/vfp.md (lazy_store_multiple_insn): New define_insn.
++      (lazy_load_multiple_insn): Likewise.
++
++2020-01-16  Mihail-Calin Ionescu  <address@hidden>
++          Thomas Preud'homme  <address@hidden>
++
++      * config/arm/arm.c (vfp_emit_fstmd): Declare early.
++      (arm_emit_vfp_multi_reg_pop): Likewise.
++      (cmse_nonsecure_call_inline_register_clear): Abstract number of VFP
++      registers to clear in max_fp_regno.  Emit VPUSH and VPOP to save and
++      restore callee-saved VFP registers.
++
++2020-01-16  Mihail-Calin Ionescu  <address@hidden>
++          Thomas Preud'homme  <address@hidden>
++
++      * config/arm/arm.c (arm_emit_multi_reg_pop): Declare early.
++      (cmse_nonsecure_call_clear_caller_saved): Rename into ...
++      (cmse_nonsecure_call_inline_register_clear): This.  Save and clear
++      callee-saved GPRs as well as clear ip register before doing a nonsecure
++      call then restore callee-saved GPRs after it when targeting
++      Armv8.1-M Mainline.
++      (arm_reorg): Adapt to function rename.
++
++2020-01-16  Mihail-Calin Ionescu  <address@hidden>
++          Thomas Preud'homme  <address@hidden>
++
++      * config/arm/arm-protos.h (clear_operation_p): Adapt prototype.
++      * config/arm/arm.c (clear_operation_p): Extend to be able to check a
++      clear_vfp_multiple pattern based on a new vfp parameter.
++      (cmse_clear_registers): Generate VSCCLRM to clear VFP registers when
++      targeting Armv8.1-M Mainline.
++      (cmse_nonsecure_entry_clear_before_return): Clear VFP registers
++      unconditionally when targeting Armv8.1-M Mainline architecture.  Check
++      whether VFP registers are available before looking call_used_regs for a
++      VFP register.
++      * config/arm/predicates.md (clear_multiple_operation): Adapt to change
++      of prototype of clear_operation_p.
++      (clear_vfp_multiple_operation): New predicate.
++      * config/arm/unspecs.md (VUNSPEC_VSCCLRM_VPR): New volatile unspec.
++      * config/arm/vfp.md (clear_vfp_multiple): New define_insn.
++
++2020-01-16  Mihail-Calin Ionescu  <address@hidden>
++          Thomas Preud'homme  <address@hidden>
++
++      * config/arm/arm-protos.h (clear_operation_p): Declare.
++      * config/arm/arm.c (clear_operation_p): New function.
++      (cmse_clear_registers): Generate clear_multiple instruction pattern if
++      targeting Armv8.1-M Mainline or successor.
++      (output_return_instruction): Only output APSR register clearing if
++      Armv8.1-M Mainline instructions not available.
++      (thumb_exit): Likewise.
++      * config/arm/predicates.md (clear_multiple_operation): New predicate.
++      * config/arm/thumb2.md (clear_apsr): New define_insn.
++      (clear_multiple): Likewise.
++      * config/arm/unspecs.md (VUNSPEC_CLRM_APSR): New volatile unspec.
++
++2020-01-16  Mihail-Calin Ionescu  <address@hidden>
++          Thomas Preud'homme  <address@hidden>
++
++      * config/arm/arm.c (fp_sysreg_names): Declare and define.
++      (use_return_insn): Also return false for Armv8.1-M Mainline.
++      (output_return_instruction): Skip FPSCR clearing if Armv8.1-M
++      Mainline instructions are available.
++      (arm_compute_frame_layout): Allocate space in frame for FPCXTNS
++      when targeting Armv8.1-M Mainline Security Extensions.
++      (arm_expand_prologue): Save FPCXTNS if this is an Armv8.1-M
++      Mainline entry function.
++      (cmse_nonsecure_entry_clear_before_return): Clear IP and r4 if
++      targeting Armv8.1-M Mainline or successor.
++      (arm_expand_epilogue): Fix indentation of caller-saved register
++      clearing.  Restore FPCXTNS if this is an Armv8.1-M Mainline
++      entry function.
++      * config/arm/arm.h (TARGET_HAVE_FP_CMSE): New macro.
++      (FP_SYSREGS): Likewise.
++      (enum vfp_sysregs_encoding): Define enum.
++      (fp_sysreg_names): Declare.
++      * config/arm/unspecs.md (VUNSPEC_VSTR_VLDR): New volatile unspec.
++      * config/arm/vfp.md (push_fpsysreg_insn): New define_insn.
++      (pop_fpsysreg_insn): Likewise.
++
++2020-01-16  Mihail-Calin Ionescu  <address@hidden>
++          Thomas Preud'homme  <address@hidden>
++
++      * config/arm/arm-cpus.in (armv8_1m_main): New feature.
++      (ARMv4, ARMv4t, ARMv5t, ARMv5te, ARMv5tej, ARMv6, ARMv6j, ARMv6k,
++      ARMv6z, ARMv6kz, ARMv6zk, ARMv6t2, ARMv6m, ARMv7, ARMv7a, ARMv7ve,
++      ARMv7r, ARMv7m, ARMv7em, ARMv8a, ARMv8_1a, ARMv8_2a, ARMv8_3a,
++      ARMv8_4a, ARMv8_5a, ARMv8m_base, ARMv8m_main, ARMv8r): Reindent.
++      (ARMv8_1m_main): New feature group.
++      (armv8.1-m.main): New architecture.
++      * config/arm/arm-tables.opt: Regenerate.
++      * config/arm/arm.c (arm_arch8_1m_main): Define and default initialize.
++      (arm_option_reconfigure_globals): Initialize arm_arch8_1m_main.
++      (arm_options_perform_arch_sanity_checks): Error out when targeting
++      Armv8.1-M Mainline Security Extensions.
++      * config/arm/arm.h (arm_arch8_1m_main): Declare.
++
++2020-01-16  Stam Markianos-Wright  <address@hidden>
++
++      * config/aarch64/aarch64-simd-builtins.def (aarch64_bfdot,
++      aarch64_bfdot_lane, aarch64_bfdot_laneq): New.
++      * config/aarch64/aarch64-simd.md (aarch64_bfdot, aarch64_bfdot_lane,
++      aarch64_bfdot_laneq): New.
++      * config/aarch64/arm_bf16.h (vbfdot_f32, vbfdotq_f32,
++      vbfdot_lane_f32, vbfdotq_lane_f32, vbfdot_laneq_f32,
++      vbfdotq_laneq_f32): New.
++      * config/aarch64/iterators.md (UNSPEC_BFDOT, Vbfdottype,
++      VBFMLA_W, VBF): New.
++      (isquadop): Add V4BF, V8BF.
++
++2020-01-16  Stam Markianos-Wright  <address@hidden>
++
++      * config/aarch64/aarch64-builtins.c: (enum aarch64_type_qualifiers):
++      New qualifier_lane_quadtup_index, TYPES_TERNOP_SSUS,
++      TYPES_QUADOPSSUS_LANE_QUADTUP, TYPES_QUADOPSSSU_LANE_QUADTUP.
++      (aarch64_simd_expand_args): Add case SIMD_ARG_LANE_QUADTUP_INDEX.
++      (aarch64_simd_expand_builtin): Add qualifier_lane_quadtup_index.
++      * config/aarch64/aarch64-simd-builtins.def (usdot, usdot_lane,
++      usdot_laneq, sudot_lane,sudot_laneq): New.
++      * config/aarch64/aarch64-simd.md (aarch64_usdot): New.
++      (aarch64_<sur>dot_lane): New.
++      * config/aarch64/arm_neon.h (vusdot_s32): New.
++      (vusdotq_s32): New.
++      (vusdot_lane_s32): New.
++      (vsudot_lane_s32): New.
++      * config/aarch64/iterators.md (DOTPROD_I8MM): New iterator.
++      (UNSPEC_USDOT, UNSPEC_SUDOT): New unspecs.
+ 
+-      * config/i386/i386.c (print_reg): Use REGNO instead of true_regnum.
++2020-01-16  Martin Liska  <address@hidden>
+ 
+-2017-01-27  Bernd Schmidt  <address@hidden>
++      * value-prof.c (dump_histogram_value): Fix
++      obvious spacing issue.
+ 
+-      PR rtl-optimization/79194
+-      * cprop.c (one_cprop_pass): Move deletion of code after unconditional
+-      traps before call to bypass_conditional_jumps.
++2020-01-16  Andrew Pinski  <address@hidden>
++
++      * tree-ssa-sccvn.c(vn_reference_lookup_3): Check lhs for
++      !storage_order_barrier_p.
++
++2020-01-16  Andrew Pinski  <address@hidden>
++
++      * sched-int.h (_dep): Add unused bit-field field for the padding.
++      * sched-deps.c (init_dep_1): Init unused field.
++
++2020-01-16  Andrew Pinski  <address@hidden>
+ 
+-2017-01-27  Vladimir Makarov  <address@hidden>
++      * optabs.h (create_expand_operand): Initialize target field also.
+ 
+-      PR tree-optimization/71374
+-      * lra-constraints.c (check_conflict_input_operands): New.
+-      (match_reload): Use it.
++2020-01-16  Andre Vieira  <address@hidden>
+ 
+-2017-01-27  Vladimir Makarov  <address@hidden>
++      PR tree-optimization/92429
++      * tree-ssa-loop-niter.h (simplify_replace_tree): Add parameter.
++      * tree-ssa-loop-niter.c (simplify_replace_tree): Add parameter to
++      control folding.
++      * tree-vect-loop.c (update_epilogue_vinfo): Do not fold when replacing
++      tree.
+ 
+-      PR target/79131
+-      * lra-assigns.c (find_hard_regno_for_1): Take endianess for into
+-      account to calculate conflict_set.
++2020-01-16  Richard Sandiford  <address@hidden>
+ 
+-2017-01-27  Bin Cheng  <address@hidden>
++      * config/aarch64/aarch64.c (aarch64_split_sve_subreg_move): Apply
++      aarch64_sve_int_mode to each mode.
+ 
+-      PR rtl-optimization/78559
+-      * combine.c (try_combine): Discard REG_EQUAL and REG_EQUIV for
+-      other_insn in combine.
++2020-01-15  David Malcolm  <address@hidden>
+ 
+-2017-01-27  Pekka Jääskeläinen  <address@hidden>
++      * doc/analyzer.texi (Overview): Add note about
++      -fdump-ipa-analyzer.
+ 
+-      * builtin-types.def: Use unsigned_char_type_node for BT_UINT8.  Use
+-      uint16_type_node for BT_UINT16.
++2020-01-15  Wilco Dijkstra  <address@hidden>
+ 
+-2017-01-27  David Malcolm  <address@hidden>
++      PR tree-optimization/93231
++      * tree-ssa-forwprop.c (optimize_count_trailing_zeroes): Check
++      input_type is unsigned.  Use tree_to_shwi for shift constant.
++      Check CST_STRING element size is CHAR_TYPE_SIZE bits.
++      (simplify_count_trailing_zeroes): Add test to handle known non-zero
++      inputs more efficiently.
+ 
+-      * doc/sourcebuild.texi (Testsuites): Add "GIMPLE Tests" and
+-      "RTL Tests" to menu.
+-      (GIMPLE Tests): New node.
+-      (RTL Tests): New node.
++2020-01-15  Uroš Bizjak  <address@hidden>
+ 
+-2017-01-27  Richard Biener  <address@hidden>
++      * config/i386/i386.md (*movsf_internal): Do not require
++      SSE2 ISA for alternatives 14 and 15.
+ 
+-      PR tree-optimization/79245
+-      * tree-loop-distribution.c (distribute_loop): Apply cost
+-      modeling also to detected patterns.
++2020-01-15  Richard Biener  <address@hidden>
+ 
+-2017-01-27  Richard Biener  <address@hidden>
++      PR middle-end/93273
++      * tree-eh.c (sink_clobbers): If we already visited the destination
++      block do not defer insertion.
++      (pass_lower_eh_dispatch::execute): Maintain BB_VISITED for
++      the purpose of defered insertion.
+ 
+-      PR tree-optimization/71433
+-      * tree-vrp.c (register_new_assert_for): Revert earlier changes.
+-      (compare_assert_loc): New function.
+-      (process_assert_insertions): Sort and optimize assert locations
+-      to remove duplicates and push down identical assertions on
+-      edges to their destination block.
++2020-01-15  Jakub Jelinek  <address@hidden>
+ 
+-2017-01-27  Richard Biener  <address@hidden>
++      * BASE-VER: Bump to 10.0.1.
+ 
+-      PR tree-optimization/79244
+-      * tree-vrp.c (remove_range_assertions): Forcefully propagate
+-      out SSA names even if abnormal.
++2020-01-15  Richard Sandiford  <address@hidden>
+ 
+-2017-01-27  Jakub Jelinek  <address@hidden>
++      PR tree-optimization/93247
++      * tree-vect-loop.c (update_epilogue_loop_vinfo): Check the access
++      type of the stmt that we're going to vectorize.
+ 
+-      * realmpfr.h: Poison MPFR_RND{N,Z,U,D}.
+-      * gimple-ssa-sprintf.c (format_floating_max): Use GMP_RNDN
+-      instead of MPFR_RNDN.
++2020-01-15  Richard Sandiford  <address@hidden>
+ 
+-2017-01-27  Richard Earnshaw  <address@hidden>
++      * tree-vect-slp.c (vectorize_slp_instance_root_stmt): Use a
++      VIEW_CONVERT_EXPR if the vectorized constructor has a diffeent
++      type from the lhs.
+ 
+-      PR target/79239
+-      * arm.c (arm_option_override): Don't call build_target_option_node
+-      until after doing all option overrides.
+-      (arm_valid_target_attribute_tree): Likewise.
++2020-01-15  Martin Liska  <address@hidden>
+ 
+-2017-01-27  Martin Liska  <address@hidden>
++      * ipa-profile.c (ipa_profile_read_edge_summary): Do not allow
++      2 calls of streamer_read_hwi in a function call.
+ 
+-      * doc/invoke.texi (-fprofile-arcs): Document profiling support
+-      for {cd}tors and C++ {cd}tors.
++2020-01-15  Richard Biener  <address@hidden>
+ 
+-2017-01-27  Dominik Vogt  <address@hidden>
++      * alias.c (record_alias_subset): Avoid redundant work when
++      subset is already recorded.
+ 
+-      * config/s390/s390.md ("*setmem_long_and")
+-      ("*setmem_long_and_31z"): Use zero_extend instead of and.
++2020-01-14  David Malcolm  <address@hidden>
+ 
+-2017-01-26  Martin Sebor  <address@hidden>
++      * doc/invoke.texi (-fdiagnostics-show-cwe): Add note that some of
++      the analyzer options provide CWE identifiers.
+ 
+-      * gimple-ssa-sprintf.c (format_floating): Simplify the computation
+-      of precision.
++2020-01-14  David Malcolm  <address@hidden>
+ 
+-2017-01-26  Martin Sebor  <address@hidden>
++      * tree-diagnostic-path.cc (path_summary::event_range::print):
++      When testing for UNKNOWN_LOCATION, look through ad-hoc wrappers
++      using get_pure_location.
+ 
+-      * gimple-ssa-sprintf.c (format_floating): Test HAVE_XFmode and
+-      HAVE_DFmode before using XFmode or DFmode.
+-      (parse_directive): Avoid using the z length modifier to avoid
+-      the ISO C++98 does not support the ‘z’ gnu_printf length modifier.
++2020-01-15  Jakub Jelinek  <address@hidden>
+ 
+-      PR middle-end/78703
+-      * gimple-ssa-sprintf.c (adjust_for_width_or_precision): Change
+-      to accept adjustment as an array.
+-      (get_int_range): New function.
+-      (struct directive): Make width and prec arrays.
+-      (directive::set_width, directive::set_precision): Call get_int_range.
+-      (format_integer, format_floating): Handle width and precision ranges.
+-      (format_string, parse_directive): Same.
+-
+-2017-01-26  Jakub Jelinek  <address@hidden>
+-
+-      PR debug/79129
+-      * dwarf2out.c (generate_skeleton_bottom_up): For children with
+-      comdat_type_p set, just clone them, but keep the children in the
+-      original DIE.
++      PR tree-optimization/93262
++      * tree-ssa-dse.c (maybe_trim_memstar_call): For *_chk builtins,
++      perform head trimming only if the last argument is constant,
++      either all ones, or larger or equal to head trim, in the latter
++      case decrease the last argument by head_trim.
+ 
+-      PR debug/78835
+-      * dwarf2out.c (prune_unused_types): Mark all functions with DIEs
+-      which have direct callers with -fvar-tracking-assignments enabled
+-      in the current TU.
+-      (resolve_addr): Avoid adding skeleton DIEs for DW_AT_call_origin
+-      inside of type units.
+-
+-2017-01-26  Martin Sebor  <address@hidden>
++      PR tree-optimization/93249
++      * tree-ssa-dse.c: Include builtins.h and gimple-fold.h.
++      (maybe_trim_memstar_call): Move head_trim and tail_trim vars to
++      function body scope, reindent.  For BUILTIN_IN_STRNCPY*, don't
++      perform head trim unless we can prove there are no '\0' chars
++      from the source among the first head_trim chars.
+ 
+-      PR middle-end/78703
+-      * gimple-ssa-sprintf.c (struct result_range): Add likely and
+-      unlikely counters.
+-      (struct format_result): Replace number_chars, number_chars_min,
+-      and number_chars_max with a single member of struct result_range.
+-      Remove bounded.
+-      (format_result::operator+=): Adjust.
+-      (struct fmtresult): Remove bounded.  Handle likely and unlikely
+-      counters.
+-      (fmtresult::adjust_for_width_or_precision): New function.
+-      (fmtresult:type_max_digits): New function.
+-      (bytes_remaining): Handle likely and unlikely counters.
+-      (min_bytes_remaining): Remove.
+-      (format_percent): Simplify.
+-      (format_integer, format_floating): Set likely and unlikely counters.
+-      (get_string_length, format_character, format_string): Same.
+-      (format_plain, should_warn_p): New function.
+-      (maybe_warn): Call should_warn_p.  Update diagnostic messages
+-      and handle those for all directives, including plain strings.
+-      (format_directive): Handle likely and unlikely counters.
+-      Remove unnecessary quoting from diagnostics.  Add an informational
+-      note.
+-      (add_bytes): Remove.
+-      (pass_sprintf_length::compute_format_length): Simplify.
+-      (try_substitute_return_value): Handle likely and unlikely counters.
+-
+-2017-01-26  Carl Love  <address@hidden>
+-
+-      * config/rs6000/rs6000-c (altivec_overloaded_builtins): Remove
+-      bogus entries for the P8V_BUILTIN_VEC_VGBBD built-ins
++2020-01-14  David Malcolm  <address@hidden>
+ 
+-2017-01-26  Vladimir Makarov  <address@hidden>
++      * Makefile.in (ANALYZER_OBJS): Add analyzer/function-set.o.
+ 
+-      PR target/79131
+-      * lra-assigns.c (setup_live_pseudos_and_spill_after_risky): Take
+-      endianess for subregs into account.
+-      * lra-constraints.c (lra_constraints): Do risky transformations
+-      always on the first iteration.
+-      * lra-lives.c (check_pseudos_live_through_calls): Add arg
+-      last_call_used_reg_set.
+-      (process_bb_lives): Define and use last_call_used_reg_set.
+-      * lra.c (lra): Always continue after lra_constraints on the first
+-      iteration.
+-
+-2017-01-26  Kirill Yukhin  <address@hidden>
+-
+-      * gcc.target/i386/avx512bw-kshiftlq-2.c: Use unsigned long long
+-      constant.
+-      * gcc.target/i386/avx512bw-kshiftrq-2.c: Ditto.
+-
+-2017-01-26  Jakub Jelinek  <address@hidden>
+-
+-      * config/i386/avx512fintrin.h (_ktest_mask16_u8,
+-      _ktestz_mask16_u8, _ktestc_mask16_u8, _kadd_mask16): Move to ...
+-      * config/i386/avx512dqintrin.h (_ktest_mask16_u8,
+-      _ktestz_mask16_u8, _ktestc_mask16_u8, _kadd_mask16): ... here.
+-      * config/i386/i386-builtin.def (__builtin_ia32_ktestchi,
+-      __builtin_ia32_ktestzhi, __builtin_ia32_kaddhi): Use
+-      OPTION_MASK_ISA_AVX512DQ instead of OPTION_MASK_ISA_AVX512F.
+-      * config/i386/sse.md (SWI1248_AVX512BWDQ2): New mode iterator.
+-      (kadd<mode>, ktest<mode>): Use it instead of SWI1248_AVX512BWDQ.
+-
+-2017-01-26  Marek Polacek  <address@hidden>
+-
+-      PR c/79199
+-      * fold-const.c (operand_equal_p) [COND_EXPR]: Use OP_SAME_WITH_NULL
+-      for the third operand.
+-
+-2017-01-26  Jakub Jelinek  <address@hidden>
+-
+-      PR middle-end/79236
+-      * omp-low.c (struct omp_context): Add simt_stmt field.
+-      (scan_omp_for): Return omp_context *.
+-      (scan_omp_simd): Set simt_stmt on the non-_simt_ SIMD
+-      context to the _simt_ SIMD stmt.
+-      (lower_omp_for): For combined SIMD with sibling _simt_
+-      SIMD, make sure to use the same decls in _looptemp_
+-      clauses as in the sibling.
+-
+-2017-01-26  David Sherwood  <address@hidden>
+-
+-      PR middle-end/79212
+-      * gimplify.c (omp_notice_variable): Add GOVD_SEEN flag to variables in
+-      all contexts.
+-
+-2017-01-26  Jakub Jelinek  <address@hidden>
+-
+-      PR target/70465
+-      * reg-stack.c (emit_swap_insn): Instead of fld a; fld b; fxchg %st(1);
+-      emit fld b; fld a; if possible.
+-
+-      * brig-builtins.def: Update copyright years.
+-      * config/arm/arm_acle_builtins.def: Update copyright years.
+-
+-2017-01-25  Michael Meissner  <address@hidden>
+-
+-      PR target/79179
+-      * config/rs6000/vsx.md (vsx_extract_<mode>_store): Use wY
+-      constraint instead of o for the stxsd instruction.
+-
+-2017-01-25  Carl Love  <address@hidden>
+-
+-      * config/rs6000/rs6000-c (altivec_overloaded_builtins): Fix order
+-      of entries for ALTIVEC_BUILTIN_VEC_PACKS and P8V_BUILTIN_VEC_VGBBD.
+-
+-2017-01-25  Jonathan Wakely  <address@hidden>
+-
+-      * doc/invoke.texi (C++ Dialect Options): Fix typo.
+-
+-2017-01-25  Richard Biener  <address@hidden>
++2020-01-15  Jakub Jelinek  <address@hidden>
+ 
+-      PR tree-optimization/69264
+-      * target.def (vector_alignment_reachable): Improve documentation.
+-      * doc/tm.texi: Regenerate.
+-      * targhooks.c (default_builtin_vector_alignment_reachable): Simplify
+-      and add a comment.
+-      * tree-vect-data-refs.c (vect_supportable_dr_alignment): Revert
+-      earlier changes with respect to TYPE_USER_ALIGN.
+-      (vector_alignment_reachable_p): Likewise.  Improve dumping.
+-
+-2016-01-25  Kyrylo Tkachov  <address@hidden>
+-
+-      PR target/79145
+-      * config/arm/arm.md (xordi3): Force constant operand into a register
+-      for TARGET_IWMMXT.
+-
+-2016-01-25  Kyrylo Tkachov  <address@hidden>
+-
+-      * doc/invoke.texi (-fstore-merging): Correct default optimization
+-      levels at which it is enabled.
+-      (-O): Move -fstore-merging from list to...
+-      (-O2): ... Here.
+-
+-2017-01-25  Richard Biener  <address@hidden>
+-
+-      PR debug/78363
+-      * omp-expand.c: Include debug.h.
+-      (expand_omp_taskreg): Make sure to generate early debug before
+-      outlining anything from a function.
+-      (expand_omp_target): Likewise.
+-      (grid_expand_target_grid_body): Likewise.
+-
+-2017-01-25  Maxim Ostapenko  <address@hidden>
+-
+-      PR lto/79061
+-      * asan.c (get_translation_unit_decl): New function.
+-      (asan_add_global): Extract modules file name from globals
+-      TRANSLATION_UNIT_DECL name.
+-
+-2017-01-24  Eric Botcazou  <address@hidden>
+-
+-      PR target/77439
+-      * config/arm/arm.c (arm_function_ok_for_sibcall): Add back restriction
+-      for long calls with APCS frame and VFP.
+-
+-2017-01-24  David Malcolm  <address@hidden>
+-
+-      * cfg.c (original_copy_tables_initialized_p): New function.
+-      * cfg.h (original_copy_tables_initialized_p): New decl.
+-      * cfgrtl.c (relink_block_chain): Guard the call to
+-      free_original_copy_tables with a call to
+-      original_copy_tables_initialized_p.
+-      * cgraph.h (symtab_node::native_rtl_p): New decl.
+-      * cgraphunit.c (symtab_node::native_rtl_p): New function.
+-      (symtab_node::needed_p): Don't assert for early assembly output
+-      for __RTL functions.
+-      (cgraph_node::finalize_function): Set "force_output" for __RTL
+-      functions.
+-      (cgraph_node::analyze): Bail out early for __RTL functions.
+-      (analyze_functions): Update assertion to support __RTL functions.
+-      (cgraph_node::expand): Bail out early for __RTL functions.
+-      * final.c (rest_of_clean_state): Don't call delete_tree_ssa for
+-      __RTL functions.
+-      * function.h (struct function): Update comment for field
+-      "pass_startwith".
+-      * gimple-expr.c: Include "tree-pass.h".
+-      (gimple_has_body_p): Return false for __RTL functions.
+-      * Makefile.in (OBJS): Add run-rtl-passes.o.
+-      * pass_manager.h (gcc::pass_manager::get_rest_of_compilation): New
+-      accessor.
+-      (gcc::pass_manager::get_clean_slate): New accessor.
+-      * passes.c: Include "insn-addr.h".
+-      (should_skip_pass_p): Add logging.  Update logic for running
+-      "expand" to be compatible with both __GIMPLE and __RTL.  Guard
+-      property-provider override so it is only done for gimple passes.
+-      Don't skip dfinit.
+-      (skip_pass): New function.
+-      (execute_one_pass): Call skip_pass when skipping passes.
+-      * read-md.c (md_reader::read_char): Support filtering
+-      the input to a subset of line numbers.
+-      (md_reader::md_reader): Initialize fields
+-      m_first_line and m_last_line.
+-      (md_reader::read_file_fragment): New function.
+-      * read-md.h (md_reader::read_file_fragment): New decl.
+-      (md_reader::m_first_line): New field.
+-      (md_reader::m_last_line): New field.
+-      * read-rtl-function.c (function_reader::create_function): Only
+-      create cfun if it doesn't already exist.  Set PROP_rtl on cfun's
+-      curr_properties.  Set DECL_INITIAL to a dummy block.
+-      (read_rtl_function_body_from_file_range): New function.
+-      * read-rtl-function.h (read_rtl_function_body_from_file_range):
+-      New decl.
+-      * run-rtl-passes.c: New file.
+-      * run-rtl-passes.h: New file.
+-
+-2017-01-24 Jeff Law  <address@hidden>
+-
+-      * config/microblaze/microblaze.h (ASM_FORMAT_PRIVATE_NAME): Increase
+-      buffer size.
+-
+-2017-01-24  Bin Cheng  <address@hidden>
+-
+-      PR tree-optimization/79159
+-      * tree-ssa-loop-niter.c (get_cst_init_from_scev): New function.
+-      (record_nonwrapping_iv): Improve boundary using above function if no
+-      value range information.
+-
+-2017-01-24  Pekka Jääskeläinen  <address@hidden>
+-          Martin Jambor  <address@hidden>
+-
+-      * brig-builtins.def: New file.
+-      * builtins.def (DEF_HSAIL_BUILTIN): New macro.
+-      (DEF_HSAIL_ATOMIC_BUILTIN): Likewise.
+-      (DEF_HSAIL_SAT_BUILTIN): Likewise.
+-      (DEF_HSAIL_INTR_BUILTIN): Likewise.
+-      (DEF_HSAIL_CVT_ZEROI_SAT_BUILTIN): Likewise.
+-      * builtin-types.def (BT_INT8): New.
+-      (BT_INT16): Likewise.
+-      (BT_UINT8): Likewise.
+-      (BT_UINT16): Likewise.
+-      (BT_FN_ULONG): Likewise.
+-      (BT_FN_UINT_INT): Likewise.
+-      (BT_FN_UINT_ULONG): Likewise.
+-      (BT_FN_UINT_LONG): Likewise.
+-      (BT_FN_UINT_PTR): Likewise.
+-      (BT_FN_ULONG_PTR): Likewise.
+-      (BT_FN_INT8_FLOAT): Likewise.
+-      (BT_FN_INT16_FLOAT): Likewise.
+-      (BT_FN_UINT32_FLOAT): Likewise.
+-      (BT_FN_UINT16_FLOAT): Likewise.
+-      (BT_FN_UINT8_FLOAT): Likewise.
+-      (BT_FN_UINT64_FLOAT): Likewise.
+-      (BT_FN_UINT16_UINT32): Likewise.
+-      (BT_FN_UINT32_UINT16): Likewise.
+-      (BT_FN_UINT16_UINT16_UINT16): Likewise.
+-      (BT_FN_INT_PTR_INT): Likewise.
+-      (BT_FN_UINT_PTR_UINT): Likewise.
+-      (BT_FN_LONG_PTR_LONG): Likewise.
+-      (BT_FN_ULONG_PTR_ULONG): Likewise.
+-      (BT_FN_VOID_UINT64_UINT64): Likewise.
+-      (BT_FN_UINT8_UINT8_UINT8): Likewise.
+-      (BT_FN_INT8_INT8_INT8): Likewise.
+-      (BT_FN_INT16_INT16_INT16): Likewise.
+-      (BT_FN_INT_INT_INT): Likewise.
+-      (BT_FN_UINT_FLOAT_UINT): Likewise.
+-      (BT_FN_FLOAT_UINT_UINT): Likewise.
+-      (BT_FN_ULONG_UINT_UINT): Likewise.
+-      (BT_FN_ULONG_UINT_PTR): Likewise.
+-      (BT_FN_ULONG_ULONG_ULONG): Likewise.
+-      (BT_FN_UINT_UINT_UINT): Likewise.
+-      (BT_FN_VOID_UINT_PTR): Likewise.
+-      (BT_FN_UINT_UINT_PTR: Likewise.
+-      (BT_FN_UINT32_UINT64_PTR): Likewise.
+-      (BT_FN_INT_INT_UINT_UINT): Likewise.
+-      (BT_FN_UINT_UINT_UINT_UINT): Likewise.
+-      (BT_FN_UINT_UINT_UINT_PTR): Likewise.
+-      (BT_FN_UINT_ULONG_ULONG_UINT): Likewise.
+-      (BT_FN_ULONG_ULONG_ULONG_ULONG): Likewise.
+-      (BT_FN_LONG_LONG_UINT_UINT): Likewise.
+-      (BT_FN_ULONG_ULONG_UINT_UINT): Likewise.
+-      (BT_FN_VOID_UINT32_UINT64_PTR): Likewise.
+-      (BT_FN_VOID_UINT32_UINT32_PTR): Likewise.
+-      (BT_FN_UINT_UINT_UINT_UINT_UINT): Likewise.
+-      (BT_FN_UINT_FLOAT_FLOAT_FLOAT_FLOAT): Likewise.
+-      (BT_FN_ULONG_ULONG_ULONG_UINT_UINT): Likewise.
+-      * doc/frontends.texi: List BRIG FE.
+-      * doc/install.texi (Testing): Add BRIG tesring requirements.
+-      * doc/invoke.texi (Overall Options): Mention BRIG.
+-      * doc/standards.texi (Standards): Doucment BRIG HSA version.
+-
+-2017-01-24  Richard Biener  <address@hidden>
+-
+-      PR translation/79208
+-      * ipa-devirt.c (odr_types_equivalent_p): Fix typo in diagnostic.
+-
+-2017-01-24  Martin Jambor  <address@hidden>
+-
+-      PR bootstrap/79198
+-      * ipa-prop.c (ipa_free_all_node_params): Call summary destructor.
+-      * ipa-prop.c (ipa_node_params_t::insert): Initialize fields known_csts
+-      and known_contexts.
+-
+-2017-01-24  Aldy Hernandez  <address@hidden>
+-
+-      PR middle-end/79123
+-      * gimple-ssa-warn-alloca.c (alloca_call_type): Make sure
+-      casts from signed to unsigned really don't have a range.
+-
+-2017-01-24  Markus Trippelsdorf  <address@hidden>
+-
+-      * gimple-ssa-sprintf.c (format_floating): Change MPFR_RNDx to
+-      GMP_RNDx for compatiblity.
+-
+-2017-01-24  Martin Liska  <address@hidden>
+-
+-      PR bootstrap/79132
+-      * tree-ssa-reassoc.c (rewrite_expr_tree_parallel): Insert assert
+-      that would prevent us to call alloca with -1 as argument.
+-
+-2017-01-24  Jakub Jelinek  <address@hidden>
+-
+-      * dwarf2out.c (output_compilation_unit_header, output_file_names):
+-      Avoid -Wformat-security warning.
+-
+-2017-01-23  Andrew Pinski  <address@hidden>
+-
+-      * config/aarch64/aarch64.c (thunderx2t99_addrcost_table): Improve
+-      cost table.
+-
+-2017-01-23  Martin Sebor  <address@hidden>
+-
+-      PR middle-end/78703
+-      * gimple-ssa-sprintf.c (warn_level): New global.
+-      (format_integer): Use it here and throughout the rest of the file.
+-      Use the same switch to compute sign as base.
+-      (maybe_warn): New function.
+-      (format_directive): Factor out warnings into maybe_warn.
+-      Add debugging output.  Use warn_level.
+-      (add_bytes): Use warn_level.
+-      (pass_sprintf_length::compute_format_length): Add debugging output.
+-      (try_substitute_return_value): Same.
+-      (pass_sprintf_length::handle_gimple_call): Set and use warn_level.
+-
+-      PR middle-end/78703
+-      * gimple-ssa-sprintf.c (struct format_result): Remove constant member.
+-      (struct fmtresult, format_integer, format_floating): Adjust.
+-      (fmtresult::fmtresult): Set max correctly in two argument ctor.
+-      (get_string_length, format_string,format_directive): Same.
+-      (pass_sprintf_length::compute_format_length): Same.
+-      (try_substitute_return_value): Simplify slightly.
+-
+-      PR middle-end/78703
+-      * gimple-ssa-sprintf.c (pass_sprintf_length::gate): Adjust formatting.
+-      (fmtresult::operator+=): Outlined.
+-      (struct fmtresult): Add ctors.
+-      (struct conversion_spec): Rename...
+-      (struct directive): ...to this.  Add and remove data members.
+-      (directive::set_width, directive::set_precision): New functions.
+-      (format_percent): Use fmtresult ctor.
+-      (get_width_and_precision): Remove.
+-      (format_integer): Make naming changes.  Avoid computing width and
+-      precision.
+-      (format_floating): Same.  Adjust indentation.
+-      (format_character, format_none): New functions.
+-      (format_string): Moved character handling to format_character.
+-      (format_directive): Remove arguments, change return type.
+-      (parse_directive): New function.
+-      (pass_sprintf_length::compute_format_length): Move directive
+-      parsing to parse_directive.
+-
+-2017-01-23  Jakub Jelinek  <address@hidden>
+-
+-      * tree.h (assign_assembler_name_if_neeeded): Rename to ...
+-      (assign_assembler_name_if_needed): ... this.
+-      * tree.c (assign_assembler_name_if_neeeded): Rename to ...
+-      (assign_assembler_name_if_needed): ... this.
+-      (free_lang_data_in_cgraph): Adjust callers.
+-      * cgraphunit.c (cgraph_node::analyze): Likewise.
+-      * omp-expand.c (expand_omp_taskreg, expand_omp_target):
++      PR target/93009
++      * config/i386/sse.md
++      (*<sd_mask_codefor>fma_fmadd_<mode><sd_maskz_name>_bcst_1,
++      *<sd_mask_codefor>fma_fmsub_<mode><sd_maskz_name>_bcst_1,
++      *<sd_mask_codefor>fma_fnmadd_<mode><sd_maskz_name>_bcst_1,
++      *<sd_mask_codefor>fma_fnmsub_<mode><sd_maskz_name>_bcst_1): Use
++      just a single alternative instead of two, make operands 1 and 2
++      commutative.
++
++2020-01-14  Jan Hubicka  <address@hidden>
++
++      PR lto/91576
++      * ipa-devirt.c (odr_types_equivalent_p): Compare TREE_ADDRESSABLE and
++      TYPE_MODE.
++
++2020-01-14  David Malcolm  <address@hidden>
++
++      * Makefile.in (lang_opt_files): Add analyzer.opt.
++      (ANALYZER_OBJS): New.
++      (OBJS): Add digraph.o, graphviz.o, ordered-hash-map-tests.o,
++      tristate.o and ANALYZER_OBJS.
++      (TEXI_GCCINT_FILES): Add analyzer.texi.
++      * common.opt (-fanalyzer): New driver option.
++      * config.in: Regenerate.
++      * configure: Regenerate.
++      * configure.ac (--disable-analyzer, ENABLE_ANALYZER): New option.
++      (gccdepdir): Also create depdir for "analyzer" subdir.
++      * digraph.cc: New file.
++      * digraph.h: New file.
++      * doc/analyzer.texi: New file.
++      * doc/gccint.texi ("Static Analyzer") New menu item.
++      (analyzer.texi): Include it.
++      * doc/invoke.texi ("Static Analyzer Options"): New list and new section.
++      ("Warning Options"): Add static analysis warnings to the list.
++      (-Wno-analyzer-double-fclose): New option.
++      (-Wno-analyzer-double-free): New option.
++      (-Wno-analyzer-exposure-through-output-file): New option.
++      (-Wno-analyzer-file-leak): New option.
++      (-Wno-analyzer-free-of-non-heap): New option.
++      (-Wno-analyzer-malloc-leak): New option.
++      (-Wno-analyzer-possible-null-argument): New option.
++      (-Wno-analyzer-possible-null-dereference): New option.
++      (-Wno-analyzer-null-argument): New option.
++      (-Wno-analyzer-null-dereference): New option.
++      (-Wno-analyzer-stale-setjmp-buffer): New option.
++      (-Wno-analyzer-tainted-array-index): New option.
++      (-Wno-analyzer-use-after-free): New option.
++      (-Wno-analyzer-use-of-pointer-in-stale-stack-frame): New option.
++      (-Wno-analyzer-use-of-uninitialized-value): New option.
++      (-Wanalyzer-too-complex): New option.
++      (-fanalyzer-call-summaries): New warning.
++      (-fanalyzer-checker=): New warning.
++      (-fanalyzer-fine-grained): New warning.
++      (-fno-analyzer-state-merge): New warning.
++      (-fno-analyzer-state-purge): New warning.
++      (-fanalyzer-transitivity): New warning.
++      (-fanalyzer-verbose-edges): New warning.
++      (-fanalyzer-verbose-state-changes): New warning.
++      (-fanalyzer-verbosity=): New warning.
++      (-fdump-analyzer): New warning.
++      (-fdump-analyzer-callgraph): New warning.
++      (-fdump-analyzer-exploded-graph): New warning.
++      (-fdump-analyzer-exploded-nodes): New warning.
++      (-fdump-analyzer-exploded-nodes-2): New warning.
++      (-fdump-analyzer-exploded-nodes-3): New warning.
++      (-fdump-analyzer-supergraph): New warning.
++      * doc/sourcebuild.texi (dg-require-dot): New.
++      (dg-check-dot): New.
++      * gdbinit.in (break-on-saved-diagnostic): New command.
++      * graphviz.cc: New file.
++      * graphviz.h: New file.
++      * ordered-hash-map-tests.cc: New file.
++      * ordered-hash-map.h: New file.
++      * passes.def (pass_analyzer): Add before
++      pass_ipa_whole_program_visibility.
++      * selftest-run-tests.c (selftest::run_tests): Call
++      selftest::ordered_hash_map_tests_cc_tests.
++      * selftest.h (selftest::ordered_hash_map_tests_cc_tests): New
++      decl.
++      * shortest-paths.h: New file.
++      * timevar.def (TV_ANALYZER): New timevar.
++      (TV_ANALYZER_SUPERGRAPH): Likewise.
++      (TV_ANALYZER_STATE_PURGE): Likewise.
++      (TV_ANALYZER_PLAN): Likewise.
++      (TV_ANALYZER_SCC): Likewise.
++      (TV_ANALYZER_WORKLIST): Likewise.
++      (TV_ANALYZER_DUMP): Likewise.
++      (TV_ANALYZER_DIAGNOSTICS): Likewise.
++      (TV_ANALYZER_SHORTEST_PATHS): Likewise.
++      * tree-pass.h (make_pass_analyzer): New decl.
++      * tristate.cc: New file.
++      * tristate.h: New file.
++
++2020-01-14  Uroš Bizjak  <address@hidden>
++
++      PR target/93254
++      * config/i386/i386.md (*movsf_internal): Require SSE2 ISA for
++      alternatives 9 and 10.
++
++2020-01-14  David Malcolm  <address@hidden>
++
++      * attribs.c (excl_hash_traits::empty_zero_p): New static constant.
++      * gcov.c (function_start_pair_hash::empty_zero_p): Likewise.
++      * graphite.c (struct sese_scev_hash::empty_zero_p): Likewise.
++      * hash-map-tests.c (selftest::test_nonzero_empty_key): New selftest.
++      (selftest::hash_map_tests_c_tests): Call it.
++      * hash-map-traits.h (simple_hashmap_traits::empty_zero_p):
++      New static constant, using the value of = H::empty_zero_p.
++      (unbounded_hashmap_traits::empty_zero_p): Likewise, using the value
++      from default_hash_traits <Value>.
++      * hash-map.h (hash_map::empty_zero_p): Likewise, using the value
++      from Traits.
++      * hash-set-tests.c (value_hash_traits::empty_zero_p): Likewise.
++      * hash-table.h (hash_table::alloc_entries): Guard the loop of
++      calls to mark_empty with !Descriptor::empty_zero_p.
++      (hash_table::empty_slow): Conditionalize the memset call with a
++      check that Descriptor::empty_zero_p; otherwise, loop through the
++      entries calling mark_empty on them.
++      * hash-traits.h (int_hash::empty_zero_p): New static constant.
++      (pointer_hash::empty_zero_p): Likewise.
++      (pair_hash::empty_zero_p): Likewise.
++      * ipa-devirt.c (default_hash_traits <type_pair>::empty_zero_p):
++      Likewise.
++      * ipa-prop.c (ipa_bit_ggc_hash_traits::empty_zero_p): Likewise.
++      (ipa_vr_ggc_hash_traits::empty_zero_p): Likewise.
++      * profile.c (location_triplet_hash::empty_zero_p): Likewise.
++      * sanopt.c (sanopt_tree_triplet_hash::empty_zero_p): Likewise.
++      (sanopt_tree_couple_hash::empty_zero_p): Likewise.
++      * tree-hasher.h (int_tree_hasher::empty_zero_p): Likewise.
++      * tree-ssa-sccvn.c (vn_ssa_aux_hasher::empty_zero_p): Likewise.
++      * tree-vect-slp.c (bst_traits::empty_zero_p): Likewise.
++      * tree-vectorizer.h
++      (default_hash_traits<scalar_cond_masked_key>::empty_zero_p):
+       Likewise.
+ 
+-2017-01-23  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79088
+-      PR tree-optimization/79188
+-      * tree-ssa-threadupdate.c (mark_threaded_blocks): Move code
+-      resetting loop bounds after last path deletion.  Reset loop
+-      bounds of the target loop, make code match the comments.
+-      * tree-ssa-threadbackwards.c (pass_early_thread_jumps::execute):
+-      Make sure loops need no fixups.
+-
+-2017-01-23  Kelvin Nilsen  <address@hidden>
+-
+-      * config/rs6000/rs6000-builtin.def (VSIEDPF): Add scalar insert
+-      exponent support with double type for first argument.
+-      * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Changed
+-      type returned by __builtin_vec_extract_sig,
+-      __builtin_vec_extract_sig_sp, and __builtin_vec_extract_sig_dp
+-      functions from "vector int" to "vector unsigned int" or from
+-      "vector long long int" to "vector unsigned long long int".
+-      Changed type returned by __builtin_vec_extract_exp,
+-      __builtin_vec_extract_exp_sp, and __builtin_vec_extract_exp_dp
+-      functions from "vector int" to "vector unsigned int" or from
+-      "vector long long int" to "vector unsigned long long int".
+-      Changed return type of __builtin_vec_test_data_class,
+-      __builtin_vec_test_data_class_sp, and
+-      __builtin_vec_test_data_class_dp from "vector int" to
+-      "vector bool int" or from "vector long long int" to "vector bool
+-      long long int" and changed second argument type from "unsigned
+-      int" to "int".  Added new overloaded function forms "vector float
+-      __builtin_vec_insert_exp (vector float, vector unsigned int)" and
+-      "vector float __builtin_vec_insert_exp_sp (vector float, vector
+-      unsigned int)" and "vector double __builtin_vec_insert_exp (vector
+-      double, vector unsigned long long int)" and "vector double
+-      __builtin_vec_insert_exp_dp (vector double, vector unsigned long
+-      long int)".  Changed return type of
+-      __builtin_scalar_test_data_class and
+-      __builtin_scalar_test_data_class_sp and
+-      __builtin_scalar_test_data_class_dp from "unsigned int" to "bool
+-      int" and changed second argument from "unsigned int" to "int".
+-      Changed type returned by __builtin_scalar_test_neg,
+-      __builtin_scalar_test_neg_sp, and __builtin_scalar_test_neg_dp
+-      from "int" to "bool int".  Added new overloaded function form
+-      "double __builtin_scalar_insert_exp (double, unsigned long long int)".
+-      * config/rs6000/vsx.md (xsiexpdpf): New insn for scalar insert
+-      exponent double-precision with floating point first argument.
+-      * doc/extend.texi (PowerPC AltiVec Built-in Functions): Adjust
+-      documentation of scalar_test_data_class, scalar_test_neg,
+-      scalar_extract_sig, scalar_extract_exp, scalar_insert_exp,
+-      vector_extract_exp, vec_extract_sig, vec_insert_exp, and
+-      vec_test_data_class built-in functions to reflect refinements in
+-      their type signatures.
+-
+-2017-01-23  Andreas Tobler  <address@hidden>
+-
+-      * config/aarch64/aarch64.c (aarch64_elf_asm_constructor): Increase
+-      size of buf.
+-      (aarch64_elf_asm_destructor): Likewise.
+-
+-2017-01-23  Bernd Schmidt  <address@hidden>
+-
+-      PR rtl-optimization/78634
+-      * config/i386/i386.c (ix86_max_noce_ifcvt_seq_cost): New function.
+-      (TARGET_MAX_NOCE_IFCVT_SEQ_COST): Define.
+-      * ifcvt.c (noce_try_cmove): Add missing cost check.
+-
+-      PR rtl-optimization/71724
+-      * combine.c (if_then_else_cond): Look for situations where it is
+-      beneficial to undo the work of one of the recursive calls.
+-
+-2017-01-23  Bin Cheng  <address@hidden>
+-
+-      PR tree-optimization/70754
+-      * tree-predcom.c (stmt_combining_refs): New parameter INSERT_BEFORE.
+-      (reassociate_to_the_same_stmt): New parameter INSERT_BEFORE.  Insert
+-      combined stmt before it if not NULL.
+-      (combine_chains): Process refs reversely and compute dominance point
+-      for root ref.
+-
+-2017-01-23  Martin Liska  <address@hidden>
+-
+-      PR tree-optimization/79196
+-      * tree-ssa-strlen.c (fold_strstr_to_memcmp): Rename to ...
+-      (fold_strstr_to_strncmp): ... this.  Fold the pattern to strncmp
+-      instead of memcmp.
+-      (strlen_optimize_stmt): Call the renamed function.
+-
+-2017-01-23  Michael Matz  <address@hidden>
+-
+-      PR tree-optimization/78384
+-      * tree-ssa-loop-split.c (patch_loop_exit): Use correct edge.
+-
+-2017-01-23  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79186
+-      * tree-vrp.c (register_new_assert_for): Make sure we've seen
+-      both incoming edges before moving an assert.
+-
+-2017-01-23  Martin Jambor  <address@hidden>
+-
+-      * ipa-prop.c (load_from_param_1): Removed.
+-      (load_from_unmodified_param): Bits from load_from_param_1 put back
+-      here.
+-      (load_from_param): Removed.
+-      (compute_complex_assign_jump_func): Removed stmt2 and just replaced it
+-      with stmt.  Reverted back to use of load_from_unmodified_param.
+-
+-2017-01-23  Martin Jambor  <address@hidden>
+-
+-      PR ipa/79108
+-      * ipa-prop.h (ipa_param_descriptor): Anotate with with GTY(()).
+-      (ipa_node_params): Annotate with GTY((for_user)).  Make descriptors
+-      field a pointer to garbage collected vector, mark lattices and
+-      ipcp_orig_node with GTY((skip)).
+-      (ipa_get_param_count): Adjust to descriptors being a pointer.
+-      (ipa_get_param): Likewise.
+-      (ipa_get_type): Likewise.
+-      (ipa_get_param_move_cost): Likewise.
+-      (ipa_set_param_used): Likewise.
+-      (ipa_get_controlled_uses): Likewise.
+-      (ipa_set_controlled_uses): Likewise.
+-      (ipa_is_param_used): Likewise.
+-      (ipa_node_params_t): Move into garbage collector.  New methods insert
+-      and remove.
+-      (ipa_node_params_sum): Annotate wth GTY(()).
+-      (ipa_check_create_node_params): Adjust to ipa_node_params_sum being
+-      garbage collected.
+-      (ipa_load_from_parm_agg): Adjust declaration.
+-      * ipa-icf.c (param_used_p): Adjust to descriptors being a pointer.
+-      * ipa-profile.c (ipa_profile): Likewise.
+-      * ipa-prop.c (ipa_get_param_decl_index_1): Likewise.
+-      (ipa_populate_param_decls): Make descriptors parameter garbage
+-      collected.
+-      (ipa_dump_param): Adjust to descriptors being a pointer.
+-      (ipa_alloc_node_params): Likewise.
+-      (ipa_initialize_node_params): Likewise.
+-      (load_from_param_1): Make descriptors parameter garbage collected.
+-      (load_from_unmodified_param): Likewise.
+-      (load_from_param): Likewise.
+-      (ipa_load_from_parm_agg): Likewise.
+-      (ipa_node_params::~ipa_node_params): Removed.
+-      (ipa_free_all_node_params): Remove call to delete operator.
+-      (ipa_node_params_t::insert): New.
+-      (ipa_node_params_t::remove): Likewise.
+-      (ipa_node_params_t::duplicate): Adjust to descriptors being a pointer,
+-      copy known_csts and known_contexts vectors.
+-      (ipa_read_node_info): Adjust to descriptors being a pointer.
+-      (ipcp_modif_dom_walker): Make m_descriptors field garbage
+-      collected.
+-      (ipcp_transform_function): Make descriptors variable garbage
+-      collected.
+-
+-2017-01-23  Andrew Senkevich  <address@hidden>
+-
+-      * config/i386/avx512bwintrin.h: Add k-mask test, kortest intrinsics.
+-      * config/i386/avx512dqintrin.h: Ditto.
+-      * config/i386/avx512fintrin.h: Ditto.
+-      * gcc/config/i386/i386.c: Handle new builtins.
+-      * config/i386/i386-builtin.def: Add new builtins.
+-      * config/i386/sse.md (ktest<mode>, kortest<mode>): New.
+-      (UNSPEC_KORTEST, UNSPEC_KTEST): New.
+-
+-2017-01-23  Jakub Jelinek  <address@hidden>
+-          Martin Liska  <address@hidden>
+-
+-      * asan.h: Define ASAN_USE_AFTER_SCOPE_ATTRIBUTE.
+-      * asan.c (asan_expand_poison_ifn): Support stores and use
+-      appropriate ASAN report function.
+-      * internal-fn.c (expand_ASAN_POISON_USE): New function.
+-      * internal-fn.def (ASAN_POISON_USE): Declare.
+-      * tree-into-ssa.c (maybe_add_asan_poison_write): New function.
+-      (maybe_register_def): Create ASAN_POISON_USE when sanitizing.
+-      * tree-ssa-dce.c (eliminate_unnecessary_stmts): Remove
+-      ASAN_POISON calls w/o LHS.
+-      * tree-ssa.c (execute_update_addresses_taken): Create clobber
+-      for ASAN_MARK (UNPOISON, &x, ...) in order to prevent usage of a LHS
+-      from ASAN_MARK (POISON, &x, ...) coming to a PHI node.
+-      * gimplify.c (asan_poison_variables): Add attribute
+-      use_after_scope_memory to variables that really needs to live
+-      in memory.
+-      * tree-ssa.c (is_asan_mark_p): Do not rewrite into SSA when
+-      having the attribute.
+-
+-2017-01-23  Martin Liska  <address@hidden>
+-
+-      * asan.c (create_asan_shadow_var): New function.
+-      (asan_expand_poison_ifn): Likewise.
+-      * asan.h (asan_expand_poison_ifn): New declaration.
+-      * internal-fn.c (expand_ASAN_POISON): Likewise.
+-      * internal-fn.def (ASAN_POISON): New builtin.
+-      * sanopt.c (pass_sanopt::execute): Expand
+-      asan_expand_poison_ifn.
+-      * tree-inline.c (copy_decl_for_dup_finish): Make function
+-      external.
+-      * tree-inline.h (copy_decl_for_dup_finish): Likewise.
+-      * tree-ssa.c (is_asan_mark_p): New function.
+-      (execute_update_addresses_taken): Rewrite local variables
+-      (identified just by use-after-scope as addressable) into SSA.
+-
+-2017-01-22  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/install.texi (Specific): opensource.apple.com uses https
+-      now. Remove trailing slash.
+-
+-2017-01-22  Gerald Pfeifer  <address@hidden>
+-
+-      * README.Portability: Remove note on an Irix compatibility issue.
+-
+-2017-01-22  Dimitry Andric <address@hidden>
+-
+-      * gcov.c (INCLUDE_ALGORITHM): Define.
+-      (INCLUDE_VECTOR): Define.
+-      No longer include <vector> and <algorithm> directly.
+-
+-2017-01-21  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/extend.texi (Thread-Local): Change www.akkadia.org reference
+-      to https.
+-      * doc/invoke.texi (Code Gen Options): Ditto.
+-
+-2017-01-21  Jan Hubicka  <address@hidden>
+-
+-      PR lto/78407
+-      * cfg.c (update_bb_profile_for_threading): Fix updating of probablity.
+-
+-2017-01-21  Bernd Schmidt  <address@hidden>
+-
+-      rtl-optimization/79125
+-      * cprop.c (local_cprop_pass): Handle cases where we make an
+-      unconditional trap.
+-
+-2017-01-20  Segher Boessenkool  <address@hidden>
+-
+-      PR target/61729
+-      PR target/77850
+-      * config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Adjust address to
+-      read from, for big endian.
+-
+-2017-01-20  Jiong Wang  <address@hidden>
+-
+-      * config/aarch64/aarch64-builtins.c (aarch64_init_builtins): Register
+-      register pauth builtins for LP64 only.
+-
+-2017-01-20  Marek Polacek  <address@hidden>
+-
+-      PR c/79152
+-      * gimplify.c (should_warn_for_implicit_fallthrough): Handle consecutive
+-      non-case labels.
+-
+-2017-01-20  Alexander Monakov  <address@hidden>
+-
+-      * omp-expand.c (expand_omp_simd): Clear PROP_gimple_lomp_dev regardless
+-      of safelen status.
+-      * omp-offload.c (pass_omp_device_lower::gate): Use PROP_gimple_lomp_dev.
+-      * passes.c (dump_properties): Handle PROP_gimple_lomp_dev.
+-      * tree-inline.c (expand_call_inline): Propagate PROP_gimple_lomp_dev.
+-
+-2017-01-20  Kyrylo Tkachov  <address@hidden>
+-
+-      PR target/71270
+-      * config/arm/arm.c (neon_valid_immediate): Reject vector constants
+-      in big-endian mode when they are not a single duplicated value.
+-
+-2017-01-20  Richard Biener  <address@hidden>
+-
+-      * BASE-VER: Bump to 7.0.1.
+-
+-2017-01-20  Alexander Monakov  <address@hidden>
+-
+-      * omp-low.c (omplow_simd_context): New struct.  Use it...
+-      (lower_rec_simd_input_clauses): ...here and...
+-      (lower_rec_input_clauses): ...here to hold common data.  Adjust all
+-      references to idx, lane, max_vf, is_simt.
+-
+-2017-01-20  Graham Markall  <address@hidden>
+-
+-      * config/arc/arc.h (LINK_SPEC): Use arclinux_nps emulation when
+-      mcpu=nps400.
+-
+-2017-01-20  Martin Jambor  <address@hidden>
+-
+-      * hsa.h: Renaed to hsa-common.h.  Adjusted a comment.
+-      * hsa.c: Renaed to hsa-common.c.  Change include of gt-hsa.h to
+-      gt-hsa-common.h.
+-      * Makefile.in (OBJS): Rename hsa.o to hsa-common.o.
+-      (GTFILES): Rename hsa.c to hsa-common.c.
+-      * hsa-brig.c: Change include of hsa.h to hsa-common.h.
+-      * hsa-dump.c: Likewise.
+-      * hsa-gen.c: Likewise.
+-      * hsa-regalloc.c: Likewise.
+-      * ipa-hsa.c: Likewise.
+-      * omp-expand.c: Likewise.
+-      * omp-low.c: Likewise.
+-      * toplev.c: Likewise.
+-
+-2017-01-20  Marek Polacek  <address@hidden>
+-
+-      PR c/64279
+-      * doc/invoke.texi: Document -Wduplicated-branches.
+-      * fold-const.c (operand_equal_p): Handle MODIFY_EXPR, INIT_EXPR,
+-      COMPOUND_EXPR, PREDECREMENT_EXPR, PREINCREMENT_EXPR,
+-      POSTDECREMENT_EXPR, POSTINCREMENT_EXPR, CLEANUP_POINT_EXPR, EXPR_STMT,
+-      STATEMENT_LIST, and RETURN_EXPR.  For non-pure non-const functions
+-      return 0 only when not OEP_LEXICOGRAPHIC.
+-      (fold_build_cleanup_point_expr): Use the expression
+-      location when building CLEANUP_POINT_EXPR.
+-      * tree-core.h (enum operand_equal_flag): Add OEP_LEXICOGRAPHIC.
+-      * tree.c (add_expr): Handle error_mark_node.
+-
+-2017-01-20  Martin Liska  <address@hidden>
+-
+-      PR lto/69188
+-      * tree-profile.c (init_ic_make_global_vars): Do not call
+-      finalize_decl.
+-      (gimple_init_gcov_profiler): Likewise.
+-
+-2017-01-20  Martin Liska  <address@hidden>
+-
+-      PR ipa/71190
+-      * cgraph.h (maybe_create_reference): Remove argument and
+-      update comment.
+-      * cgraphclones.c (cgraph_node::create_virtual_clone): Remove one
+-      argument.
+-      * ipa-cp.c (create_specialized_node): Likewise.
+-      * symtab.c (symtab_node::maybe_create_reference): Handle
+-      VAR_DECLs and ADDR_EXPRs and select ipa_ref_use type.
+-
+-2017-01-20  Martin Liska  <address@hidden>
+-
+-      * read-rtl-function.c (function_reader::create_function): Use
+-      build_decl instread of build_decl_stat.
+-
+-2017-01-20  Andrew Senkevich  <address@hidden>
+-
+-      * config/i386/avx512bwintrin.h: Add k-mask registers shift intrinsics.
+-      * config/i386/avx512dqintrin.h: Ditto.
+-      * config/i386/avx512fintrin.h: Ditto.
+-      * config/i386/i386-builtin-types.def: Add new types.
+-      * gcc/config/i386/i386.c: Handle new types.
+-      * config/i386/i386-builtin.def (__builtin_ia32_kshiftliqi)
+-      (__builtin_ia32_kshiftlihi, __builtin_ia32_kshiftlisi)
+-      (__builtin_ia32_kshiftlidi, __builtin_ia32_kshiftriqi)
+-      (__builtin_ia32_kshiftrihi, __builtin_ia32_kshiftrisi)
+-      (__builtin_ia32_kshiftridi): New.
+-      * config/i386/sse.md (k<code><mode>): Rename *k<code><mode>.
+-
+-2017-01-19  Segher Boessenkool  <address@hidden>
+-
+-      PR target/78875
+-      PR target/79140
+-      * config/rs6000/rs6000.c (TARGET_STACK_PROTECT_GUARD): Unconditionally
+-      define to rs6000_init_stack_protect_guard.
+-      (rs6000_init_stack_protect_guard): New function.
+-
+-2017-01-19  Matthew Fortune  <address@hidden>
+-          Yunqiang Su  <address@hidden>
+-
+-      * config.gcc (supported_defaults): Add madd4.
+-      (with_madd4): Add validation.
+-      (all_defaults): Add madd4.
+-      * config/mips/mips.opt (mmadd4): New option.
+-      * gcc/config/mips/mips.h (OPTION_DEFAULT_SPECS): Add a default for
+-      mmadd4.
+-      (TARGET_CPU_CPP_BUILTINS): Add builtin_define for
+-      __mips_no_madd4.
+-      (ISA_HAS_UNFUSED_MADD4): Gate with mips_madd4.
+-      (ISA_HAS_FUSED_MADD4): Likewise.
+-      * gcc/doc/invoke.texi (-mmadd4): Document the new option.
+-      * gcc/doc/install.texi (--with-madd4): Document the new option.
+-
+-2017-01-19  Jiong Wang  <address@hidden>
+-
+-      * config/aarch64/aarch64-builtins.c (enum aarch64_builtins): New
+-      entries for AARCH64_PAUTH_BUILTIN_XPACLRI,
+-      AARCH64_PAUTH_BUILTIN_PACIA1716, AARCH64_PAUTH_BUILTIN_AUTIA1716.
+-      (aarch64_init_pauth_hint_builtins): New.
+-      (aarch64_init_builtins): Call aarch64_init_pauth_hint_builtins.
+-      (aarch64_expand_builtin): Expand new builtins.
+-
+-2017-01-19  Jiong Wang  <address@hidden>
+-
+-      * reg-notes.def (CFA_TOGGLE_RA_MANGLE): New reg-note.
+-      * combine-stack-adj.c (no_unhandled_cfa): Handle
+-      REG_CFA_TOGGLE_RA_MANGLE.
+-      * dwarf2cfi.c (dwarf2out_frame_debug): Handle REG_CFA_TOGGLE_RA_MANGLE.
+-      * config/aarch64/aarch64.c (aarch64_expand_prologue): Generates DWARF
+-      info for return address signing.
+-      (aarch64_expand_epilogue): Likewise.
+-
+-2017-01-19  Jiong Wang  <address@hidden>
+-
+-      * config/aarch64/aarch64-opts.h (aarch64_function_type): New enum.
+-      * config/aarch64/aarch64-protos.h
+-      (aarch64_return_address_signing_enabled): New declaration.
+-      * config/aarch64/aarch64.c (aarch64_return_address_signing_enabled):
+-      New function.
+-      (aarch64_expand_prologue): Sign return address before it's pushed onto
+-      stack.
+-      (aarch64_expand_epilogue): Authenticate return address fetched from
+-      stack.
+-      (aarch64_override_options): Sanity check for ILP32 and ISA level.
+-      (aarch64_attributes): New function attributes for "sign-return-address".
+-      * config/aarch64/aarch64.md (UNSPEC_AUTI1716, UNSPEC_AUTISP,
+-      UNSPEC_PACI1716, UNSPEC_PACISP, UNSPEC_XPACLRI): New unspecs.
+-      ("*do_return"): Generate combined instructions according to key index.
+-      ("<pauth_mnem_prefix>sp", "<pauth_mnem_prefix1716", "xpaclri"): New.
+-      * config/aarch64/iterators.md (PAUTH_LR_SP, PAUTH_17_16): New integer
+-      iterators.
+-      (pauth_mnem_prefix, pauth_hint_num_a): New integer attributes.
+-      * config/aarch64/aarch64.opt (msign-return-address=): New.
+-      * doc/extend.texi (AArch64 Function Attributes): Documents
+-      "sign-return-address=".
+-      * doc/invoke.texi (AArch64 Options): Documents "-msign-return-address=".
+-
+-2017-01-19  Matthew Fortune  <address@hidden>
+-
+-      * doc/invoke.texi: Add missing -mlxc1-sxc1 options to
+-      overall option summary.
+-
+-2017-01-19  Jiong Wang  <address@hidden>
+-
+-      * config/aarch64/aarch64-arches.def: New entry for "armv8.3-a".
+-      * config/aarch64/aarch64.h (AARCH64_FL_V8_3, AARCH64_FL_FOR_ARCH8_3,
+-      AARCH64_ISA_V8_3, TARGET_ARMV8_3): New.
+-      * doc/invoke.texi (AArch64 Options): Document "armv8.3-a".
+-
+-2017-01-19  Michael Meissner  <address@hidden>
++2020-01-14  Kewen Lin  <address@hidden>
++
++      * cfgloopanal.c (average_num_loop_insns): Free bbs when early return,
++      fix typo on return value.
++
++2020-01-14  Xiong Hu Luo  <address@hidden>
++
++      PR ipa/69678
++      * cgraph.c (symbol_table::create_edge): Init speculative_id and
++      target_prob.
++      (cgraph_edge::make_speculative): Add param for setting speculative_id
++      and target_prob.
++      (cgraph_edge::speculative_call_info): Update comments and find reference
++      by speculative_id for multiple indirect targets.
++      (cgraph_edge::resolve_speculation): Decrease the speculations
++      for indirect edge, drop it's speculative if not direct target
++      left. Update comments.
++      (cgraph_edge::redirect_call_stmt_to_callee): Likewise.
++      (cgraph_node::dump): Print num_speculative_call_targets.
++      (cgraph_node::verify_node): Don't report error if speculative
++      edge not include statement.
++      (cgraph_edge::num_speculative_call_targets_p): New function.
++      * cgraph.h (int common_target_id): Remove.
++      (int common_target_probability): Remove.
++      (num_speculative_call_targets): New variable.
++      (make_speculative): Add param for setting speculative_id.
++      (cgraph_edge::num_speculative_call_targets_p): New declare.
++      (target_prob): New variable.
++      (speculative_id): New variable.
++      * ipa-fnsummary.c (analyze_function_body): Create and duplicate
++        call summaries for multiple speculative call targets.
++      * cgraphclones.c (cgraph_node::create_clone): Clone speculative_id.
++      * ipa-profile.c (struct speculative_call_target): New struct.
++      (class speculative_call_summary): New class.
++      (class speculative_call_summaries): New class.
++      (call_sums): New variable.
++      (ipa_profile_generate_summary): Generate indirect multiple targets 
summaries.
++      (ipa_profile_write_edge_summary): New function.
++      (ipa_profile_write_summary): Stream out indirect multiple targets 
summaries.
++      (ipa_profile_dump_all_summaries): New function.
++      (ipa_profile_read_edge_summary): New function.
++      (ipa_profile_read_summary_section): New function.
++      (ipa_profile_read_summary): Stream in indirect multiple targets 
summaries.
++      (ipa_profile): Generate num_speculative_call_targets from
++      profile summaries.
++      * ipa-ref.h (speculative_id): New variable.
++      * ipa-utils.c (ipa_merge_profiles): Update with target_prob.
++      * lto-cgraph.c (lto_output_edge): Remove indirect common_target_id and
++      common_target_probability.   Stream out speculative_id and
++      num_speculative_call_targets.
++      (input_edge): Likewise.
++      * predict.c (dump_prediction): Remove edges count assert to be
++      precise.
++      * symtab.c (symtab_node::create_reference): Init speculative_id.
++      (symtab_node::clone_references): Clone speculative_id.
++      (symtab_node::clone_referring): Clone speculative_id.
++      (symtab_node::clone_reference): Clone speculative_id.
++      (symtab_node::clear_stmts_in_references): Clear speculative_id.
++      * tree-inline.c (copy_bb): Duplicate all the speculative edges
++      if indirect call contains multiple speculative targets.
++      * value-prof.h  (check_ic_target): Remove.
++      * value-prof.c  (gimple_value_profile_transformations):
++      Use void function gimple_ic_transform.
++      * value-prof.c  (gimple_ic_transform): Handle topn case.
++      Fix comment typos.  Change it to a void function.
++
++2020-01-13  Andrew Pinski  <address@hidden>
++
++      * config/aarch64/aarch64-cores.def (octeontx2): New define.
++      (octeontx2t98): New define.
++      (octeontx2t96): New define.
++      (octeontx2t93): New define.
++      (octeontx2f95): New define.
++      (octeontx2f95n): New define.
++      (octeontx2f95mm): New define.
++      * config/aarch64/aarch64-tune.md: Regenerate.
++      * doc/invoke.texi (-mcpu=): Document the new cpu types.
++
++2020-01-13  Jason Merrill  <address@hidden>
++
++      PR c++/33799 - destroy return value if local cleanup throws.
++      * gimplify.c (gimplify_return_expr): Handle COMPOUND_EXPR.
++
++2020-01-13  Martin Liska  <address@hidden>
++
++      * ipa-cp.c (get_max_overall_size): Use newly
++      renamed param param_ipa_cp_unit_growth.
++      * params.opt: Remove legacy param name.
++
++2020-01-13  Martin Sebor  <address@hidden>
++
++      PR tree-optimization/93213
++      * tree-ssa-strlen.c (handle_store): Only allow single-byte nul-over-nul
++      stores to be eliminated.
++
++2020-01-13  Martin Liska  <address@hidden>
++
++      * opts.c (print_help): Do not print CL_PARAM
++      and CL_WARNING for CL_OPTIMIZATION.
++
++2020-01-13  Jonathan Wakely  <address@hidden>
++
++      PR driver/92757
++      * doc/invoke.texi (Warning Options): Add caveat about some warnings
++      depending on optimization settings.
++
++2020-01-13  Jakub Jelinek  <address@hidden>
++
++      PR tree-optimization/90838
++      * tree-ssa-forwprop.c (simplify_count_trailing_zeroes): Use
++      SCALAR_INT_TYPE_MODE directly in CTZ_DEFINED_VALUE_AT_ZERO macro
++      argument rather than to initialize temporary for targets that
++      don't use the mode argument at all.  Initialize ctzval to avoid
++      warning at -O0.
++
++2020-01-10  Thomas Schwinge  <address@hidden>
++
++      * tree.h (OMP_CLAUSE_USE_DEVICE_PTR_IF_PRESENT): New definition.
++      * tree-core.h: Document it.
++      * gimplify.c (gimplify_omp_workshare): Set it.
++      * omp-low.c (lower_omp_target): Use it.
++      * tree-pretty-print.c (dump_omp_clause): Print it.
++
++      * omp-low.c (lower_omp_target) <OMP_CLAUSE_USE_DEVICE_PTR etc.>:
++      Assert that for OpenACC we always have 'GOMP_MAP_USE_DEVICE_PTR'.
++
++2020-01-10  David Malcolm  <address@hidden>
++
++      * Makefile.in (OBJS): Add tree-diagnostic-path.o.
++      * common.opt (fdiagnostics-path-format=): New option.
++      (diagnostic_path_format): New enum.
++      (fdiagnostics-show-path-depths): New option.
++      * coretypes.h (diagnostic_event_id_t): New forward decl.
++      * diagnostic-color.c (color_dict): Add "path".
++      * diagnostic-event-id.h: New file.
++      * diagnostic-format-json.cc (json_from_expanded_location): Make
++      non-static.
++      (json_end_diagnostic): Call context->make_json_for_path if it
++      exists and the diagnostic has a path.
++      (diagnostic_output_format_init): Clear context->print_path.
++      * diagnostic-path.h: New file.
++      * diagnostic-show-locus.c (colorizer::set_range): Special-case
++      when printing a run of events in a diagnostic_path so that they
++      all get the same color.
++      (layout::m_diagnostic_path_p): New field.
++      (layout::layout): Initialize it.
++      (layout::print_any_labels): Don't colorize the label text for an
++      event in a diagnostic_path.
++      (gcc_rich_location::add_location_if_nearby): Add
++      "restrict_to_current_line_spans" and "label" params.  Pass the
++      former to layout.maybe_add_location_range; pass the latter
++      when calling add_range.
++      * diagnostic.c: Include "diagnostic-path.h".
++      (diagnostic_initialize): Initialize context->path_format and
++      context->show_path_depths.
++      (diagnostic_show_any_path): New function.
++      (diagnostic_path::interprocedural_p): New function.
++      (diagnostic_report_diagnostic): Call diagnostic_show_any_path.
++      (simple_diagnostic_path::num_events): New function.
++      (simple_diagnostic_path::get_event): New function.
++      (simple_diagnostic_path::add_event): New function.
++      (simple_diagnostic_event::simple_diagnostic_event): New ctor.
++      (simple_diagnostic_event::~simple_diagnostic_event): New dtor.
++      (debug): New overload taking a diagnostic_path *.
++      * diagnostic.def (DK_DIAGNOSTIC_PATH): New.
++      * diagnostic.h (enum diagnostic_path_format): New enum.
++      (json::value): New forward decl.
++      (diagnostic_context::path_format): New field.
++      (diagnostic_context::show_path_depths): New field.
++      (diagnostic_context::print_path): New callback field.
++      (diagnostic_context::make_json_for_path): New callback field.
++      (diagnostic_show_any_path): New decl.
++      (json_from_expanded_location): New decl.
++      * doc/invoke.texi (-fdiagnostics-path-format=): New option.
++      (-fdiagnostics-show-path-depths): New option.
++      (-fdiagnostics-color): Add "path" to description of default
++      GCC_COLORS; describe it.
++      (-fdiagnostics-format=json): Document how diagnostic paths are
++      represented in the JSON output format.
++      * gcc-rich-location.h (gcc_rich_location::add_location_if_nearby):
++      Add optional params "restrict_to_current_line_spans" and "label".
++      * opts.c (common_handle_option): Handle
++      OPT_fdiagnostics_path_format_ and
++      OPT_fdiagnostics_show_path_depths.
++      * pretty-print.c: Include "diagnostic-event-id.h".
++      (pp_format): Implement "%@" format code for printing
++      diagnostic_event_id_t *.
++      (selftest::test_pp_format): Add tests for "%@".
++      * selftest-run-tests.c (selftest::run_tests): Call
++      selftest::tree_diagnostic_path_cc_tests.
++      * selftest.h (selftest::tree_diagnostic_path_cc_tests): New decl.
++      * toplev.c (general_init): Initialize global_dc->path_format and
++      global_dc->show_path_depths.
++      * tree-diagnostic-path.cc: New file.
++      * tree-diagnostic.c (maybe_unwind_expanded_macro_loc): Make
++      non-static.  Drop "diagnostic" param in favor of storing the
++      original value of "where" and re-using it.
++      (virt_loc_aware_diagnostic_finalizer): Update for dropped param of
++      maybe_unwind_expanded_macro_loc.
++      (tree_diagnostics_defaults): Initialize context->print_path and
++      context->make_json_for_path.
++      * tree-diagnostic.h (default_tree_diagnostic_path_printer): New
++      decl.
++      (default_tree_make_json_for_path): New decl.
++      (maybe_unwind_expanded_macro_loc): New decl.
++
++2020-01-10  Jakub Jelinek  <address@hidden>
++
++      PR tree-optimization/93210
++      * fold-const.h (native_encode_initializer,
++      can_native_interpret_type_p): Declare.
++      * fold-const.c (native_encode_string): Fix up handling with off != -1,
++      simplify.
++      (native_encode_initializer): New function, moved from dwarf2out.c.
++      Adjust to native_encode_expr compatible arguments, including dry-run
++      and partial extraction modes.  Don't handle STRING_CST.
++      (can_native_interpret_type_p): No longer static.
++      * gimple-fold.c (fold_ctor_reference): For native_encode_expr, verify
++      offset / BITS_PER_UNIT fits into int and don't call it if
++      can_native_interpret_type_p fails.  If suboff is NULL and for
++      CONSTRUCTOR fold_{,non}array_ctor_reference returns NULL, retry with
++      native_encode_initializer.
++      (fold_const_aggregate_ref_1): Formatting fix.
++      * dwarf2out.c (native_encode_initializer): Moved to fold-const.c.
++      (tree_add_const_value_attribute): Adjust caller.
++
++      PR tree-optimization/90838
++      * tree-ssa-forwprop.c (simplify_count_trailing_zeroes): Use
++      SCALAR_INT_TYPE_MODE instead of TYPE_MODE as operand of
++      CTZ_DEFINED_VALUE_AT_ZERO.
++
++2020-01-10  Vladimir Makarov  <address@hidden>
++
++      PR inline-asm/93027
++      * lra-constraints.c (match_reload): Permit input operands have the
++      same mode as output while other input operands have a different
++      mode.
++
++2020-01-10  Wilco Dijkstra  <address@hidden>
++
++      PR tree-optimization/90838
++      * tree-ssa-forwprop.c (check_ctz_array): Add new function.
++      (check_ctz_string): Likewise.
++      (optimize_count_trailing_zeroes): Likewise.
++      (simplify_count_trailing_zeroes): Likewise.
++      (pass_forwprop::execute): Try ctz simplification.
++      * match.pd: Add matching for ctz idioms.
++
++2020-01-10  Stam Markianos-Wright  <address@hidden>
++
++      * config/aarch64/aarch64.c (aarch64_invalid_conversion): New function
++      for target hook.
++      (aarch64_invalid_unary_op): New function for target hook.
++      (aarch64_invalid_binary_op): New function for target hook.
++
++2020-01-10  Stam Markianos-Wright  <address@hidden>
++
++      * config.gcc: Add arm_bf16.h.
++      * config/aarch64/aarch64-builtins.c
++      (aarch64_simd_builtin_std_type): Add BFmode.
++      (aarch64_init_simd_builtin_types): Define element types for vector
++      types.
++      (aarch64_init_bf16_types): New function.
++      (aarch64_general_init_builtins): Add arm_init_bf16_types function call.
++      * config/aarch64/aarch64-modes.def: Add BFmode and V4BF, V8BF vector
++      modes.
++      * config/aarch64/aarch64-simd-builtin-types.def: Add BF SIMD types.
++      * config/aarch64/aarch64-simd.md: Add BF vector types to NEON move
++      patterns.
++      * config/aarch64/aarch64.h (AARCH64_VALID_SIMD_DREG_MODE): Add V4BF.
++      (AARCH64_VALID_SIMD_QREG_MODE): Add V8BF.
++      * config/aarch64/aarch64.c
++      (aarch64_classify_vector_mode): Add support for BF types.
++      (aarch64_gimplify_va_arg_expr): Add support for BF types.
++      (aarch64_vq_mode): Add support for BF types.
++      (aarch64_simd_container_mode): Add support for BF types.
++      (aarch64_mangle_type): Add support for BF scalar type.
++      * config/aarch64/aarch64.md: Add BFmode to movhf pattern.
++      * config/aarch64/arm_bf16.h: New file.
++      * config/aarch64/arm_neon.h: Add arm_bf16.h and Bfloat vector types.
++      * config/aarch64/iterators.md: Add BF types to mode attributes.
++      (HFBF, GPF_TF_F16_MOV, VDMOV, VQMOV, VQMOV_NO2Em VALL_F16MOV): New.
+ 
+-      * config/rs6000/rs6000-cpus.def (ISA_3_0_MASKS_SERVER): Enable
+-      -mpower9-minmax by default for -mcpu=power9.
+-      (ISA_3_MASKS_IEEE): Require -mvsx-small-integer to enable IEEE
+-      128-bit floating point.
++2020-01-10  Jason Merrill  <address@hidden>
+ 
+-2017-01-20  Alan Modra  <address@hidden>
++      PR c++/93173 - incorrect tree sharing.
++      * gimplify.c (copy_if_shared): No longer static.
++      * gimplify.h: Declare it.
++
++2020-01-10  Richard Sandiford  <address@hidden>
+ 
+-      * config/rs6000/rs6000.md (cmpstrnsi, cmpstrsi): Fail if
+-      optimizing for size.
++      * doc/invoke.texi (-msve-vector-bits=): Document that
++      -msve-vector-bits=128 now generates VL-specific code for
++      little-endian targets.
++      * config/aarch64/aarch64-sve-builtins.cc (register_builtin_types): Use
++      build_vector_type_for_mode to construct the data vector types.
++      * config/aarch64/aarch64.c (aarch64_convert_sve_vector_bits): Generate
++      VL-specific code for -msve-vector-bits=128 on little-endian targets.
++      (aarch64_simd_container_mode): Always prefer Advanced SIMD modes
++      for 128-bit vectors.
+ 
+-2017-01-20  Alan Modra  <address@hidden>
++2020-01-10  Richard Sandiford  <address@hidden>
+ 
+-      PR target/79144
+-      * config/rs6000/rs6000.c (expand_strn_compare): Get the asm name
+-      for strcmp and strncmp from corresponding builtin decl.
++      * config/aarch64/aarch64.c (aarch64_evpc_sel): Fix gen_vcond_mask
++      invocation.
+ 
+-2017-01-19  Uros Bizjak  <address@hidden>
++2020-01-10  Richard Sandiford  <address@hidden>
+ 
+-      * config.gcc (x86_64-*-rtems*): Use i386/rtemself.h
+-      instead of i386/rtems-64.h.
+-      * config/i386/rtems-64.h: Remove.
++      * config/aarch64/aarch64-builtins.c
++      (aarch64_builtin_vectorized_function): Check for specific vector modes,
++      rather than checking the number of elements and the element mode.
++
++2020-01-10  Richard Sandiford  <address@hidden>
++
++      * tree-vect-loop.c (vect_create_epilog_for_reduction): Use
++      get_related_vectype_for_scalar_type rather than build_vector_type
++      to create the index type for a conditional reduction.
++
++2020-01-10  Richard Sandiford  <address@hidden>
++
++      * tree-vect-loop.c (update_epilogue_loop_vinfo): Update DR_REF
++      for any type of gather or scatter, including strided accesses.
++
++2020-01-10  Andre Vieira  <address@hidden>
++
++      * tree-vectorizer.h (get_dr_vinfo_offset): Add missing function
++       comment.
++
++2020-01-10  Andre Vieira  <address@hidden>
++
++      * tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref): Use
++      get_dr_vinfo_offset
++      * tree-vect-loop.c (update_epilogue_loop_vinfo):  Remove orig_drs_init
++      parameter and its use to reset DR_OFFSET's.
++      (vect_transform_loop): Remove orig_drs_init argument.
++      * tree-vect-loop-manip.c (vect_update_init_of_dr): Update the offset
++      member of dr_vec_info rather than the offset of the associated
++      data_reference's innermost_loop_behavior.
++      (vect_update_init_of_dr): Pass dr_vec_info instead of data_reference.
++      (vect_do_peeling): Remove orig_drs_init parameter and its construction.
++      * tree-vect-stmts.c (check_scan_store): Replace use of DR_OFFSET with
++      get_dr_vinfo_offset.
++      (vectorizable_store): Likewise.
++      (vectorizable_load): Likewise.
++
++2020-01-10  Richard Biener  <address@hidden>
++
++      * gimple-ssa-store-merging
++      (pass_store_merging::terminate_all_aliasing_chains): Cache alias info.
++
++2020-01-10  Martin Liska  <address@hidden>
++
++      PR ipa/93217
++      * ipa-inline-analysis.c (offline_size): Make proper parenthesis
++      encapsulation that was there before r280040.
++
++2020-01-10  Richard Biener  <address@hidden>
++
++      PR middle-end/93199
++      * tree-eh.c (sink_clobbers): Move clobbers to out-of-IL
++      sequences to avoid walking them again for secondary opportunities.
++      (pass_lower_eh_dispatch::execute): Instead actually insert
++      them here.
++
++2020-01-10  Richard Biener  <address@hidden>
++
++      PR middle-end/93199
++      * tree-eh.c (redirect_eh_edge_1): Avoid some work if possible.
++      (cleanup_all_empty_eh): Walk landing pads in reverse order to
++      avoid quadraticness.
++
++2020-01-10  Martin Jambor  <address@hidden>
++
++      * params.opt (param_ipa_sra_max_replacements): Mark as Optimization.
++      * ipa-sra.c (pull_accesses_from_callee): New parameter caller, use it
++      to get param_ipa_sra_max_replacements.
++      (param_splitting_across_edge): Pass the caller to
++      pull_accesses_from_callee.
++
++2020-01-10  Martin Jambor  <address@hidden>
++
++      * params.opt (param_ipcp_unit_growth): Mark as Optimization.
++      * ipa-cp.c (max_new_size): Removed.
++      (orig_overall_size): New variable.
++      (get_max_overall_size): New function.
++      (estimate_local_effects): Use it.  Adjust dump.
++      (decide_about_value): Likewise.
++      (ipcp_propagate_stage): Do not calculate max_new_size, just store
++      orig_overall_size.  Adjust dump.
++      (ipa_cp_c_finalize): Clear orig_overall_size instead of max_new_size.
++
++2020-01-10  Martin Jambor  <address@hidden>
++
++      * params.opt (param_ipa_max_agg_items): Mark as Optimization
++      * ipa-cp.c (merge_agg_lats_step): New parameter max_agg_items, use
++      instead of param_ipa_max_agg_items.
++      (merge_aggregate_lattices): Extract param_ipa_max_agg_items from
++      optimization info for the callee.
++
++2020-01-09  Kwok Cheung Yeung  <address@hidden>
++
++      * lto-streamer-in.c (input_function): Remove streamed-in inline debug
++      markers if debug_inline_points is false.
++
++2020-01-09  Richard Sandiford  <address@hidden>
++
++      * config.gcc (aarch64*-*-*): Add aarch64-sve-builtins-sve2.o to
++      extra_objs.
++      * config/aarch64/t-aarch64 (aarch64-sve-builtins.o): Depend on
++      aarch64-sve-builtins-base.def, aarch64-sve-builtins-sve2.def and
++      aarch64-sve-builtins-sve2.h.
++      (aarch64-sve-builtins-sve2.o): New rule.
++      * config/aarch64/aarch64.h (AARCH64_ISA_SVE2_AES): New macro.
++      (AARCH64_ISA_SVE2_BITPERM, AARCH64_ISA_SVE2_SHA3): Likewise.
++      (AARCH64_ISA_SVE2_SM4, TARGET_SVE2_AES, TARGET_SVE2_BITPERM): Likewise.
++      (TARGET_SVE2_SHA, TARGET_SVE2_SM4): Likewise.
++      * config/aarch64/aarch64-c.c (aarch64_update_cpp_builtins): Handle
++      TARGET_SVE2_AES, TARGET_SVE2_BITPERM, TARGET_SVE2_SHA3 and
++      TARGET_SVE2_SM4.
++      * config/aarch64/aarch64-sve.md: Update comments with SVE2
++      instructions that are handled here.
++      (@cond_asrd<mode>): Generalize to...
++      (@cond_<SVE_INT_SHIFT_IMM:sve_int_op><mode>): ...this.
++      (*cond_asrd<mode>_2): Generalize to...
++      (*cond_<SVE_INT_SHIFT_IMM:sve_int_op><mode>_2): ...this.
++      (*cond_asrd<mode>_z): Generalize to...
++      (*cond_<SVE_INT_SHIFT_IMM:sve_int_op><mode>_z): ...this.
++      * config/aarch64/aarch64.md (UNSPEC_LDNT1_GATHER): New unspec.
++      (UNSPEC_STNT1_SCATTER, UNSPEC_WHILEGE, UNSPEC_WHILEGT): Likewise.
++      (UNSPEC_WHILEHI, UNSPEC_WHILEHS): Likewise.
++      * config/aarch64/aarch64-sve2.md (@aarch64_gather_ldnt<mode>): New
++      pattern.
++      
(@aarch64_gather_ldnt_<ANY_EXTEND:optab><SVE_FULL_SDI:mode><SVE_PARTIAL_I:mode>)
++      (@aarch64_scatter_stnt<mode>): Likewise.
++      (@aarch64_scatter_stnt_<SVE_FULL_SDI:mode><SVE_PARTIAL_I:mode>)
++      (@aarch64_mul_lane_<mode>): Likewise.
++      (@aarch64_sve_suqadd<mode>_const): Likewise.
++      (*<sur>h<addsub><mode>): Generalize to...
++      (@aarch64_pred_<SVE2_COND_INT_BINARY_REV:sve_int_op><mode>): ...this
++      new pattern.
++      (@cond_<SVE2_COND_INT_BINARY:sve_int_op><mode>): New expander.
++      (*cond_<SVE2_COND_INT_BINARY:sve_int_op><mode>_2): New pattern.
++      (*cond_<SVE2_COND_INT_BINARY:sve_int_op><mode>_3): Likewise.
++      (*cond_<SVE2_COND_INT_BINARY:sve_int_op><mode>_any): Likewise.
++      (*cond_<SVE2_COND_INT_BINARY_NOREV:sve_int_op><mode>_z): Likewise.
++      (@aarch64_sve_<SVE2_INT_BINARY:sve_int_op><mode>):: Likewise.
++      (@aarch64_sve_<SVE2_INT_BINARY:sve_int_op>_lane_<mode>): Likewise.
++      (@aarch64_pred_<SVE2_COND_INT_SHIFT:sve_int_op><mode>): Likewise.
++      (@cond_<SVE2_COND_INT_SHIFT:sve_int_op><mode>): New expander.
++      (*cond_<SVE2_COND_INT_SHIFT:sve_int_op><mode>_2): New pattern.
++      (*cond_<SVE2_COND_INT_SHIFT:sve_int_op><mode>_3): Likewise.
++      (*cond_<SVE2_COND_INT_SHIFT:sve_int_op><mode>_any): Likewise.
++      (@aarch64_sve_<SVE2_INT_TERNARY:sve_int_op><mode>): Likewise.
++      (@aarch64_sve_<SVE2_INT_TERNARY_LANE:sve_int_op>_lane_<mode>)
++      (@aarch64_sve_add_mul_lane_<mode>): Likewise.
++      (@aarch64_sve_sub_mul_lane_<mode>): Likewise.
++      (@aarch64_sve2_xar<mode>): Likewise.
++      (@aarch64_sve2_bcax<mode>): Likewise.
++      (*aarch64_sve2_eor3<mode>): Rename to...
++      (@aarch64_sve2_eor3<mode>): ...this.
++      (@aarch64_sve2_bsl<mode>): New expander.
++      (@aarch64_sve2_nbsl<mode>): Likewise.
++      (@aarch64_sve2_bsl1n<mode>): Likewise.
++      (@aarch64_sve2_bsl2n<mode>): Likewise.
++      (@aarch64_sve_add_<SHIFTRT:sve_int_op><mode>): Likewise.
++      (*aarch64_sve2_sra<mode>): Add MOVPRFX support.
++      (@aarch64_sve_add_<VRSHR_N:sve_int_op><mode>): New pattern.
++      (@aarch64_sve_<SVE2_INT_SHIFT_INSERT:sve_int_op><mode>): Likewise.
++      (@aarch64_sve2_<USMAX:su>aba<mode>): New expander.
++      (*aarch64_sve2_<USMAX:su>aba<mode>): New pattern.
++      (@aarch64_sve_<SVE2_INT_BINARY_WIDE:sve_int_op><mode>): Likewise.
++      (<su>mull<bt><Vwide>): Generalize to...
++      (@aarch64_sve_<SVE2_INT_BINARY_LONG:sve_int_op><mode>): ...this new
++      pattern.
++      (@aarch64_sve_<SVE2_INT_BINARY_LONG_lANE:sve_int_op>_lane_<mode>)
++      (@aarch64_sve_<SVE2_INT_SHIFT_IMM_LONG:sve_int_op><mode>)
++      (@aarch64_sve_add_<SVE2_INT_ADD_BINARY_LONG:sve_int_op><mode>)
++      
(@aarch64_sve_add_<SVE2_INT_ADD_BINARY_LONG_LANE:sve_int_op>_lane_<mode>)
++      (@aarch64_sve_qadd_<SVE2_INT_QADD_BINARY_LONG:sve_int_op><mode>)
++      
(@aarch64_sve_qadd_<SVE2_INT_QADD_BINARY_LONG_LANE:sve_int_op>_lane_<mode>)
++      (@aarch64_sve_sub_<SVE2_INT_SUB_BINARY_LONG:sve_int_op><mode>)
++      
(@aarch64_sve_sub_<SVE2_INT_SUB_BINARY_LONG_LANE:sve_int_op>_lane_<mode>)
++      (@aarch64_sve_qsub_<SVE2_INT_QSUB_BINARY_LONG:sve_int_op><mode>)
++      
(@aarch64_sve_qsub_<SVE2_INT_QSUB_BINARY_LONG_LANE:sve_int_op>_lane_<mode>)
++      (@aarch64_sve_<SVE2_FP_TERNARY_LONG:sve_fp_op><mode>): New patterns.
++      (@aarch64_<SVE2_FP_TERNARY_LONG_LANE:sve_fp_op>_lane_<mode>)
++      (@aarch64_sve_<SVE2_INT_UNARY_NARROWB:sve_int_op><mode>): Likewise.
++      (@aarch64_sve_<SVE2_INT_UNARY_NARROWT:sve_int_op><mode>): Likewise.
++      (@aarch64_sve_<SVE2_INT_BINARY_NARROWB:sve_int_op><mode>): Likewise.
++      (@aarch64_sve_<SVE2_INT_BINARY_NARROWT:sve_int_op><mode>): Likewise.
++      (<SHRNB:r>shrnb<mode>): Generalize to...
++      (@aarch64_sve_<SVE2_INT_SHIFT_IMM_NARROWB:sve_int_op><mode>): ...this
++      new pattern.
++      (<SHRNT:r>shrnt<mode>): Generalize to...
++      (@aarch64_sve_<SVE2_INT_SHIFT_IMM_NARROWT:sve_int_op><mode>): ...this
++      new pattern.
++      (@aarch64_pred_<SVE2_INT_BINARY_PAIR:sve_int_op><mode>): New pattern.
++      (@aarch64_pred_<SVE2_FP_BINARY_PAIR:sve_fp_op><mode>): Likewise.
++      (@cond_<SVE2_INT_BINARY_PAIR_LONG:sve_int_op><mode>): New expander.
++      (*cond_<SVE2_INT_BINARY_PAIR_LONG:sve_int_op><mode>_2): New pattern.
++      (*cond_<SVE2_INT_BINARY_PAIR_LONG:sve_int_op><mode>_z): Likewise.
++      (@aarch64_sve_<SVE2_INT_CADD:optab><mode>): Likewise.
++      (@aarch64_sve_<SVE2_INT_CMLA:optab><mode>): Likewise.
++      (@aarch64_<SVE2_INT_CMLA:optab>_lane_<mode>): Likewise.
++      (@aarch64_sve_<SVE2_INT_CDOT:optab><mode>): Likewise.
++      (@aarch64_<SVE2_INT_CDOT:optab>_lane_<mode>): Likewise.
++      (@aarch64_pred_<SVE2_COND_FP_UNARY_LONG:sve_fp_op><mode>): Likewise.
++      (@cond_<SVE2_COND_FP_UNARY_LONG:sve_fp_op><mode>): New expander.
++      (*cond_<SVE2_COND_FP_UNARY_LONG:sve_fp_op><mode>): New pattern.
++      (@aarch64_sve2_cvtnt<mode>): Likewise.
++      (@aarch64_pred_<SVE2_COND_FP_UNARY_NARROWB:sve_fp_op><mode>): Likewise.
++      (@cond_<SVE2_COND_FP_UNARY_NARROWB:sve_fp_op><mode>): New expander.
++      (*cond_<SVE2_COND_FP_UNARY_NARROWB:sve_fp_op><mode>_any): New pattern.
++      (@aarch64_sve2_cvtxnt<mode>): Likewise.
++      (@aarch64_pred_<SVE2_U32_UNARY:sve_int_op><mode>): Likewise.
++      (@cond_<SVE2_U32_UNARY:sve_int_op><mode>): New expander.
++      (*cond_<SVE2_U32_UNARY:sve_int_op><mode>): New pattern.
++      (@aarch64_pred_<SVE2_COND_INT_UNARY_FP:sve_fp_op><mode>): Likewise.
++      (@cond_<SVE2_COND_INT_UNARY_FP:sve_fp_op><mode>): New expander.
++      (*cond_<SVE2_COND_INT_UNARY_FP:sve_fp_op><mode>): New pattern.
++      (@aarch64_sve2_pmul<mode>): Likewise.
++      (@aarch64_sve_<SVE2_PMULL:optab><mode>): Likewise.
++      (@aarch64_sve_<SVE2_PMULL_PAIR:optab><mode>): Likewise.
++      (@aarch64_sve2_tbl2<mode>): Likewise.
++      (@aarch64_sve2_tbx<mode>): Likewise.
++      (@aarch64_sve_<SVE2_INT_BITPERM:sve_int_op><mode>): Likewise.
++      (@aarch64_sve2_histcnt<mode>): Likewise.
++      (@aarch64_sve2_histseg<mode>): Likewise.
++      (@aarch64_pred_<SVE2_MATCH:sve_int_op><mode>): Likewise.
++      (*aarch64_pred_<SVE2_MATCH:sve_int_op><mode>_cc): Likewise.
++      (*aarch64_pred_<SVE2_MATCH:sve_int_op><mode>_ptest): Likewise.
++      (aarch64_sve2_aes<CRYPTO_AES:aes_op>): Likewise.
++      (aarch64_sve2_aes<CRYPTO_AESMC:aesmc_op>): Likewise.
++      (*aarch64_sve2_aese_fused, *aarch64_sve2_aesd_fused): Likewise.
++      (aarch64_sve2_rax1, aarch64_sve2_sm4e, aarch64_sve2_sm4ekey): Likewise.
++      (<su>mulh<r>s<mode>3): Update after above pattern name changes.
++      * config/aarch64/iterators.md (VNx16QI_ONLY, VNx4SF_ONLY)
++      (SVE_STRUCT2, SVE_FULL_BHI, SVE_FULL_HSI, SVE_FULL_HDI)
++      (SVE2_PMULL_PAIR_I): New mode iterators.
++      (UNSPEC_ADCLB, UNSPEC_ADCLT, UNSPEC_ADDHNB, UNSPEC_ADDHNT, UNSPEC_BDEP)
++      (UNSPEC_BEXT, UNSPEC_BGRP, UNSPEC_CADD90, UNSPEC_CADD270, UNSPEC_CDOT)
++      (UNSPEC_CDOT90, UNSPEC_CDOT180, UNSPEC_CDOT270, UNSPEC_CMLA)
++      (UNSPEC_CMLA90, UNSPEC_CMLA180, UNSPEC_CMLA270, UNSPEC_COND_FCVTLT)
++      (UNSPEC_COND_FCVTNT, UNSPEC_COND_FCVTX, UNSPEC_COND_FCVTXNT)
++      (UNSPEC_COND_FLOGB, UNSPEC_EORBT, UNSPEC_EORTB, UNSPEC_FADDP)
++      (UNSPEC_FMAXP, UNSPEC_FMAXNMP, UNSPEC_FMLALB, UNSPEC_FMLALT)
++      (UNSPEC_FMLSLB, UNSPEC_FMLSLT, UNSPEC_FMINP, UNSPEC_FMINNMP)
++      (UNSPEC_HISTCNT, UNSPEC_HISTSEG, UNSPEC_MATCH, UNSPEC_NMATCH)
++      (UNSPEC_PMULLB, UNSPEC_PMULLB_PAIR, UNSPEC_PMULLT, UNSPEC_PMULLT_PAIR)
++      (UNSPEC_RADDHNB, UNSPEC_RADDHNT, UNSPEC_RSUBHNB, UNSPEC_RSUBHNT)
++      (UNSPEC_SLI, UNSPEC_SRI, UNSPEC_SABDLB, UNSPEC_SABDLT, UNSPEC_SADDLB)
++      (UNSPEC_SADDLBT, UNSPEC_SADDLT, UNSPEC_SADDWB, UNSPEC_SADDWT)
++      (UNSPEC_SBCLB, UNSPEC_SBCLT, UNSPEC_SMAXP, UNSPEC_SMINP)
++      (UNSPEC_SQCADD90, UNSPEC_SQCADD270, UNSPEC_SQDMULLB, UNSPEC_SQDMULLBT)
++      (UNSPEC_SQDMULLT, UNSPEC_SQRDCMLAH, UNSPEC_SQRDCMLAH90)
++      (UNSPEC_SQRDCMLAH180, UNSPEC_SQRDCMLAH270, UNSPEC_SQRSHRNB)
++      (UNSPEC_SQRSHRNT, UNSPEC_SQRSHRUNB, UNSPEC_SQRSHRUNT, UNSPEC_SQSHRNB)
++      (UNSPEC_SQSHRNT, UNSPEC_SQSHRUNB, UNSPEC_SQSHRUNT, UNSPEC_SQXTNB)
++      (UNSPEC_SQXTNT, UNSPEC_SQXTUNB, UNSPEC_SQXTUNT, UNSPEC_SSHLLB)
++      (UNSPEC_SSHLLT, UNSPEC_SSUBLB, UNSPEC_SSUBLBT, UNSPEC_SSUBLT)
++      (UNSPEC_SSUBLTB, UNSPEC_SSUBWB, UNSPEC_SSUBWT, UNSPEC_SUBHNB)
++      (UNSPEC_SUBHNT, UNSPEC_TBL2, UNSPEC_UABDLB, UNSPEC_UABDLT)
++      (UNSPEC_UADDLB, UNSPEC_UADDLT, UNSPEC_UADDWB, UNSPEC_UADDWT)
++      (UNSPEC_UMAXP, UNSPEC_UMINP, UNSPEC_UQRSHRNB, UNSPEC_UQRSHRNT)
++      (UNSPEC_UQSHRNB, UNSPEC_UQSHRNT, UNSPEC_UQXTNB, UNSPEC_UQXTNT)
++      (UNSPEC_USHLLB, UNSPEC_USHLLT, UNSPEC_USUBLB, UNSPEC_USUBLT)
++      (UNSPEC_USUBWB, UNSPEC_USUBWT): New unspecs.
++      (UNSPEC_SMULLB, UNSPEC_SMULLT, UNSPEC_UMULLB, UNSPEC_UMULLT)
++      (UNSPEC_SMULHS, UNSPEC_SMULHRS, UNSPEC_UMULHS, UNSPEC_UMULHRS)
++      (UNSPEC_RSHRNB, UNSPEC_RSHRNT, UNSPEC_SHRNB, UNSPEC_SHRNT): Move
++      further down file.
++      (VNARROW, Ventype): New mode attributes.
++      (Vewtype): Handle VNx2DI.  Fix typo in comment.
++      (VDOUBLE): New mode attribute.
++      (sve_lane_con): Handle VNx8HI.
++      (SVE_INT_UNARY): Include ss_abs and ss_neg for TARGET_SVE2.
++      (SVE_INT_BINARY): Likewise ss_plus, us_plus, ss_minus and us_minus.
++      (sve_int_op, sve_int_op_rev): Handle the above codes.
++      (sve_pred_int_rhs2_operand): Likewise.
++      (MULLBT, SHRNB, SHRNT): Delete.
++      (SVE_INT_SHIFT_IMM): New int iterator.
++      (SVE_WHILE): Add UNSPEC_WHILEGE, UNSPEC_WHILEGT, UNSPEC_WHILEHI
++      and UNSPEC_WHILEHS for TARGET_SVE2.
++      (SVE2_U32_UNARY, SVE2_INT_UNARY_NARROWB, SVE2_INT_UNARY_NARROWT)
++      (SVE2_INT_BINARY, SVE2_INT_BINARY_LANE, SVE2_INT_BINARY_LONG)
++      (SVE2_INT_BINARY_LONG_LANE, SVE2_INT_BINARY_NARROWB)
++      (SVE2_INT_BINARY_NARROWT, SVE2_INT_BINARY_PAIR, SVE2_FP_BINARY_PAIR)
++      (SVE2_INT_BINARY_PAIR_LONG, SVE2_INT_BINARY_WIDE): New int iterators.
++      (SVE2_INT_SHIFT_IMM_LONG, SVE2_INT_SHIFT_IMM_NARROWB): Likewise.
++      (SVE2_INT_SHIFT_IMM_NARROWT, SVE2_INT_SHIFT_INSERT, SVE2_INT_CADD)
++      (SVE2_INT_BITPERM, SVE2_INT_TERNARY, SVE2_INT_TERNARY_LANE): Likewise.
++      (SVE2_FP_TERNARY_LONG, SVE2_FP_TERNARY_LONG_LANE, SVE2_INT_CMLA)
++      (SVE2_INT_CDOT, SVE2_INT_ADD_BINARY_LONG, SVE2_INT_QADD_BINARY_LONG)
++      (SVE2_INT_SUB_BINARY_LONG, SVE2_INT_QSUB_BINARY_LONG): Likewise.
++      (SVE2_INT_ADD_BINARY_LONG_LANE, SVE2_INT_QADD_BINARY_LONG_LANE)
++      (SVE2_INT_SUB_BINARY_LONG_LANE, SVE2_INT_QSUB_BINARY_LONG_LANE)
++      (SVE2_COND_INT_UNARY_FP, SVE2_COND_FP_UNARY_LONG): Likewise.
++      (SVE2_COND_FP_UNARY_NARROWB, SVE2_COND_INT_BINARY): Likewise.
++      (SVE2_COND_INT_BINARY_NOREV, SVE2_COND_INT_BINARY_REV): Likewise.
++      (SVE2_COND_INT_SHIFT, SVE2_MATCH, SVE2_PMULL): Likewise.
++      (optab): Handle the new unspecs.
++      (su, r): Remove entries for UNSPEC_SHRNB, UNSPEC_SHRNT, UNSPEC_RSHRNB
++      and UNSPEC_RSHRNT.
++      (lr): Handle the new unspecs.
++      (bt): Delete.
++      (cmp_op, while_optab_cmp, sve_int_op): Handle the new unspecs.
++      (sve_int_op_rev, sve_int_add_op, sve_int_qadd_op, sve_int_sub_op)
++      (sve_int_qsub_op): New int attributes.
++      (sve_fp_op, rot): Handle the new unspecs.
++      * config/aarch64/aarch64-sve-builtins.h
++      (function_resolver::require_matching_pointer_type): Declare.
++      (function_resolver::resolve_unary): Add an optional boolean argument.
++      (function_resolver::finish_opt_n_resolution): Add an optional
++      type_suffix_index argument.
++      (gimple_folder::redirect_call): Declare.
++      (gimple_expander::prepare_gather_address_operands): Add an optional
++      bool parameter.
++      * config/aarch64/aarch64-sve-builtins.cc: Include
++      aarch64-sve-builtins-sve2.h.
++      (TYPES_b_unsigned, TYPES_b_integer, TYPES_bh_integer): New macros.
++      (TYPES_bs_unsigned, TYPES_hs_signed, TYPES_hs_integer): Likewise.
++      (TYPES_hd_unsigned, TYPES_hsd_signed): Likewise.
++      (TYPES_hsd_integer): Use TYPES_hsd_signed.
++      (TYPES_s_float_hsd_integer, TYPES_s_float_sd_integer): New macros.
++      (TYPES_s_unsigned): Likewise.
++      (TYPES_s_integer): Use TYPES_s_unsigned.
++      (TYPES_sd_signed, TYPES_sd_unsigned): New macros.
++      (TYPES_sd_integer): Use them.
++      (TYPES_d_unsigned): New macro.
++      (TYPES_d_integer): Use it.
++      (TYPES_d_data, TYPES_cvt_long, TYPES_cvt_narrow_s): New macros.
++      (TYPES_cvt_narrow): Likewise.
++      (DEF_SVE_TYPES_ARRAY): Include the new types macros above.
++      (preds_mx): New variable.
++      (function_builder::add_overloaded_function): Allow the new feature
++      set to be more restrictive than the original one.
++      (function_resolver::infer_pointer_type): Remove qualifiers from
++      the pointer type before printing it.
++      (function_resolver::require_matching_pointer_type): New function.
++      (function_resolver::resolve_sv_displacement): Handle functions
++      that don't support 32-bit vector indices or svint32_t vector offsets.
++      (function_resolver::finish_opt_n_resolution): Take the inferred type
++      as a separate argument.
++      (function_resolver::resolve_unary): Optionally treat all forms in
++      the same way as normal merging functions.
++      (gimple_folder::redirect_call): New function.
++      (function_expander::prepare_gather_address_operands): Add an argument
++      that says whether scaled forms are available.  If they aren't,
++      handle scaling of vector indices and don't add the extension and
++      scaling operands.
++      (function_expander::map_to_unspecs): If aarch64_sve isn't available,
++      fall back to using cond_* instead.
++      * config/aarch64/aarch64-sve-builtins-functions.h (rtx_code_function):
++      Split out the member variables into...
++      (rtx_code_function_base): ...this new base class.
++      (rtx_code_function_rotated): Inherit rtx_code_function_base.
++      (unspec_based_function): Split out the member variables into...
++      (unspec_based_function_base): ...this new base class.
++      (unspec_based_function_rotated): Inherit unspec_based_function_base.
++      (unspec_based_function_exact_insn): New class.
++      (unspec_based_add_function, unspec_based_add_lane_function)
++      (unspec_based_lane_function, unspec_based_pred_function)
++      (unspec_based_qadd_function, unspec_based_qadd_lane_function)
++      (unspec_based_qsub_function, unspec_based_qsub_lane_function)
++      (unspec_based_sub_function, unspec_based_sub_lane_function): New
++      typedefs.
++      (unspec_based_fused_function): New class.
++      (unspec_based_mla_function, unspec_based_mls_function): New typedefs.
++      (unspec_based_fused_lane_function): New class.
++      (unspec_based_mla_lane_function, unspec_based_mls_lane_function): New
++      typedefs.
++      (CODE_FOR_MODE1): New macro.
++      (fixed_insn_function): New class.
++      (while_comparison): Likewise.
++      * config/aarch64/aarch64-sve-builtins-shapes.h (binary_long_lane)
++      (binary_long_opt_n, binary_narrowb_opt_n, binary_narrowt_opt_n)
++      (binary_to_uint, binary_wide, binary_wide_opt_n, compare, compare_ptr)
++      (load_ext_gather_index_restricted, load_ext_gather_offset_restricted)
++      (load_gather_sv_restricted, shift_left_imm_long): Declare.
++      (shift_left_imm_to_uint, shift_right_imm_narrowb): Likewise.
++      (shift_right_imm_narrowt, shift_right_imm_narrowb_to_uint): Likewise.
++      (shift_right_imm_narrowt_to_uint, store_scatter_index_restricted)
++      (store_scatter_offset_restricted, tbl_tuple, ternary_long_lane)
++      (ternary_long_opt_n, ternary_qq_lane_rotate, ternary_qq_rotate)
++      (ternary_shift_left_imm, ternary_shift_right_imm, ternary_uint)
++      (unary_convert_narrowt, unary_long, unary_narrowb, unary_narrowt)
++      (unary_narrowb_to_uint, unary_narrowt_to_uint, unary_to_int): Likewise.
++      * config/aarch64/aarch64-sve-builtins-shapes.cc (apply_predication):
++      Also add an initial argument for unary_convert_narrowt, regardless
++      of the predication type.
++      (build_32_64): Allow loads and stores to specify MODE_none.
++      (build_sv_index64, build_sv_uint_offset): New functions.
++      (long_type_suffix): New function.
++      (binary_imm_narrowb_base, binary_imm_narrowt_base): New classes.
++      (binary_imm_long_base, load_gather_sv_base): Likewise.
++      (shift_right_imm_narrow_wrapper, ternary_shift_imm_base): Likewise.
++      (ternary_resize2_opt_n_base, ternary_resize2_lane_base): Likewise.
++      (unary_narrowb_base, unary_narrowt_base): Likewise.
++      (binary_long_lane_def, binary_long_lane): New shape.
++      (binary_long_opt_n_def, binary_long_opt_n): Likewise.
++      (binary_narrowb_opt_n_def, binary_narrowb_opt_n): Likewise.
++      (binary_narrowt_opt_n_def, binary_narrowt_opt_n): Likewise.
++      (binary_to_uint_def, binary_to_uint): Likewise.
++      (binary_wide_def, binary_wide): Likewise.
++      (binary_wide_opt_n_def, binary_wide_opt_n): Likewise.
++      (compare_def, compare): Likewise.
++      (compare_ptr_def, compare_ptr): Likewise.
++      (load_ext_gather_index_restricted_def,
++      load_ext_gather_index_restricted): Likewise.
++      (load_ext_gather_offset_restricted_def,
++      load_ext_gather_offset_restricted): Likewise.
++      (load_gather_sv_def): Inherit from load_gather_sv_base.
++      (load_gather_sv_restricted_def, load_gather_sv_restricted): New shape.
++      (shift_left_imm_def, shift_left_imm): Likewise.
++      (shift_left_imm_long_def, shift_left_imm_long): Likewise.
++      (shift_left_imm_to_uint_def, shift_left_imm_to_uint): Likewise.
++      (store_scatter_index_restricted_def,
++      store_scatter_index_restricted): Likewise.
++      (store_scatter_offset_restricted_def,
++      store_scatter_offset_restricted): Likewise.
++      (tbl_tuple_def, tbl_tuple): Likewise.
++      (ternary_long_lane_def, ternary_long_lane): Likewise.
++      (ternary_long_opt_n_def, ternary_long_opt_n): Likewise.
++      (ternary_qq_lane_def): Inherit from ternary_resize2_lane_base.
++      (ternary_qq_lane_rotate_def, ternary_qq_lane_rotate): New shape
++      (ternary_qq_opt_n_def): Inherit from ternary_resize2_opt_n_base.
++      (ternary_qq_rotate_def, ternary_qq_rotate): New shape.
++      (ternary_shift_left_imm_def, ternary_shift_left_imm): Likewise.
++      (ternary_shift_right_imm_def, ternary_shift_right_imm): Likewise.
++      (ternary_uint_def, ternary_uint): Likewise.
++      (unary_convert): Fix typo in comment.
++      (unary_convert_narrowt_def, unary_convert_narrowt): New shape.
++      (unary_long_def, unary_long): Likewise.
++      (unary_narrowb_def, unary_narrowb): Likewise.
++      (unary_narrowt_def, unary_narrowt): Likewise.
++      (unary_narrowb_to_uint_def, unary_narrowb_to_uint): Likewise.
++      (unary_narrowt_to_uint_def, unary_narrowt_to_uint): Likewise.
++      (unary_to_int_def, unary_to_int): Likewise.
++      * config/aarch64/aarch64-sve-builtins-base.cc (unspec_cmla)
++      (unspec_fcmla, unspec_cond_fcmla, expand_mla_mls_lane): New functions.
++      (svasrd_impl): Delete.
++      (svcadd_impl::expand): Handle integer operations too.
++      (svcmla_impl::expand, svcmla_lane::expand): Likewise, using the
++      new functions to derive the unspec numbers.
++      (svmla_svmls_lane_impl): Replace with...
++      (svmla_lane_impl, svmls_lane_impl): ...these new classes.  Handle
++      integer operations too.
++      (svwhile_impl): Rename to...
++      (svwhilelx_impl): ...this and inherit from while_comparison.
++      (svasrd): Use unspec_based_function.
++      (svmla_lane): Use svmla_lane_impl.
++      (svmls_lane): Use svmls_lane_impl.
++      (svrecpe, svrsqrte): Handle unsigned integer operations too.
++      (svwhilele, svwhilelt): Use svwhilelx_impl.
++      * config/aarch64/aarch64-sve-builtins-sve2.h: New file.
++      * config/aarch64/aarch64-sve-builtins-sve2.cc: Likewise.
++      * config/aarch64/aarch64-sve-builtins-sve2.def: Likewise.
++      * config/aarch64/aarch64-sve-builtins.def: Include
++      aarch64-sve-builtins-sve2.def.
++
++2020-01-09  Richard Sandiford  <address@hidden>
++
++      * config/aarch64/aarch64-protos.h (aarch64_sve_arith_immediate_p)
++      (aarch64_sve_sqadd_sqsub_immediate_p): Add a machine_mode argument.
++      * config/aarch64/aarch64.c (aarch64_sve_arith_immediate_p)
++      (aarch64_sve_sqadd_sqsub_immediate_p): Likewise.  Handle scalar
++      immediates as well as vector ones.
++      * config/aarch64/predicates.md (aarch64_sve_arith_immediate)
++      (aarch64_sve_sub_arith_immediate, aarch64_sve_qadd_immediate)
++      (aarch64_sve_qsub_immediate): Update calls accordingly.
++
++2020-01-09  Richard Sandiford  <address@hidden>
++
++      * config/aarch64/aarch64-sve2.md: Add banner comments.
++      (<su>mulh<r>s<mode>3): Move further up file.
++      (<su>mull<bt><Vwide>, <r>shrnb<mode>, <r>shrnt<mode>)
++      (*aarch64_sve2_sra<mode>): Move further down file.
++      * config/aarch64/t-aarch64 (s-check-sve-md): Check aarch64-sve2.md too.
++
++2020-01-09  Richard Sandiford  <address@hidden>
++
++      * config/aarch64/iterators.md (SVE_WHILE): Add UNSPEC_WHILERW
++      and UNSPEC_WHILEWR.
++      (while_optab_cmp): Handle them.
++      * config/aarch64/aarch64-sve.md
++      (*while_<while_optab_cmp><GPI:mode><PRED_ALL:mode>_ptest): Make public
++      and add a "@" marker.
++      * config/aarch64/aarch64-sve2.md (check_<raw_war>_ptrs<mode>): Use it
++      instead of gen_aarch64_sve2_while_ptest.
++      (@aarch64_sve2_while<cmp_op><GPI:mode><PRED_ALL:mode>_ptest): Delete.
++
++2020-01-09  Richard Sandiford  <address@hidden>
++
++      * config/aarch64/aarch64.md (UNSPEC_WHILE_LE): Rename to...
++      (UNSPEC_WHILELE): ...this.
++      (UNSPEC_WHILE_LO): Rename to...
++      (UNSPEC_WHILELO): ...this.
++      (UNSPEC_WHILE_LS): Rename to...
++      (UNSPEC_WHILELS): ...this.
++      (UNSPEC_WHILE_LT): Rename to...
++      (UNSPEC_WHILELT): ...this.
++      * config/aarch64/iterators.md (SVE_WHILE): Update accordingly.
++      (cmp_op, while_optab_cmp): Likewise.
++      * config/aarch64/aarch64.c (aarch64_sve_move_pred_via_while): Likewise.
++      * config/aarch64/aarch64-sve-builtins-base.cc (svwhilele): Likewise.
++      (svwhilelt): Likewise.
++
++2020-01-09  Richard Sandiford  <address@hidden>
++
++      * config/aarch64/aarch64-sve-builtins-shapes.h (unary_count): Delete.
++      (unary_to_uint): Define.
++      * config/aarch64/aarch64-sve-builtins-shapes.cc (unary_count_def)
++      (unary_count): Rename to...
++      (unary_to_uint_def, unary_to_uint): ...this.
++      * config/aarch64/aarch64-sve-builtins-base.def: Update accordingly.
++
++2020-01-09  Richard Sandiford  <address@hidden>
++
++      * config/aarch64/aarch64-sve-builtins-functions.h
++      (code_for_mode_function): New class.
++      (CODE_FOR_MODE0, QUIET_CODE_FOR_MODE0): New macros.
++      * config/aarch64/aarch64-sve-builtins-base.cc (svcompact_impl)
++      (svext_impl, svmul_lane_impl, svsplice_impl, svtmad_impl): Delete.
++      (svcompact, svext, svsplice): Use QUIET_CODE_FOR_MODE0.
++      (svmul_lane, svtmad): Use CODE_FOR_MODE0.
++
++2020-01-09  Richard Sandiford  <address@hidden>
++
++      * config/aarch64/iterators.md (addsub): New code attribute.
++      * config/aarch64/aarch64-simd.md (aarch64_<su_optab><optab><mode>):
++      Re-express as...
++      (aarch64_<su_optab>q<addsub><mode>): ...this, making the same change
++      in the asm string and attributes.  Fix indentation.
++      * config/aarch64/aarch64-sve.md (@aarch64_<su_optab><optab><mode>):
++      Re-express as...
++      (@aarch64_sve_<optab><mode>): ...this.
++      * config/aarch64/aarch64-sve-builtins.h
++      (function_expander::expand_signed_unpred_op): Delete.
++      * config/aarch64/aarch64-sve-builtins.cc
++      (function_expander::expand_signed_unpred_op): Likewise.
++      (function_expander::map_to_rtx_codes): If the optab isn't defined,
++      try using code_for_aarch64_sve instead.
++      * config/aarch64/aarch64-sve-builtins-base.cc (svqadd_impl): Delete.
++      (svqsub_impl): Likewise.
++      (svqadd, svqsub): Use rtx_code_function instead.
++
++2020-01-09  Richard Sandiford  <address@hidden>
++
++      * config/aarch64/iterators.md (SRHSUB, URHSUB): Delete.
++      (HADDSUB, sur, addsub): Remove them.
++
++2020-01-09  Richard Sandiford  <address@hidden>
++
++      * tree-nrv.c (pass_return_slot::execute): Handle all internal
++      functions the same way, rather than singling out those that
++      aren't mapped directly to optabs.
++
++2020-01-09  Richard Sandiford  <address@hidden>
++
++      * target.def (compatible_vector_types_p): New target hook.
++      * hooks.h (hook_bool_const_tree_const_tree_true): Declare.
++      * hooks.c (hook_bool_const_tree_const_tree_true): New function.
++      * doc/tm.texi.in (TARGET_COMPATIBLE_VECTOR_TYPES_P): New hook.
++      * doc/tm.texi: Regenerate.
++      * gimple-expr.c: Include target.h.
++      (useless_type_conversion_p): Use targetm.compatible_vector_types_p.
++      * config/aarch64/aarch64.c (aarch64_compatible_vector_types_p): New
++      function.
++      (TARGET_COMPATIBLE_VECTOR_TYPES_P): Define.
++      * config/aarch64/aarch64-sve-builtins.cc (gimple_folder::convert_pred):
++      Use the original predicate if it already has a suitable type.
++
++2020-01-09  Martin Jambor  <address@hidden>
++
++      * cgraph.h (cgraph_edge): Make remove, set_call_stmt, make_direct,
++      resolve_speculation and redirect_call_stmt_to_callee static.  Change
++      return type of set_call_stmt to cgraph_edge *.
++      * auto-profile.c (afdo_indirect_call): Adjust call to
++      redirect_call_stmt_to_callee.
++      * cgraph.c (cgraph_edge::set_call_stmt): Make return cgraph-edge *,
++      make the this pointer explicit, adjust self-recursive calls and the
++      call top make_direct.  Return the resulting edge.
++      (cgraph_edge::remove): Make this pointer explicit.
++      (cgraph_edge::resolve_speculation): Likewise, adjust call to remove.
++      (cgraph_edge::make_direct): Likewise, adjust call to
++      resolve_speculation.
++      (cgraph_edge::redirect_call_stmt_to_callee): Likewise, also adjust
++      call to set_call_stmt.
++      (cgraph_update_edges_for_call_stmt_node): Update call to
++      set_call_stmt and remove.
++      * cgraphclones.c (cgraph_node::set_call_stmt_including_clones):
++      Renamed edge to master_edge.  Adjusted calls to set_call_stmt.
++      (cgraph_node::create_edge_including_clones): Moved "first" definition
++      of edge to the block where it was used.  Adjusted calls to
++      set_call_stmt.
++      (cgraph_node::remove_symbol_and_inline_clones): Adjust call to
++      cgraph_edge::remove.
++      * cgraphunit.c (walk_polymorphic_call_targets): Adjusted calls to
++      make_direct and redirect_call_stmt_to_callee.
++      * ipa-fnsummary.c (redirect_to_unreachable): Adjust calls to
++      resolve_speculation and make_direct.
++      * ipa-inline-transform.c (inline_transform): Adjust call to
++      redirect_call_stmt_to_callee.
++      (check_speculations_1):: Adjust call to resolve_speculation.
++      * ipa-inline.c (resolve_noninline_speculation): Adjust call to
++      resolve-speculation.
++      (inline_small_functions): Adjust call to resolve_speculation.
++      (ipa_inline): Likewise.
++      * ipa-prop.c (ipa_make_edge_direct_to_target): Adjust call to
++      make_direct.
++      * ipa-visibility.c (function_and_variable_visibility): Make iteration
++      safe with regards to edge removal, adjust calls to
++      redirect_call_stmt_to_callee.
++      * ipa.c (walk_polymorphic_call_targets): Adjust calls to make_direct
++      and redirect_call_stmt_to_callee.
++      * multiple_target.c (create_dispatcher_calls): Adjust call to
++      redirect_call_stmt_to_callee
++      (redirect_to_specific_clone): Likewise.
++      * tree-cfgcleanup.c (delete_unreachable_blocks_update_callgraph):
++      Adjust calls to cgraph_edge::remove.
++      * tree-inline.c (copy_bb): Adjust call to set_call_stmt.
++      (redirect_all_calls): Adjust call to redirect_call_stmt_to_callee.
++      (expand_call_inline): Adjust call to cgraph_edge::remove.
++
++2020-01-09  Martin Liska  <address@hidden>
++
++      * params.opt: Set Optimization for
++      param_max_speculative_devirt_maydefs.
++
++2020-01-09  Martin Sebor  <address@hidden>
++
++      PR middle-end/93200
++      PR fortran/92956
++      * builtins.c (compute_objsize): Avoid handling MEM_REFs of vector type.
++
++2020-01-09  Martin Liska  <address@hidden>
++
++      * auto-profile.c (auto_profile): Use opt_for_fn
++      for a parameter.
++      * ipa-cp.c (ipcp_lattice::add_value): Likewise.
++      (propagate_vals_across_arith_jfunc): Likewise.
++      (hint_time_bonus): Likewise.
++      (incorporate_penalties): Likewise.
++      (good_cloning_opportunity_p): Likewise.
++      (perform_estimation_of_a_value): Likewise.
++      (estimate_local_effects): Likewise.
++      (ipcp_propagate_stage): Likewise.
++      * ipa-fnsummary.c (decompose_param_expr): Likewise.
++      (set_switch_stmt_execution_predicate): Likewise.
++      (analyze_function_body): Likewise.
++      * ipa-inline-analysis.c (offline_size): Likewise.
++      * ipa-inline.c (early_inliner): Likewise.
++      * ipa-prop.c (ipa_analyze_node): Likewise.
++      (ipcp_transform_function): Likewise.
++      * ipa-sra.c (process_scan_results): Likewise.
++      (ipa_sra_summarize_function): Likewise.
++      * params.opt: Rename ipcp-unit-growth to
++      ipa-cp-unit-growth.  Add Optimization for various
++      IPA-related parameters.
++
++2020-01-09  Richard Biener  <address@hidden>
++
++      PR middle-end/93054
++      * gimplify.c (gimplify_expr): Deal with NOP definitions.
++
++2020-01-09  Richard Biener  <address@hidden>
++
++      PR tree-optimization/93040
++      * gimple-ssa-store-merging.c (find_bswap_or_nop): Raise search limit.
++
++2020-01-09  Georg-Johann Lay  <address@hidden>
++
++      * common/config/avr/avr-common.c (avr_option_optimization_table)
++      [OPT_LEVELS_1_PLUS]: Set -fsplit-wide-types-early.
++
++2020-01-09  Martin Liska  <address@hidden>
++
++      * cgraphclones.c (symbol_table::materialize_all_clones):
++      Use cgraph_node::dump_name.
++
++2020-01-09  Jakub Jelinek  <address@hidden>
++
++      PR inline-asm/93202
++      * config/riscv/riscv.c (riscv_print_operand_reloc): Use
++      output_operand_lossage instead of gcc_unreachable.
++      * doc/md.texi (riscv f constraint): Fix typo.
++
++      PR target/93141
++      * config/i386/i386.md (subv<mode>4): Use SWIDWI iterator instead of
++      SWI.  Use <general_hilo_operand> instead of <general_operand>.  Use
++      CONST_SCALAR_INT_P instead of CONST_INT_P.
++      (*subv<mode>4_1): Rename to ...
++      (subv<mode>4_1): ... this.
++      (*subv<dwi>4_doubleword, *addv<dwi>4_doubleword_1): New
++      define_insn_and_split patterns.
++      (*subv<mode>4_overflow_1, *addv<mode>4_overflow_2): New define_insn
++      patterns.
++
++2020-01-08  David Malcolm  <address@hidden>
++
++      * vec.c (class selftest::count_dtor): New class.
++      (selftest::test_auto_delete_vec): New test.
++      (selftest::vec_c_tests): Call it.
++      * vec.h (class auto_delete_vec): New class template.
++      (auto_delete_vec<T>::~auto_delete_vec): New dtor.
++
++2020-01-08  David Malcolm  <address@hidden>
++
++      * sbitmap.h (auto_sbitmap): Add operator const_sbitmap.
++
++2020-01-08  Jim Wilson  <address@hidden>
++
++      * config/riscv/riscv.c (riscv_legitimize_tls_address): Ifdef out
++      use of TLS_MODEL_LOCAL_EXEC when not pic.
++
++2020-01-08  David Malcolm  <address@hidden>
++
++      * hash-map-tests.c (selftest::test_map_of_strings_to_int): Fix
++      memory leak.
++
++2020-01-08  Jakub Jelinek  <address@hidden>
+ 
+-2017-01-19  Uros Bizjak  <address@hidden>
++      PR target/93187
++      * config/i386/i386.md (*stack_protect_set_2_<mode> peephole2,
++      *stack_protect_set_3 peephole2): Also check that the second
++      insns source is general_operand.
++
++      PR target/93174
++      * config/i386/i386.md (addcarry<mode>_0): Use nonimmediate_operand
++      predicate for output operand instead of register_operand.
++      (addcarry<mode>, addcarry<mode>_1): Likewise.  Add alternative with
++      memory destination and non-memory operands[2].
++
++2020-01-08  Martin Liska  <address@hidden>
++
++      * cgraph.c (cgraph_node::dump): Use ::dump_name or
++      ::dump_asm_name instead of (::name or ::asm_name).
++      * cgraphclones.c (symbol_table::materialize_all_clones): Likewise.
++      * cgraphunit.c (walk_polymorphic_call_targets): Likewise.
++      (analyze_functions): Likewise.
++      (expand_all_functions): Likewise.
++      * ipa-cp.c (ipcp_cloning_candidate_p): Likewise.
++      (propagate_bits_across_jump_function): Likewise.
++      (dump_profile_updates): Likewise.
++      (ipcp_store_bits_results): Likewise.
++      (ipcp_store_vr_results): Likewise.
++      * ipa-devirt.c (dump_targets): Likewise.
++      * ipa-fnsummary.c (analyze_function_body): Likewise.
++      * ipa-hsa.c (check_warn_node_versionable): Likewise.
++      (process_hsa_functions): Likewise.
++      * ipa-icf.c (sem_item_optimizer::merge_classes): Likewise.
++      (set_alias_uids): Likewise.
++      * ipa-inline-transform.c (save_inline_function_body): Likewise.
++      * ipa-inline.c (recursive_inlining): Likewise.
++      (inline_to_all_callers_1): Likewise.
++      (ipa_inline): Likewise.
++      * ipa-profile.c (ipa_propagate_frequency_1): Likewise.
++      (ipa_propagate_frequency): Likewise.
++      * ipa-prop.c (ipa_make_edge_direct_to_target): Likewise.
++      (remove_described_reference): Likewise.
++      * ipa-pure-const.c (worse_state): Likewise.
++      (check_retval_uses): Likewise.
++      (analyze_function): Likewise.
++      (propagate_pure_const): Likewise.
++      (propagate_nothrow): Likewise.
++      (dump_malloc_lattice): Likewise.
++      (propagate_malloc): Likewise.
++      (pass_local_pure_const::execute): Likewise.
++      * ipa-visibility.c (optimize_weakref): Likewise.
++      (function_and_variable_visibility): Likewise.
++      * ipa.c (symbol_table::remove_unreachable_nodes): Likewise.
++      (ipa_discover_variable_flags): Likewise.
++      * lto-streamer-out.c (output_function): Likewise.
++      (output_constructor): Likewise.
++      * tree-inline.c (copy_bb): Likewise.
++      * tree-ssa-structalias.c (ipa_pta_execute): Likewise.
++      * varpool.c (symbol_table::remove_unreferenced_decls): Likewise.
++
++2020-01-08  Richard Biener  <address@hidden>
++
++      PR middle-end/93199
++      * tree-eh.c (sink_clobbers): Update virtual operands for
++      the first and last stmt only.  Add a dry-run capability.
++      (pass_lower_eh_dispatch::execute): Perform clobber sinking
++      after CFG manipulations and in RPO order to catch all
++      secondary opportunities reliably.
++
++2020-01-08  Georg-Johann Lay  <address@hidden>
++
++      PR target/93182
++      * doc/invoke.texi (AVR Options) <-nodevicespecs>: Document.
++
++2019-01-08  Richard Biener  <address@hidden>
++
++      PR middle-end/93199
++      * gimple-fold.c (rewrite_to_defined_overflow): Mark stmt modified.
++      * tree-ssa-loop-im.c (move_computations_worker): Properly adjust
++      virtual operand, also updating SSA use.
++      * gimple-loop-interchange.cc (loop_cand::undo_simple_reduction):
++      Update stmt after resetting virtual operand.
++      (tree_loop_interchange::move_code_to_inner_loop): Likewise.
++      * gimple-iterator.c (gsi_remove): When not removing the stmt
++      permanently do not delink immediate uses or mark the stmt modified.
++
++2020-01-08  Martin Liska  <address@hidden>
++
++      * ipa-fnsummary.c (dump_ipa_call_summary): Use symtab_node::dump_name.
++      (ipa_call_context::estimate_size_and_time): Likewise.
++      (inline_analyze_function): Likewise.
++
++2020-01-08  Martin Liska  <address@hidden>
++
++      * cgraph.c (cgraph_node::dump): Use systematically
++      dump_asm_name.
++
++2020-01-08  Georg-Johann Lay  <address@hidden>
++
++      Add -nodevicespecs option for avr.
++
++      PR target/93182
++      * config/avr/avr.opt (-nodevicespecs): New driver option.
++      * config/avr/driver-avr.c (avr_devicespecs_file): Only issue
++      "-specs=device-specs/..." if that option is not set.
++      * doc/invoke.texi (AVR Options) <-nodevicespecs>: Document.
++
++2020-01-08  Georg-Johann Lay  <address@hidden>
++
++      Implement 64-bit double functions for avr.
++
++      PR target/92055
++      * config.gcc (tm_defines) [target=avr]: Support --with-libf7,
++      --with-double-comparison.
++      * doc/install.texi: Document them.
++      * config/avr/avr-c.c (avr_cpu_cpp_builtins)
++      <WITH_LIBF7_LIBGCC, WITH_LIBF7_MATH, WITH_LIBF7_MATH_SYMBOLS>
++      <WITH_DOUBLE_COMPARISON>: New built-in defines.
++      * doc/invoke.texi (AVR Built-in Macros): Document them.
++      * config/avr/avr-protos.h (avr_float_lib_compare_returns_bool): New.
++      * config/avr/avr.c (avr_float_lib_compare_returns_bool): New function.
++      * config/avr/avr.h (FLOAT_LIB_COMPARE_RETURNS_BOOL): New macro.
++
++2020-01-08  Richard Earnshaw  <address@hidden>
++
++      PR target/93188
++      * config/arm/t-multilib (MULTILIB_MATCHES): Add rules to match
++      armv7-a{+mp,+sec,+mp+sec} to appropriate armv7 multilib variants
++      when only building rm-profile multilibs.
++
++2020-01-08  Feng Xue  <address@hidden>
++
++      PR ipa/93084
++      * ipa-cp.c (self_recursively_generated_p): Find matched aggregate
++      lattice for a value to check.
++      (propagate_vals_across_arith_jfunc): Add an assertion to ensure
++      finite propagation in self-recursive scc.
++
++2020-01-08  Luo Xiong Hu  <address@hidden>
++
++      * ipa-inline.c (caller_growth_limits): Restore the AND.
++
++2020-01-07  Andrew Stubbs  <address@hidden>
++
++      * config/gcn/gcn-valu.md (VEC_1REG_INT_ALT): Delete iterator.
++      (VEC_ALLREG_ALT): New iterator.
++      (VEC_ALLREG_INT_MODE): New iterator.
++      (VCMP_MODE): New iterator.
++      (VCMP_MODE_INT): New iterator.
++      (vec_cmpu<mode>di): Use VCMP_MODE_INT.
++      (vec_cmp<u>v64qidi): New define_expand.
++      (vec_cmp<mode>di_exec): Use VCMP_MODE.
++      (vec_cmpu<mode>di_exec): New define_expand.
++      (vec_cmp<u>v64qidi_exec): New define_expand.
++      (vec_cmp<mode>di_dup): Use VCMP_MODE.
++      (vec_cmp<mode>di_dup_exec): Use VCMP_MODE.
++      (vcond<VEC_ALL1REG_MODE:mode><VEC_1REG_ALT:mode>): Rename ...
++      (vcond<VEC_ALLREG_MODE:mode><VEC_ALLREG_ALT:mode>): ... to this.
++      (vcond<VEC_ALL1REG_MODE:mode><VEC_1REG_ALT:mode>_exec): Rename ...
++      (vcond<VEC_ALLREG_MODE:mode><VEC_ALLREG_ALT:mode>_exec): ... to this.
++      (vcondu<VEC_ALL1REG_MODE:mode><VEC_1REG_INT_ALT:mode>): Rename ...
++      (vcondu<VEC_ALLREG_MODE:mode><VEC_ALLREG_INT_MODE:mode>): ... to this.
++      (vcondu<VEC_ALL1REG_MODE:mode><VEC_1REG_INT_ALT:mode>_exec): Rename ...
++      (vcondu<VEC_ALLREG_MODE:mode><VEC_ALLREG_INT_MODE:mode>_exec): ... to
++      this.
++      * config/gcn/gcn.c (print_operand): Fix 8 and 16 bit suffixes.
++      * config/gcn/gcn.md (expander): Add sign_extend and zero_extend.
++
++2020-01-07  Andrew Stubbs  <address@hidden>
++
++      * config/gcn/constraints.md (DA): Update description and match.
++      (DB): Likewise.
++      (Db): New constraint.
++      * config/gcn/gcn-protos.h (gcn_inline_constant64_p): Add second
++      parameter.
++      * config/gcn/gcn.c (gcn_inline_constant64_p): Add 'mixed' parameter.
++      Implement 'Db' mixed immediate type.
++      * config/gcn/gcn-valu.md (addcv64si3<exec_vcc>): Rework constraints.
++      (addcv64si3_dup<exec_vcc>): Delete.
++      (subcv64si3<exec_vcc>): Rework constraints.
++      (addv64di3): Rework constraints.
++      (addv64di3_exec): Rework constraints.
++      (subv64di3): Rework constraints.
++      (addv64di3_dup): Delete.
++      (addv64di3_dup_exec): Delete.
++      (addv64di3_zext): Rework constraints.
++      (addv64di3_zext_exec): Rework constraints.
++      (addv64di3_zext_dup): Rework constraints.
++      (addv64di3_zext_dup_exec): Rework constraints.
++      (addv64di3_zext_dup2): Rework constraints.
++      (addv64di3_zext_dup2_exec): Rework constraints.
++      (addv64di3_sext_dup2): Rework constraints.
++      (addv64di3_sext_dup2_exec): Rework constraints.
++
++2020-01-07  Andre Vieira  <address@hidden>
++
++      * doc/sourcebuild.texi (arm_little_endian, arm_nothumb): Documented
++      existing target checks.
++
++2020-01-07  Richard Biener  <address@hidden>
++
++      * doc/install.texi: Bump minimal supported MPC version.
++
++2020-01-07  Richard Sandiford  <address@hidden>
++
++      * langhooks-def.h (lhd_simulate_enum_decl): Declare.
++      (LANG_HOOKS_SIMULATE_ENUM_DECL): Use it.
++      * langhooks.c: Include stor-layout.h.
++      (lhd_simulate_enum_decl): New function.
++      * config/aarch64/aarch64-sve-builtins.cc (init_builtins): Call
++      handle_arm_sve_h for the LTO frontend.
++      (register_vector_type): Cope with null returns from pushdecl.
++
++2020-01-07  Richard Sandiford  <address@hidden>
++
++      * config/aarch64/aarch64-protos.h (aarch64_sve::svbool_type_p)
++      (aarch64_sve::nvectors_if_data_type): Replace with...
++      (aarch64_sve::builtin_type_p): ...this.
++      * config/aarch64/aarch64-sve-builtins.cc: Include attribs.h.
++      (find_vector_type): Delete.
++      (add_sve_type_attribute): New function.
++      (lookup_sve_type_attribute): Likewise.
++      (register_builtin_types): Add an "SVE type" attribute to each type.
++      (register_tuple_type): Likewise.
++      (svbool_type_p, nvectors_if_data_type): Delete.
++      (mangle_builtin_type): Use lookup_sve_type_attribute.
++      (builtin_type_p): Likewise.  Add an overload that returns the
++      number of constituent vector and predicate registers.
++      * config/aarch64/aarch64.c (aarch64_sve_argument_p): Delete.
++      (aarch64_returns_value_in_sve_regs_p): Use aarch64_sve::builtin_type_p
++      instead of aarch64_sve_argument_p.
++      (aarch64_takes_arguments_in_sve_regs_p): Likewise.
++      (aarch64_pass_by_reference): Likewise.
++      (aarch64_function_value_1): Likewise.
++      (aarch64_return_in_memory): Likewise.
++      (aarch64_layout_arg): Likewise.
++
++2020-01-07  Jakub Jelinek  <address@hidden>
++
++      PR tree-optimization/93156
++      * tree-ssa-ccp.c (bit_value_binop): For x * x note that the second
++      least significant bit is always clear.
++
++      PR tree-optimization/93118
++      * match.pd ((x >> c) << c -> x & (-1<<c)): Add nop_convert?.  Add new
++      simplifier with two intermediate conversions.
++
++2020-01-07  Martin Liska  <address@hidden>
++
++      * params.opt: Add Optimization for various parameters.
++
++2020-01-07  Martin Liska  <address@hidden>
++
++      PR ipa/83411
++      * doc/extend.texi: Explain cloning for target_clone
++      attribute.
+ 
+-      PR target/78478
+-      Revert:
+-      2013-11-05  Uros Bizjak  <address@hidden>
++2020-01-07  Martin Liska  <address@hidden>
+ 
+-      * config/i386/rtemself.h (LONG_DOUBLE_TYPE_SIZE): New define.
++      PR tree-optimization/92860
++      * common.opt: Make in Optimization option
++      as it is affected by -O0, which is an Optimization
++      option.
++      * tree-inline.c (tree_inlinable_function_p):
++      Use opt_for_fn for warn_inline.
++      (expand_call_inline): Likewise.
+ 
+-2017-01-19  Tamar Christina  <address@hidden>
++2020-01-07  Martin Liska  <address@hidden>
+ 
+-      * config/aarch64/aarch64.c (aarch64_simd_gen_const_vector_dup):
+-      Change int to HOST_WIDE_INT.
+-      * config/aarch64/aarch64-protos.h
+-      (aarch64_simd_gen_const_vector_dup): Likewise.
+-      * config/aarch64/aarch64-simd.md: Add copysign<mode>3.
+-
+-2017-01-19  David Malcolm  <address@hidden>
+-
+-      * langhooks-def.h (lhd_type_for_size): New decl.
+-      (LANG_HOOKS_TYPE_FOR_SIZE): Define as lhd_type_for_size.
+-      * langhooks.c (lhd_type_for_size): New function, taken from
+-      lto_type_for_size.
+-
+-2017-01-19  Pat Haugen  <address@hidden>
+-
+-      * config/rs6000/power9.md (power9-alu): Remove 'cmp' type and add
+-      define_bypass for CR latency.
+-      (power9-cracked-alu): Update bypass latency and remove power9-branch.
+-      (power9-alu2): Add define_bypass for CR latency.
+-      (power9-cmp): New.
+-      (power9-mul): Update insn latency.
+-      (power9-mul-compare): Update insn latency, bypass latency and remove
+-      power9-branch.
+-
+-2016-01-19  Kyrylo Tkachov  <address@hidden>
+-
+-      * config/aarch64/aarch64-protos.h (aarch64_nopcrelative_literal_loads):
+-      Delete.
+-      * config/aarch64/aarch64.md
+-      (aarch64_reload_movcp<GPF_TF:mode><P:mode>): Delete reference to
+-      aarch64_nopcrelative_literal_loads.
+-      (aarch64_reload_movcp<VALL:mode><P:mode>): Likewise.
+-
+-2017-01-19  Chenghua Xu  <address@hidden>
+-
+-      * config/mips/mips.h (ISA_HAS_FUSED_MADD4): Enable for
+-      TARGET_LOONGSON_3A.
+-      (ISA_HAS_UNFUSED_MADD4): Exclude TARGET_LOONGSON_3A.
+-
+-2017-01-19  Doug Gilmore  <address@hidden>
+-
+-      PR target/78176
+-      * config.gcc (supported_defaults): Add lxc1-sxc1.
+-      (with_lxc1_sxc1): Add validation.
+-      (all_defaults): Add lxc1-sxc1.
+-      * config/mips/mips.opt (mlxc1-sxc1): New option.
+-      * gcc/config/mips/mips.h (OPTION_DEFAULT_SPECS): Add a default for
+-      mlxc1-sxc1.
+-      (TARGET_CPU_CPP_BUILTINS): Add builtin_define for
+-      __mips_no_lxc1_sxc1.
+-      (ISA_HAS_LXC1_SXC1): Gate with mips_lxc1_sxc1.
+-      * gcc/doc/invoke.texi (-mlxc1-sxc1): Document the new option.
+-      * doc/install.texi (--with-lxc1-sxc1): Document the new option.
+-
+-2017-01-19  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/72488
+-      * tree-ssa-sccvn.c (run_scc_vn): When we abort the VN make
+-      sure to restore SSA info.
+-      * tree-ssa.c (verify_ssa): Verify SSA info is not shared.
+-
+-2017-01-19  Richard Earnshaw  <address@hidden>
+-
+-      PR rtl-optimization/79121
+-      * expr.c (expand_expr_real_2, case LSHIFT_EXPR): Look at the signedness
+-      of the inner type when shifting an extended value.
+-
+-2017-01-17  Jan Hubicka  <address@hidden>
+-
+-      PR lto/78407
+-      * symtab.c (symtab_node::equal_address_to): Fix comparing of
+-      interposable aliases.
+-
+-2017-01-18  Peter Bergner  <address@hidden>
+-
+-      PR target/78516
+-      * config/rs6000/spe.md (mov_si<mode>_e500_subreg0): Fix constraints.
+-      Use the evmergelohi instruction.
+-      (mov_si<mode>_e500_subreg4_2_le): Likewise.
+-      (mov_sitf_e500_subreg8_2_be): Likewise.
+-      (mov_sitf_e500_subreg12_2_le): Likewise.
+-      (mov_si<mode>_e500_subreg0_2_le): Fix constraints.
+-      (mov_si<mode>_e500_subreg4_2_be): Likewise.
+-      (mov_sitf_e500_subreg8_2_le): Likewise.
+-      (mov_sitf_e500_subreg12_2_be): Likewise.
+-
+-2017-01-18  Bill Schmidt  <address@hidden>
+-
+-      * config/rs6000/altivec.md (altivec_vbpermq): Change "type"
+-      attribute from vecsimple to vecperm.
+-      (altivec_vbpermq2): Likewise.
+-
+-2017-01-18  Bill Schmidt  <address@hidden>
+-
+-      PR target/79040
+-      * config/rs6000/altivec.h: Fix typo of vec_cntlz to vec_cnttz.
+-
+-2017-01-18  Aaron Sawdey  <address@hidden>
+-      * config/rs6000/rs6000-protos.h (expand_strn_compare): Add arg.
+-      * config/rs6000/rs6000.c (expand_strn_compare): Add ability to expand
+-      strcmp. Fix bug where comparison didn't stop with zero byte. Fix
+-      case where N arg is SIZE_MAX.
+-      * config/rs6000/rs6000.md (cmpstrnsi): Args to expand_strn_compare.
+-      (cmpstrsi): Add pattern.
+-
+-2017-01-18  Michael Meissner  <address@hidden>
+-
+-      * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
+-      __builtin_vec_revb builtins.
+-      * config/rs6000/rs6000-builtins.def (P9V_BUILTIN_XXBRQ_V16QI): Add
+-      built-in functions to support generation of the ISA 3.0 XXBR<x>
+-      vector byte reverse instructions.
+-      (P9V_BUILTIN_XXBRQ_V1TI): Likewise.
+-      (P9V_BUILTIN_XXBRD_V2DI): Likewise.
+-      (P9V_BUILTIN_XXBRD_V2DF): Likewise.
+-      (P9V_BUILTIN_XXBGW_V4SI): Likewise.
+-      (P9V_BUILTIN_XXBGW_V4SF): Likewise.
+-      (P9V_BUILTIN_XXBGH_V8HI): Likewise.
+-      (P9V_BUILTIN_VEC_REVB): Likewise.
+-      * config/rs6000/vsx.md (p9_xxbrq_v1ti): New insns/expanders to
+-      generate the ISA 3.0 XXBR<x> vector byte reverse instructions.
+-      (p9_xxbrq_v16qi): Likewise.
+-      (p9_xxbrd_<mode>, VSX_D iterator): Likewise.
+-      (p9_xxbrw_<mode>, VSX_W iterator): Likewise.
+-      (p9_xxbrh_v8hi): Likewise.
+-      * config/rs6000/altivec.h (vec_revb): Define if ISA 3.0.
+-      * doc/extend.texi (RS/6000 Altivec Built-ins): Document the
+-      vec_revb built-in functions.
+-
+-2017-01-18  Uros Bizjak  <address@hidden>
+-
+-      PR rtl-optimization/78952
+-      * config/i386/i386.md (any_extract): New code iterator.
+-      (*insvqi_2): Use any_extract for source operand.
+-      (*insvqi_3): Use any_shiftrt for source operand.
+-
+-2017-01-18  Wilco Dijkstra  <address@hidden>
+-
+-      * config/aarch64/aarch64.c (aarch64_sched_adjust_priority)
+-      New function.
+-      (TARGET_SCHED_ADJUST_PRIORITY): Define target hook.
+-
+-2017-01-18  Matthias Klose  <address@hidden>
+-
+-      * doc/install.texi: Allow default for --with-target-bdw-gc-include.
+-
+-2016-01-18  Bill Schmidt  <address@hidden>
+-
+-      * config/rs6000/altivec.h (vec_bperm): Change #define.
+-      * config/rs6000/altivec.md (UNSPEC_VBPERMD): New enum constant.
+-      (altivec_vbpermq2): New define_insn.
+-      (altivec_vbpermd): Likewise.
+-      * config/rs6000/rs6000-builtin.def (VBPERMQ2): New monomorphic
+-      function interface.
+-      (VBPERMD): Likewise.
+-      (VBPERM): New polymorphic function interface.
+-      * config/rs6000/r6000-c.c (altivec_overloaded_builtins_table):
+-      Add entries for P9V_BUILTIN_VEC_VBPERM.
+-      * doc/extend.texi: Add interfaces for vec_bperm.
+-
+-2017-01-18  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390-c.c (s390_expand_overloaded_builtin): Downcase
+-      first letter of error messages.
+-      (s390_resolve_overloaded_builtin): Likewise.
+-      * config/s390/s390.c (s390_expand_builtin): Likewise.
+-      (s390_invalid_arg_for_unprototyped_fn): Likewise.
+-      (s390_valid_target_attribute_inner_p): Likewise.
+-      * config/s390/s390.md ("tabort"): Likewise.
+-
+-2017-01-18  Toma Tabacu  <address@hidden>
+-
+-      * config/mips/mips.h (ISA_HAS_DIV3): Remove unused macro.
+-      (ISA_AVOID_DIV_HILO): New macro.
+-      (ISA_HAS_DIV): Use new ISA_AVOID_DIV_HILO macro.
+-      (ISA_HAS_DDIV): Likewise.
+-
+-2017-01-18  Markus Trippelsdorf  <address@hidden>
+-
+-      * doc/invoke.texi (fabi-version): Correct number of occurrences.
+-
+-2017-01-18  Markus Trippelsdorf  <address@hidden>
+-
+-      * doc/invoke.texi (fabi-version): Spelling fix.
+-
+-2017-01-18  Markus Trippelsdorf  <address@hidden>
+-
+-      PR c++/70182
+-      * doc/invoke.texi (fabi-version): Mention mangling fix for
+-      operator names.
+-
+-2017-01-18  Markus Trippelsdorf  <address@hidden>
+-
+-      PR c++/77489
+-      * doc/invoke.texi (fabi-version): Document discriminator mangling.
+-
+-2017-01-17  Segher Boessenkool  <address@hidden>
+-
+-      PR target/78875
+-      * config/rs6000/rs6000-opts.h (stack_protector_guard): New enum.
+-      * config/rs6000/rs6000.c (rs6000_option_override_internal): Handle
+-      the new options.
+-      * config/rs6000/rs6000.md (stack_protect_set): Handle the new more
+-      flexible settings.
+-      (stack_protect_test): Ditto.
+-      * config/rs6000/rs6000.opt (mstack-protector-guard=,
+-      mstack-protector-guard-reg=, mstack-protector-guard-offset=): New
+-      options.
+-      * doc/invoke.texi (Option Summary) [RS/6000 and PowerPC Options]:
+-      Add -mstack-protector-guard=, -mstack-protector-guard-reg=, and
+-      -mstack-protector-guard-offset=.
+-      (RS/6000 and PowerPC Options): Ditto.
+-
+-2017-01-17  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/i386.h (MASK_CLASS_P): New define.
+-      * config/i386/i386.c (inline_secondary_memory_needed): Ensure that
+-      there are no registers from different register sets also when
+-      mask registers are used.  Update function comment.
+-      * config/i386/i386.md (*movsi_internal): Split (*k/*krm) alternative
+-      to (*k/*r) and (*k/*km) alternatives.
+-
+-2017-01-17  Wilco Dijkstra  <address@hidden>
+-
+-      * config/aarch64/aarch64.md (eh_return): Remove pattern and splitter.
+-      * config/aarch64/aarch64.h (AARCH64_EH_STACKADJ_REGNUM): Remove.
+-      (EH_RETURN_HANDLER_RTX): New define.
+-      * config/aarch64/aarch64.c (aarch64_frame_pointer_required):
+-      Force frame pointer in EH return functions.
+-      (aarch64_expand_epilogue): Add barrier for eh_return.
+-      (aarch64_final_eh_return_addr): Remove.
+-      (aarch64_eh_return_handler_rtx): New function.
+-      * config/aarch64/aarch64-protos.h (aarch64_final_eh_return_addr):
+-      Remove.
+-      (aarch64_eh_return_handler_rtx): New prototype.
+-
+-2017-01-17  Bill Schmidt  <address@hidden>
+-
+-      * config/rs6000/altivec.h (vec_rlmi): New #define.
+-      (vec_vrlnm): Likewise.
+-      (vec_rlnm): Likewise.
+-      * config/rs6000/altivec.md (UNSPEC_VRLMI): New UNSPEC enum value.
+-      (UNSPEC_VRLNM): Likewise.
+-      (VIlong): New mode iterator.
+-      (altivec_vrl<VI_char>mi): New define_insn.
+-      (altivec_vrl<VI_char>nm): Likewise.
+-      * config/rs6000/rs6000-builtin.def (VRLWNM): New monomorphic
+-      function entry.
+-      (VRLDNM): Likewise.
+-      (RLNM): New polymorphic function entry.
+-      (VRLWMI): New monomorphic function entry.
+-      (VRLDMI): Likewise.
+-      (RLMI): New polymorphic function entry.
+-      * config/rs6000/r6000-c.c (altivec_overloaded_builtin_table): Add
+-      new entries for P9V_BUILTIN_VEC_RLMI and P9V_BUILTIN_VEC_RLNM.
+-      * doc/extend.texi: Add description of vec_rlmi, vec_rlnm, and
+-      vec_vrlnm.
+-
+-2017-01-17  Jakub Jelinek  <address@hidden>
+-
+-      PR debug/78839
+-      * dwarf2out.c (field_byte_offset): Restore the
+-      PCC_BITFIELD_TYPE_MATTERS behavior for INTEGER_CST DECL_FIELD_OFFSET
+-      and DECL_FIELD_BIT_OFFSET.  Use fold_build2 instead of build2 + fold.
+-      (analyze_variants_discr, gen_variant_part): Use fold_build2 instead
+-      of build2 + fold.
+-
+-2017-01-17  Eric Botcazou  <address@hidden>
+-
+-      PR ada/67205
+-      * config/aarch64/aarch64.c (TARGET_CUSTOM_FUNCTION_DESCRIPTORS): Define
+-
+-2017-01-17  Jakub Jelinek  <address@hidden>
+-
+-      PR debug/71669
+-      * dwarf2out.c (add_data_member_location_attribute): For constant
+-      offset bitfield emit for -gdwarf-5 DW_AT_data_bit_offset attribute
+-      instead of DW_AT_data_member_location, DW_AT_bit_offset and
+-      DW_AT_byte_size attributes.
+-
+-2017-01-17  Eric Botcazou  <address@hidden>
+-
+-      * config/rs6000/rs6000.c (rs6000_emit_move): Also use a TOC reference
+-      after forcing to constant memory when the code model is medium.
+-
+-2017-01-17  Julia Koval  <address@hidden>
+-
+-      PR target/76731
+-      * config/i386/avx512fintrin.h
+-      (_mm512_i32gather_ps): Change __addr type to void const*.
+-      (_mm512_mask_i32gather_ps): Ditto.
+-      (_mm512_i32gather_pd): Ditto.
+-      (_mm512_mask_i32gather_pd): Ditto.
+-      (_mm512_i64gather_ps): Ditto.
+-      (_mm512_mask_i64gather_ps): Ditto.
+-      (_mm512_i64gather_pd): Ditto.
+-      (_mm512_mask_i64gather_pd): Ditto.
+-      (_mm512_i32gather_epi32): Ditto.
+-      (_mm512_mask_i32gather_epi32): Ditto.
+-      (_mm512_i32gather_epi64): Ditto.
+-      (_mm512_mask_i32gather_epi64): Ditto.
+-      (_mm512_i64gather_epi32): Ditto.
+-      (_mm512_mask_i64gather_epi32): Ditto.
+-      (_mm512_i64gather_epi64): Ditto.
+-      (_mm512_mask_i64gather_epi64): Ditto.
+-      (_mm512_i32scatter_ps): Change __addr type to void*.
+-      (_mm512_mask_i32scatter_ps): Ditto.
+-      (_mm512_i32scatter_pd): Ditto.
+-      (_mm512_mask_i32scatter_pd): Ditto.
+-      (_mm512_i64scatter_ps): Ditto.
+-      (_mm512_mask_i64scatter_ps): Ditto.
+-      (_mm512_i64scatter_pd): Ditto.
+-      (_mm512_mask_i64scatter_pd): Ditto.
+-      (_mm512_i32scatter_epi32): Ditto.
+-      (_mm512_mask_i32scatter_epi32): Ditto.
+-      (_mm512_i32scatter_epi64): Ditto.
+-      (_mm512_mask_i32scatter_epi64): Ditto.
+-      (_mm512_i64scatter_epi32): Ditto.
+-      (_mm512_mask_i64scatter_epi32): Ditto.
+-      (_mm512_i64scatter_epi64): Ditto.
+-      (_mm512_mask_i64scatter_epi64): Ditto.
+-      * config/i386/avx512pfintrin.h
+-      (_mm512_mask_prefetch_i32gather_pd): Change __addr type to void const*.
+-      (_mm512_mask_prefetch_i32gather_ps): Ditto.
+-      (_mm512_mask_prefetch_i64gather_pd): Ditto.
+-      (_mm512_mask_prefetch_i64gather_ps): Ditto.
+-      (_mm512_prefetch_i32scatter_pd): Change __addr type to void*.
+-      (_mm512_prefetch_i32scatter_ps): Ditto.
+-      (_mm512_mask_prefetch_i32scatter_pd): Ditto.
+-      (_mm512_mask_prefetch_i32scatter_ps): Ditto.
+-      (_mm512_prefetch_i64scatter_pd): Ditto.
+-      (_mm512_prefetch_i64scatter_ps): Ditto.
+-      (_mm512_mask_prefetch_i64scatter_pd): Ditto.
+-      (_mm512_mask_prefetch_i64scatter_ps): Ditto.
+-      * config/i386/avx512vlintrin.h
+-      (_mm256_mmask_i32gather_ps): Change __addr type to void const*.
+-      (_mm_mmask_i32gather_ps): Ditto.
+-      (_mm256_mmask_i32gather_pd): Ditto.
+-      (_mm_mmask_i32gather_pd): Ditto.
+-      (_mm256_mmask_i64gather_ps): Ditto.
+-      (_mm_mmask_i64gather_ps): Ditto.
+-      (_mm256_mmask_i64gather_pd): Ditto.
+-      (_mm_mmask_i64gather_pd): Ditto.
+-      (_mm256_mmask_i32gather_epi32): Ditto.
+-      (_mm_mmask_i32gather_epi32): Ditto.
+-      (_mm256_mmask_i32gather_epi64): Ditto.
+-      (_mm_mmask_i32gather_epi64): Ditto.
+-      (_mm256_mmask_i64gather_epi32): Ditto.
+-      (_mm_mmask_i64gather_epi32): Ditto.
+-      (_mm256_mmask_i64gather_epi64): Ditto.
+-      (_mm_mmask_i64gather_epi64): Ditto.
+-      (_mm256_i32scatter_ps): Change __addr type to void*.
+-      (_mm256_mask_i32scatter_ps): Ditto.
+-      (_mm_i32scatter_ps): Ditto.
+-      (_mm_mask_i32scatter_ps): Ditto.
+-      (_mm256_i32scatter_pd): Ditto.
+-      (_mm256_mask_i32scatter_pd): Ditto.
+-      (_mm_i32scatter_pd): Ditto.
+-      (_mm_mask_i32scatter_pd): Ditto.
+-      (_mm256_i64scatter_ps): Ditto.
+-      (_mm256_mask_i64scatter_ps): Ditto.
+-      (_mm_i64scatter_ps): Ditto.
+-      (_mm_mask_i64scatter_ps): Ditto.
+-      (_mm256_i64scatter_pd): Ditto.
+-      (_mm256_mask_i64scatter_pd): Ditto.
+-      (_mm_i64scatter_pd): Ditto.
+-      (_mm_mask_i64scatter_pd): Ditto.
+-      (_mm256_i32scatter_epi32): Ditto.
+-      (_mm256_mask_i32scatter_epi32): Ditto.
+-      (_mm_i32scatter_epi32): Ditto.
+-      (_mm_mask_i32scatter_epi32): Ditto.
+-      (_mm256_i32scatter_epi64): Ditto.
+-      (_mm256_mask_i32scatter_epi64): Ditto.
+-      (_mm_i32scatter_epi64): Ditto.
+-      (_mm_mask_i32scatter_epi64): Ditto.
+-      (_mm256_i64scatter_epi32): Ditto.
+-      (_mm256_mask_i64scatter_epi32): Ditto.
+-      (_mm_i64scatter_epi32): Ditto.
+-      (_mm_mask_i64scatter_epi32): Ditto.
+-      (_mm256_i64scatter_epi64): Ditto.
+-      (_mm256_mask_i64scatter_epi64): Ditto.
+-      (_mm_i64scatter_epi64): Ditto.
+-      (_mm_mask_i64scatter_epi64): Ditto.
+-      * config/i386/i386-builtin-types.def (V16SF_V16SF_PCFLOAT_V16SI_HI_INT)
+-      (V8DF_V8DF_PCDOUBLE_V8SI_QI_INT, V8SF_V8SF_PCFLOAT_V8DI_QI_INT)
+-      (V8DF_V8DF_PCDOUBLE_V8DI_QI_INT, V16SI_V16SI_PCINT_V16SI_HI_INT)
+-      (V8DI_V8DI_PCINT64_V8SI_QI_INT, V8SI_V8SI_PCINT_V8DI_QI_INT)
+-      (V8DI_V8DI_PCINT64_V8DI_QI_INT, V2DF_V2DF_PCDOUBLE_V4SI_QI_INT)
+-      (V4DF_V4DF_PCDOUBLE_V4SI_QI_INT, V2DF_V2DF_PCDOUBLE_V2DI_QI_INT)
+-      (V4DF_V4DF_PCDOUBLE_V4DI_QI_INT, V4SF_V4SF_PCFLOAT_V4SI_QI_INT)
+-      (V8SF_V8SF_PCFLOAT_V8SI_QI_INT, V4SF_V4SF_PCFLOAT_V2DI_QI_INT)
+-      (V4SF_V4SF_PCFLOAT_V4DI_QI_INT, V2DI_V2DI_PCINT64_V4SI_QI_INT)
+-      (V4DI_V4DI_PCINT64_V4SI_QI_INT, V2DI_V2DI_PCINT64_V2DI_QI_INT)
+-      (V4DI_V4DI_PCINT64_V4DI_QI_INT, V4SI_V4SI_PCINT_V4SI_QI_INT)
+-      (V8SI_V8SI_PCINT_V8SI_QI_INT, V4SI_V4SI_PCINT_V2DI_QI_INT)
+-      (V4SI_V4SI_PCINT_V4DI_QI_INT, VOID_PFLOAT_HI_V16SI_V16SF_INT)
+-      (VOID_PFLOAT_QI_V8SI_V8SF_INT, VOID_PFLOAT_QI_V4SI_V4SF_INT)
+-      (VOID_PDOUBLE_QI_V8SI_V8DF_INT, VOID_PDOUBLE_QI_V4SI_V4DF_INT)
+-      (VOID_PDOUBLE_QI_V4SI_V2DF_INT, VOID_PFLOAT_QI_V8DI_V8SF_INT)
+-      (VOID_PFLOAT_QI_V4DI_V4SF_INT, VOID_PFLOAT_QI_V2DI_V4SF_INT)
+-      (VOID_PDOUBLE_QI_V8DI_V8DF_INT, VOID_PDOUBLE_QI_V4DI_V4DF_INT)
+-      (VOID_PDOUBLE_QI_V2DI_V2DF_INT, VOID_PINT_HI_V16SI_V16SI_INT)
+-      (VOID_PINT_QI_V8SI_V8SI_INT, VOID_PINT_QI_V4SI_V4SI_INT)
+-      (VOID_PLONGLONG_QI_V8SI_V8DI_INT, VOID_PLONGLONG_QI_V4SI_V4DI_INT)
+-      (VOID_PLONGLONG_QI_V4SI_V2DI_INT, VOID_PINT_QI_V8DI_V8SI_INT)
+-      (VOID_PINT_QI_V4DI_V4SI_INT, VOID_PINT_QI_V2DI_V4SI_INT)
+-      (VOID_PLONGLONG_QI_V8DI_V8DI_INT, VOID_QI_V8SI_PCINT64_INT_INT)
+-      (VOID_PLONGLONG_QI_V4DI_V4DI_INT, VOID_PLONGLONG_QI_V2DI_V2DI_INT)
+-      (VOID_HI_V16SI_PCINT_INT_INT, VOID_QI_V8DI_PCINT64_INT_INT)
+-      (VOID_QI_V8DI_PCINT_INT_INT): Remove.
+-      (V16SF_V16SF_PCVOID_V16SI_HI_INT,  V8DF_V8DF_PCVOID_V8SI_QI_INT)
+-      (V8SF_V8SF_PCVOID_V8DI_QI_INT, V8DF_V8DF_PCVOID_V8DI_QI_INT)
+-      (V16SI_V16SI_PCVOID_V16SI_HI_INT, V8DI_V8DI_PCVOID_V8SI_QI_INT)
+-      (V8SI_V8SI_PCVOID_V8DI_QI_INT, V8DI_V8DI_PCVOID_V8DI_QI_INT)
+-      (VOID_PVOID_HI_V16SI_V16SF_INT, VOID_PVOID_QI_V8SI_V8DF_INT)
+-      (VOID_PVOID_QI_V8DI_V8SF_INT, VOID_PVOID_QI_V8DI_V8DF_INT)
+-      (VOID_PVOID_HI_V16SI_V16SI_INT, VOID_PVOID_QI_V8SI_V8DI_INT)
+-      (VOID_PVOID_QI_V8DI_V8SI_INT, VOID_PVOID_QI_V8DI_V8DI_INT)
+-      (V2DF_V2DF_PCVOID_V4SI_QI_INT, V4DF_V4DF_PCVOID_V4SI_QI_INT)
+-      (V2DF_V2DF_PCVOID_V2DI_QI_INT, V4DF_V4DF_PCVOID_V4DI_QI_INT
+-      (V4SF_V4SF_PCVOID_V4SI_QI_INT, V8SF_V8SF_PCVOID_V8SI_QI_INT)
+-      (V4SF_V4SF_PCVOID_V2DI_QI_INT, V4SF_V4SF_PCVOID_V4DI_QI_INT)
+-      (V2DI_V2DI_PCVOID_V4SI_QI_INT, V4DI_V4DI_PCVOID_V4SI_QI_INT)
+-      (V2DI_V2DI_PCVOID_V2DI_QI_INT, V4DI_V4DI_PCVOID_V4DI_QI_INT)
+-      (V4SI_V4SI_PCVOID_V4SI_QI_INT, V8SI_V8SI_PCVOID_V8SI_QI_INT)
+-      (V4SI_V4SI_PCVOID_V2DI_QI_INT, V4SI_V4SI_PCVOID_V4DI_QI_INT)
+-      (VOID_PVOID_QI_V8SI_V8SF_INT, VOID_PVOID_QI_V4SI_V4SF_INT)
+-      (VOID_PVOID_QI_V4SI_V4DF_INT, VOID_PVOID_QI_V4SI_V2DF_INT)
+-      (VOID_PVOID_QI_V4DI_V4SF_INT, VOID_PVOID_QI_V2DI_V4SF_INT)
+-      (VOID_PVOID_QI_V4DI_V4DF_INT, VOID_PVOID_QI_V2DI_V2DF_INT)
+-      (VOID_PVOID_QI_V8SI_V8SI_INT, VOID_PVOID_QI_V4SI_V4SI_INT)
+-      (VOID_PVOID_QI_V4SI_V4DI_INT, VOID_PVOID_QI_V4SI_V2DI_INT)
+-      (VOID_PVOID_QI_V4DI_V4SI_INT, VOID_PVOID_QI_V2DI_V4SI_INT)
+-      (VOID_PVOID_QI_V4DI_V4DI_INT, VOID_PVOID_QI_V2DI_V2DI_INT)
+-      (VOID_QI_V8SI_PCVOID_INT_INT, VOID_HI_V16SI_PCVOID_INT_INT)
+-      (VOID_QI_V8DI_PCVOID_INT_INT): Add.
+-      * config/i386/i386.c (ix86_init_mmx_sse_builtins): Adjust builtin
+-      definitions accordingly.
+-
+-2017-01-17  Kito Cheng  <address@hidden>
+-          Kuan-Lin Chen  <address@hidden>
+-
+-      PR target/79079
+-      * internal-fn.c (expand_mul_overflow): Use convert_modes instead of
+-      gen_lowpart.
+-
+-2017-01-17  Vladimir Makarov  <address@hidden>
+-
+-      PR target/79058
+-      * ira-conflicts.c (ira_build_conflicts): Update total conflict
+-      hard regs for inner regno.
+-
+-2017-01-17  Martin Liska  <address@hidden>
+-
+-      PR ipa/71207
+-      * ipa-polymorphic-call.c (contains_type_p): Fix wrong
+-      assumption and add comment.
+-
+-2017-01-17  Nathan Sidwell  <address@hidden>
+-
+-      * ipa-visibility.c (localize_node): New function, broken out of ...
+-      (function_and_variable_visibility): ... here. Call it.
+-
+-2017-01-17  Jan Hubicka  <address@hidden>
+-
+-      PR middle-end/77445
+-      * tree-ssa-threadupdate.c (remove_ctrl_stmt_and_useless_edges):
+-      correctly set frequency of oudgoing edge.
+-      (duplicate_thread_path): Fix profile updating.
+-
+-2017-01-17  Jakub Jelinek  <address@hidden>
+-
+-      PR other/79046
+-      * configure.ac: Add GCC_BASE_VER.
+-      * Makefile.in (version): Use @get_gcc_base_ver@ instead of cat to get
+-      version from BASE-VER file.
+-      (CFLAGS-gcc.o): Add -DBASEVER=$(BASEVER_s).
+-      (gcc.o): Depend on $(BASEVER).
+-      * common.opt (dumpfullversion): New option.
+-      * gcc.c (driver_handle_option): Handle OPT_dumpfullversion.
+-      * doc/invoke.texi: Document -dumpfullversion.
+-      * doc/install.texi: Document --with-gcc-major-version-only.
+-      * configure: Regenerated.
++      PR tree-optimization/92860
++      * common.opt: Make flag_ree as optimization
++      attribute. 
+ 
+-2017-01-17  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/71433
+-      * tree-vrp.c (register_new_assert_for): Merge same asserts
+-      on all incoming edges.
+-      (process_assert_insertions_for): Handle insertions at the
+-      beginning of BBs.
++2020-01-07  Martin Liska  <address@hidden>
+ 
+-2017-01-17  Gerald Pfeifer  <address@hidden>
++      PR optimization/92860
++      * params.opt: Mark param_min_crossjump_insns with Optimization
++      keyword.
+ 
+-      * config/i386/cygwin.h (LIBGCJ_SONAME): Remove.
+-      * config/i386/mingw32.h (LIBGCJ_SONAME): Remove.
++2020-01-07  Luo Xiong Hu  <address@hidden>
+ 
+-2017-01-17  Kaz Kojima  <address@hidden>
++      * ipa-inline-analysis.c (estimate_growth): Fix typo.
++      * ipa-inline.c (caller_growth_limits): Use OR instead of AND.
+ 
+-      PR target/78633
+-      * config/sh/sh.md (cmpeqsi_t+1): Call copy_rtx to avoid invalid
+-      RTL sharing.
++2020-01-06  Michael Meissner  <address@hidden>
+ 
+-2017-01-17  Alan Modra  <address@hidden>
++      * config/rs6000/rs6000.c (hard_reg_and_mode_to_addr_mask): New
++      helper function to return the valid addressing formats for a given
++      hard register and mode.
++      (rs6000_adjust_vec_address): Call hard_reg_and_mode_to_addr_mask.
+ 
+-      PR target/79066
+-      * config/rs6000/rs6000.md (elf_high, elf_low): Disable when pic.
+-      * config/rs6000/rs6000.c (rs6000_emit_allocate_stack): Don't allow
+-      symbolic stack limit when pic.
++      * config/rs6000/constraints.md (Q constraint): Update
++      documentation.
++      * doc/md.texi (RS/6000 constraints): Update 'Q' cosntraint
++      documentation.
+ 
+-2017-01-16  Martin Sebor  <address@hidden>
++      * config/rs6000/vsx.md (vsx_extract_<mode>_var, VSX_D iterator):
++      Use 'Q' for doing vector extract from memory.
++      (vsx_extract_v4sf_var): Use 'Q' for doing vector extract from
++      memory.
++      (vsx_extract_<mode>_var, VSX_EXTRACT_I iterator): Use 'Q' for
++      doing vector extract from memory.
++      (vsx_extract_<mode>_<VS_scalar>mode_var): Use 'Q' for doing vector
++      extract from memory.
+ 
+-      PR tree-optimization/78608
+-      * gimple-ssa-sprintf.c (tree_digits): Avoid negating TYPE_MIN.
++      * config/rs6000/rs6000.c (rs6000_adjust_vec_address): Add support
++      for the offset being 34-bits when -mcpu=future is used.
+ 
+-2017-01-16  Jeff Law  <address@hidden>
++2020-01-06  John David Anglin  <address@hidden>
+ 
+-      Revert:
+-      2016-12-02  Tadek Kijkowski  <address@hidden>
+-      * Makefile.in (PREPROCESSOR_DEFINES): Add a level of indirection
+-      for several include directories that may be relative to sysroot.
+-      * config/i386/x-mingw32 (gplus_includedir): Define.
+-      (gplus_tool_includedir, gplus_backward_include_dir): Likewise.
+-      (native_system_includedir): Likewise.
+-      * config/i386/mingw32.h (STANDARD_STARTFILE_PREFIX_1): Do not
+-      override if TARGET_SYSTEM_ROOT is defined.
+-      (NATIVE_SYSTEM_HEADER_DIR): Likewise.
++      * config/pa/pa.md: Revert change to use ordered_comparison_operator
++      instead of cmpib_comparison_operator in cmpib patterns.
++      * config/pa/predicates.md (cmpib_comparison_operator): Revert removal
++      of cmpib_comparison_operator.  Revise comment.
+ 
+-      PR tree-optimization/79090
+-      PR tree-optimization/33562
+-      PR tree-optimization/61912
+-      PR tree-optimization/77485
+-      * tree-ssa-dse.c (compute_trims): Accept STMT argument.  Dump STMT
+-      and computed trims into the dump file.
++2020-01-06  Richard Sandiford  <address@hidden>
+ 
+-2017-01-17  Uros Bizjak  <address@hidden>
++      * tree-vect-slp.c (vect_build_slp_tree_1): Require all shifts
++      in an IFN_DIV_POW2 node to be equal.
+ 
+-      * config/i386/i386.h (LIMIT_RELOAD_CLASS): Remove.
++2020-01-06  Richard Sandiford  <address@hidden>
+ 
+-2017-01-16  Jakub Jelinek  <address@hidden>
++      * tree-vect-stmts.c (vect_check_load_store_mask): Rename to...
++      (vect_check_scalar_mask): ...this.
++      (vectorizable_store, vectorizable_load): Update call accordingly.
++      (vectorizable_call): Use vect_check_scalar_mask to check the mask
++      argument in calls to conditional internal functions.
+ 
+-      PR c/79089
+-      * gimplify.c (gimplify_init_constructor): If want_value and
+-      object == lhs, unshare lhs to avoid invalid tree sharing.  Formatting
+-      fix.
++2020-01-06  Andrew Stubbs  <address@hidden>
+ 
+-      PR target/79080
+-      * loop-doloop.c (doloop_modify): Call unshare_all_rtl_in_chain on
+-      sequence.  Formatting fixes.
+-      (doloop_optimize): Formatting fixes.
++      * config/gcn/gcn-valu.md (subv64di3): Use separate alternatives for
++      '0' matching inputs.
++      (subv64di3_exec): Likewise.
+ 
+-      PR driver/49726
+-      * gcc.c (debug_level_greater_than_spec_func): New function.
+-      (static_spec_functions): Add debug-level-gt spec function.
+-      (ASM_DEBUG_SPEC, cpp_options): Use %:debug-level-gt(0) instead of
+-      !g0.
+-      * config/darwin.h (DSYMUTIL_SPEC, ASM_DEBUG_SPEC): Likewise.
+-      * config/darwin9.h (DSYMUTIL_SPEC, ASM_DEBUG_SPEC): Likewise.
+-      * common.opt (g, gcoff, gdwarf, gdwarf-, ggdb, gno-pubnames,
+-      gpubnames, ggnu-pubnames, gno-record-gcc-switches,
+-      grecord-gcc-switches, gno-strict-dwarf, gstrict-dwarf, gstabs,
+-      gstabs+, gtoggle, gvms, gxcoff, gxcoff+): Add Driver flag.
++2020-01-06  Bryan Stenson  <address@hidden>
+ 
+-2017-01-16  Uros Bizjak  <address@hidden>
++      * config/mips/mips.c (vr4130_align_insns): Fix typo.
++      * doc/md.texi (movstr): Likewise.
+ 
+-      * config/i386/i386.h (HARD_REGNO_CALLER_SAVE_MODE): Apply HImode and
+-      QImode fixups to general and mask registers only.
++2020-01-06  Andrew Stubbs  <address@hidden>
+ 
+-2017-01-16  Carl Love  <address@hidden>
++      * config/gcn/gcn-valu.md (vec_extract<mode><scalar_mode>): Add early
++      clobber.
+ 
+-      * config/rs6000/rs6000-c (altivec_overloaded_builtins): Add support
+-      for built-in functions
+-      vector signed char vec_nabs (vector signed char)
+-      vector signed short vec_nabs (vector signed short)
+-      vector signed int vec_nabs (vector signed int)
+-      vector signed long long vec_nabs (vector signed long long)
+-      vector float vec_nabs (vector float)
+-      vector double vec_nabs (vector double)
+-      * config/rs6000/rs6000-builtin.def: Add definitions for NABS functions
+-      and NABS overload.
+-      * config/rs6000/altivec.md: New define_expand nabs<mode>2 types
+-      * config/rs6000/altivec.h: New define for vec_nabs built-in function.
+-      * doc/extend.texi: Update the documentation file for the new built-in
+-      functions.
++2020-01-06  Richard Sandiford  <address@hidden>
+ 
+-2017-01-16  Martin Sebor  <address@hidden>
++      * config/aarch64/t-aarch64 ($(srcdir)/config/aarch64/aarch64-tune.md):
++      Depend on...
++      (s-aarch64-tune-md): ...this new stamp file.  Pipe the new contents
++      to a temporary file and use move-if-change to update the real
++      file where necessary.
+ 
+-      * gimple-ssa-sprintf.c (format_directive): Correct a typo in a warning
+-      message.
++2020-01-06  Richard Sandiford  <address@hidden>
+ 
+-2017-01-16  Bill Schmidt  <address@hidden>
++      * config/aarch64/aarch64-sve.md (@aarch64_sel_dup<mode>): Use Upl
++      rather than Upa for CPY /M.
+ 
+-      * config/rs6000/rs6000.c (rtx_is_swappable_p): Change
+-      UNSPEC_VSX__XXSPLTD to require special splat handling.
++2020-01-06  Andrew Stubbs  <address@hidden>
+ 
+-2017-01-16  David Malcolm  <address@hidden>
++      * config/gcn/gcn.c (gcn_inline_constant_p): Allow 64 as an inline
++      immediate.
+ 
+-      PR bootstrap/78616
+-      * system.h: Poison strndup.
+-
+-2017-01-16  Alan Modra  <address@hidden>
++2020-01-06  Martin Liska  <address@hidden>
+ 
+-      PR target/79098
+-      * config/rs6000/rs6000.c (rs6000_legitimate_combined_insn): Don't
+-      use a switch.
+-
+-2017-01-16  Georg-Johann Lay  <address@hidden>
++    PR tree-optimization/92860
++    * params.opt: Mark param_max_combine_insns with Optimization
++    keyword. 
+ 
+-      * config/avr/avr.h (BRANCH_COST) [reload_completed]: Increase by 4.
++2020-01-05  Jakub Jelinek  <address@hidden>
+ 
+-2017-01-15  Uros Bizjak  <address@hidden>
++      PR target/93141
++      * config/i386/i386.md (SWIDWI): New mode iterator.
++      (DWI, dwi): Add TImode variants.
++      (addv<mode>4): Use SWIDWI iterator instead of SWI.  Use
++      <general_hilo_operand> instead of <general_operand>.  Use
++      CONST_SCALAR_INT_P instead of CONST_INT_P.
++      (*addv<mode>4_1): Rename to ...
++      (addv<mode>4_1): ... this.
++      (QWI): New mode attribute.
++      (*addv<dwi>4_doubleword, *addv<dwi>4_doubleword_1): New
++      define_insn_and_split patterns.
++      (*addv<mode>4_overflow_1, *addv<mode>4_overflow_2): New define_insn
++      patterns.
++      (uaddv<mode>4): Use SWIDWI iterator instead of SWI.  Use
++      <general_hilo_operand> instead of <general_operand>.
++      (*addcarry<mode>_1): New define_insn.
++      (*add<dwi>3_doubleword_cc_overflow_1): New define_insn_and_split.
++
++2020-01-03  Konstantin Kharlamov  <address@hidden>
++
++      * gdbinit.in (pr, prl, pt, pct, pgg, pgq, pgs, pge, pmz, pdd, pbs, pbm):
++      Use "call" instead of "set".
++
++2020-01-03  Martin Jambor  <address@hidden>
+ 
+-      * config/i386/i386.c (ix86_legitimate_combined_insn): Do not
+-      call recog here.  Assert that INSN_CODE (insn) is non-negative.
++      PR ipa/92917
++      * ipa-cp.c (print_all_lattices): Skip functions without info.
++
++2020-01-03  Jakub Jelinek  <address@hidden>
+ 
+-2017-01-15  Segher Boessenkool  <address@hidden>
+-
+-      PR target/72749
+-      * cfgrtl.c (rtl_split_edge): Also patch jump insns that jump to the
+-      fallthrough.
+-      * haifa-sched.c (dump_insn_stream): Don't crash if there is a label
+-      in the currently scheduled RTL fragment.
+-
+-2017-01-15  Segher Boessenkool  <address@hidden>
+-
+-      PR rtl-optimization/78751
+-      * ifcvt.c (find_cond_trap): If we generated a non-existing insn,
+-      give up.
+-
+-2017-01-14  Jeff Law  <address@hidden>
+-
+-      PR tree-optimization/79090
+-      * tree-ssa-dse.c (valid_ao_ref_for_dse): Reject zero length and
+-      variable length stores.
+-      (compute_trims): Delete dead assignment to *trim_tail.
+-      (dse_dom_walker::dse_optimize_stmt): Optimize mem* calls with
+-      zero length.
+-
+-2017-01-14  Bernd Schmidt  <address@hidden>
+-
+-      PR rtl-optimization/78626
+-      PR rtl-optimization/78727
+-      * cprop.c (one_cprop_pass): Collect unconditional traps in the middle
+-      of a block, and split such blocks after everything else is finished.
+-
+-2017-01-14  Alan Modra  <address@hidden>
+-
+-      PR target/72749
+-      * combine.c (recog_for_combine_1): Set INSN_CODE before calling
+-      target legitimate_combined_insn.
+-      * config/rs6000/rs6000.c (TARGET_LEGITIMATE_COMBINED_INSN): Define.
+-      (rs6000_legitimate_combined_insn): New function.
+-      * config/rs6000/rs6000.md (UNSPEC_DOLOOP): Delete, and remove
+-      all uses.
+-      (ctr<mode>_internal3): Rename from *ctr<mode>_internal5.
+-      (ctr<mode>_internal4): Rename from *ctr<mode>_internal6.
+-      (ctr<mode>_internal1, ctr<mode>_internal2): Remove '*' from name.
+-
+-2017-01-14  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/frontends.texi (G++ and GCC): Remove references to Java.
+-
+-2017-01-13  Jeff Law  <address@hidden>
+-
+-      PR tree-optimization/33562
+-      PR tree-optimization/61912
+-      PR tree-optimization/77485
+-      * tree-ssa-dse.c (delete_dead_call): Accept gsi rather than
+-      a statement.
+-      (delete_dead_assignment): Likewise.
+-      (dse_dom_walker::dse_optimize_stmt): Pass in the gsi rather than
+-      statement to delete_dead_call and delete_dead_assignment.
+-
+-2017-01-13  David Malcolm  <address@hidden>
+-
+-      PR c/78304
+-      * substring-locations.c (format_warning_va): Strengthen case 1 so
+-      that both endpoints of the substring must be within the format
+-      range for just the substring to be printed.
+-
+-2017-01-13  Uros Bizjak  <address@hidden>
++      PR target/93089
++      * config/i386/i386-options.c (ix86_simd_clone_adjust): If
++      TARGET_PREFER_AVX128, use prefer-vector-width=256 for 'c' and 'd'
++      simd clones.  If TARGET_PREFER_AVX256, use prefer-vector-width=512
++      for 'e' simd clones.
+ 
+-      * config/i386/i386.opt (msgx): Use ix86_isa_flags2 variable.
+-      * config/i386/i386.c (ix86_target_string): Add missing options
+-      to isa_opts and reorder options by implied ISAs.  Rename isa_opts2 to
+-      isa2_opts, ix86_flag_opts to flag2_opts, ix86_target_other to
+-      flags_other and ix86_target_other to flags2_other.  Display unknown
+-      isa2 options.
+-      (ix86_valid_target_attribute_inner_p): Add missing options and
+-      reorder options by implied ISAs, as in ix86_target_string.
++      PR target/93089
++      * config/i386/i386.opt (x_prefer_vector_width_type): Remove TargetSave
++      entry.
++      (mprefer-vector-width=): Add Save.
++      * config/i386/i386-options.c (ix86_target_string): Add PVW argument, 
print
++      -mprefer-vector-width= if non-zero.  Fix up -mfpmath= comment.
++      (ix86_debug_options, ix86_function_specific_print): Adjust
++      ix86_target_string callers.
++      (ix86_valid_target_attribute_inner_p): Handle prefer-vector-width=.
++      (ix86_valid_target_attribute_tree): Likewise.
++      * config/i386/i386-options.h (ix86_target_string): Add PVW argument.
++      * config/i386/i386-expand.c (ix86_expand_builtin): Adjust
++      ix86_target_string caller.
+ 
+-2017-01-13  Richard Sandiford  <address@hidden>
+-
+-      * hash-table.h (hash_table::too_empty_p): New function.
+-      (hash_table::expand): Use it.
+-      (hash_table::traverse): Likewise.
+-      (hash_table::empty_slot): Use sizeof (value_type) instead of
+-      sizeof (PTR) to convert bytes to elements.  Shrink the table
+-      if the current size is excessive for the current number of
+-      elements.
+-
+-2017-01-13  Richard Sandiford  <address@hidden>
+-
+-      * ira-costs.c (record_reg_classes): Break from the inner loop
+-      early once alt_fail is known to be true.  Update outer loop
+-      handling accordingly.
+-
+-2017-01-13  Jeff Law  <address@hidden>
+-
+-      * tree-ssa-dse.c (decrement_count): New function.
+-      (increment_start_addr, maybe_trim_memstar_call): Likewise.
+-      (dse_dom_walker::optimize_stmt): Call maybe_trim_memstar_call directly
+-      when we know the partially dead statement is a mem* function.
+-
+-      PR tree-optimization/61912
+-      PR tree-optimization/77485
+-      * tree-ssa-dse.c: Include expr.h.
+-      (maybe_trim_constructor_store): New function.
+-      (maybe_trim_partially_dead_store): Call maybe_trim_constructor_store.
+-
+-      PR tree-optimization/33562
+-      PR tree-optimization/61912
+-      PR tree-optimization/77485
+-      * doc/invoke.texi: Document new dse-max-object-size param.
+-      * params.def (PARM_DSE_MAX_OBJECT_SIZE): New PARAM.
+-      * tree-ssa-dse.c: Include params.h.
+-      (dse_store_status): New enum.
+-      (initialize_ao_ref_for_dse): New, partially extracted from
+-      dse_optimize_stmt.
+-      (valid_ao_ref_for_dse, normalize_ref): New.
+-      (setup_live_bytes_from_ref, compute_trims): Likewise.
+-      (clear_bytes_written_by, maybe_trim_complex_store): Likewise.
+-      (maybe_trim_partially_dead_store): Likewise.
+-      (maybe_trim_complex_store): Likewise.
+-      (dse_classify_store): Renamed from dse_possibly_dead_store_p.
+-      Track what bytes live from the original store.  Return tri-state
+-      for dead, partially dead or live.
+-      (dse_dom_walker): Add constructor, destructor and new private members.
+-      (delete_dead_call, delete_dead_assignment): New extracted from
+-      dse_optimize_stmt.
+-      (dse_optimize_stmt): Make a member of dse_dom_walker.
+-      Use initialize_ao_ref_for_dse.
+-
+-      PR tree-optimization/33562
+-      PR tree-optimization/61912
+-      PR tree-optimization/77485
+-      * sbitmap.h (bitmap_count_bits): Prototype.
+-      (bitmap_clear_range, bitmap_set_range): Likewise.
+-      * sbitmap.c (bitmap_clear_range): New function.
+-      (bitmap_set_range, sbitmap_popcount, bitmap_count_bits): Likewise.
+-
+-2017-01-13  Martin Liska  <address@hidden>
+-
+-      PR ipa/79043
+-      * function.c (set_cfun): Add new argument force.
+-      * function.h (set_cfun): Likewise.
+-      * ipa-inline-transform.c (inline_call): Use the function when
+-      strict alising from is dropped for function we inline to.
+-
+-2017-01-13  Richard Biener  <address@hidden>
+-
+-      * tree-pretty-print.c (dump_generic_node): Fix inverted condition
+-      for dumping GIMPLE INTEGER_CSTs.
+-
+-2017-01-13  Rainer Orth  <address@hidden>
+-
+-      * config/sol2.h (TARGET_OS_CPP_BUILTINS): Define __STDC_VERSION__
+-      to 201112L since C++17.
+-
+-2017-01-13  Maxim Ostapenko  <address@hidden>
+-
+-      PR sanitizer/78887
+-      * asan.c (asan_needs_odr_indicator_p): Don't emit ODR indicators
+-      if -fsanitize=kernel-address is present.
+-
+-2017-01-13  Richard Biener  <address@hidden>
+-
+-      * tree-pretty-print.c (dump_generic_node): Dump INTEGER_CSTs
+-      as _Literal ( type ) number in case usual suffixes do not
+-      preserve all information.
+-
+-2017-01-13  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/77283
+-      * gimple-ssa-split-paths.c: Include gimple-ssa.h, tree-phinodes.h
+-      and ssa-iterators.h.
+-      (is_feasible_trace): Implement a cost model based on joiner
+-      PHI node uses.
+-
+-2017-01-12  Michael Meissner  <address@hidden>
+-
+-      PR target/79004
+-      * config/rs6000/rs6000.md (FP_ISA3): Do not optimize converting
+-      char or short to __float128/_Float128 directly.
+-
+-2017-01-12  Martin Sebor  <address@hidden>
+-
+-      to -Wformat-overflow.
+-      * gimple-ssa-sprintf.c (pass_sprintf_length::gate): Adjust.
+-      (min_bytes_remaining): Same.
+-      (get_string_length): Same.
+-      (format_string): Same.
+-      (format_directive): Same.
+-      (add_bytes): Same.
+-      (pass_sprintf_length::handle_gimple_call): Same.
+-
+-2017-01-12  Jakub Jelinek  <address@hidden>
+-
+-      * gimple-ssa-sprintf.c (try_substitute_return_value): Remove
+-      info.nowrite calls with no lhs that can't throw.  Return bool
+-      whether gsi_remove has been called or not.
+-      (pass_sprintf_length::handle_gimple_call): Return bool whether
+-      try_substitute_return_value called gsi_remove.  Formatting fix.
+-      (pass_sprintf_length::execute): Don't use gsi_remove if
+-      handle_gimple_call returned true.
+-
+-      PR bootstrap/79069
+-      * cfgrtl.c (rtl_tidy_fallthru_edge): For any_uncondjump_p that can't
+-      be removed due to side-effects, don't remove following barrier nor
+-      turn the successor edge into fallthru edge.
+-
+-2017-01-12  Bill Schmidt  <address@hidden>
+-
+-      PR target/79044
+-      * config/rs6000/rs6000.c (insn_is_swappable_p): Mark
+-      element-reversing loads and stores as not swappable.
+-
+-2017-01-12  Nathan Sidwell  <address@hidden>
+-          Nicolai Stange  <address@hidden>
+-
+-      * combine.c (try_combine): Don't ignore result of overlap checking
+-      loop.  Combine overlap & asm check into single loop.
+-
+-2017-01-12  Richard Biener  <address@hidden>
+-
+-      * tree-pretty-print.c (dump_generic_node): Provide -gimple
+-      variant for MEM_REF.  Sanitize INTEGER_CST for -gimple.
+-
+-2017-01-12  Richard Biener  <address@hidden>
+-
+-      * tree.c (initialize_tree_contains_struct): Make TS_OPTIMIZATION
+-      and TS_TARGET_OPTION directly derive from TS_BASE.
+-      * tree-core.h (tree_optimization_option): Derive from tree_base.
+-      (tree_target_option): Likewise.
+-
+-2017-01-11  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/i386.c (memory_address_length): Increase len
+-      only when rip_relative_addr_p returns false.
+-
+-2017-01-11  Julia Koval  <address@hidden>
+-
+-      * common/config/i386/i386-common.c (OPTION_MASK_ISA_SGX_UNSET): New.
+-      (OPTION_MASK_ISA_SGX_SET): New.
+-      (ix86_handle_option): Handle OPT_msgx.
+-      * config.gcc: Added sgxintrin.h.
+-      * config/i386/driver-i386.c (host_detect_local_cpu): Detect sgx.
+-      * config/i386/i386-c.c (ix86_target_macros_internal): Define __SGX__.
+-      * config/i386/i386.c (ix86_target_string): Add -msgx.
+-      (PTA_SGX): New.
+-      (ix86_option_override_internal): Handle new options.
+-      (ix86_valid_target_attribute_inner_p): Add sgx.
+-      * config/i386/i386.h (TARGET_SGX, TARGET_SGX_P): New.
+-      * config/i386/i386.opt: Add msgx.
+-      * config/i386/sgxintrin.h: New file.
+-      * config/i386/x86intrin.h: Add sgxintrin.h.
+-
+-2017-01-11  Jakub Jelinek  <address@hidden>
+-
+-      PR c++/71537
+-      * fold-const.c (maybe_nonzero_address): Return 1 for function
+-      local objects.
+-      (tree_single_nonzero_warnv_p): Don't handle function local objects
+-      here.
+-
+-      PR c++/72813
+-      * gcc.c (default_compilers): Don't add -o %g.s for -S -save-temps
+-      of c-header.
+-
+-2017-01-11  David Malcolm  <address@hidden>
+-
+-      PR driver/78877
+-      * opts.c: Include "spellcheck.h"
+-      (struct string_fragment): New struct.
+-      (struct edit_distance_traits<const string_fragment &>): New
+-      struct.
+-      (get_closest_sanitizer_option): New function.
+-      (parse_sanitizer_options): Offer suggestions for unrecognized arguments.
+-
+-2017-01-11  Jakub Jelinek  <address@hidden>
+-
+-      * dwarf2out.c (DWARF_COMPILE_UNIT_HEADER_SIZE): For DWARF5 decrease
+-      by 12.
+-      (DWARF_COMDAT_TYPE_UNIT_HEADER_SIZE): Always
+-      DWARF_COMPILE_UNIT_HEADER_SIZE plus 12.
+-      (DWARF_COMPILE_UNIT_SKELETON_HEADER_SIZE): Define.
+-      (calc_base_type_die_sizes): Use DWARF_COMPILE_UNIT_SKELETON_HEADER_SIZE
+-      for initial die_offset if dwarf_split_debug_info.
+-      (output_comp_unit): Use DWARF_COMPILE_UNIT_SKELETON_HEADER_SIZE for
+-      initial next_die_offset if dwo_id is non-NULL.  Don't emit padding
+-      fields.
+-      (output_skeleton_debug_sections): Formatting fix.  Use
+-      DWARF_COMPILE_UNIT_SKELETON_HEADER_SIZE instead of
+-      DWARF_COMPILE_UNIT_HEADER_SIZE.  Don't emit padding.
+-
+-2017-01-11  Wilco Dijkstra  <address@hidden>
+-
+-      * config/arm/cortex-a53.md: Add bypasses for
+-      cortex_a53_r2f_cvt.
+-      (cortex_a53_r2f): Only use for transfers.
+-      (cortex_a53_f2r): Likewise.
+-      (cortex_a53_r2f_cvt): Add reservation for conversions.
+-      (cortex_a53_f2r_cvt): Likewise.
+-
+-2017-01-11  Tamar Christina  <address@hidden>
+-
+-      * config/arm/arm_neon.h: Add __artificial__ and gnu_inline
+-      to all inlined functions, change static to extern.
+-
+-2017-01-11  Christophe Lyon  <address@hidden>
+-
+-      PR target/78253
+-      * config/arm/arm.c (legitimize_pic_address): Handle reference to
+-      weak symbol.
+-      (arm_assemble_integer): Likewise.
+-
+-2017-01-11  Richard Earnshaw  <address@hidden>
+-
+-      * config.gcc: Use new awk script to check CPU, FPU and architecture
+-      parameters for --with-... options.
+-      * config/arm/parsecpu.awk: New file
+-      * config/arm/arm-cpus.in: New file.
+-      * config/arm/arm-opts.h: Include arm-cpu.h instead of processing .def
+-      files.
+-      * config/arm/arm.c: Include arm-cpu-data.h instead of processing .def
+-      files.
+-      * config/arm/t-arm: Update dependency rules.
+-      * common/config/arm/arm-common.c: Include arm-cpu-cdata.h instead
+-      of processing .def files.
+-      * config/arm/genopt.sh: Deleted.
+-      * config/arm/gentune.sh: Deleted.
+-      * config/arm/arm-cores.def: Deleted.
+-      * config/arm/arm-arches.def: Deleted.
+-      * config/arm/arm-fpus.def: Deleted.
+-      * config/arm/arm-tune.md: Regenerated.
++      PR target/93110
++      * config/i386/i386.md (abs<mode>2): Use expand_simple_binop instead of
++      emitting ASHIFTRT, XOR and MINUS by hand.  Use gen_int_mode with QImode
++      instead of gen_int_shift_amount + convert_modes.
++
++      PR rtl-optimization/93088
++      * loop-iv.c (find_single_def_src): Punt after looking through
++      128 reg copies for regs with single definitions.  Move definitions
++      to first uses.
++
++2020-01-02  Dennis Zhang  <address@hidden>
++
++      * config/arm/arm-c.c (arm_cpu_builtins): Define
++      __ARM_FEATURE_MATMUL_INT8, __ARM_FEATURE_BF16_VECTOR_ARITHMETIC,
++      __ARM_FEATURE_BF16_SCALAR_ARITHMETIC, and
++      __ARM_BF16_FORMAT_ALTERNATIVE when enabled.
++      * config/arm/arm-cpus.in (armv8_6, i8mm, bf16): New features.
+       * config/arm/arm-tables.opt: Regenerated.
+-      * config/arm/arm-cpu.h: New generated file.
+-      * config/arm/arm-cpu-data.h: New generated file.
+-      * config/arm/arm-cpu-cdata.h: New generated file.
+-
+-2017-01-11  Maxim Ostapenko  <address@hidden>
+-
+-      PR lto/79042
+-      * lto-cgraph.c (lto_output_varpool_node): Pack dynamically_initialized
+-      bit.
+-      (input_varpool_node): Unpack dynamically_initialized bit.
+-
+-2017-01-11  Eric Botcazou  <address@hidden>
+-
+-      PR rtl-optimization/79032
+-      * lra-constraints.c (simplify_operand_subreg): In the MEM case, test
+-      the alignment of the adjusted memory reference against that of MODE,
+-      instead of the alignment of the original memory reference.
+-
+-2017-01-11  Martin Jambor  <address@hidden>
+-
+-      * hsa.c (hsa_callable_function_p): Revert addition of DECL_ARTIFICIAL
+-      test.
+-      * ipa-hsa.c (process_hsa_functions): Only duplicate non-artificial
+-      decorated functions.
+-
+-2017-01-11  Richard Biener  <address@hidden>
+-
+-      * tree-vrp.c (evrp_dom_walker::before_dom_children): Also
+-      set range/nonnull info for PHI results.  Do not set it on
+-      stmts marked for removal.
+-
+-2017-01-10  Eric Botcazou  <address@hidden>
+-
+-      * expr.c (store_field): In the bitfield case, fetch the return value
+-      from the registers before applying a single big-endian adjustment.
+-      Always do a final load for a BLKmode value not larger than a word.
+-
+-2017-01-10  David Malcolm  <address@hidden>
+-
+-      PR c++/77949
+-      * input.c (selftest::test_accessing_ordinary_linemaps): Verify
+-      that we correctly handle column numbers greater than
+-      LINE_MAP_MAX_COLUMN_NUMBER.
+-
+-2017-01-10  Martin Sebor  <address@hidden>
+-
+-      PR middle-end/78245
+-      * gimple-ssa-sprintf.c (get_destination_size): Call
+-      {init,fini}object_sizes.
+-      * tree-object-size.c (addr_object_size): Adjust.
+-      (pass_through_call): Adjust.
+-      (pass_object_sizes::execute): Adjust.
+-      * tree-object-size.h (fini_object_sizes): Declare.
+-
+-2017-01-10  Martin Sebor  <address@hidden>
+-
+-      PR tree-optimization/78775
+-      * builtins.c (get_size_range): Move...
+-      * calls.c: ...to here.
+-      (alloc_max_size): Accept zero argument.
+-      (operand_signed_p): Remove.
+-      (maybe_warn_alloc_args_overflow): Call get_size_range.
+-      * calls.h (get_size_range): Declare.
+-
+-2017-01-10  Joe Seymour  <address@hidden>
+-
+-      * config/msp430/driver-msp430.c (msp430_mcu_data): Sync with data
+-      from TI's devices.csv file as of September 2016.
+-      * config/msp430/msp430.c (msp430_mcu_data): Likewise.
+-
+-2017-01-10  Sandra Loosemore  <address@hidden>
+-
+-      * doc/extend.texi: Tweak formatting to fix overfull hbox warnings.
+-      * doc/invoke.texi: Likewise.
+-      * doc/md.texi: Likewise.
+-      * doc/objc.texi: Likewise.
+-
+-2017-01-10  Joshua Conner  <address@hidden>
+-
+-      * config/arm/fuchsia-elf.h: New file.
+-      * config/fuchsia.h: New file.
+-      * config.gcc (*-*-fuchsia*): Set native_system_header_dir.
+-      (aarch64*-*-fuchsia*, arm*-*-fuchsia*, x86_64-*-fuchsia*): Add to
+-      targets.
+-      * config.host: (aarch64*-*-fuchsia*, arm*-*-fuchsia*): Add to hosts.
+-
+-2016-01-10  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/79034
+-      * tree-call-cdce.c (shrink_wrap_one_built_in_call_with_conds):
+-      Propagate out degenerate PHIs in the joiner.
+-
+-2017-01-10  Martin Liska  <address@hidden>
+-
+-      * ipa-icf.c (sort_sem_items_by_decl_uid): New function.
+-      (sort_congruence_classes_by_decl_uid): Likewise.
+-      (sort_congruence_class_groups_by_decl_uid): Likewise.
+-      (sem_item_optimizer::merge_classes): Sort class, groups in these
+-      classes and members in the groups by DECL_UID of declarations.
+-      This would make merge operations stable.
+-
+-2017-01-10  Martin Liska  <address@hidden>
+-
+-      * ipa-icf.c (sem_item_optimizer::sem_item_optimizer): Remove
+-      usage of m_classes_vec.
+-      (sem_item_optimizer::~sem_item_optimizer):  Likewise.
+-      (sem_item_optimizer::get_group_by_hash): Likewise.
+-      (sem_item_optimizer::subdivide_classes_by_equality): Likewise.
+-      (sem_item_optimizer::subdivide_classes_by_sensitive_refs): Likewise.
+-      (sem_item_optimizer::verify_classes): Likewise.
+-      (sem_item_optimizer::process_cong_reduction): Likewise.
+-      (sem_item_optimizer::dump_cong_classes): Likewise.
+-      (sem_item_optimizer::merge_classes): Likewise.
+-      * ipa-icf.h (congruence_class_hash): Rename from
+-      congruence_class_group_hash.  Remove declaration of m_classes_vec.
+-
+-2017-01-10  Andrew Senkevich  <address@hidden>
+-
+-      * common/config/i386/i386-common.c (OPTION_MASK_ISA_AVX512VPOPCNTDQ_SET,
+-      OPTION_MASK_ISA_AVX512VPOPCNTDQ_UNSET): New.
+-      * config.gcc: Add avx512vpopcntdqintrin.h.
+-      * config/i386/avx512vpopcntdqintrin.h: New.
+-      * config/i386/cpuid.h (bit_AVX512VPOPCNTDQ): New.
+-      * config/i386/i386-builtin-types.def: Add new types.
+-      * config/i386/i386-builtin.def (__builtin_ia32_vpopcountd_v16si,
+-      __builtin_ia32_vpopcountd_v16si_mask, __builtin_ia32_vpopcountq_v8di,
+-      __builtin_ia32_vpopcountq_v8di_mask): New.
+-      * config/i386/i386-c.c (ix86_target_macros_internal): Define
+-      __AVX512VPOPCNTDQ__.
+-      * config/i386/i386.c (ix86_target_string): Add -mavx512vpopcntdq.
+-      (PTA_AVX512VPOPCNTDQ): Define.
+-      * config/i386/i386.h (TARGET_AVX512VPOPCNTDQ,
+-      TARGET_AVX512VPOPCNTDQ_P): Define.
+-      * config/i386/i386.opt: Add mavx512vpopcntdq.
+-      * config/i386/immintrin.h: Include avx512vpopcntdqintrin.h.
+-      * config/i386/sse.md (define_insn "vpopcount<mode><mask_name>"): New.
+-
+-2017-01-01  Jan Hubicka  <address@hidden>
+-
+-      PR middle-end/77484
+-      * predict.def (PRED_CALL): Set to 67.
+-
+-2017-01-09  Eric Botcazou  <address@hidden>
+-
+-      * expr.c (store_field): In the bitfield case, if the value comes from
+-      a function call and is of an aggregate type returned in registers, do
+-      not modify the field mode; extract the value in all cases if the mode
+-      is BLKmode and the size is not larger than a word.
+-
+-2017-01-09  Dominique d'Humieres  <address@hidden>
+-
+-      PR target/71017
+-      * config/i386/cpuid.h: Fix undefined behavior.
+-
+-2017-01-04  Jeff Law  <address@hidden>
+-
+-      PR tree-optimization/79007
+-      PR tree-optimization/67955
+-      * tree-ssa-alias.c (same_addr_size_stores_p): Only need to be
+-      conservative for pt.null when flag_non_call_exceptions is on.
+-
+-2017-01-09  Jakub Jelinek  <address@hidden>
+-
+-      PR translation/79019
+-      PR translation/79020
+-      * params.def (PARAM_INLINE_MIN_SPEEDUP,
+-      PARAM_IPA_CP_SINGLE_CALL_PENALTY,
+-      PARAM_USE_AFTER_SCOPE_DIRECT_EMISSION_THRESHOLD): Fix typos
+-      in descriptions.
+-      * config/avr/avr.opt (maccumulate-args): Likewise.
+-      * config/msp430/msp430.opt (mwarn-mcu): Likewise.
+-      * common.opt (freport-bug): Likewise.
+-      * cif-code.def (CIF_FINAL_ERROR): Likewise.
+-      * doc/invoke.texi (ipa-cp-single-call-penalty): Likewise.
+-      * config/s390/s390.c (s390_invalid_binary_op): Fix spelling in
+-      translatable string.
+-      * config/i386/i386.c (function_value_32): Likewise.
+-      * config/nios2/nios2.c (nios2_valid_target_attribute_rec): Likewise.
+-      * config/msp430/msp430.c (msp430_option_override, msp430_attr):
+-      Likewise.
+-      * config/msp430/driver-msp430.c (msp430_select_hwmult_lib): Likewise.
+-      * common/config/msp430/msp430-common.c (msp430_handle_option):
+-      Likewise.
+-      * symtab.c (symtab_node::verify_base): Likewise.
+-      * opts.c (set_debug_level): Likewise.
+-      * tree.c (verify_type_variant): Likewise.  Fix typo in comment.
+-      * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): Add
+-      missing whitespace to translatable strings.
+-      * config/avr/avr.md (bswapsi2): Fix typo in comment.
+-      * config/sh/superh.h: Likewise.
+-      * config/i386/xopintrin.h: Likewise.
+-      * config/i386/znver1.md: Likewise.
+-      * config/rs6000/rs6000.c (struct rs6000_opt_mask): Likewise.
+-      * ipa-inline-analysis.c (compute_inline_parameters): Likewise.
+-      * double-int.h (struct double_int): Likewise.
+-      * double-int.c (div_and_round_double): Likewise.
+-      * wide-int.cc: Likewise.
+-      * tree-ssa.c (non_rewritable_mem_ref_base): Likewise.
+-      * tree-ssa-sccvn.c (vn_reference_lookup_3): Likewise.
+-      * cfgcleanup.c (crossjumps_occured): Renamed to ...
+-      (crossjumps_occurred): ... this.
+-      (try_crossjump_bb, try_head_merge_bb, try_optimize_cfg, cleanup_cfg):
+-      Adjust all uses.
+-
+-      PR tree-optimization/78899
+-      * tree-if-conv.c (version_loop_for_if_conversion): Instead of
+-      returning bool return struct loop *, NULL for failure and the new
+-      loop on success.
+-      (versionable_outer_loop_p): Don't version outer loop if it has
+-      dont_vectorized bit set.
+-      (tree_if_conversion): When versioning outer loop, ensure
+-      tree_if_conversion is performed also on the inner loop of the
+-      non-vectorizable outer loop copy.
+-      * tree-vectorizer.c (set_uid_loop_bbs): Formatting fix.  Fold
+-      LOOP_VECTORIZED in inner loop of the scalar outer loop and
+-      prevent vectorization of it.
+-      (vectorize_loops): For outer + inner LOOP_VECTORIZED, ensure
+-      the outer loop vectorization of the non-scalar version is attempted
+-      before vectorization of the inner loop in scalar version.  If
+-      outer LOOP_VECTORIZED guarded loop is not vectorized, prevent
+-      vectorization of its inner loop.
+-      * tree-vect-loop-manip.c (rename_variables_in_bb): If outer_loop
+-      has 2 inner loops, rename also on edges from bb whose single pred
+-      is outer_loop->header.  Fix typo in function comment.
+-
+-2017-01-09  Martin Sebor  <address@hidden>
+-
+-      PR bootstrap/79033
+-      * asan.c (asan_emit_stack_protection): Increase local buffer size
+-      to avoid snprintf truncation warning.
+-
+-2017-01-09  Andrew Pinski  <address@hidden>
+-
+-      * config/aarch64/aarch64-cores.def: Add thunderx2t99.  Change vulcan
+-      to reference thunderx2t99 for the tuning structure
+-      * config/aarch64/aarch64-cost-tables.h (vulcan_extra_costs):
+-      Rename to ...
+-      (thunderx2t99_extra_costs): This.
+-      * config/aarch64/aarch64-tune.md: Regenerate.
+-      * config/aarch64/aarch64.c (vulcan_addrcost_table): Rename to ...
+-      (vulcan_addrcost_table): This.
+-      (vulcan_regmove_cost): Rename to ...
+-      (thunderx2t99_regmove_cost): This.
+-      (vulcan_vector_cost): Rename to ...
+-      (thunderx2t99_vector_cost): this.
+-      (vulcan_branch_cost): Rename to ...
+-      (thunderx2t99_branch_cost): This.
+-      (vulcan_tunings): Rename to ...
+-      (thunderx2t99_tunings): This and s/vulcan/thunderx2t99 .
+-      * doc/invoke.texi (AARCH64/mtune): Add thunderx2t99.
+-
+-2017-01-09  Martin Jambor  <address@hidden>
+-
+-      PR ipa/78365
+-      PR ipa/78599
+-      * ipa-prop.h (ipa_jump_func): Swap positions of vr_known and m_vr.
+-      * ipa-cp.c (ipa_vr_operation_and_type_effects): New function.
+-      (propagate_vr_accross_jump_function): Use the above function for all
+-      value range computations for pass-through jump functions and type
+-      converasion from explicit value range values.
+-      (ipcp_propagate_stage): Do not attempt to deduce types of formal
+-      parameters from TYPE_ARG_TYPES.
+-      * ipa-prop.c (ipa_write_jump_function): Remove trailing whitespace.
+-      (ipa_write_node_info): Stream type of the actual argument.
+-      (ipa_read_node_info): Likewise. Also remove trailing whitespace.
+-
+-2017-01-09  Martin Liska  <address@hidden>
+-
+-      PR pch/78970
+-      * gcc.c (driver_handle_option): Handle OPT_E and set have_E.
+-      (lookup_compiler): Do not show error message with have_E.
+-
+-2017-01-09  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/78938
+-      * tree-vect-stmts.c (vectorizable_condition): For non-masked COND_EXPR
+-      where comp_vectype is VECTOR_BOOLEAN_TYPE_P, use
+-      BIT_{NOT,XOR,AND,IOR}_EXPR on the comparison operands instead of
+-      {EQ,NE,GE,GT,LE,LT}_EXPR directly inside of VEC_COND_EXPR.  Formatting
+-      fixes.
+-
+-2017-01-09  Kyrylo Tkachov  <address@hidden>
+-
+-      * tree-ssa-address.c (gen_addr_rtx): Don't handle index if it
+-      is const0_rtx.
+-
+-2017-01-09  Richard Biener  <address@hidden>
+-
+-      PR tree-optimization/78997
+-      * tree-vect-slp.c (vect_mask_constant_operand_p): Handle SSA
+-      name condition properly.
+-
+-2017-01-09  Richard Biener  <address@hidden>
+-
+-      PR debug/79000
+-      * dwarf2out.c (is_cxx): New overload with context.
+-      (is_naming_typedef_decl): Use it.
+-
+-2017-01-08  Sandra Loosemore  <address@hidden>
+-
+-      * invoke.texi (Option Summary): Correct spacing in option lists
+-      and add line breaks to fix over-long lines.
+-
+-2017-01-08  Sandra Loosemore  <address@hidden>
+-
+-      PR middle-end/17660
+-
+-      * extend.texi (Common Variable Attributes): Add xref to GCC
+-      Internals manual to explain mode attribute keywords.
+-
+-2017-01-08  Sandra Loosemore  <address@hidden>
+-
+-      PR other/16519
+-      * doc/invoke.texi (Option Summary): Move -pthread to Linker Options
+-      and Preprocessor Options.
+-      (Options for Linking): Document -pthread here....
+-      (RS/6000 and PowerPC Options): ...not here.
+-      (Solaris 2 Options): ...or here.
+-      * doc/cppopts.texi: Document -pthread.
+-
+-2017-01-08  Martin Sebor  <address@hidden>
+-
+-      PR middle-end/77708
+-      * doc/invoke.texi (Warning Options): Document -Wformat-truncation.
+-      * gimple-ssa-sprintf.c (call_info::reval_used, call_info::warnopt):
+-      New member functions.
+-      (format_directive): Used them.
+-      (add_bytes): Same.
+-      (pass_sprintf_length::handle_gimple_call): Same.
+-      * graphite-sese-to-poly.c (tree_int_to_gmp): Increase buffer size
+-      to avoid truncation for any argument.
+-      (extract_affine_mul): Same.
+-      * tree.c (get_file_function_name): Same.
+-
+-2017-01-01  Jan Hubicka  <address@hidden>
+-
+-      PR middle-end/77484
+-      * predict.def (PRED_INDIR_CALL): Set to 86.
+-
+-2017-01-07  Sandra Loosemore  <address@hidden>
+-
+-      PR preprocessor/54124
+-      * doc/cppopts.texi: Reformat -d subtable to list the full name
+-      of the options.  Add cross-reference to the docs for the general
+-      compiler -d options.
+-      * doc/invoke.texi (Developer Options): Add cross-reference to the
+-      preprocessor-specific -d option documentation.
+-
+-2017-01-07  Sandra Loosemore  <address@hidden>
+-
+-      PR preprocessor/13498
+-      * doc/cpp.texi (Search Path): Rewrite to remove obsolete and
+-      redudant material, and reflect new command-line options.
+-      (System Headers): Likewise.
+-
+-2017-01-07  Sandra Loosemore  <address@hidden>
+-
+-      * doc/cppdiropts.texi: Merge documentation of -I, -iquote,
+-      -isystem, and -idirafter.  Copy-edit.
+-      * doc/cppopts.texi: Copy-edit.  Remove contradiction about
+-      default for -ftrack-macro-expansion.  Delete obsolete and
+-      badly-formatted implementation details about -fdebug-cpp output.
+-      * doc/cppwarnopts.texi: Copy-edit.
+-
+-2017-01-07  David Malcolm  <address@hidden>
+-
+-      PR c++/72803
+-      * input.c (selftest::test_accessing_ordinary_linemaps): Verify
+-      that the transition from a max line width >= 1<<10 to narrower
+-      lines works correctly.
+-
+-2017-01-07  Alexandre Oliva <address@hidden>
+-
+-      * doc/options.texi (PerFunction): New.
+-      * opt-functions.awk (switch_flags): Map both Optimization and
+-      PerFunction to CL_OPTIMIZATION.
+-      * opth-gen.awk: Test for PerFunction flag along with
+-      Optimization.
+-      * optc-save-gen.awk: Likewise.  Introduce var_opt_hash and set
+-      it only when the latter is present.  Skip those that don't in
+-      the hash function generator.
+-      * common.opt (fvar-tracking): Mark as PerFunction instead of
+-      Optimization.
+-      (fvar-tracking-assignments): Likewise.
+-      (fvar-tracking-assignments-toggle): Likewise.
+-      (fvar-tracking-uninit): Likewise.
+-
+-2017-01-07  Jakub Jelinek  <address@hidden>
+-
+-      PR translation/79018
+-      * params.def (PARAM_MAX_STORES_TO_MERGE): Add missing space between
+-      the and store.
+-
+-2017-01-06  Mikael Pettersson  <address@hidden>
+-
+-      PR target/57583
+-      * config/m68k/m68k.opt (LONG_JUMP_TABLE_OFFSETS): New option.
+-      * config/m68k/linux.h (ASM_RETURN_CASE_JUMP): Handle
+-      TARGET_LONG_JUMP_TABLE_OFFSETS.
+-      * config/m68k/m68kelf.h (ASM_RETURN_CASE_JUMP): Likewise.
+-      * config/m68k/netbsd-elf.h (ASM_RETURN_CASE_JUMP): Likewise.
+-      * config/m68k/m68k.h (CASE_VECTOR_MODE): Likewise.
+-      (ASM_OUTPUT_ADDR_DIFF_ELF): Likewise.
+-      * config/m68k/m68k.md (tablejump expander): Likewise.
+-      (*tablejump_pcrel_hi): Renamed from unnamed insn, reject
+-      TARGET_LONG_JUMP_TABLE_OFFSETS.
+-      (*tablejump_pcrel_si): New insn, handle TARGET_LONG_JUMP_TABLE_OFFSETS.
+-      * doc/invoke.texi (M68K options): Add -mlong-jump-table-offsets.
+-
+-2017-01-06  Edgar E. Iglesias <address@hidden>
+-          David Holsgrove <address@hidden>
+-
+-      * common/config/microblaze/microblaze-common.c
+-      (TARGET_EXCEPT_UNWIND_INFO): Remove.
+-      * config/microblaze/microblaze-protos.h (microblaze_eh_return):
+-      New prototype.
+-      * config/microblaze/microblaze.c (microblaze_must_save_register)
+-      (microblaze_expand_epilogue, microblaze_return_addr): Handle
+-      calls_eh_return.
+-      (microblaze_eh_return): New function.
+-      * config/microblaze/microblaze.h (RETURN_ADDR_OFFSET)
+-      (EH_RETURN_DATA_REGNO, MB_EH_STACKADJ_REGNUM)
+-      (EH_RETURN_STACKADJ_RTX, ASM_PREFERRED_EH_DATA_FORMAT): New macros.
+-      * config/microblaze/microblaze.md (eh_return): New pattern.
+-
+-2017-01-06  Jakub Jelinek  <address@hidden>
+-
+-      * system.h (GCC_DIAGNOSTIC_PUSH_IGNORED, GCC_DIAGNOSTIC_POP,
+-      GCC_DIAGNOSTIC_STRINGIFY): Define.
+-
+-      * read-rtl.c (rtx_reader::read_rtx_code): Avoid -Wsign-compare warning.
+-
+-2017-01-06  Andre Vieira  <address@hidden>
+-
+-      * config/arm/arm.md (<mcrr>): New.
+-      (<mrrc>): New.
+-      * config/arm/arm.c (arm_arch5te): New.
+-      (arm_option_override): Set arm_arch5te.
+-      (arm_coproc_builtin_available): Add support for mcrr, mcrr2, mrrc
+-      and mrrc2.
+-      * config/arm/arm-builtins.c (MCRR_QUALIFIERS): Define to...
+-      (arm_mcrr_qualifiers): ... this. New.
+-      (MRRC_QUALIFIERS): Define to...
+-      (arm_mrrc_qualifiers): ... this. New.
+-      * config/arm/arm_acle.h (__arm_mcrr, __arm_mcrr2, __arm_mrrc,
+-      __arm_mrrc2): New.
+-      * config/arm/arm_acle_builtins.def (mcrr, mcrr2, mrrc, mrrc2): New.
+-      * config/arm/iterators.md (MCRRI, mcrr, MCRR): New.
+-      (MRRCI, mrrc, MRRC): New.
+-      * config/arm/unspecs.md (VUNSPEC_MCRR, VUNSPEC_MCRR2, VUNSPEC_MRRC,
+-      VUNSPEC_MRRC2): New.
+-
+-2017-01-06  Andre Vieira  <address@hidden>
+-
+-      * config/arm/arm.md (<mcr>): New.
+-      (<mrc>): New.
+-      * config/arm/arm.c (arm_coproc_builtin_available): Add
+-      support for mcr, mrc, mcr2 and mrc2.
+-      * config/arm/arm-builtins.c (MCR_QUALIFIERS): Define to...
+-      (arm_mcr_qualifiers): ... this. New.
+-      (MRC_QUALIFIERS): Define to ...
+-      (arm_mrc_qualifiers): ... this. New.
+-      (MCR_QUALIFIERS): Define to ...
+-      (arm_mcr_qualifiers): ... this. New.
+-      * config/arm/arm_acle.h (__arm_mcr, __arm_mrc, __arm_mcr2,
+-      __arm_mrc2): New.
+-      * config/arm/arm_acle_builtins.def (mcr, mcr2, mrc, mrc2): New.
+-      * config/arm/iterators.md (MCRI, mcr, MCR, MRCI, mrc, MRC): New.
+-      * config/arm/unspecs.md (VUNSPEC_MCR, VUNSPEC_MCR2, VUNSPEC_MRC,
+-      VUNSPEC_MRC2): New.
+-
+-2017-01-06  Andre Vieira  <address@hidden>
+-
+-      * config/arm/arm.md (*ldc): New.
+-      (*stc): New.
+-      (<ldc>): New.
+-      (<stc>): New.
+-      * config/arm/arm.c (arm_coproc_builtin_available): Add
+-      support for ldc,ldcl,stc,stcl,ldc2,ldc2l,stc2 and stc2l.
+-      (arm_coproc_ldc_stc_legitimate_address): New.
+-      * config/arm/arm-builtins.c (arm_type_qualifiers): Add
+-      'qualifier_const_pointer'.
+-      (LDC_QUALIFIERS): Define to...
+-      (arm_ldc_qualifiers): ... this. New.
+-      (STC_QUALIFIERS): Define to...
+-      (arm_stc_qualifiers): ... this. New.
+-      * config/arm/arm-protos.h
+-      (arm_coproc_ldc_stc_legitimate_address): New.
+-      * config/arm/arm_acle.h (__arm_ldc, __arm_ldcl, __arm_stc,
+-      __arm_stcl, __arm_ldc2, __arm_ldc2l, __arm_stc2, __arm_stc2l): New.
+-      * config/arm/arm_acle_builtins.def (ldc, ldc2, ldcl, ldc2l, stc,
+-      stc2, stcl, stc2l): New.
+-      * config/arm/constraints.md (Uz): New.
+-      * config/arm/iterators.md (LDCI, STCI, ldc, stc, LDC STC): New.
+-      * config/arm/unspecs.md (VUNSPEC_LDC, VUNSPEC_LDC2, VUNSPEC_LDCL,
+-      VUNSPEC_LDC2L, VUNSPEC_STC, VUNSPEC_STC2, VUNSPEC_STCL,
+-      VUNSPEC_STC2L): New.
+-
+-2017-01-06  Andre Vieira  <address@hidden>
+-
+-      * config/arm/arm.md (<cdp>): New.
+-      * config/arm/arm.c (neon_const_bounds): Rename this ...
+-      (arm_const_bounds): ... this.
+-      (arm_coproc_builtin_available): New.
+-      * config/arm/arm-builtins.c (SIMD_MAX_BUILTIN_ARGS): Increase.
+-      (arm_type_qualifiers): Add 'qualifier_unsigned_immediate'.
+-      (CDP_QUALIFIERS): Define to...
+-      (arm_cdp_qualifiers): ... this. New.
+-      (void_UP): Define.
+-      (arm_expand_builtin_args): Add case for 6 arguments.
+-      * config/arm/arm-protos.h (neon_const_bounds): Rename this ...
+-      (arm_const_bounds): ... this.
+-      (arm_coproc_builtin_available): New.
+-      * config/arm/arm_acle.h (__arm_cdp): New.
+-      (__arm_cdp2): New.
+-      * config/arm/arm_acle_builtins.def (cdp): New.
+-      (cdp2): New.
+-      * config/arm/iterators.md (CDPI,CDP,cdp): New.
+-      * config/arm/neon.md: Rename all 'neon_const_bounds' to
+-      'arm_const_bounds'.
+-      * config/arm/types.md (coproc): New.
+-      * config/arm/unspecs.md (VUNSPEC_CDP, VUNSPEC_CDP2): New.
+-      * gcc/doc/extend.texi (ACLE): Add a mention of Coprocessor intrinsics.
+-      * gcc/doc/sourcebuild.texi (arm_coproc1_ok, arm_coproc2_ok,
+-      arm_coproc3_ok, arm_coproc4_ok): Document new effective targets.
+-
+-2017-01-06  Andre Vieira  <address@hidden>
+-
+-      * config/arm/arm-builtins.c (arm_unsigned_binop_qualifiers): New.
+-      (UBINOP_QUALIFIERS): New.
+-      (si_UP): Define.
+-      (acle_builtin_data): New. Change comment.
+-      (arm_builtins): Remove ARM_BUILTIN_CRC32B, ARM_BUILTIN_CRC32H,
+-      ARM_BUILTIN_CRC32W, ARM_BUILTIN_CRC32CB, ARM_BUILTIN_CRC32CH,
+-      ARM_BUILTIN_CRC32CW. Add ARM_BUILTIN_ACLE_BASE and include
+-      arm_acle_builtins.def.
+-      (ARM_BUILTIN_ACLE_PATTERN_START): Define.
+-      (arm_init_acle_builtins): New.
+-      (CRC32_BUILTIN): Remove.
+-      (bdesc_2arg): Remove entries for crc32b, crc32h, crc32w,
+-      crc32cb, crc32ch and crc32cw.
+-      (arm_init_crc32_builtins): Remove.
+-      (arm_init_builtins): Use arm_init_acle_builtins rather
+-      than arm_init_crc32_builtins.
+-      (arm_expand_acle_builtin): New.
+-      (arm_expand_builtin): Use 'arm_expand_acle_builtin'.
+-      * config/arm/arm_acle_builtins.def: New.
+-
+-2017-01-06  Andre Vieira  <address@hidden>
+-
+-      * config/arm/arm-builtins.c (neon_builtin_datum): Rename to ..
+-      (arm_builtin_datum): ... this.
+-      (arm_init_neon_builtin): Rename to ...
+-      (arm_init_builtin): ... this. Add a new parameters PREFIX
+-      and USE_SIG_IN_NAME.
+-      (arm_init_neon_builtins): Replace 'arm_init_neon_builtin' with
+-      'arm_init_builtin'. Replace type 'neon_builtin_datum' with
+-      'arm_builtin_datum'.
+-      (arm_init_vfp_builtins): Likewise.
+-      (builtin_arg): Rename enum's replacing 'NEON_ARG' with
+-      'ARG_BUILTIN' and add a 'ARG_BUILTIN_NEON_MEMORY.
+-      (arm_expand_neon_args): Rename to ...
+-      (arm_expand_builtin_args): ... this. Rename builtin_arg
+-      enum values and differentiate between ARG_BUILTIN_MEMORY
+-      and ARG_BUILTIN_NEON_MEMORY.
+-      (arm_expand_neon_builtin_1): Rename to ...
+-      (arm_expand_builtin_1): ... this. Rename builtin_arg enum
+-      values, arm_expand_builtin_args and add bool parameter NEON.
+-      (arm_expand_neon_builtin): Use arm_expand_builtin_1.
+-      (arm_expand_vfp_builtin): Likewise.
+-      (NEON_MAX_BUILTIN_ARGS): Remove, it was unused.
+-
+-2017-01-01  Jan Hubicka  <address@hidden>
+-
+-      PR middle-end/77484
+-      * predict.def (PRED_POLYMORPHIC_CALL): Set to 59.
+-      * predict.c (tree_estimate_probability_bb): Reverse direction of
+-      polymorphic call predictor.
+-
+-2017-01-06  David Malcolm  <address@hidden>
+-
+-      * passes.c (execute_one_pass): Split out pass-skipping logic into...
+-      (determine_pass_name_match): ...this new function and...
+-      (should_skip_pass_p): ...this new function.
+-
+-2017-01-06  Nathan Sidwell  <address@hidden>
+-
+-      * ipa-visibility.c (function_and_variable_visibility): Reformat
+-      comments and long lines.  Remove extrneous if.
+-      * symtab.c (symtab_node::make_decl_local): Fix code format.
+-      (symtab_node::set_section_for_node): Fix comment typo.
+-
+-2017-01-06  Martin Liska  <address@hidden>
+-
+-      PR bootstrap/79003
+-      * lra-constraints.c: Rename invariant to lra_invariant.
+-      * predict.c (set_even_probabilities): Initialize e to NULL.
+-
+-2017-01-05  Martin Sebor  <address@hidden>
+-
+-      PR tree-optimization/78910
+-      * gimple-ssa-sprintf.c (tree_digits): Add an argument.
+-      (format_integer): Correct off-by-one error in the handling
+-      of precision with negative numbers in signed conversions..
+-
+-2017-01-05  Eric Botcazou  <address@hidden>
+-
+-      * doc/invoke.texi (C Dialect Options): Adjust -fsso-struct entry.
+-
+-2017-01-05  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/71016
+-      * tree-ssa-phiopt.c (tree_ssa_phiopt_worker): Pass cond_stmt to
+-      factor_out_conditional_conversion.  Formatting fix.
+-      (factor_out_conditional_conversion): Add cond_stmt argument.
+-      If arg1 is INTEGER_CST, punt if new_arg0 is not any operand of
+-      cond_stmt and if arg0_def_stmt is not the only stmt in its bb.
+-      Formatting fix.
+-
+-2017-01-05  David Malcolm  <address@hidden>
+-
+-      * Makefile.in (OBJS): Add read-md.o, read-rtl.o,
+-      read-rtl-function.o, and selftest-rtl.o.
+-      * config/aarch64/aarch64.c: Include selftest.h and selftest-rtl.h.
+-      (selftest::aarch64_test_loading_full_dump): New function.
+-      (selftest::aarch64_run_selftests): New function.
+-      (TARGET_RUN_TARGET_SELFTESTS): Wire it up to
+-      selftest::aarch64_run_selftests.
+-      * config/i386/i386.c
+-      (selftest::ix86_test_loading_dump_fragment_1): New function.
+-      (selftest::ix86_test_loading_call_insn): New function.
+-      (selftest::ix86_test_loading_full_dump): New function.
+-      (selftest::ix86_test_loading_unspec): New function.
+-      (selftest::ix86_run_selftests): Call the new functions.
+-      * emit-rtl.c (maybe_set_max_label_num): New function.
+-      * emit-rtl.h (maybe_set_max_label_num): New decl.
+-      * function.c (instantiate_decls): Guard call to
+-      instantiate_decls_1 with if (DECL_INITIAL (fndecl)).
+-      * function-tests.c (selftest::verify_three_block_rtl_cfg): Remove
+-      "static".
+-      * gensupport.c (gen_reader::gen_reader): Pass "false"
+-      for new "compact" param of rtx_reader.
+-      * print-rtl.c (rtx_writer::print_rtx_operand): Print "(nil)"
+-      rather than an empty string for NULL strings.
+-      * read-md.c: Potentially include config.h rather than bconfig.h.
+-      Wrap include of errors.h with #ifdef GENERATOR_FILE.
+-      (have_error): New global, copied from errors.c.
+-      (md_reader::read_name): Rename to...
+-      (md_reader::read_name_1): ...this, adding "out_loc" param,
+-      and converting "missing name or number" to returning false, rather
+-      than failing.
+-      (md_reader::read_name): Reimplement in terms of read_name_1.
+-      (md_reader::read_name_or_nil): New function.
+-      (md_reader::read_string): Handle "(nil)" by returning NULL.
+-      (md_reader::md_reader): Add new param "compact".
+-      (md_reader::read_md_files): Wrap with #ifdef GENERATOR_FILE.
+-      (md_reader::read_file): New method.
+-      * read-md.h (md_reader::md_reader): Add new param "compact".
+-      (md_reader::read_file): New method.
+-      (md_reader::is_compact): New accessor.
+-      (md_reader::read_name): Convert return type from void to file_location.
+-      (md_reader::read_name_or_nil): New decl.
+-      (md_reader::read_name_1): New decl.
+-      (md_reader::m_compact): New field.
+-      (noop_reader::noop_reader): Pass "false" for new "compact" param
+-      of rtx_reader.
+-      (rtx_reader::rtx_reader): Add new "compact" param.
+-      (rtx_reader::read_rtx_operand): Make virtual and convert return
+-      type from void to rtx.
+-      (rtx_reader::read_until): New decl.
+-      (rtx_reader::handle_any_trailing_information): New virtual function.
+-      (rtx_reader::postprocess): New virtual function.
+-      (rtx_reader::finalize_string): New virtual function.
+-      (rtx_reader::m_in_call_function_usage): New field.
+-      (rtx_reader::m_reuse_rtx_by_id): New field.
+-      * read-rtl-function.c: New file.
+-      * selftest-rtl.c (selftest::assert_rtx_ptr_eq_at): New function.
+-      * selftest-rtl.h (ASSERT_RTX_PTR_EQ): New macro.
+-      (selftest::verify_three_block_rtl_cfg): New decl.
+-      * read-rtl-function.h: New file.
+-      * read-rtl.c: Potentially include config.h rather than bconfig.h.
+-      For host, include function.h, memmodel.h, and emit-rtl.h.
+-      (one_time_initialization): New function.
+-      (struct compact_insn_name): New struct.
+-      (compact_insn_names): New array.
+-      (find_code): Handle insn codes in compact dumps.
+-      (apply_subst_iterator): Wrap with #ifdef GENERATOR_FILE.
+-      (bind_subst_iter_and_attr): Likewise.
+-      (add_condition_to_string): Likewise.
+-      (add_condition_to_rtx): Likewise.
+-      (apply_attribute_uses): Likewise.
+-      (add_current_iterators): Likewise.
+-      (apply_iterators): Likewise.
+-      (initialize_iterators): Guard usage of apply_subst_iterator with
+-      #ifdef GENERATOR_FILE.
+-      (read_conditions): Wrap with #ifdef GENERATOR_FILE.
+-      (md_reader::read_mapping): Likewise.
+-      (add_define_attr_for_define_subst): Likewise.
+-      (add_define_subst_attr): Likewise.
+-      (read_subst_mapping): Likewise.
+-      (check_code_iterator): Likewise.
+-      (rtx_reader::read_rtx): Likewise.  Move one-time initialization
+-      logic to...
+-      (one_time_initialization): New function.
+-      (rtx_reader::read_until): New method.
+-      (read_flags): New function.
+-      (parse_reg_note_name): New function.
+-      (rtx_reader::read_rtx_code): Initialize "iterator" to NULL.
+-      Handle reuse_rtx ids.
+-      Wrap iterator lookup within #ifdef GENERATOR_FILE.
+-      Add parsing support for RTL dumps, mirroring the special-cases in
+-      print_rtx, by calling read_flags, reading REG_NOTE names, INSN_UID
+-      values, and calling handle_any_trailing_information.
+-      (rtx_reader::read_rtx_operand): Convert return type from void
+-      to rtx, returning return_rtx.  Handle case 'e'.  Call
+-      finalize_string on XSTR and XTMPL fields.
+-      (rtx_reader::read_nested_rtx):  Handle dumps in which trailing
+-       "(nil)" values were omitted.  Call the postprocess vfunc on the
+-      return_rtx.
+-      (rtx_reader::rtx_reader): Add new "compact" param and pass to base
+-      class ctor.  Initialize m_in_call_function_usage.  Call
+-      one_time_initialization.
+-      * rtl-tests.c (selftest::test_uncond_jump): Call
+-      set_new_first_and_last_insn.
+-      * rtl.h (read_rtx): Wrap decl with #ifdef GENERATOR_FILE.
+-      * selftest-rtl.c: New file.
+-      * selftest-rtl.h (class selftest::rtl_dump_test): New class.
+-      (selftest::get_insn_by_uid): New decl.
+-      * selftest-run-tests.c (selftest::run_tests): Call
+-      read_rtl_function_c_tests.
+-      * selftest.h  (selftest::read_rtl_function_c_tests): New decl.
+-      * tree-dfa.c (ssa_default_def): Return NULL_TREE for rtl function
+-      dumps.
+-
+-2017-01-05  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/i386.md (*testqi_ext_3): No need to handle memory
+-      operands in a special way.  Assert that pos+len <= mode precision.
+-
+-2017-01-05  Jakub Jelinek  <address@hidden>
+-
+-      * common.opt (fvect-cost-model): Remove RejectNegative flag, use
+-      3 argument Alias with unlimited for the negative form.
+-      (fno-vect-cost-model): Removed.
+-
+-2017-01-05  Martin Liska  <address@hidden>
+-
+-      * hsa-gen.c (gen_hsa_divmod): New function.
+-      (gen_hsa_insn_for_internal_fn_call): Use the function for IFN_DIVMOD.
+-
+-2017-01-05  Martin Liska  <address@hidden>
+-
+-      PR pch/78970
+-      * gcc.c (lookup_compiler): Reject '-' filename for a precompiled
+-      header.
+-
+-2017-01-05  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390.c (s390_expand_setmem): Unroll the loop for
+-      small constant length operands.
+-
+-2017-01-05  Andreas Krebbel  <address@hidden>
+-
+-      * config/s390/s390.c (s390_expand_setmem): Avoid overlapping bytes
+-      between loop iterations.
+-
+-2017-01-05  Martin Liska  <address@hidden>
+-
+-      PR sanitizer/78815
+-      * gimplify.c (gimplify_decl_expr): Compare to
+-      asan_poisoned_variables instread of checking flags.
+-      (gimplify_target_expr): Likewise.
+-      (gimplify_expr): Likewise.
+-      (gimplify_function_tree): Conditionally initialize
+-      asan_poisoned_variables.
+-
+-2017-01-04  Jeff Law  <address@hidden>
+-
+-      PR tree-optimizatin/78812
+-      * rtl.h (contains_mem_rtx_p): Prototype.
+-      * ifcvt.c (containts_mem_rtx_p): Move from here to...
+-      * rtlanal.c (contains_mem_rtx_p): Here and remove static linkage.
+-      * gcse.c (prune_expressions): Use contains_mem_rtx_p to discover
+-      and prune MEMs that are not at the toplevel of a SET_SRC rtx.  Look
+-      through ZERO_EXTEND and SIGN_EXTEND when trying to avoid pruning MEMs.
+-
+-2017-01-04  Alexandre Oliva <address@hidden>
+-
+-      * input.c (assert_char_at_range): Default-initialize actual_range.
+-
+-2017-01-04  Alexandre Oliva <address@hidden>
+-
+-      * df-scan.c (df_ref_create_structure): Make regno unsigned,
+-      to match the caller.
+-
+-2017-01-04  Alexandre Oliva <address@hidden>
+-
+-      * cfgexpand.c (expand_gimple_basic_block): Disregard debug
+-      insns after final jump in test to emit dummy move.
+-
+-2017-01-04  Alexandre Oliva <address@hidden>
+-
+-      * gimple-iterator.h (gsi_one_nondebug_before_end_p): New.
+-      * tree-eh.c (cleanup_empty_eh): Skip more debug stmts.
+-
+-2017-01-04  Alexandre Oliva <address@hidden>
+-
+-      * multiple_target.c (create_dispatcher_calls): Init e_next.
+-      * tree-ssa-loop-split.c (split_loop): Init border.
+-      * tree-vect-loop.c (vect_determine_vectorization_factor): Init
+-      scalar_type.
+-
+-2017-01-04  Michael Meissner  <address@hidden>
+-
+-      PR target/71977
+-      PR target/70568
+-      PR target/78823
+-      * config/rs6000/predicates.md (sf_subreg_operand): New predicate.
+-      (altivec_register_operand): Do not return true if the operand
+-      contains a SUBREG mixing SImode and SFmode.
+-      (vsx_register_operand): Likewise.
+-      (vsx_reg_sfsubreg_ok): New predicate.
+-      (vfloat_operand): Do not return true if the operand contains a
+-      SUBREG mixing SImode and SFmode.
+-      (vint_operand): Likewise.
+-      (vlogical_operand): Likewise.
+-      (gpc_reg_operand): Likewise.
+-      (int_reg_operand): Likewise.
+-      * config/rs6000/rs6000-protos.h (valid_sf_si_move): Add declaration.
+-      * config/rs6000/rs6000.c (valid_sf_si_move): New function to
+-      determine if a MOVSI or MOVSF operation contains SUBREGs that mix
+-      SImode and SFmode.
+-      (rs6000_emit_move_si_sf_subreg): New helper function.
+-      (rs6000_emit_move): Call rs6000_emit_move_si_sf_subreg to possbily
+-      fixup SUBREGs involving SImode and SFmode.
+-      * config/rs6000/vsx.md (SFBOOL_*): New constants that are operand
+-      numbers for the new peephole2 optimization.
+-      (peephole2 for SFmode unions): New peephole2 to optimize cases in
+-      the GLIBC math library that do AND/IOR/XOR operations on single
+-      precision floating point.
+-      * config/rs6000/rs6000.h (TARGET_NO_SF_SUBREG): New internal
+-      target macros to say whether we need to avoid SUBREGs mixing
+-      SImode and SFmode.
+-      (TARGET_ALLOW_SF_SUBREG): Likewise.
+-      * config/rs6000/rs6000.md (UNSPEC_SF_FROM_SI): New unspecs.
+-      (UNSPEC_SI_FROM_SF): Likewise.
+-      (iorxor): Change spacing.
+-      (and_ior_xor): New iterator for AND, IOR, and XOR.
+-      (movsi_from_sf): New insns for SImode/SFmode SUBREG support.
+-      (movdi_from_sf_zero_ext): Likewise.
+-      (mov<mode>_hardfloat, FMOVE32 iterator): Use register_operand
+-      instead of gpc_reg_operand.  Add SImode/SFmode SUBREG support.
+-      (movsf_from_si): New insn for SImode/SFmode SUBREG support.
+-      (fma<mode>4): Use gpc_reg_operand instead of register_operand.
+-      (fms<mode>4): Likewise.
+-      (fnma<mode>4): Likewise.
+-      (fnms<mode>4): Likewise.
+-      (nfma<mode>4): Likewise.
+-      (nfms<mode>4): Likewise.
+-
+-2017-01-04  Marek Polacek  <address@hidden>
+-
+-      PR c++/64767
+-      * doc/invoke.texi: Document -Wpointer-compare.
+-
+-2017-01-04  Jakub Jelinek  <address@hidden>
+-
+-      * optc-gen.awk: Emit #error for -W*/-f*/-m* Enum without
+-      RejectNegative.
+-
+-      * dwarf2out.c (output_loc_list): Don't throw away 64K+ location
+-      descriptions for -gdwarf-5 and emit them as uleb128 instead of
+-      2-byte data.
+-
+-2017-01-04  Kelvin Nilsen  <address@hidden>
+-
+-      PR target/78056
+-      * doc/sourcebuild.texi (PowerPC-specific attributes): Add
+-      documentation of the powerpc_popcntb_ok attribute.
+-      * config/rs6000/rs6000.c (rs6000_option_override_internal): Add
+-      code to issue warning messages if a requested CPU configuration is
+-      not supported by the binary (assembler and loader) toolchain.
+-      (spe_init_builtins): Add two assertions to prevent ICE if attempt is
+-      made to define a built-in function that has been disabled.
+-      (paired_init_builtins): Add assertion to prevent ICE if attempt is
+-      made to define a built-in function that has been disabled.
+-      (altivec_init_builtins): Add comment explaining why definition
+-      of the DST built-in functions is not preceded by an assertion
+-      check.  Add assertions to prevent ICE if attempts are made to
+-      define an altivec predicate or an abs* built-in function that has
+-      been disabled.
+-      (htm_init_builtins): Add comment explaining why definition of the
+-      htm built-in functions is not preceded by an assertion check.
+-
+-2017-01-04  Jeff Law  <address@hidden>
+-
+-      PR tree-optimizatin/67955
+-      * tree-ssa-alias.c (same_addr_size_stores_p): Check offsets first.
+-      Allow any SSA_VAR_P as the base objects.  Use integer_zerop.  Verify
+-      the points-to solution does not include pt_null.  Use DECL_PT_UID
+-      unconditionally.
+-
+-2017-01-04  Uros Bizjak  <address@hidden>
+-
+-      * config/i386/i386.md (HI/SImode test with imm to QImode splitters):
+-      Use gen_int_mode instead of gen_lopwart for const_int operands.
+-
+-2017-01-04  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/71563
+-      * match.pd: Simplify X << Y into X if Y is known to be 0 or
+-      out of range value - has low bits known to be zero.
+-
+-2017-01-04  Alan Modra  <address@hidden>
+-
+-      * Makefile.in (aclocal_deps): Update and order as per aclocal.m4.
+-      * configure: Regenerate.
+-      * config.in: Regenerate.
+-
+-2017-01-04  Jakub Jelinek  <address@hidden>
+-
+-      PR bootstrap/77569
+-      * input.c (ebcdic_execution_charset::on_error): Don't use strstr for
+-      a substring of the message, but strcmp with the whole message.  Ifdef
+-      ENABLE_NLS, translate the message first using dgettext.
+-
+-2017-01-03  Jeff Law  <address@hidden>
+-
+-      PR tree-optimizatin/78856
+-      * tree-ssa-threadupdate.c: Include tree-vectorizer.h.
+-      (mark_threaded_blocks): Remove code to truncate thread paths that
+-      cross multiple loop headers.  Instead invalidate the cached loop
+-      iteration information and handle case of a thread path walking
+-      into an irreducible region.
+-
+-2017-01-03  Michael Meissner  <address@hidden>
+-
+-      PR target/78900
+-      * config/rs6000/rs6000.c (rs6000_split_signbit): Change some
+-      assertions.  Add support for doing the signbit if the IEEE 128-bit
+-      floating point value is in a GPR.
+-      * config/rs6000/rs6000.md (Fsignbit): Delete.
+-      (signbit<mode>2_dm): Delete using <Fsignbit> and just use "wa".
+-      Update the length attribute if the value is in a GPR.
+-      (signbit<mode>2_dm_<su>ext): Add combiner pattern to eliminate
+-      the sign or zero extension instruction, since the value is always 0/1.
+-      (signbit<mode>2_dm2): Delete using <Fsignbit>.
+-
+-      PR target/78953
+-      * config/rs6000/vsx.md (vsx_extract_<mode>_store_p9): If we are
+-      extracting SImode to a GPR register so that we can generate a
+-      store, limit the vector to be in a traditional Altivec register
+-      for the vextuwrx instruction.
+-
+-2017-01-03  Ian Lance Taylor  <address@hidden>
+-
+-      * godump.c (go_format_type): Treat ENUMERAL_TYPE like INTEGER_TYPE.
+-
+-2017-01-03  Martin Sebor  <address@hidden>
+-
+-      PR tree-optimization/78696
+-      * gimple-ssa-sprintf.c (format_floating): Correct handling of
+-      precision.  Use MPFR for %f for greater fidelity.  Correct handling
+-      of %g.
+-      (pass_sprintf_length::compute_format_length): Set width and precision
+-      specified by asrerisk to void_node for vararg functions.
+-      (try_substitute_return_value): Adjust dump output.
+-
+-2017-01-03  David Edelsohn  <address@hidden>
+-
+-      * doc/invoke.texi (RS6000 options): LRA is enabled by default.
+-
+-2017-01-03  Eric Botcazou  <address@hidden>
+-
+-      * doc/invoke.texi (SPARC options): Document -mlra as the default.
+-      * config/sparc/sparc.c (sparc_option_override): Force LRA unless
+-      -mlra/-mno-lra was passed to the compiler.
+-
+-2017-01-03  James Cowgill  <address@hidden>
+-
+-      PR rtl-optimization/65618
+-      * emit-rtl.c (try_split): Move initialization of "before" and
+-      "after" to just before the call to emit_insn_after_setloc.
+-
+-2017-01-03  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/md.texi (Standard Names): Remove reference to Java frontend.
+-
+-2017-01-03  Pierre-Marie de Rodat  <address@hidden>
+-
+-      * dwarf2out.c (gen_enumeration_type_die): When
+-      -gno-strict-dwarf, add a DW_AT_encoding attribute.
+-
+-2017-01-03  Jakub Jelinek  <address@hidden>
+-
+-      PR tree-optimization/78965
+-      * gimple-ssa-sprintf.c (pass_sprintf_length::compute_format_length):
+-      Change first argument from const call_info & to call_info &.  For %n
+-      set info.nowrite to false.
+-
+-      PR middle-end/78901
+-      * gimple-ssa-sprintf.c (try_substitute_return_value): Don't change
+-      possibly throwing calls.
+-
+-      * genmatch.c (dt_node::gen_kids_1): If generic_exprs include SSA_NAME
+-      and exprs_len || fns_len, emit the code for SSA_NAME next to the exprs
+-      and fns handling, rather than in a separate case SSA_NAME.
+-
+-2017-01-02  Jeff Law  <address@hidden>
+-
+-      * config/darwin-driver.c (darwin_driver_init): Const-correctness
+-      fixes for first_period and second_period variables.
+-
+-2017-01-02  Uros Bizjak  <address@hidden>
+-
+-      PR target/78967
+-      * config/i386/i386.md (UNSPEC_NOREX_MEM): New unspec.
+-      (*insvqi_1): New insn pattern.
+-      (*insvqi_1_mem_rex64): Ditto.
+-      (*insvqi_2): Ditto.
+-      (*insvqi_3): Rename from *insvqi.
+-
+-      (*extzvqi_mem_rex64): Add UNSPEC_NOREX_MEM tag.
+-
+-2017-01-02  Gerald Pfeifer  <address@hidden>
+-
+-      * doc/cfg.texi (Edges): Remove reference to Java.
+-      (Maintaining the CFG): Ditto.
+-
+-2017-01-01  Jan Hubicka  <address@hidden>
+-
+-      PR middle-end/77674
+-      * symtab.c (symtab_node::binds_to_current_def_p): Fix handling of
+-      transparent aliases.
+-
+-2017-01-01  Jan Hubicka  <address@hidden>
+-
+-      PR middle-end/77484
+-      * predict.def (PRED_CALL): Update hitrate.
+-      (PRED_INDIR_CALL, PRED_POLYMORPHIC_CALL): New predictors.
+-      * predict.c (tree_estimate_probability_bb): Split CALL predictor
+-      into direct/indirect/polymorphic variants.
+-
+-2017-01-01  Jakub Jelinek  <address@hidden>
++      * config/arm/arm.c (arm_option_reconfigure_globals): Initialize
++      arm_arch_i8mm and arm_arch_bf16 when enabled.
++      * config/arm/arm.h (TARGET_I8MM): New macro.
++      (TARGET_BF16_FP, TARGET_BF16_SIMD): Likewise.
++      * config/arm/t-aprofile: Add matching rules for -march=armv8.6-a.
++      * config/arm/t-arm-elf (all_v8_archs): Add armv8.6-a.
++      * config/arm/t-multilib: Add matching rules for -march=armv8.6-a.
++      (v8_6_a_simd_variants): New.
++      (v8_*_a_simd_variants): Add i8mm and bf16.
++      * doc/invoke.texi (armv8.6-a, i8mm, bf16): Document new options.
++
++2020-01-02  Jakub Jelinek  <address@hidden>
++
++      PR ipa/93087
++      * predict.c (compute_function_frequency): Don't call
++      warn_function_cold on functions that already have cold attribute.
++
++2020-01-01  John David Anglin  <address@hidden>
++
++      PR target/67834
++      * config/pa/pa.c (pa_elf_select_rtx_section): New.  Put references to
++      COMDAT group function labels in .data.rel.ro.local section.
++      * config/pa/pa32-linux.h (TARGET_ASM_SELECT_RTX_SECTION): Define.
++
++      PR target/93111
++      * config/pa/pa.md (scc): Use ordered_comparison_operator instead of
++      comparison_operator in B and S integer comparisons.  Likewise, use
++      ordered_comparison_operator instead of cmpib_comparison_operator in
++      cmpib patterns.
++      * config/pa/predicates.md (cmpib_comparison_operator): Remove.
++
++2020-01-01  Jakub Jelinek  <address@hidden>
+ 
+       Update copyright years.
+ 
+@@ -16533,8 +2527,22 @@
+       * doc/gcov.texi: Ditto.
+       * doc/install.texi: Ditto.
+       * doc/invoke.texi: Ditto.
++
++2020-01-01  Jan Hubicka  <address@hidden>
++
++      * ipa.c (walk_polymorphic_call_targets): Fix updating of overall
++      summary.
++
++2020-01-01  Jakub Jelinek  <address@hidden>
++
++      PR tree-optimization/93098
++      * match.pd (popcount): For shift amounts, use integer_onep
++      or wi::to_widest () == cst instead of tree_to_uhwi () == cst
++      tests.  Make sure that precision is power of two larger than or equal
++      to 16.  Ensure shift is never negative.  Use HOST_WIDE_INT_UC macro
++      instead of ULL suffixed constants.  Formatting fixes.
+
+-Copyright (C) 2017 Free Software Foundation, Inc.
++Copyright (C) 2020 Free Software Foundation, Inc.
+ 
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
+index 77ba08d3f21..28cb6d88da8 100644
+--- a/gcc/doc/install.texi
++++ b/gcc/doc/install.texi
+@@ -2083,6 +2083,10 @@ shorthand for
+ The following options only apply to building cross compilers.
+ 
+ @table @code
++@item --with-toolexeclibdir=@var{dir}
++Specify the installation directory for libraries built with a cross compiler.
++The default is @option{$@{gcc_tooldir@}/lib}.
++
+ @item --with-sysroot
+ @itemx --with-sysroot=@var{dir}
+ Tells GCC to consider @var{dir} as the root of a tree that contains
+diff --git a/libada/ChangeLog b/libada/ChangeLog
+index 8e56d7c60ef..8eda1ebe4c1 100644
+--- a/libada/ChangeLog
++++ b/libada/ChangeLog
+@@ -1,26 +1,55 @@
+-2019-11-14  Release Manager
++2020-01-24  Maciej W. Rozycki  <address@hidden>
+ 
+-      * GCC 7.5.0 released.
++      * Makefile.in (configure_deps): Add `toolexeclibdir.m4'.
++      * configure.ac: Handle `--with-toolexeclibdir='.
++      * configure: Regenerate.
+ 
+-2018-12-06  Release Manager
++2020-01-01  Jakub Jelinek  <address@hidden>
+ 
+-      * GCC 7.4.0 released.
++      Update copyright years.
+ 
+-2018-06-22  Jakub Jelinek  <address@hidden>
++2019-10-01  Maciej W. Rozycki  <address@hidden>
+ 
+-      Backported from mainline
+-      2018-04-18  David Malcolm  <address@hidden>
++      * Makefile.in (toolexecdir, toolexeclibdir): New variables.
++      (LIBADA_FLAGS_TO_PASS): Add `toolexeclibdir'.
++      * configure.ac: Add `--enable-version-specific-runtime-libs'.
++      Update version-specific `toolexecdir' and `toolexeclibdir' from 
++      ADA_RTL_OBJ_DIR from gcc/ada/gcc-interface/Makefile.in.
++      * configure: Regenerate.
+ 
+-      PR jit/85384
++2019-01-01  Jakub Jelinek  <address@hidden>
++
++      Update copyright years.
++
++2018-12-11  Eric Botcazou  <address@hidden>
++
++      PR ada/88429
++      * configure.ac (default_gnatlib_target): Set to gnatlib instead of
++      gnatlib-plain if --disable-shared.
++      * configure: Regenerate.
++      * Makefile.in (all): Replace gnatlib prerequisite with libada.
++      (ADA_RTS_SUBDIR): Delete.
++      (libada): New target, renamed from...
++      (gnatlib): ...this.  Merge with other library targets.
++      (gnatlib-plain): Delete.
++      (install-gnatlib): Rename to...
++      (install-libada): ...this.
++      (install): Replace install-gnatlib prerequisite with install-libada.
++
++2018-10-31  Joseph Myers  <address@hidden>
++
++      PR bootstrap/82856
++      * configure.ac: Remove AC_PREREQ.
+       * configure: Regenerate.
+ 
+-2018-01-25  Release Manager
++2018-04-18  David Malcolm  <address@hidden>
+ 
+-      * GCC 7.3.0 released.
++      PR jit/85384
++      * configure: Regenerate.
+ 
+-2017-08-14  Release Manager
++2018-01-03  Jakub Jelinek  <address@hidden>
+ 
+-      * GCC 7.2.0 released.
++      Update copyright years.
+ 
+ 2017-06-01  Eric Botcazou  <address@hidden>
+ 
+@@ -29,9 +58,12 @@
+       (have_getipinfo): Tweak.
+       * configure: Regenerate.
+ 
+-2017-05-02  Release Manager
++2017-05-22  Eric Botcazou  <address@hidden>
+ 
+-      * GCC 7.1.0 released.
++      * configure.ac: Add check for sys/capability.h header.
++      (have_capability): New substitution.
++      * configure: Regenerate.
++      * Makefile.in (GNATLIBCFLAGS_FOR_C): Add @have_capability@.
+ 
+ 2017-01-17  Jakub Jelinek  <address@hidden>
+ 
+@@ -199,11 +231,11 @@
+ 
+ 2009-04-06  Laurent GUERBY  <address@hidden>
+ 
+-        * Makefile.in (ADA_RTS_DIR): Define.
+-        * Makefile.in (gnatlib-*): Link adainclude and adalib to it.
++      * Makefile.in (ADA_RTS_DIR): Define.
++      * Makefile.in (gnatlib-*): Link adainclude and adalib to it.
+ 
+ 2008-09-21  Laurent Guerby  <address@hidden>
+-            Paolo Bonzini  <address@hidden>
++          Paolo Bonzini  <address@hidden>
+ 
+       PR ada/5911
+       * Makefile.in (all, install, mostlyclean, clean, distclean): Add
+@@ -417,7 +449,7 @@
+ 
+       * New directory, new ChangeLog.
+
+-Copyright (C) 2003-2017 Free Software Foundation, Inc.
++Copyright (C) 2003-2020 Free Software Foundation, Inc.
+ 
+ This ChangeLog is free software; the Free Software Foundation gives
+ unlimited permission to copy, distribute, and modify it.
+diff --git a/libada/Makefile.in b/libada/Makefile.in
+index 328c067c4cd..004aaf8f993 100644
+--- a/libada/Makefile.in
++++ b/libada/Makefile.in
+@@ -192,6 +192,7 @@ configure_deps = \
+       $(srcdir)/../config/multi.m4 \
+       $(srcdir)/../config/override.m4 \
+       $(srcdir)/../config/picflag.m4 \
++      $(srcdir)/../config/toolexeclibdir.m4 \
+       $(srcdir)/../config/unwind_ipinfo.m4
+ 
+ $(srcdir)/configure: @MAINT@ $(configure_deps)
+diff --git a/libada/configure b/libada/configure
+index 13e267a7f4e..3135092a73b 100755
+--- a/libada/configure
++++ b/libada/configure
+@@ -631,6 +631,7 @@ ac_user_opts='
+ enable_option_checking
+ with_build_libsubdir
+ enable_maintainer_mode
++with_toolexeclibdir
+ enable_multilib
+ enable_shared
+ with_system_libunwind
+@@ -1262,6 +1263,9 @@ Optional Packages:
+   --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
+   --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
+   --with-build-libsubdir=DIR  Directory where to find libraries for build 
system
++  --with-toolexeclibdir=DIR
++                          install libraries built with a cross compiler within
++                          DIR
+   --with-system-libunwind use installed libunwind
+   --with-gcc-major-version-only
+                           use only GCC major number in filesystem paths
+@@ -1952,6 +1956,22 @@ else
+ fi
+ 
+ 
++
++# Check whether --with-toolexeclibdir was given.
++if test "${with_toolexeclibdir+set}" = set; then :
++  withval=$with_toolexeclibdir; case ${with_toolexeclibdir} in
++  /)
++    ;;
++  */)
++    with_toolexeclibdir=`echo $with_toolexeclibdir | sed 's,/$,,'`
++    ;;
++esac
++else
++  with_toolexeclibdir=no
++fi
++
++
++
+ # Default to --enable-multilib
+ # Check whether --enable-multilib was given.
+ if test "${enable_multilib+set}" = set; then :
+@@ -2004,7 +2024,14 @@ case ${enable_version_specific_runtime_libs} in
+        test x"$with_cross_host" != x"no"; then
+       # Install a library built with a cross compiler in tooldir, not libdir.
+       toolexecdir='$(exec_prefix)/$(target_alias)'
+-      toolexeclibdir='$(toolexecdir)/lib'
++      case ${with_toolexeclibdir} in
++      no)
++        toolexeclibdir='$(toolexecdir)/lib'
++        ;;
++      *)
++        toolexeclibdir=${with_toolexeclibdir}
++        ;;
++      esac
+     else
+       toolexecdir='$(libdir)/gcc-lib/$(target_alias)'
+       toolexeclibdir='$(libdir)'
+diff --git a/libada/configure.ac b/libada/configure.ac
+index 0020df9d463..a2a4a1f5049 100644
+--- a/libada/configure.ac
++++ b/libada/configure.ac
+@@ -19,6 +19,7 @@ sinclude(../config/acx.m4)
+ sinclude(../config/multi.m4)
+ sinclude(../config/override.m4)
+ sinclude(../config/picflag.m4)
++sinclude(../config/toolexeclibdir.m4)
+ sinclude(../config/unwind_ipinfo.m4)
+ 
+ AC_INIT
+@@ -53,6 +54,8 @@ AC_ARG_ENABLE([maintainer-mode],
+   [MAINT='#'])
+ AC_SUBST([MAINT])dnl
+ 
++GCC_WITH_TOOLEXECLIBDIR
++
+ AM_ENABLE_MULTILIB(, ..)
+ # Calculate toolexeclibdir
+ # Also toolexecdir, though it's only used in toolexeclibdir
+@@ -69,7 +72,14 @@ case ${enable_version_specific_runtime_libs} in
+        test x"$with_cross_host" != x"no"; then
+       # Install a library built with a cross compiler in tooldir, not libdir.
+       toolexecdir='$(exec_prefix)/$(target_alias)'
+-      toolexeclibdir='$(toolexecdir)/lib'
++      case ${with_toolexeclibdir} in
++      no)
++        toolexeclibdir='$(toolexecdir)/lib'
++        ;;
++      *)
++        toolexeclibdir=${with_toolexeclibdir}
++        ;;
++      esac
+     else
+       toolexecdir='$(libdir)/gcc-lib/$(target_alias)'
+       toolexeclibdir='$(libdir)'
+diff --git a/libatomic/ChangeLog b/libatomic/ChangeLog
+index 0f950731c5c..4aeaadb189c 100644
+--- a/libatomic/ChangeLog
++++ b/libatomic/ChangeLog
+@@ -1,45 +1,171 @@
+-2019-11-14  Release Manager
++2020-01-24  Maciej W. Rozycki  <address@hidden>
+ 
+-      * GCC 7.5.0 released.
++      * configure.ac: Handle `--with-toolexeclibdir='.
++      * Makefile.in: Regenerate.
++      * aclocal.m4: Regenerate.
++      * configure: Regenerate.
++      * testsuite/Makefile.in: Regenerate.
++
++2020-01-01  Jakub Jelinek  <address@hidden>
++
++      Update copyright years.
++
++2019-09-27  Maciej W. Rozycki  <address@hidden>
++
++      * configure: Regenerate.
++
++2019-09-10  Christophe Lyon  <address@hidden>
++
++        * configure.tgt: Handle arm*-*-uclinux*.
++        * configure: Regenerate.
++
++2019-09-03  Chung-Lin Tang  <address@hidden>
++
++      PR other/79543
++      * acinclude.m4 (LIBAT_CHECK_LINKER_FEATURES): Fix GNU ld --version
++      scanning to conform to the GNU Coding Standards.
++      * configure: Regenerate.
++
++2019-06-14  Matt Thomas  <address@hidden>
++          Matthew Green  <address@hidden>
++          Nick Hudson  <address@hidden>
++          Maya Rashish  <address@hidden>
++
++      * configure.tgt (arm*): Handle NetBSD in the same way as FreeBSD.
++
++2019-01-01  Jakub Jelinek  <address@hidden>
++
++      Update copyright years.
++
++2018-10-31  Joseph Myers  <address@hidden>
++
++      PR bootstrap/82856
++      * Makefile.am: Include multilib.am.
++      * acinclude.m4: Use AC_LANG_SOURCE.
++      * configure.ac: Remove AC_PREREQ.
++      * testsuite/Makefile.am (RUNTEST): Remove quotes.
++      * Makefile.in, aclocal.m4, configure, testsuite/Makefile.in:
++      Regenerate.
++
++2018-06-21  Christophe Lyon  <address@hidden>
++
++      * config/arm/arm-config.h (__ARM_ARCH__): Remove definitions, use
++      __ARM_ARCH instead. Use __ARM_FEATURE_LDREX to define HAVE_STREX
++      and HAVE_STREXBHD
++
++2018-05-23  Florian Weimer  <address@hidden>
++
++      PR libgcc/60790
++      x86: Do not assume ELF constructors run before IFUNC resolvers.
++      * config/x86/host-config.h (libat_feat1_ecx, libat_feat1_edx):
++      Remove declarations.
++      (__libat_feat1, __libat_feat1_init): Declare.
++      (FEAT1_REGISTER): Define.
++      (load_feat1): New function.
++      (IFUNC_COND_1): Adjust.
++      * config/x86/init.c (libat_feat1_ecx, libat_feat1_edx)
++      (init_cpuid): Remove definitions.
++      (__libat_feat1): New variable.
++      (__libat_feat1_init): New function.
++
++2018-05-02  Tom de Vries  <address@hidden>
++
++      PR testsuite/85106
++      * testsuite/lib/libatomic.exp: Include scanltranstree.exp.
++
++2018-05-02  Tom de Vries  <address@hidden>
+ 
+-2018-12-06  Release Manager
++      PR testsuite/85106
++      * testsuite/lib/libatomic.exp: Include scanwpaipa.exp.
+ 
+-      * GCC 7.4.0 released.
++2018-04-24  H.J. Lu  <address@hidden>
+ 
+-2018-06-22  Jakub Jelinek  <address@hidden>
++      * configure: Regenerated.
++
++2018-04-19  Jakub Jelinek  <address@hidden>
++
++      * configure: Regenerated.
+ 
+-      Backported from mainline
+-      2018-04-18  David Malcolm  <address@hidden>
++2018-04-18  David Malcolm  <address@hidden>
+ 
+       PR jit/85384
+       * configure: Regenerate.
+ 
+ 2018-03-09  Andreas Krebbel  <address@hidden>
+ 
+-      Backport from mainline
+-      2018-03-09  Andreas Krebbel  <address@hidden>
+-
+       * config/s390/exch_n.c: New file.
+       * configure.tgt: Add the config directory for s390.
+ 
+-2018-01-25  Release Manager
++2018-02-14  Igor Tsimbalist  <address@hidden>
++
++      PR target/84148
++      * configure: Regenerate.
++
++2018-01-03  Jakub Jelinek  <address@hidden>
++
++      Update copyright years.
++
++2017-12-14  Steve Ellcey  <address@hidden>
++
++      * Makefile.am (IFUNC_OPTIONS): Change aarch64
++      option from -march=armv8.1-a to -march=armv8-a+lse.
++      * configure.ac (*aarch64*): Check to see if
++      compiler understands -march=armv8-a+lse option.
++      * configure.tgt (*aarch64*): Only set try_ifunc
++      if compiler understands -march=armv8-a+lse option.
++      * Makefile.in: Regenerate.
++      * testsuite/Makefile.in: Regenerate.
++      * configure: Regenerate.
++      * aclocal.m4: Regenerate.
++
++2017-12-04  Steve Ellcey  <address@hidden>
++
++      * Makefile.am (ARCH_AARCH64_LINUX): Add IFUNC_OPTIONS and
++      libatomic_la_LIBADD.
++      * config/linux/aarch64/host-config.h: New file.
++      * configure.ac (IFUNC_RESOLVER_ARGS): Define.
++      (ARCH_AARCH64_LINUX): New conditional for IFUNC builds.
++      * configure.tgt (aarch64): Set ARCH and try_ifunc.
++      (aarch64*-*-linux*) Update config_path.
++      (aarch64*-*-linux*) Set IFUNC_RESOLVER_ARGS.
++      * libatomic_i.h (GEN_SELECTOR): Add IFUNC_RESOLVER_ARGS argument.
++      * Makefile.in: Regenerate.
++      * auto-config.h.in: Regenerate.
++      * configure: Regenerate.
++
++2017-11-17  Igor Tsimbalist  <address@hidden>
+ 
+-      * GCC 7.3.0 released.
++      * configure.ac: Set CET_FLAGS, update XCFLAGS.
++      * acinclude.m4: Add cet.m4 and enable.m4.
++      * configure: Regenerate.
++      * Makefile.in: Likewise.
++      * testsuite/Makefile.in: Likewise.
+ 
+-2017-08-14  Release Manager
++2017-10-20  Richard Earnshaw  <address@hidden>
+ 
+-      * GCC 7.2.0 released.
++      * Makefile.am: (IFUNC_OPTIONS): Set the architecture to
++      -march=armv7-a+fp on Linux/Arm.
++      * Makefile.in: Regenerated.
++
++2017-10-02  Martin Sebor  <address@hidden>
++
++      PR c/81854
++      * acinclude.m4 (LIBAT_CHECK_IFUNC): Have ifunc resolver return
++      a function pointer rather than void* to avoid GCC 8 warnings.
++      * configure: Regenerate.
++      * libatomic_i.h: Declare ifunc resolvers to return function
++      pointers rather than void*.
+ 
+-2017-05-02  Release Manager
++2017-05-12  Rainer Orth  <address@hidden>
+ 
+-      * GCC 7.1.0 released.
++      * testsuite/lib/libatomic.exp: Load scanlang.exp.
+ 
+ 2017-02-06  Palmer Dabbelt <address@hidden>
+ 
+       * configure.tgt: Add RISC-V tuple.
+ 
+ 2017-02-01  Richard Henderson  <address@hidden>
+-            Torvald Riegel  <address@hidden>
++          Torvald Riegel  <address@hidden>
+ 
+       * acinclude.m4: Add #define FAST_ATOMIC_LDST_*.
+       * auto-config.h.in: Regenerate.
+@@ -341,7 +467,7 @@
+ 
+       * Initial commit.
+
+-Copyright (C) 2012-2017 Free Software Foundation, Inc.
++Copyright (C) 2012-2020 Free Software Foundation, Inc.
+ 
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+diff --git a/libatomic/Makefile.in b/libatomic/Makefile.in
+index f6eeab312ea..86d7ba20c19 100644
+--- a/libatomic/Makefile.in
++++ b/libatomic/Makefile.in
+@@ -72,6 +72,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
+       $(top_srcdir)/../config/multi.m4 \
+       $(top_srcdir)/../config/override.m4 \
+       $(top_srcdir)/../config/stdint.m4 \
++      $(top_srcdir)/../config/toolexeclibdir.m4 \
+       $(top_srcdir)/../ltoptions.m4 $(top_srcdir)/../ltsugar.m4 \
+       $(top_srcdir)/../ltversion.m4 $(top_srcdir)/../lt~obsolete.m4 \
+       $(top_srcdir)/acinclude.m4 $(top_srcdir)/../libtool.m4 \
+diff --git a/libatomic/aclocal.m4 b/libatomic/aclocal.m4
+index 1363e7b9cbc..f1a3f1dda26 100644
+--- a/libatomic/aclocal.m4
++++ b/libatomic/aclocal.m4
+@@ -1017,6 +1017,7 @@ m4_include([../config/lthostflags.m4])
+ m4_include([../config/multi.m4])
+ m4_include([../config/override.m4])
+ m4_include([../config/stdint.m4])
++m4_include([../config/toolexeclibdir.m4])
+ m4_include([../ltoptions.m4])
+ m4_include([../ltsugar.m4])
+ m4_include([../ltversion.m4])
+diff --git a/libatomic/configure b/libatomic/configure
+index 2ae9b8d40f3..0fa531ec4a3 100755
+--- a/libatomic/configure
++++ b/libatomic/configure
+@@ -755,6 +755,7 @@ enable_option_checking
+ enable_version_specific_runtime_libs
+ enable_generated_files_in_srcdir
+ enable_multilib
++with_toolexeclibdir
+ enable_dependency_tracking
+ enable_shared
+ enable_static
+@@ -1414,6 +1415,9 @@ Optional Features:
+ Optional Packages:
+   --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
+   --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
++  --with-toolexeclibdir=DIR
++                          install libraries built with a cross compiler within
++                          DIR
+   --with-pic              try to use only PIC/non-PIC objects [default=use
+                           both]
+   --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
+@@ -3185,6 +3189,22 @@ fi
+ ac_config_commands="$ac_config_commands default-1"
+ 
+ 
++
++# Check whether --with-toolexeclibdir was given.
++if test "${with_toolexeclibdir+set}" = set; then :
++  withval=$with_toolexeclibdir; case ${with_toolexeclibdir} in
++  /)
++    ;;
++  */)
++    with_toolexeclibdir=`echo $with_toolexeclibdir | sed 's,/$,,'`
++    ;;
++esac
++else
++  with_toolexeclibdir=no
++fi
++
++
++
+ # Calculate toolexeclibdir
+ # Also toolexecdir, though it's only used in toolexeclibdir
+ case ${enable_version_specific_runtime_libs} in
+@@ -3200,7 +3220,14 @@ case ${enable_version_specific_runtime_libs} in
+        test x"$with_cross_host" != x"no"; then
+       # Install a library built with a cross compiler in tooldir, not libdir.
+       toolexecdir='$(exec_prefix)/$(target_alias)'
+-      toolexeclibdir='$(toolexecdir)/lib'
++      case ${with_toolexeclibdir} in
++      no)
++        toolexeclibdir='$(toolexecdir)/lib'
++        ;;
++      *)
++        toolexeclibdir=${with_toolexeclibdir}
++        ;;
++      esac
+     else
+       toolexecdir='$(libdir)/gcc-lib/$(target_alias)'
+       toolexeclibdir='$(libdir)'
+@@ -11115,7 +11142,7 @@ else
+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+   lt_status=$lt_dlunknown
+   cat > conftest.$ac_ext <<_LT_EOF
+-#line 11118 "configure"
++#line 11145 "configure"
+ #include "confdefs.h"
+ 
+ #if HAVE_DLFCN_H
+@@ -11221,7 +11248,7 @@ else
+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+   lt_status=$lt_dlunknown
+   cat > conftest.$ac_ext <<_LT_EOF
+-#line 11224 "configure"
++#line 11251 "configure"
+ #include "confdefs.h"
+ 
+ #if HAVE_DLFCN_H
+diff --git a/libatomic/configure.ac b/libatomic/configure.ac
+index 023f1727b1e..3c58801ae98 100644
+--- a/libatomic/configure.ac
++++ b/libatomic/configure.ac
+@@ -85,6 +85,8 @@ target_alias=${target_alias-$host_alias}
+ AM_INIT_AUTOMAKE([1.9.0 foreign no-dist -Wall -Wno-portability -Wno-override])
+ AM_ENABLE_MULTILIB(, ..)
+ 
++GCC_WITH_TOOLEXECLIBDIR
++
+ # Calculate toolexeclibdir
+ # Also toolexecdir, though it's only used in toolexeclibdir
+ case ${enable_version_specific_runtime_libs} in
+@@ -100,7 +102,14 @@ case ${enable_version_specific_runtime_libs} in
+        test x"$with_cross_host" != x"no"; then
+       # Install a library built with a cross compiler in tooldir, not libdir.
+       toolexecdir='$(exec_prefix)/$(target_alias)'
+-      toolexeclibdir='$(toolexecdir)/lib'
++      case ${with_toolexeclibdir} in
++      no)
++        toolexeclibdir='$(toolexecdir)/lib'
++        ;;
++      *)
++        toolexeclibdir=${with_toolexeclibdir}
++        ;;
++      esac
+     else
+       toolexecdir='$(libdir)/gcc-lib/$(target_alias)'
+       toolexeclibdir='$(libdir)'
+diff --git a/libatomic/testsuite/Makefile.in b/libatomic/testsuite/Makefile.in
+index adfc231484a..a2a76e07502 100644
+--- a/libatomic/testsuite/Makefile.in
++++ b/libatomic/testsuite/Makefile.in
+@@ -61,6 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
+       $(top_srcdir)/../config/multi.m4 \
+       $(top_srcdir)/../config/override.m4 \
+       $(top_srcdir)/../config/stdint.m4 \
++      $(top_srcdir)/../config/toolexeclibdir.m4 \
+       $(top_srcdir)/../ltoptions.m4 $(top_srcdir)/../ltsugar.m4 \
+       $(top_srcdir)/../ltversion.m4 $(top_srcdir)/../lt~obsolete.m4 \
+       $(top_srcdir)/acinclude.m4 $(top_srcdir)/../libtool.m4 \
+diff --git a/libffi/ChangeLog b/libffi/ChangeLog
+index cc1444f53a2..47648d31abd 100644
+--- a/libffi/ChangeLog
++++ b/libffi/ChangeLog
+@@ -1,30 +1,89 @@
+-2019-11-14  Release Manager
++2020-01-24  Maciej W. Rozycki  <address@hidden>
+ 
+-      * GCC 7.5.0 released.
+-
+-2018-12-06  Release Manager
++      * configure.ac: Handle `--with-toolexeclibdir='.
++      * Makefile.in: Regenerate.
++      * aclocal.m4: Regenerate.
++      * configure: Regenerate.
++      * include/Makefile.in: Regenerate.
++      * man/Makefile.in: Regenerate.
++      * testsuite/Makefile.in: Regenerate.
+ 
+-      * GCC 7.4.0 released.
++2019-09-27  Maciej W. Rozycki  <address@hidden>
+ 
+-2018-06-22  Jakub Jelinek  <address@hidden>
++      * configure: Regenerate.
+ 
+-      Backported from mainline
+-      2018-04-18  David Malcolm  <address@hidden>
++2019-09-03  Chung-Lin Tang  <address@hidden>
+ 
+-      PR jit/85384
++      PR other/79543
++      * acinclude.m4 (LIBAT_CHECK_LINKER_FEATURES): Fix GNU ld --version
++      scanning to conform to the GNU Coding Standards.
+       * configure: Regenerate.
+ 
+-2018-01-25  Release Manager
++2018-10-31  Joseph Myers  <address@hidden>
+ 
+-      * GCC 7.3.0 released.
++      PR bootstrap/82856
++      * Makefile.am: Include multilib.am.
++      (AUTOMAKE_OPTIONS): Add info-in-builddir.
++      (CLEANFILES): Remove doc/libffi.info.
++      * configure.ac: Remove AC_PREREQ.
++      * Makefile.in, aclocal.m4, configure, fficonfig.h.in,
++      include/Makefile.in, man/Makefile.in, testsuite/Makefile.in:
++      Regenerate.
+ 
+-2017-08-14  Release Manager
++2018-08-15  Andreas Schwab  <address@hidden>
+ 
+-      * GCC 7.2.0 released.
++      Backport of RISC-V support for libffi go closures
++      * src/riscv/ffi.c (ffi_call_go, ffi_prep_go_closure): New
++      functions.
++      (ffi_call_int): Renamed from ffi_call.
++      (ffi_call_asm, ffi_closure_inner): Adjust interface.
++      * src/riscv/ffitarget.h (FFI_GO_CLOSURES): Define.
++      * src/riscv/sysv.S (ffi_go_closure_asm): New function.
++      (ffi_closure_asm, ffi_call_asm): Update for adjusted interfaces.
+ 
+-2017-05-02  Release Manager
++2018-05-08  Andreas Schwab  <address@hidden>
++
++      Backport of RISC-V support for libffi
++      * configure.host: Add RISC-V support.
++      * Makefile.am: Likewise.
++      * Makefile.in: Regenerate.
++      * src/riscv/ffi.c, src/riscv/ffitarget.h, src/riscv/sysv.S: New
++      files.
++
++2018-05-04  Alan Modra  <address@hidden>
++
++      Import from upstream
++      * src/powerpc/ffi_linux64.c (discover_homogeneous_aggregate):
++      Compile for ELFv1 too, handling single element aggregates.
++      (ffi_prep_cif_linux64_core): Call discover_homogeneous_aggregate
++      for ELFv1.  Set FLAG_RETURNS_64BITS for FFI_TYPE_POINTER return.
++      (ffi_prep_args64): Call discover_homogeneous_aggregate for ELFv1,
++      and handle single element structs containing float or double
++      as if the element wasn't wrapped in a struct.  Store floats in
++      second word of doubleword slot when big-endian.
++      (ffi_closure_helper_LINUX64): Similarly.
++
++2018-04-18  David Malcolm  <address@hidden>
++
++      PR jit/85384
++      * configure: Regenerate.
+ 
+-      * GCC 7.1.0 released.
++2017-08-31  Tony Reix  <address@hidden>
++
++      * src/powerpc/aix.S (ffi_call_AIX): Add debugging pseudo-op and
++      labels for EH.
++      (ffi_call_go_AIX): New function.
++      (_GLOBAL__F_libffi_src_powerpc_aix): New EH frame.
++      * src/powerpc/aix_closure.S (ffi_closure_ASM): Add debugging
++      pseudo-op and labels for EH.
++      (ffi_go_closure_ASM): New function.
++      (_GLOBAL__F_libffi_src_powerpc_aix_closure): New EH frame.
++      * src/powrpc/ffi_darwin.c (ffi_call_go): New function.
++      (ffi_prep_go_closure): New function.
++      (ffi_closure_helper_common): Rename from ffi_closure_helper_DARWIN.
++      (ffi_closure_helper_DARWIN): Call ffi_closure_helper_common.
++      (ffi_go_closure_helper_DARWIN): Call ffi_closure_helper_common.
++      * src/powerpc/ffitarget.h (FFI_GO_CLOSURES): Define.
+ 
+ 2017-01-21  Jakub Jelinek  <address@hidden>
+ 
+@@ -435,7 +494,7 @@
+       * configure: Rebuild.
+ 
+ 2012-10-30  James Greenhalgh  <james.greenhalgh at arm.com>
+-            Marcus Shawcroft  <marcus.shawcroft at arm.com>
++          Marcus Shawcroft  <marcus.shawcroft at arm.com>
+ 
+       * README: Add details of aarch64 port.
+       * src/aarch64/ffi.c: New.
+@@ -446,7 +505,7 @@
+       * Makefile.in, configure: Rebuilt.
+ 
+ 2012-10-30  James Greenhalgh  <james.greenhalgh at arm.com>
+-            Marcus Shawcroft  <marcus.shawcroft at arm.com>
++          Marcus Shawcroft  <marcus.shawcroft at arm.com>
+ 
+       * testsuite/lib/libffi.exp: Add support for aarch64.
+       * testsuite/libffi.call/cls_struct_va1.c: New.
+diff --git a/libffi/Makefile.in b/libffi/Makefile.in
+index 8a99ee58b68..032dadf4c4a 100644
+--- a/libffi/Makefile.in
++++ b/libffi/Makefile.in
+@@ -72,6 +72,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
+       $(top_srcdir)/../config/lead-dot.m4 \
+       $(top_srcdir)/../config/multi.m4 \
+       $(top_srcdir)/../config/override.m4 \
++      $(top_srcdir)/../config/toolexeclibdir.m4 \
+       $(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \
+       $(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \
+       $(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/acinclude.m4 \
+diff --git a/libffi/aclocal.m4 b/libffi/aclocal.m4
+index 6d6207eb897..9cd050aaaf5 100644
+--- a/libffi/aclocal.m4
++++ b/libffi/aclocal.m4
+@@ -1051,6 +1051,7 @@ m4_include([../config/depstand.m4])
+ m4_include([../config/lead-dot.m4])
+ m4_include([../config/multi.m4])
+ m4_include([../config/override.m4])
++m4_include([../config/toolexeclibdir.m4])
+ m4_include([../libtool.m4])
+ m4_include([../ltoptions.m4])
+ m4_include([../ltsugar.m4])
+diff --git a/libffi/configure b/libffi/configure
+index 790a291011f..6e37039e84c 100755
+--- a/libffi/configure
++++ b/libffi/configure
+@@ -777,6 +777,7 @@ enable_debug
+ enable_structs
+ enable_raw_api
+ enable_purify_safety
++with_toolexeclibdir
+ enable_symvers
+ with_gcc_major_version_only
+ '
+@@ -1436,6 +1437,9 @@ Optional Packages:
+   --with-pic              try to use only PIC/non-PIC objects [default=use
+                           both]
+   --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
++  --with-toolexeclibdir=DIR
++                          install libraries built with a cross compiler within
++                          DIR
+   --with-gcc-major-version-only
+                           use only GCC major number in filesystem paths
+ 
+@@ -11390,7 +11394,7 @@ else
+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+   lt_status=$lt_dlunknown
+   cat > conftest.$ac_ext <<_LT_EOF
+-#line 11393 "configure"
++#line 11397 "configure"
+ #include "confdefs.h"
+ 
+ #if HAVE_DLFCN_H
+@@ -11496,7 +11500,7 @@ else
+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+   lt_status=$lt_dlunknown
+   cat > conftest.$ac_ext <<_LT_EOF
+-#line 11499 "configure"
++#line 11507 "configure"
+ #include "confdefs.h"
+ 
+ #if HAVE_DLFCN_H
+@@ -16002,10 +16006,33 @@ $as_echo "#define USING_PURIFY 1" >>confdefs.h
+ fi
+ 
+ 
++
++# Check whether --with-toolexeclibdir was given.
++if test "${with_toolexeclibdir+set}" = set; then :
++  withval=$with_toolexeclibdir; case ${with_toolexeclibdir} in
++  /)
++    ;;
++  */)
++    with_toolexeclibdir=`echo $with_toolexeclibdir | sed 's,/$,,'`
++    ;;
++esac
++else
++  with_toolexeclibdir=no
++fi
++
++
++
+ if test -n "$with_cross_host" &&
+    test x"$with_cross_host" != x"no"; then
+   toolexecdir='$(exec_prefix)/$(target_alias)'
+-  toolexeclibdir='$(toolexecdir)/lib'
++  case ${with_toolexeclibdir} in
++    no)
++      toolexeclibdir='$(toolexecdir)/lib'
++      ;;
++    *)
++      toolexeclibdir=${with_toolexeclibdir}
++      ;;
++  esac
+ else
+   toolexecdir='$(libdir)/gcc-lib/$(target_alias)'
+   toolexeclibdir='$(libdir)'
+diff --git a/libffi/configure.ac b/libffi/configure.ac
+index a01d8ac16b0..f295d06ab58 100644
+--- a/libffi/configure.ac
++++ b/libffi/configure.ac
+@@ -333,10 +333,19 @@ AC_ARG_ENABLE(purify-safety,
+     AC_DEFINE(USING_PURIFY, 1, [Define this if you are using Purify and want 
to suppress spurious messages.])
+   fi)
+ 
++GCC_WITH_TOOLEXECLIBDIR
++
+ if test -n "$with_cross_host" &&
+    test x"$with_cross_host" != x"no"; then
+   toolexecdir='$(exec_prefix)/$(target_alias)'
+-  toolexeclibdir='$(toolexecdir)/lib'
++  case ${with_toolexeclibdir} in
++    no)
++      toolexeclibdir='$(toolexecdir)/lib'
++      ;;
++    *)
++      toolexeclibdir=${with_toolexeclibdir}
++      ;;
++  esac
+ else
+   toolexecdir='$(libdir)/gcc-lib/$(target_alias)'
+   toolexeclibdir='$(libdir)'
+diff --git a/libffi/include/Makefile.in b/libffi/include/Makefile.in
+index e0c75992327..3762e6c9b68 100644
+--- a/libffi/include/Makefile.in
++++ b/libffi/include/Makefile.in
+@@ -62,6 +62,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
+       $(top_srcdir)/../config/lead-dot.m4 \
+       $(top_srcdir)/../config/multi.m4 \
+       $(top_srcdir)/../config/override.m4 \
++      $(top_srcdir)/../config/toolexeclibdir.m4 \
+       $(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \
+       $(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \
+       $(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/acinclude.m4 \
+diff --git a/libffi/man/Makefile.in b/libffi/man/Makefile.in
+index 0243bdbedfa..12e61e485eb 100644
+--- a/libffi/man/Makefile.in
++++ b/libffi/man/Makefile.in
+@@ -60,6 +60,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
+       $(top_srcdir)/../config/lead-dot.m4 \
+       $(top_srcdir)/../config/multi.m4 \
+       $(top_srcdir)/../config/override.m4 \
++      $(top_srcdir)/../config/toolexeclibdir.m4 \
+       $(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \
+       $(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \
+       $(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/acinclude.m4 \
+diff --git a/libffi/testsuite/Makefile.in b/libffi/testsuite/Makefile.in
+index b7da4b0b3e7..469b251b17f 100644
+--- a/libffi/testsuite/Makefile.in
++++ b/libffi/testsuite/Makefile.in
+@@ -60,6 +60,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
+       $(top_srcdir)/../config/lead-dot.m4 \
+       $(top_srcdir)/../config/multi.m4 \
+       $(top_srcdir)/../config/override.m4 \
++      $(top_srcdir)/../config/toolexeclibdir.m4 \
+       $(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \
+       $(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \
+       $(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/acinclude.m4 \
+diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
+index 1a6f9ec681c..0920265f60a 100644
+--- a/libgcc/ChangeLog
++++ b/libgcc/ChangeLog
+@@ -1,55 +1,1178 @@
+-2019-11-14  Release Manager
++2020-01-24  Maciej W. Rozycki  <address@hidden>
+ 
+-      * GCC 7.5.0 released.
++      * Makefile.in (configure_deps): Add `toolexeclibdir.m4'.
++      * configure.ac: Handle `--with-toolexeclibdir='.
++      * configure: Regenerate.
++
++2020-01-23  Dragan Mladjenovic  <address@hidden>
++
++      * config/mips/gnustack.h: Check for TARGET_LIBC_GNUSTACK also.
++
++2020-01-23  Dragan Mladjenovic  <address@hidden>
++
++      * config/mips/gnustack.h: New file.
++      * config/mips/crti.S: Include gnustack.h.
++      * config/mips/crtn.S: Likewise.
++      * config/mips/mips16.S: Likewise.
++      * config/mips/vr4120-div.S: Likewise.
++
++2020-01-23  Martin Liska  <address@hidden>
++
++      * libgcov-driver.c (prune_topn_counter): Remove
++      check for -1 as we only prune run-time counters
++      that do not generate an invalid state.
++
++2020-01-22  Martin Liska  <address@hidden>
++
++      PR tree-optimization/92924
++      * libgcov-profiler.c (__gcov_topn_values_profiler_body): First
++      try to find an existing value, then find an empty slot
++      if not found.
++
++2020-01-22  Martin Liska  <address@hidden>
++
++      PR tree-optimization/92924
++      * libgcov-driver.c (prune_topn_counter): New.
++      (prune_counters): Likewise.
++      (dump_one_gcov): Prune a run-time counter.
++      * libgcov-profiler.c (__gcov_topn_values_profiler_body):
++      For a known value, add GCOV_TOPN_VALUES to value.
++      Otherwise, decrement all counters by one.
++
++2020-01-18  Hans-Peter Nilsson  <address@hidden>
++
++      * config/cris/arit.c (DS): Apply attribute __fallthrough__.
++
++2020-01-18  John David Anglin  <address@hidden>
++
++      PR libgcc/92988
++      * crtstuff.c (__do_global_dtors_aux): Only call __cxa_finalize if
++      DEFAULT_USE_CXA_ATEXIT is true.
++
++2020-01-16  Mihail-Calin Ionescu  <address@hidden>
++          Thomas Preud'homme  <address@hidden>
++
++      * config/arm/t-arm: Check return value of gcc rather than lack of
++      output.
++
++2020-01-14  Georg-Johann Lay  <address@hidden>
++
++      * config/avr/lib1funcs.S (skip): Simplify.
++
++2020-01-10  Kwok Cheung Yeung  <address@hidden>
++
++      * config/gcn/atomic.c: Remove include of stdint.h.
++      (__sync_val_compare_and_swap_##SIZE): Replace uintptr_t with
++      __UINTPTR_TYPE__.
++
++2020-01-09  Kwok Cheung Yeung  <address@hidden>
++
++      * config/gcn/atomic.c: New.
++      * config/gcn/t-amdgcn (LIB2ADD): Add atomic.c.
++
++2020-01-08  Georg-Johann Lay  <address@hidden>
++
++      Implement 64-bit double functions.
++
++      PR target/92055
++      * config.host (tmake_file) [target=avr]: Add t-libf7,
++      t-libf7-math, t-libf7-math-symbols as specified by --with-libf7=.
++      * config/avr/t-avrlibc: Don't copy libgcc.a if there are modules
++      depending on sizeof (double) or sizeof (long double).
++      * config/avr/libf7: New folder.
++
++2020-01-05  Olivier Hainque  <address@hidden>
++
++      * config/gthr-vxworks.h: Guard #include vxAtomicLib.h
++      by IN_LIBGCC2.
++
++2020-01-01  Jakub Jelinek  <address@hidden>
++
++      Update copyright years.
++
++2019-12-30  Olivier Hainque  <address@hidden>
++
++      * config/gthr-vxworks.h: Use _vxworks-versions.h.
++      * config/gthr-vxworks-tls.c: Likewise.
++
++2019-12-30  Olivier Hainque  <address@hidden>
++
++      * config/gthr-vxworks.h (GTHREAD_ONCE_INIT): Use
++      standard zero-initializer syntax.
++
++2019-12-30  Olivier Hainque  <address@hidden>
++
++      * config/gthr-vxworks-tls.c (__gthread_getspecific): Fix
++      reference to the internal VX_GET_TLS_DATA interface.
++
++2019-12-30  Olivier Hainque  <address@hidden>
++
++      * config/vxcrtstuff.c: Fix incorrect spelling of
++      USE_INITFINI_ARRAY in guard.
++
++2019-12-16  Jozef Lawrynowicz  <address@hidden>
++
++      * config.host: s/msp430*-*-elf/msp430-*-elf*.
++      Override default "extra_parts" variable.
++      * configure: Regenerate.
++      * configure.ac: Disable TM clone registry by default for
++      msp430-elfbare.
++
++2019-12-11  Jozef Lawrynowicz  <address@hidden>
++
++      * config.host (msp430*-*-elf): Add crt{begin,end}_no_eh.o to
++      "extra_parts".
++      * config/msp430/t-msp430: Add rules to build crt{begin,end}_no_eh.o.
++
++2019-12-11  Jozef Lawrynowicz  <address@hidden>
++
++      * crtstuff.c: Declare __dso_handle only if DEFAULT_USE_CXA_ATEXIT is
++      true.
++
++2019-12-09  Jozef Lawrynowicz  <address@hidden>
++
++      * crtstuff.c (__do_global_dtors_aux): Check if USE_EH_FRAME_REGISTRY is
++      defined instead of its value.
++
++2019-12-09  Jozef Lawrynowicz  <address@hidden>
++
++      * crtstuff.c (__do_global_dtors_aux): Wrap in #if so it's only defined
++      if it will have contents.
++
++2019-12-05  Georg-Johann Lay  <address@hidden>
++
++      PR target/92055
++      * config/avr/t-avrlibc (MULTISUBDIR): Search for double, not double64.
++
++2019-11-18  Szabolcs Nagy  <address@hidden>
++
++      PR libgcc/91737
++      * config.host: Add t-gthr-noweak on *-*-musl*.
++      * config/t-gthr-noweak: New file.
++
++2019-11-17  John David Anglin  <address@hidden>
++
++      * config/pa/linux-atomic.c (__kernel_cmpxchg): Change argument 1 to
++      volatile void *.  Remove trap check.
++      (__kernel_cmpxchg2): Likewise.
++      (FETCH_AND_OP_2): Adjust operand types.
++      (OP_AND_FETCH_2): Likewise.
++      (FETCH_AND_OP_WORD): Likewise.
++      (OP_AND_FETCH_WORD): Likewise.
++      (COMPARE_AND_SWAP_2): Likewise.
++      (__sync_val_compare_and_swap_4): Likewise.
++      (__sync_bool_compare_and_swap_4): Likewise.
++      (SYNC_LOCK_TEST_AND_SET_2): Likewise.
++      (__sync_lock_test_and_set_4): Likewise.
++      (SYNC_LOCK_RELEASE_1): Likewise.  Use __kernel_cmpxchg2 for release.
++      (__sync_lock_release_4): Adjust operand types.  Use __kernel_cmpxchg
++      for release.
++      (__sync_lock_release_8): Remove.
++
++2019-11-15  Szabolcs Nagy  <address@hidden>
++
++      * config/m68k/linux-unwind.h (struct uw_ucontext): Use sigset_t instead
++      of __sigset_t.
++
++2019-11-14  Jerome Lambourg  <address@hidden>
++          Doug Rupp <address@hidden>
++          Olivier Hainque  <address@hidden>
++
++      * config.host: Collapse the arm-vxworks entries into
++      a single arm-wrs-vxworks7* one.
++      * config/arm/unwind-arm-vxworks.c: Update comments.  Provide
++      __gnu_Unwind_Find_exidx and a weak dummy __cxa_type_match for
++      kernel modules, to be overriden by libstdc++ when we link with
++      it.  Rely on externally provided __exidx_start/end.
++
++2019-11-14  Doug Rupp  <address@hidden>
++          Olivier Hainque  <address@hidden>
++
++      * config.host: Handle aarch64*-wrs-vxworks7*.
++
++2019-11-12  Olivier Hainque  <address@hidden>
++
++      * config/t-gthr-vxworksae: New file, add all the gthr-vxworks
++      sources except the cxx0x support to LIB2ADDEH.  We don't support
++      cxx0x on AE/653.
++      * config/t-vxworksae: New file.
++      * config.host: Handle *-*-vxworksae: Add the two aforementioned
++      Makefile fragment files at their expected position in the tmake_file
++      list, in accordance with what is done for other VxWorks variants.
++
++2019-11-12  Corentin Gay  <address@hidden>
++          Jerome Lambourg  <address@hidden>
++          Olivier Hainque  <address@hidden>
++
++      * config/t-gthr-vxworks: New file, add all the gthr-vxworks
++      sources to LIB2ADDEH.
++      * config/t-vxworks: Remove adjustments to LIB2ADDEH.
++      * config/t-vxworks7: Likewise.
++
++      * config.host: Append a block at the end of the file to add the
++      t-gthr files to the tmake_file list for VxWorks after everything
++      else.
++
++      * config/vxlib.c: Rename as gthr-vxworks.c.
++      * config/vxlib-tls.c: Rename as gthr-vxworks-tls.c.
++
++      * config/gthr-vxworks.h: Simplify a few comments.  Expose a TAS
++      API and a basic error checking API, both internal.  Simplify the
++      __gthread_once_t type definition and initializers.  Add sections
++      for condition variables support and for the C++0x thread support,
++      conditioned against Vx653 for the latter.
++
++      * config/gthr-vxworks.c (__gthread_once): Simplify comments and
++      implementation, leveraging the TAS internal API.
++      * config/gthr-vxworks-tls.c: Introduce an internal TLS data access
++      API, leveraging the general availability of TLS services in VxWorks7
++      post SR6xxx.
++      (__gthread_setspecific, __gthread_setspecific): Use it.
++      (tls_delete_hook): Likewise, and simplify the enter/leave dtor logic.
++      * config/gthr-vxworks-cond.c: New file.  GTHREAD_COND variable
++      support based on VxWorks primitives.
++      * config/gthr-vxworks-thread.c: New file.  GTHREAD_CXX0X support
++      based on VxWorks primitives.
++
++2019-11-06  Jerome Lambourg  <address@hidden>
++          Olivier Hainque  <address@hidden>
++
++      * config/vxcrtstuff.c: New file.
++      * config/t-vxcrtstuff: New Makefile fragment.
++      * config.host: Append t-vxcrtstuff to the tmake_file list
++      on all VxWorks ports using dwarf for table based EH.
++
++2019-11-07  Georg-Johann Lay  <address@hidden>
++
++      Support 64-bit double and 64-bit long double configurations.
++
++      PR target/92055
++      * config/avr/t-avr (HOST_LIBGCC2_CFLAGS): Only add -DF=SF if
++      long double is a 32-bit type.
++      * config/avr/t-avrlibc: Copy double64 and long-double64
++      multilib(s) from the vanilla one.
++      * config/avr/t-copy-libgcc: New Makefile snip.
++
++2019-11-04  Jozef Lawrynowicz  <address@hidden>
++
++      * crtstuff.c: Define USE_TM_CLONE_REGISTRY to 0 if it's undefined and
++      the target output object format is not ELF.
++      s/defined(USE_TM_CLONE_REGISTRY)/USE_TM_CLONE_REGISTRY.
++
++2019-11-03  Oleg Endo  <address@hidden>
++
++      PR libgcc/78804
++      * fp-bit.h: Remove FLOAT_BIT_ORDER_MISMATCH.
++      * fp-bit.c (pack_d, unpack_d): Remove special cases for
++      FLOAT_BIT_ORDER_MISMATCH.
++      * config/arc/t-arc: Remove FLOAT_BIT_ORDER_MISMATCH.
++
++2019-11-01  Jim Wilson  <address@hidden>
++
++      * config/riscv/t-softfp32 (softfp_extra): Add FP divide routines
++
++2019-10-23  Jozef Lawrynowicz  <address@hidden>
++
++      * config/msp430/lib2hw_mul.S: Fix wrong syntax in branch instruction.
++      s/RESULT_LO/RESLO, s/RESULT_HI/RESHI, s/MPY_OP1/MPY, 
++      s/MPY_OP1_S/MPYS, s/MAC_OP1/MAC, s/MPY_OP2/OP2, s/MAC_OP2/OP2.
++      Define symbols for 32-bit and f5series hardware multiply
++      register addresses.
++      Replace hard-coded register addresses with symbols.
++      Fix "_mspabi*" typo.
++      Fix whitespace.
++      * config/msp430/lib2mul.c: Add comment.
++
++2019-10-15  John David Anglin  <address@hidden>
++
++      * config/pa/fptr.c (_dl_read_access_allowed): Change argument to
++      unsigned int.  Adjust callers.
++      (__canonicalize_funcptr_for_compare): Change plabel type to volatile
++      unsigned int *.  Load relocation offset before function pointer.
++      Add barrier to ensure ordering.
++
++2019-10-12  John David Anglin  <address@hidden>
++
++      * config/pa/lib2funcs.S (__gcc_plt_call): Load branch target to %r21.
++      Load PIC register after branch target.  Fix white space.
++      * config/pa/milli64.S ($$dyncall): Separate LINUX and non LINUX
++      implementations.  Load PIC register after branch target.  Don't
++      clobber function pointer when it points to function descriptor.
++      Use nullification instead of branch in LINUX implementation.
++
++2019-10-03  John David Anglin  <address@hidden>
++
++      * config/pa/fptr.c: Disable -Warray-bounds warning.
++
++2019-09-25  Richard Henderson  <address@hidden>
++
++      * config.in, configure: Re-rebuild with stock autoconf 2.69,
++      not the ubuntu modified 2.69.
++
++      PR target/91833
++      * config/aarch64/lse-init.c: Include auto-target.h.  Disable
++      initialization if !HAVE_SYS_AUXV_H.
++      * configure.ac (AC_CHECK_HEADERS): Add sys/auxv.h.
++      * config.in, configure: Rebuild.
++
++      PR target/91834
++      * config/aarch64/lse.S (LDNM): Ensure STXR output does not
++      overlap the inputs.
++
++2019-09-25  Shaokun Zhang  <address@hidden>
++
++      * config/aarch64/sync-cache.c (__aarch64_sync_cache_range): Add support 
for
++      CTR_EL0.IDC and CTR_EL0.DIC.
++
++2019-09-20  Christophe Lyon  <address@hidden>
++
++      Revert:
++      2019-09-10  Christophe Lyon  <address@hidden>
++              Mickaël Guêné <address@hidden>
++
++      * config/arm/unwind-arm.c (_Unwind_VRS_Set): Handle thumb-only
++      architecture.
++
++2019-09-19  Richard Henderson  <address@hidden>
++
++      * config/aarch64/lse-init.c: New file.
++      * config/aarch64/lse.S: New file.
++      * config/aarch64/t-lse: New file.
++      * config.host: Add t-lse to all aarch64 tuples.
++
++2019-09-10  Christophe Lyon  <address@hidden>
++      Mickaël Guêné <address@hidden>
++
++      * config/arm/unwind-arm.c (_Unwind_VRS_Set): Handle thumb-only
++      architecture.
++
++2019-09-10  Christophe Lyon  <address@hidden>
++      Mickaël Guêné <address@hidden>
++
++      * unwind-arm-common.inc (ARM_SET_R7_RT_SIGRETURN)
++      (THUMB2_SET_R7_RT_SIGRETURN, FDPIC_LDR_R12_WITH_FUNCDESC)
++      (FDPIC_LDR_R9_WITH_GOT, FDPIC_LDR_PC_WITH_RESTORER)
++      (FDPIC_FUNCDESC_OFFSET, ARM_NEW_RT_SIGFRAME_UCONTEXT)
++      (ARM_UCONTEXT_SIGCONTEXT, ARM_SIGCONTEXT_R0, 
FDPIC_T2_LDR_R12_WITH_FUNCDESC)
++      (FDPIC_T2_LDR_R9_WITH_GOT, FDPIC_T2_LDR_PC_WITH_RESTORER): New.
++      (__gnu_personality_sigframe_fdpic): New.
++      (get_eit_entry): Add FDPIC signal frame support.
++
++2019-09-10  Christophe Lyon  <address@hidden>
++      Mickaël Guêné <address@hidden>
++
++      * config/arm/linux-atomic.c (__kernel_cmpxchg): Add FDPIC support.
++      (__kernel_dmb): Likewise.
++      (__fdpic_cmpxchg): New function.
++      (__fdpic_dmb): New function.
++      * config/arm/unwind-arm.h (FDPIC_REGNUM): New define.
++      (gnu_Unwind_Find_got): New function.
++      (_Unwind_decode_typeinfo_ptr): Add FDPIC support.
++      * unwind-arm-common.inc (UCB_PR_GOT): New.
++      (funcdesc_t): New struct.
++      (get_eit_entry): Add FDPIC support.
++      (unwind_phase2): Likewise.
++      (unwind_phase2_forced): Likewise.
++      (__gnu_Unwind_RaiseException): Likewise.
++      (__gnu_Unwind_Resume): Likewise.
++      (__gnu_Unwind_Backtrace): Likewise.
++      * unwind-pe.h (read_encoded_value_with_base): Likewise.
++
++2019-09-10  Christophe Lyon  <address@hidden>
++      Mickaël Guêné <address@hidden>
++
++      * libgcc/crtstuff.c: Add support for FDPIC.
++
++2019-09-10  Christophe Lyon  <address@hidden>
++
++      * config.host: Handle *-*-uclinuxfdpiceabi.
++
++2019-09-09  Jose E. Marchesi  <address@hidden>
++
++      * config.host: Set cpu_type for bpf-*-* targets.
++      * config/bpf/t-bpf: Likewise.
++      * config/bpf/crtn.S: Likewise.
++      * config/bpf/crti.S: New file.
++
++2019-09-06  Jim Wilson  <address@hidden>
++
++      * config.host (riscv*-*-linux*): Add t-slibgcc-libgcc to tmake_file.
++      (riscv*-*-freebsd*): Likewise.
++
++2019-09-03  Ulrich Weigand  <address@hidden>
++
++      * config.host: Remove references to spu.
++      * config/spu/: Remove directory.
++
++2019-08-23  Jozef Lawrynowicz  <address@hidden>
++
++      PR target/91306
++      * crtstuff.c (__CTOR_LIST__): Align to the "__alignof__" the array
++      element type, instead of "sizeof" the element type.
++      (__DTOR_LIST__): Likewise.
++      (__TMC_LIST__): Likewise.
++      (__do_global_dtors_aux_fini_array_entry): Likewise.
++      (__frame_dummy_init_array_entry): Likewise.
++      (__CTOR_END__): Likewise.
++      (__DTOR_END__): Likweise.
++      (__FRAME_END__): Likewise.
++      (__TMC_END__): Likewise.
++
++2019-08-20  Lili Cui  <address@hidden>
++
++      * config/i386/cpuinfo.h: Add INTEL_COREI7_TIGERLAKE and
++      INTEL_COREI7_COOPERLAKE.
++
++2019-07-31  Matt Thomas  <address@hidden>
++          Nick Hudson <address@hidden>
++          Matthew Green <address@hidden>
++          Maya Rashish <address@hidden>
++
++      * config.host (hppa*-*-netbsd*): New case.
++      * config/pa/t-netbsd: New file.
++
++2019-07-31  Joel Hutton  <address@hidden>
++
++      * config/arm/cmse.c (cmse_check_address_range): Add
++      warn_unused_result attribute.
++
++2019-07-22  Martin Liska  <address@hidden>
++
++      * config/pa/stublib.c: Remove stub symbol __gnu_lto_v1.
++      * config/pa/t-stublib: Likewise.
++
++2019-07-22  Stafford Horne  <address@hidden>
++
++      PR target/90362
++      * config/or1k/lib1funcs.S (__udivsi3): Change l.sfeqi
++      to l.sfeq and l.sfltsi to l.sflts equivalents as the immediate
++      instructions are not available on every processor.  Change a
++      l.bnf to l.bf to fix logic issue.
++
++2019-07-04  Iain Sandoe  <address@hidden>
++
++      * config.host: Remove reference to t-darwin8.
++
++2019-07-03  Iain Sandoe  <address@hidden>
++
++      * config.host (powerpc-*-darwin*,powerpc64-*-darwin*): Revise crt
++      list.
++      * config/rs6000/t-darwin: Build crt3_2 for older systems.  Revise
++      mmacosx-version-min for crts to run across all system versions.
++      * config/rs6000/t-darwin64 (LIB2ADD): Remove.
++      * config/t-darwin: Revise mmacosx-version-min for crts to run across
++      system versions >= 10.4.
++
++2019-07-03  Martin Liska  <address@hidden>
++
++      * Makefile.in: Use topn_values instead of one_value names.
++      * libgcov-merge.c (__gcov_merge_single): Move to ...
++      (__gcov_merge_topn): ... this.
++      (merge_single_value_set): Move to ...
++      (merge_topn_values_set): ... this.
++      * libgcov-profiler.c (__gcov_one_value_profiler_body): Move to
++      ...
++      (__gcov_topn_values_profiler_body): ... this.
++      (__gcov_one_value_profiler_v2): Move to ...
++      (__gcov_topn_values_profiler): ... this.
++      (__gcov_one_value_profiler_v2_atomic): Move to ...
++      (__gcov_topn_values_profiler_atomic): ... this.
++      (__gcov_indirect_call_profiler_v4): Remove.
++      * libgcov-util.c (__gcov_single_counter_op): Move to ...
++      (__gcov_topn_counter_op): ... this.
++      * libgcov.h (L_gcov_merge_single): Remove.
++      (L_gcov_merge_topn): New.
++      (__gcov_merge_single): Remove.
++      (__gcov_merge_topn): New.
++      (__gcov_one_value_profiler_v2): Move to ..
++      (__gcov_topn_values_profiler): ... this.
++      (__gcov_one_value_profiler_v2_atomic): Move to ...
++      (__gcov_topn_values_profiler_atomic): ... this.
++
++2019-07-03  Martin Liska  <address@hidden>
++
++      * libgcov-merge.c (merge_single_value_set): Support N values.
++      * libgcov-profiler.c (__gcov_one_value_profiler_body): Likewise.
++
++2019-06-27  Ilia Diachkov  <address@hidden>
++
++      * Makefile.in (USE_TM_CLONE_REGISTRY): New.
++      (CRTSTUFF_CFLAGS): Use USE_TM_CLONE_REGISTRY.
++      * configure.ac: Add --disable-tm-clone-registry option.
++      * configure: Regenerate.
++
++2019-06-27  Martin Liska  <address@hidden>
++
++      * libgcov-driver-system.c (gcov_exit_open_gcda_file): Remove obviously
++      dead assignments.
++      * libgcov-util.c: Likewise.
++
++2019-06-27  Martin Liska  <address@hidden>
++
++      * libgcov-util.c (gcov_profile_merge): Release allocated
++      memory.
++      (calculate_overlap): Likewise.
++
++2019-06-25  Iain Sandoe  <address@hidden>
++
++      * config.host: Add libef_ppc.a to the extra files for powerpc-darwin.
++      * config/rs6000/t-darwin: (PPC_ENDFILE_SRC, PPC_ENDFILE_OBJS): New.
++      Build objects for the out of line save/restore register functions
++      so that they can be used for any supported Darwin version.
++      * config/t-darwin: Default the build Darwin version to Darwin8
++      (MacOS 10.4).
++
++2019-06-25  Martin Liska  <address@hidden>
++
++      * libgcov-driver-system.c (replace_filename_variables): Do not
++      call strlen with NULL argument.
++
++2019-06-25  Andrew Stubbs  <address@hidden>
++
++      * config/gcn/t-amdgcn (LIB2ADD): Add unwind-gcn.c.
++      * config/gcn/unwind-gcn.c: New file.
++
++2019-06-25  Kwok Cheung Yeung  <address@hidden>
++            Andrew Stubbs  <address@hidden>
++
++      * configure: Regenerate.
++      * config/gcn/gthr-gcn.h: New.
++
++2019-06-18  Tom de Vries  <address@hidden>
++
++      * config/nvptx/crt0.c (__main): Declare.
++
++2019-06-17  Matthew Green  <address@hidden>
++          Maya Rashish  <address@hidden>
++
++      * config.host (aarch64*-*-netbsd*): New case.
++
++2019-06-16  Jozef Lawrynowicz  <address@hidden>
++
++      * config/msp430/slli.S (__mspabi_sllll): New library function for
++      performing a logical left shift of a 64-bit value.
++      * config/msp430/srai.S (__mspabi_srall): New library function for
++      performing a arithmetic right shift of a 64-bit value.
++      * config/msp430/srll.S (__mspabi_srlll): New library function for
++      performing a logical right shift of a 64-bit value.
++
++2019-06-14  Matt Thomas  <address@hidden>
++          Matthew Green  <address@hidden>
++          Nick Hudson  <address@hidden>
++          Maya Rashish  <address@hidden>
++
++      * config.host (arm*-*-netbsdelf*): Add support for EABI configurations.
++      * config/arm/t-netbsd (LIB1ASMFUNCS): Add some additional assembler
++      functions to build.
++      * config/arm/t-netbsd-eabi: New file.
++
++2019-06-12  Dimitar Dimitrov  <address@hidden>
++
++      * config.host: Add PRU target.
++      * config/pru/asri.c: New file.
++      * config/pru/eqd.c: New file.
++      * config/pru/eqf.c: New file.
++      * config/pru/ged.c: New file.
++      * config/pru/gef.c: New file.
++      * config/pru/gtd.c: New file.
++      * config/pru/gtf.c: New file.
++      * config/pru/led.c: New file.
++      * config/pru/lef.c: New file.
++      * config/pru/lib2bitcountHI.c: New file.
++      * config/pru/lib2divHI.c: New file.
++      * config/pru/lib2divQI.c: New file.
++      * config/pru/lib2divSI.c: New file.
++      * config/pru/libgcc-eabi.ver: New file.
++      * config/pru/ltd.c: New file.
++      * config/pru/ltf.c: New file.
++      * config/pru/mpyll.S: New file.
++      * config/pru/pru-abi.h: New file.
++      * config/pru/pru-asm.h: New file.
++      * config/pru/pru-divmod.h: New file.
++      * config/pru/sfp-machine.h: New file.
++      * config/pru/t-pru: New file.
++
++2019-06-11  Jakub Jelinek  <address@hidden>
++
++      * libgcov-merge.c (__gcov_merge_single): Revert previous change.
++
++2019-06-10  Martin Liska  <address@hidden>
++
++      PR bootstrap/90808
++      * libgcov.h: Add ATTRIBUTE_UNUSED.
++
++2019-06-10  Martin Liska  <address@hidden>
++
++      * Makefile.in: Add __gcov_one_value_profiler_v2,
++      __gcov_one_value_profiler_v2_atomic and
++      __gcov_indirect_call_profiler_v4.
++      * libgcov-merge.c (__gcov_merge_single): Change
++      function signature.
++      (merge_single_value_set): New.
++      * libgcov-profiler.c (__gcov_one_value_profiler_body):
++      Update functionality.
++      (__gcov_one_value_profiler): Remove.
++      (__gcov_one_value_profiler_v2): ... this.
++      (__gcov_one_value_profiler_atomic): Rename to ...
++      (__gcov_one_value_profiler_v2_atomic): this.
++      (__gcov_indirect_call_profiler_v3): Rename to ...
++      (__gcov_indirect_call_profiler_v4): ... this.
++      * libgcov.h (__gcov_one_value_profiler): Remove.
++      (__gcov_one_value_profiler_atomic): Remove.
++      (__gcov_one_value_profiler_v2_atomic): New.
++      (__gcov_indirect_call_profiler_v3): Remove.
++      (__gcov_one_value_profiler_v2): New.
++      (__gcov_indirect_call_profiler_v4): New.
++      (gcov_get_counter_ignore_scaling): New function.
++
++2019-06-07  Martin Liska  <address@hidden>
++
++      * Makefile.in: Remove usage of
++      _gcov_merge_icall_topn.
++      * libgcov-driver.c (gcov_sort_n_vals): Remove.
++      (gcov_sort_icall_topn_counter): Likewise.
++      (gcov_sort_topn_counter_arrays): Likewise.
++      (dump_one_gcov): Remove call to gcov_sort_topn_counter_arrays.
++      * libgcov-merge.c (__gcov_merge_icall_topn): Remove.
++      * libgcov-profiler.c (__gcov_topn_value_profiler_body):
++      Likewise.
++      (GCOV_ICALL_COUNTER_CLEAR_THRESHOLD): Remove.
++      (struct indirect_call_tuple): Remove.
++      (__gcov_indirect_call_topn_profiler): Remove.
++      * libgcov-util.c (__gcov_icall_topn_counter_op): Remove.
++      * libgcov.h (gcov_sort_n_vals): Remove.
++      (L_gcov_merge_icall_topn): Likewise.
++      (__gcov_merge_icall_topn): Likewise.
++      (__gcov_indirect_call_topn_profiler): Likewise.
++
++2019-06-06  Iain Sandoe  <address@hidden>
++
++      * config/rs6000/t-darwin: Ensure that the unwinder is built with
++      altivec enabled.
++
++2019-06-06  Jozef Lawrynowicz  <address@hidden>
++
++      * config/msp430/slli.S (__mspabi_slli_n): Put function in its own
++      section.
++      (__mspabi_slli): Likewise.
++      (__mspabi_slll_n): Likewise.
++      (__mspabi_slll): Likewise.
++      * config/msp430/srai.S (__mspabi_srai_n): Likewise.
++      (__mspabi_srai): Likewise.
++      (__mspabi_sral_n): Likewise.
++      (__mspabi_sral): Likewise.
++      * config/msp430/srli.S (__mspabi_srli_n): Likewise.
++      (__mspabi_srli): Likewise.
++      (__mspabi_srll_n): Likewise.
++      (__mspabi_srll): Likewise.
++
++2019-06-05  Yoshinori Sato  <address@hidden>
++
++      * config.host (rx-*-linux*): Add t-fdpbit to tmake_file
++      Add appropriate tm_file clause as well.
++      * config/rx/t-rx (HOST_LIBGCC2_CFLAGS): Remove.
++
++2019-06-05  James Clarke  <address@hidden>
++
++      * config/ia64/crtbegin.S (__dso_handle): Put in .sdata/.sbss
++      rather than .data/.bss so it can be accessed via gp-relative
++      addressing.
++
++2019-06-05  David Edelsohn  <address@hidden>
++
++      * config/rs6000/aix-unwind.h (LR_REGNO): Rename to R_LR.
++      (CR2_REGNO): Rename to R_CR2.
++      (XER_REGNO): Rename to R_XER.
++      (FIRST_ALTIVEC_REGNO): Rename to R_FIRST_ALTIVEC.
++      (VRSAVE_REGNO): Rename to R_VRSAVE.
++      (VSCR_REGNO): R_VSCR.
++
++2019-05-29  Yoshinori Sato  <address@hidden>
++
++      * config.host (rx-*-linux*): Add new case.
++      * config/rx/t-rx (HOST_LIBGCC2_CFLAGS): Force DFmode to SFmode.
++
++2019-05-29  Sam Tebbs  <address@hidden>
++
++      * config/aarch64/aarch64-unwind.h (aarch64_cie_signed_with_b_key): New
++      function.
++      * config/aarch64/aarch64-unwind.h (aarch64_post_extract_frame_addr,
++      aarch64_post_frob_eh_handler_addr): Add check for b-key.
++      * config/aarch64/aarch64-unwind-h (aarch64_post_extract_frame_addr,
++      aarch64_post_frob_eh_handler_addr, aarch64_post_frob_update_context):
++      Rename RA_A_SIGNED_BIT to RA_SIGNED_BIT.
++      * unwind-dw2-fde.c (get_cie_encoding): Add check for 'B' in augmentation
++      string.
++      * unwind-dw2.c (extract_cie_info): Add check for 'B' in augmentation
++      string.
++      (RA_A_SIGNED_BIT): Rename to RA_SIGNED_BIT.
++
++2019-05-28  Rainer Orth  <address@hidden>
++
++      * config/sparc/sol2-unwind.h [__arch64__] (sparc64_is_sighandler):
++      Remove Solaris 9 and 10 support.
++      (sparc_is_sighandler): Likewise.
++
++2019-05-26  John David Anglin  <address@hidden>
++
++      * config/pa/linux-unwind.h (pa32_fallback_frame_state): Add cast.
++
++2019-05-17  H.J. Lu  <address@hidden>
++
++      * soft-fp/extenddftf2.c: Use "_FP_W_TYPE_SIZE < 64" to check if
++      4_FP_W_TYPEs are used for IEEE quad precision.
++      * soft-fp/extendhftf2.c: Likewise.
++      * soft-fp/extendsftf2.c: Likewise.
++      * soft-fp/extendxftf2.c: Likewise.
++      * soft-fp/trunctfdf2.c: Likewise.
++      * soft-fp/trunctfhf2.c: Likewise.
++      * soft-fp/trunctfsf2.c: Likewise.
++      * soft-fp/trunctfxf2.c: Likewise.
++      * config/rs6000/ibm-ldouble.c: Likewise.
++
++2019-05-14  Rainer Orth  <address@hidden>
++
++      * config.host: Simplify various *-*-solaris2.1[0-9]* to
++      *-*-solaris2*.
++      * configure.ac: Likewise.
++      * configure: Regenerate.
++
++      * config/i386/sol2-unwind.h (x86_fallback_frame_state): Remove
++      Solaris 10 and Solaris 11 < snv_125 handling.
++
++2019-05-12  Iain Sandoe  <address@hidden>
++
++      * config/rs6000/darwin-vecsave.S: Set .machine appropriately.
++
++2019-05-07  Hongtao Liu  <address@hidden>
++
++      * config/i386/cpuinfo.c (get_available_features): Detect BF16.
++      * config/i386/cpuinfo.h (enum processor_features): Add
++      FEATURE_AVX512BF16.
++
++2019-04-23  Ramana Radhakrishnan  <address@hidden>
++          Bernd Edlinger  <address@hidden>
++          Jakub Jelinek  <address@hidden>
++
++      PR target/89093
++      * config/arm/pr-support.c: Add #pragma GCC target("general-regs-only").
++      * config/arm/unwind-arm.c: Likewise.
++      * unwind-c.c (PERSONALITY_FUNCTION): Add general-regs-only target
++      attribute for ARM.
++
++2019-04-15  Monk Chiang  <address@hidden>
++
++      * config/nds32/linux-unwind.h (SIGRETURN): Remove.
++      (RT_SIGRETURN): Update.
++      (nds32_fallback_frame_state): Update.
++
++2019-02-21  Martin Sebor  <address@hidden>
++
++      * libgcc2.h (__clear_cache): Correct signature.
++      * libgcc2.c (__clear_cache): Same.
++
++2019-02-20  Uroš Bizjak  <address@hidden>
++
++      * config/alpha/linux-unwind.h (alpha_fallback_frame_state):
++      Cast 'mcontext_t *' &rt_->uc.uc_mcontext to 'struct sigcontext *'.
++
++2019-02-19  Uroš Bizjak  <address@hidden>
++
++      * unwind-dw2.c (_Unwind_GetGR) [DWARF_ZERO_REG]: Compare
++      regno instead of index to DWARF_ZERO_REG.
++
++2019-02-15  Eric Botcazou  <address@hidden>
++
++      * config/visium/lib2funcs.c (__set_trampoline_parity): Replace
++      TRAMPOLINE_SIZE with __LIBGCC_TRAMPOLINE_SIZE__.
++
++2019-01-31  Uroš Bizjak  <address@hidden>
++
++      * config/alpha/t-linux: Add -mfp-rounding-mode=d
++      to HOST_LIBGCC2_CFLAGS.
++
++2019-01-23  Joseph Myers  <address@hidden>
++
++      PR libgcc/88931
++      * libgcc2.c (FSTYPE FUNC (DWtype u)): Correct no leading bits case.
++
++2019-01-18  Martin Liska  <address@hidden>
++
++      * libgcov-profiler.c (__gcov_indirect_call_profiler_v2): Rename
++      to ...
++      (__gcov_indirect_call_profiler_v3): ... this.
++      * libgcov.h (__gcov_indirect_call_profiler_v2): Likewise.
++      (__gcov_indirect_call_profiler_v3): Likewise.
++      * Makefile.in: Bump function name.
++
++2019-01-18  Martin Liska  <address@hidden>
++
++      * libgcov-driver.c (GCOV_PROF_PREFIX): Define.
++      (gcov_version): Use in gcov_error.
++      (merge_one_data): Likewise.
++      (dump_one_gcov): Likewise.
++
++2019-01-18  Martin Liska  <address@hidden>
++
++      * libgcov-driver.c (gcov_version_string): New function.
++      (gcov_version): Convert version integer into string.
++
++2019-01-17  Andrew Stubbs  <address@hidden>
++          Kwok Cheung Yeung  <address@hidden>
++          Julian Brown  <address@hidden>
++          Tom de Vries  <address@hidden>
++
++      * config.host: Recognize amdgcn*-*-amdhsa.
++      * config/gcn/crt0.c: New file.
++      * config/gcn/lib2-divmod-hi.c: New file.
++      * config/gcn/lib2-divmod.c: New file.
++      * config/gcn/lib2-gcn.h: New file.
++      * config/gcn/sfp-machine.h: New file.
++      * config/gcn/t-amdgcn: New file.
++
++2019-01-09  Sandra Loosemore  <address@hidden>
++
++      PR other/16615
++
++      * config/c6x/libunwind.S: Mechanically replace "can not" with
++      "cannot".
++      * config/tilepro/atomic.h: Likewise.
++      * config/vxlib-tls.c: Likewise.
++      * generic-morestack-thread.c: Likewise.
++      * generic-morestack.c: Likewise.
++      * mkmap-symver.awk: Likewise.
++
++2019-01-01  Jakub Jelinek  <address@hidden>
++
++      Update copyright years.
++
++2018-12-20  H.J. Lu  <address@hidden>
++
++      * unwind-pe.h (read_encoded_value_with_base): Add GCC pragma
++      to ignore -Waddress-of-packed-member.
++
++2018-12-19  Thomas Preud'homme  <address@hidden>
++
++      * /config/arm/lib1funcs.S (FUNC_START): Remove unused sp_section
++      parameter and corresponding code.
++      (ARM_FUNC_START): Likewise in both definitions.
++      Also update footer comment about condition that need to match with
++      gcc/config/arm/elf.h to also include libgcc/config/arm/t-arm.
++      * config/arm/ieee754-df.S (muldf3): Also build it if L_arm_muldf3 is
++      defined.  Weakly define it in this case.
++      * config/arm/ieee754-sf.S (mulsf3): Likewise with L_arm_mulsf3.
++      * config/arm/t-elf (LIB1ASMFUNCS): Build _arm_muldf3.o and
++      _arm_mulsf3.o before muldiv versions if targeting Thumb-1 only. Add
++      comment to keep condition in sync with the one in
++      libgcc/config/arm/lib1funcs.S and gcc/config/arm/elf.h.
++
++2018-12-18  Wei Xiao  <address@hidden>
++
++      * config/i386/cpuinfo.c (get_intel_cpu): Handle cascadelake.
++      * config/i386/cpuinfo.h: Add INTEL_COREI7_CASCADELAKE.
++
++2018-12-12  Rasmus Villemoes  <address@hidden>
++
++      * config/rs6000/tramp.S (__trampoline_setup): Also emit .size
++      and .cfi_endproc directives for VxWorks targets.
++
++2018-12-05  Paul Koning  <address@hidden>
++
++      * udivmodhi4.c (__udivmodhi4): Fix loop end check.
++
++2018-11-27  Alan Modra  <address@hidden>
++
++      * config/rs6000/morestack.S (__stack_split_initialize),
++      (__morestack_get_guard, __morestack_set_guard),
++      (__morestack_make_guard): Provide CFI covering these functions.
++      * config/rs6000/tramp.S (__trampoline_setup): Likewise.
++
++2018-11-15  Xianmiao Qu  <address@hidden>
++
++      * config/csky/linux-unwind.h (sc_pt_regs): Update for kernel.
++      (sc_pt_regs_lr): Update for kernel.
++      (sc_pt_regs_tls): Update for kernel.
++
++2018-11-15  Xianmiao Qu  <address@hidden>
++
++      * config/csky/linux-unwind.h: Fix coding style.
++
++2018-11-13  Xianmiao Qu  <address@hidden>
++
++      * config/csky/linux-unwind.h (_sig_ucontext_t): Remove.
++      (csky_fallback_frame_state): Modify the check of the
++      instructions to adapt to changes in the kernel
++
++2018-11-09  Stafford Horne  <address@hidden>
++          Richard Henderson  <address@hidden>
++
++      * config.host: Add OpenRISC support.
++      * config/or1k/*: New.
++
++2018-11-08  Kito Cheng  <address@hidden>
++
++      * soft-fp/adddf3.c: Update from glibc.
++      * soft-fp/addsf3.c: Likewise.
++      * soft-fp/addtf3.c: Likewise.
++      * soft-fp/divdf3.c: Likewise.
++      * soft-fp/divsf3.c: Likewise.
++      * soft-fp/divtf3.c: Likewise.
++      * soft-fp/double.h: Likewise.
++      * soft-fp/eqdf2.c: Likewise.
++      * soft-fp/eqsf2.c: Likewise.
++      * soft-fp/eqtf2.c: Likewise.
++      * soft-fp/extenddftf2.c: Likewise.
++      * soft-fp/extended.h: Likewise.
++      * soft-fp/extendhftf2.c: Likewise.
++      * soft-fp/extendsfdf2.c: Likewise.
++      * soft-fp/extendsftf2.c: Likewise.
++      * soft-fp/extendxftf2.c: Likewise.
++      * soft-fp/fixdfdi.c: Likewise.
++      * soft-fp/fixdfsi.c: Likewise.
++      * soft-fp/fixdfti.c: Likewise.
++      * soft-fp/fixhfti.c: Likewise.
++      * soft-fp/fixsfdi.c: Likewise.
++      * soft-fp/fixsfsi.c: Likewise.
++      * soft-fp/fixsfti.c: Likewise.
++      * soft-fp/fixtfdi.c: Likewise.
++      * soft-fp/fixtfsi.c: Likewise.
++      * soft-fp/fixtfti.c: Likewise.
++      * soft-fp/fixunsdfdi.c: Likewise.
++      * soft-fp/fixunsdfsi.c: Likewise.
++      * soft-fp/fixunsdfti.c: Likewise.
++      * soft-fp/fixunshfti.c: Likewise.
++      * soft-fp/fixunssfdi.c: Likewise.
++      * soft-fp/fixunssfsi.c: Likewise.
++      * soft-fp/fixunssfti.c: Likewise.
++      * soft-fp/fixunstfdi.c: Likewise.
++      * soft-fp/fixunstfsi.c: Likewise.
++      * soft-fp/fixunstfti.c: Likewise.
++      * soft-fp/floatdidf.c: Likewise.
++      * soft-fp/floatdisf.c: Likewise.
++      * soft-fp/floatditf.c: Likewise.
++      * soft-fp/floatsidf.c: Likewise.
++      * soft-fp/floatsisf.c: Likewise.
++      * soft-fp/floatsitf.c: Likewise.
++      * soft-fp/floattidf.c: Likewise.
++      * soft-fp/floattihf.c: Likewise.
++      * soft-fp/floattisf.c: Likewise.
++      * soft-fp/floattitf.c: Likewise.
++      * soft-fp/floatundidf.c: Likewise.
++      * soft-fp/floatundisf.c: Likewise.
++      * soft-fp/floatunditf.c: Likewise.
++      * soft-fp/floatunsidf.c: Likewise.
++      * soft-fp/floatunsisf.c: Likewise.
++      * soft-fp/floatunsitf.c: Likewise.
++      * soft-fp/floatuntidf.c: Likewise.
++      * soft-fp/floatuntihf.c: Likewise.
++      * soft-fp/floatuntisf.c: Likewise.
++      * soft-fp/floatuntitf.c: Likewise.
++      * soft-fp/gedf2.c: Likewise.
++      * soft-fp/gesf2.c: Likewise.
++      * soft-fp/getf2.c: Likewise.
++      * soft-fp/half.h: Likewise.
++      * soft-fp/ledf2.c: Likewise.
++      * soft-fp/lesf2.c: Likewise.
++      * soft-fp/letf2.c: Likewise.
++      * soft-fp/muldf3.c: Likewise.
++      * soft-fp/mulsf3.c: Likewise.
++      * soft-fp/multf3.c: Likewise.
++      * soft-fp/negdf2.c: Likewise.
++      * soft-fp/negsf2.c: Likewise.
++      * soft-fp/negtf2.c: Likewise.
++      * soft-fp/op-1.h: Likewise.
++      * soft-fp/op-2.h: Likewise.
++      * soft-fp/op-4.h: Likewise.
++      * soft-fp/op-8.h: Likewise.
++      * soft-fp/op-common.h: Likewise.
++      * soft-fp/quad.h: Likewise.
++      * soft-fp/single.h: Likewise.
++      * soft-fp/soft-fp.h: Likewise.
++      * soft-fp/subdf3.c: Likewise.
++      * soft-fp/subsf3.c: Likewise.
++      * soft-fp/subtf3.c: Likewise.
++      * soft-fp/truncdfsf2.c: Likewise.
++      * soft-fp/trunctfdf2.c: Likewise.
++      * soft-fp/trunctfhf2.c: Likewise.
++      * soft-fp/trunctfsf2.c: Likewise.
++      * soft-fp/trunctfxf2.c: Likewise.
++      * soft-fp/unorddf2.c: Likewise.
++      * soft-fp/unordsf2.c: Likewise.
++      * soft-fp/unordtf2.c: Likewise.
+ 
+-2019-11-01  Iain Sandoe  <address@hidden>
++2018-11-04  Venkataramanan Kumar  <address@hidden>
+ 
+-      Backport from mainline.
+-      2019-07-03  Iain Sandoe  <address@hidden>
++      * config/i386/cpuinfo.c: (get_amd_cpu): Add znver2.
++      * config/i386/cpuinfo.h (processor_types): Add znver2.
+ 
+-      * config.host (powerpc-*-darwin*,powerpc64-*-darwin*): Revise crt
+-      list.
+-      * config/rs6000/t-darwin: Build crt3_2 for older systems.  Revise
+-      mmacosx-version-min for crts to run across all system versions.
+-      * config/rs6000/t-darwin64 (LIB2ADD): Remove.
+-      * config/t-darwin: Revise mmacosx-version-min for crts to run across
+-      system versions >= 10.4.
++2018-11-01  Paul Koning  <address@hidden>
+ 
+-2019-11-01  Iain Sandoe  <address@hidden>
++      * config/pdp11/t-pdp11 (LIB2ADD): Add divmod.c.
++      (HOST_LIBGCC2_CFLAGS): Change to optimize for size.
+ 
+-      Backport from mainline.
+-      2019-06-25  Iain Sandoe  <address@hidden>
++2018-10-31  Joseph Myers  <address@hidden>
+ 
+-      * config.host: Add libef_ppc.a to the extra files for powerpc-darwin.
+-      * config/rs6000/t-darwin: (PPC_ENDFILE_SRC, PPC_ENDFILE_OBJS): New.
+-      Build objects for the out of line save/restore register functions
+-      so that they can be used for any supported Darwin version.
+-      * config/t-darwin: Default the build Darwin version to Darwin8
+-      (MacOS 10.4).
++      PR bootstrap/82856
++      * configure.ac: Remove AC_PREREQ.  Use AC_LANG_SOURCE.
++      * configure: Regenerate.
+ 
+-2019-09-04  Iain Sandoe  <address@hidden>
++2018-10-31  Claudiu Zissulescu  <address@hidden>
+ 
+-      Backport from mainline.
+-      2019-06-06  Iain Sandoe  <address@hidden>
++      * config/arc/lib1funcs.S (_muldi3): New function.
++      * config/arc/t-arc (LIB1ASMFUNCS): Add _muldi3.
+ 
+-      * config/rs6000/t-darwin: Ensure that the unwinder is built with
+-      altivec enabled.
++2018-10-30  Rasmus Villemoes  <address@hidden>
+ 
+-2019-09-03  Iain Sandoe  <address@hidden>
++      * config/gthr-vxworks.h (__gthread_mutex_destroy): Call semDelete.
+ 
+-      Backport from mainline.
+-      2019-05-12  Iain Sandoe  <address@hidden>
++2018-10-25  Martin Liska  <address@hidden>
+ 
+-      * config/rs6000/darwin-vecsave.S: Set .machine appropriately.
++      PR other/87735
++      * libgcov-profiler.c: Revert.
++
++2018-10-24  Martin Liska  <address@hidden>
++
++      * libgcov-profiler.c: Start from 1 in order to distinguish
++      functions which were seen and these that were not.
++
++2018-10-18  Paul Koning  <address@hidden>
++
++      * udivmodsi4.c (__udivmodsi4): Rename to conform to coding
++      standard.
++      * divmod.c: Update references to __udivmodsi4.
++      * udivmod.c: Ditto.
++      * udivhi3.c: New file.
++      * udivmodhi4.c: New file.
++      * config/pdp11/t-pdp11 (LIB2ADD): Add the new files.
++
++2018-10-17  Rasmus Villemoes  <address@hidden>
++
++      * Makefile.in (LIB2FUNCS_ST): Filter out LIB2FUNCS_EXCLUDE.
++
++2018-10-12  Olivier Hainque  <address@hidden>
++
++      * config/rs6000/ibm-ldouble.c: Augment the toplevel guard with
++      defined (__FLOAT128_TYPE__) || defined (__LONG_DOUBLE_128__).
++
++2018-10-08  Paul Koning  <address@hidden>
++
++      * config/pdp11/t-pdp11: Remove -mfloat32 switch.
++
++2018-10-04  Martin Liska  <address@hidden>
++
++      PR gcov-profile/84107
++      * libgcov-profiler.c (__gcov_indirect_call):
++      Change type to indirect_call_tuple.
++      (struct indirect_call_tuple): New struct.
++      (__gcov_indirect_call_topn_profiler): Change type.
++      (__gcov_indirect_call_profiler_v2): Use the new
++      variables.
++      * libgcov.h (struct indirect_call_tuple): New struct
++      definition.
++
++2018-10-03  Uros Bizjak  <address@hidden>
++
++      * libgcc2.c (isnan): Use __builtin_isnan.
++      (isfinite): Use __builtin_isfinite.
++      (isinf): Use __builtin_isinf.
++
++2018-09-26  Uros Bizjak  <address@hidden>
++
++      * config/i386/crtprec.c (set_precision): Use fnstcw instead of fstcw.
++
++2018-09-21  Alexandre Oliva  <address@hidden>
++
++      * config/vxcache.c: New file.  Provide __clear_cache, based on
++      the cacheTextUpdate VxWorks service.
++      * config/t-vxworks (LIB2ADD): Add vxcache.c.
++      (LIB2FUNCS_EXCLUDE): Add _clear_cache.
++      * config/t-vxwoks7: Likewise.
++
++2018-09-21  Martin Liska  <address@hidden>
++
++      * libgcov-driver.c (crc32_unsigned): Remove.
++      (gcov_histogram_insert): Likewise.
++      (gcov_compute_histogram): Likewise.
++      (compute_summary): Simplify rapidly.
++      (merge_one_data): Do not handle PROGRAM_SUMMARY tag.
++      (merge_summary): Rapidly simplify.
++      (dump_one_gcov): Ignore gcov_summary.
++      (gcov_do_dump): Do not handle program summary, it's not
++      used.
++      * libgcov-util.c (tag_summary): Remove.
++      (read_gcda_finalize): Fix coding style.
++      (read_gcda_file): Initialize curr_object_summary.
++      (compute_summary): Remove.
++      (calculate_overlap): Remove settings of run_max.
++
++2018-09-21  Monk Chiang  <address@hidden>
++
++      * config/nds32/linux-unwind.h (struct _rt_sigframe): Use struct
++      ucontext_t type instead.
++      (nds32_fallback_frame_state): Remove struct _sigframe statement.
++
++2018-09-21  Kito Cheng  <address@hidden>
++
++      * config/nds32/t-nds32-glibc: New file.
++
++2018-09-18  Rainer Orth  <address@hidden>
++
++      * configure.ac (solaris_ld_v2_maps): New test.
++      * configure: Regenerate.
++      * Makefile.in (solaris_ld_v2_maps): New variable.
++      * config/t-slibgcc-sld (libgcc-unwind.map): Emit v2 mapfile syntax
++      if supported.
++
++2018-08-23  Richard Earnshaw  <address@hidden>
++
++      PR target/86951
++      * config/arm/lib1funcs.asm (speculation_barrier): New function.
++      * config/arm/t-arm (LIB1ASMFUNCS): Add it to list of functions
++      to build.
++
++2018-08-22  Iain Sandoe  <address@hidden>
++
++      * config/unwind-dw2-fde-darwin.c
++      (_darwin10_Unwind_FindEnclosingFunction): move from here ...
++      * config/darwin10-unwind-find-enc-func.c: … to here.
++      * config/t-darwin: Build Darwin10 unwinder shim crt.
++      * libgcc/config.host: Add the Darwin10 unwinder shim.
++
++2018-08-21  Rasmus Villemoes  <address@hidden>
++
++      * config.host: Add crtbegin.o and crtend.o for
++      powerpc-wrs-vxworks target.
++
++2018-08-17  Jojo  <address@hidden>
++          Huibin Wang  <address@hidden>
++          Sandra Loosemore  <address@hidden>
++          Chung-Lin Tang  <address@hidden>
++
++      C-SKY port: libgcc
+ 
+-2018-12-06  Release Manager
++      * config.host: Add C-SKY support.
++      * config/csky/*: New.
+ 
+-      * GCC 7.4.0 released.
++2018-08-12  Chung-Ju Wu  <address@hidden>
+ 
+-2018-08-17  John David Anglin  <address@hidden>
++      * config/nds32/t-nds32-isr: Rearrange object dependency.
++      * config/nds32/initfini.c: Add dwarf2 unwinding support.
++      * config/nds32/isr-library/adj_intr_lvl.inc: Consider new extensions
++      and registers usage.
++      * config/nds32/isr-library/excp_isr.S: Ditto.
++      * config/nds32/isr-library/intr_isr.S: Ditto.
++      * config/nds32/isr-library/reset.S: Ditto.
++      * config/nds32/isr-library/restore_all.inc: Ditto.
++      * config/nds32/isr-library/restore_mac_regs.inc: Ditto.
++      * config/nds32/isr-library/restore_partial.inc: Ditto.
++      * config/nds32/isr-library/restore_usr_regs.inc: Ditto.
++      * config/nds32/isr-library/save_all.inc: Ditto.
++      * config/nds32/isr-library/save_mac_regs.inc: Ditto.
++      * config/nds32/isr-library/save_partial.inc: Ditto.
++      * config/nds32/isr-library/save_usr_regs.inc: Ditto.
++      * config/nds32/isr-library/vec_vid*.S: Consider 4-byte vector size.
+ 
+-      Backport from mainline
+-      2018-08-11  John David Anglin  <address@hidden>
++2018-08-11  John David Anglin  <address@hidden>
+ 
+       * config/pa/linux-atomic.c: Update comment.
+       (FETCH_AND_OP_2, OP_AND_FETCH_2, FETCH_AND_OP_WORD, OP_AND_FETCH_WORD,
+@@ -60,27 +1183,269 @@
+       unordered store to release lock.
+       (__sync_lock_release_8): Likewise.
+       (SYNC_LOCK_RELEASE_2): Remove define.
+-       
+-2018-06-22  Jakub Jelinek  <address@hidden>
+ 
+-      Backported from mainline
+-      2018-04-18  David Malcolm  <address@hidden>
++2018-08-02  Nicolas Pitre <address@hidden>
+ 
+-      PR jit/85384
++      PR libgcc/86512
++      * config/arm/ieee754-df.S: Don't shortcut denormal handling when
++      exponent goes negative. Update my email address.
++      * config/arm/ieee754-sf.S: Likewise.
++
++2018-08-01  Martin Liska  <address@hidden>
++
++      * libgcov-profiler.c (__gcov_indirect_call_profiler_v2): Do not
++      check that  __gcov_indirect_call_callee is non-null.
++
++2018-07-30  Christophe Lyon  <address@hidden>
++
++      * config/arm/ieee754-df.S: Fix comment for code working on
++      architectures >= 4.
++      * config/arm/ieee754-sf.S: Likewise.
++
++2018-07-27  H.J. Lu  <address@hidden>
++
++      PR libgcc/85334
++      * config/i386/shadow-stack-unwind.h (_Unwind_Frames_Increment):
++      Removed.
++
++2018-07-05  James Clarke  <address@hidden>
++
++      * configure: Regenerated.
++
++2018-06-27  Rainer Orth  <address@hidden>
++
++      * Makefile.in (install_leaf): Use enable_gcov instead of
++      enable_libgcov.
++
++2018-06-27  Rasmus Villemoes  <address@hidden>
++
++      * configure.ac: Add --disable-gcov option.
+       * configure: Regenerate.
++      * Makefile.in: Honour @enable_gcov@.
++
++2018-06-21  Christophe Lyon  <address@hidden>
++
++      * config/arm/lib1funcs.S (__ARM_ARCH__): Remove definitions, use
++      __ARM_ARCH and __ARM_FEATURE_CLZ instead.
++      (HAVE_ARM_CLZ): Remove definition, use __ARM_FEATURE_CLZ instead.
++      * config/arm/ieee754-df.S: Use __ARM_FEATURE_CLZ instead of
++      __ARM_ARCH__.
++      * config/arm/ieee754-sf.S: Likewise.
++      * config/arm/libunwind.S: Use __ARM_ARCH instead of __ARM_ARCH__.
++
++2018-06-21  Christophe Lyon  <address@hidden>
++
++      * config/arm/ieee754-df.S: Remove code for __ARM_ARCH__ < 4, no
++      longer supported.
++      * config/arm/ieee754-sf.S: Likewise.
++
++2018-06-20  Than McIntosh  <address@hidden>
++
++      PR libgcc/86213
++      * generic-morestack.c (allocate_segment): Move calls to getenv and
++      getpagesize to __morestack_load_mmap.
++      (__morestack_load_mmap) Initialize static_pagesize and
++      use_guard_page here so as to avoid clobbering SSE regs during a
++      __morestack call.
++
++2018-06-18  Michael Meissner  <address@hidden>
++
++      * config/rs6000/t-float128 (FP128_CFLAGS_SW): Compile float128
++      support modules with -mno-gnu-attribute.
++      * config/rs6000/t-float128-hw (FP128_CFLAGS_HW): Likewise.
+ 
+-2018-06-22  Andre Vieira  <address@hidden>
++2018-06-07  Olivier Hainque  <address@hidden>
+ 
+-      Backport from mainline
+-      2018-05-17  Jerome Lambourg  <address@hidden>
++      * config/t-vxworks (LIBGCC_INCLUDES): Add
++      -I$(MULTIBUILDTOP)../../gcc/include.
++      * config/t-vxworks7: Likewise. Reformat a bit to match
++      the t-vxworks layout.
++
++2018-06-07  Olga Makhotina  <address@hidden>
++
++      * config/i386/cpuinfo.h (processor_types): Add INTEL_TREMONT.
++
++2018-06-07  Martin Liska  <address@hidden>
++
++      * libgcov-driver.c: Rename cs_all to all and assign it from
++      all_prg.
++
++2018-06-07  Martin Liska  <address@hidden>
++
++      PR bootstrap/86057
++      * libgcov-driver-system.c (replace_filename_variables): Use
++      memcpy instead of mempcpy.
++      (allocate_filename_struct): Do not allocate filename, allocate
++      prefix and set it.
++      (gcov_exit_open_gcda_file): Allocate memory for gf->filename
++      here and properly copy content into it.
++      * libgcov-driver.c (struct gcov_filename): Remove max_length
++      field, change prefix from size_t into char *.
++      (compute_summary): Do not calculate longest filename.
++      (gcov_do_dump): Release memory of gf.filename after each file.
++      * libgcov-util.c (compute_summary): Use new signature of
++      compute_summary.
++      (calculate_overlap): Likewise.
++
++2018-06-05  Martin Liska  <address@hidden>
++
++      PR gcov-profile/47618
++      * libgcov-driver-system.c (replace_filename_variables): New
++      function.
++      (gcov_exit_open_gcda_file): Use it.
++
++2018-06-05  Martin Liska  <address@hidden>
++
++      * libgcov-driver.c (gcov_compute_histogram): Remove usage
++      of gcov_ctr_summary.
++      (compute_summary): Do it just for a single summary.
++      (merge_one_data): Likewise.
++      (merge_summary): Simplify as we read just single summary.
++      (dump_one_gcov): Pass proper argument.
++      * libgcov-util.c (compute_one_gcov): Simplify as we have just
++      single summary.
++      (gcov_info_count_all_cold): Likewise.
++      (calculate_overlap): Likewise.
++
++2018-06-02  Chung-Ju Wu  <address@hidden>
++          Monk Chiang  <address@hidden>
++
++      * config.host (nds32*-linux*): New.
++      * config/nds32/linux-atomic.c: New file.
++      * config/nds32/linux-unwind.h: New file.
++
++2018-05-31  Uros Bizjak  <address@hidden>
++
++      PR target/85591
++      * config/i386/cpuinfo.c (get_amd_cpu): Return
++      AMDFAM15H_BDVER2 for AMDFAM15H model 0x2.
++
++2018-05-30  Rasmus Villemoes  <address@hidden>
++
++      * crtstuff.c: Remove declaration of _Jv_RegisterClasses.
++
++2018-05-29  Martin Liska  <address@hidden>
++
++      PR gcov-profile/85759
++      * libgcov-driver-system.c (gcov_error): Introduce usage of
++      GCOV_EXIT_AT_ERROR env. variable.
++      * libgcov-driver.c (merge_one_data): Print error that we
++      overwrite a gcov file with a different timestamp.
++
++2018-05-23  Kalamatee  <address@hidden>
++
++      * config/m68k/lb1sf68.S (Laddsf$nf): Fix sign bit handling in
++      path to Lf$finfty.
++
++2018-05-18  Kito Cheng <address@hidden>
++          Monk Chiang  <address@hidden>
++          Jim Wilson <address@hidden>
++
++      * config/riscv/save-restore.S: Add support for rv32e.
++
++2018-05-18  Kyrylo Tkachov  <address@hidden>
++
++      * config/arm/libunwind.S: Update comment relating to armv5.
++
++2018-05-17  Jerome Lambourg  <address@hidden>
+ 
+       * config/arm/cmse.c (cmse_check_address_range): Replace
+       UINTPTR_MAX with __UINTPTR_MAX__ and uintptr_t with __UINTPTR_TYPE__.
+ 
+-2018-04-02  H.J. Lu  <address@hidden>
++2018-05-17  Olga Makhotina  <address@hidden>
++
++      * config/i386/cpuinfo.h (processor_types): Add INTEL_GOLDMONT_PLUS.
++      * config/i386/cpuinfo.c (get_intel_cpu): Detect Goldmont Plus.
++
++2018-05-08  Olga Makhotina  <address@hidden>
++
++      * config/i386/cpuinfo.h (processor_types): Add INTEL_GOLDMONT.
++      * config/i386/cpuinfo.c (get_intel_cpu): Detect Goldmont.
++
++2018-05-07  Amaan Cheval  <address@hidden>
++
++      * config.host (x86_64-*-rtems*): Build crti.o and crtn.o.
++
++2018-04-27  Andreas Tobler  <address@hidden>
++          Maryse Levavasseur <address@hidden>
++
++      PR libgcc/84292
++      * config/arm/freebsd-atomic.c (SYNC_OP_AND_FETCH_N): Fix the
++      op_and_fetch to return the right result.
++
++2018-04-27  Alan Modra  <address@hidden>
+ 
+-      Backport from mainline
+-      2018-03-29  H.J. Lu  <address@hidden>
++      PR libgcc/85532
++      * config/rs6000/t-crtstuff (CRTSTUFF_T_CFLAGS): Add
++      -fno-asynchronous-unwind-tables.
++
++2018-04-25  Chung-Ju Wu  <address@hidden>
++
++      * config/nds32/sfp-machine.h: Fix settings for NDS32_ABI_2FP_PLUS.
++      * config/nds32/t-nds32-newlib (HOST_LIBGCC2_CFLAGS): Use -fwrapv.
++
++2018-04-24  H.J. Lu  <address@hidden>
++
++      * config/i386/linux-unwind.h: Add (__CET__ & 2) != 0 check
++      when including "config/i386/shadow-stack-unwind.h".
++
++2018-04-24  H.J. Lu  <address@hidden>
++
++      * configure: Regenerated.
++
++2018-04-20  Michael Meissner  <address@hidden>
++
++      PR target/85456
++      * config/rs6000/_powikf2.c: New file.  Add support for the
++      __builtin_powil function when long double is IEEE 128-bit floating
++      point.
++      * config/rs6000/float128-ifunc.c (__powikf2_resolve): Add
++      __powikf2 support.
++      (__powikf2): Likewise.
++      * config/rs6000/quad-float128.h (__powikf2_sw): Likewise.
++      (__powikf2_hw): Likewise.
++      (__powikf2): Likewise.
++      * config/rs6000/t-float128 (fp128_ppc_funcs): Likewise.
++      * config/rs6000/t-float128-hw (fp128_hw_func): Likewise.
++      (_powikf2-hw.c): Likewise.
++
++2018-04-19  H.J. Lu  <address@hidden>
++
++      PR libgcc/85334
++      * unwind-generic.h (_Unwind_Frames_Increment): New.
++      * config/i386/shadow-stack-unwind.h (_Unwind_Frames_Increment):
++      Likewise.
++      * unwind.inc (_Unwind_RaiseException_Phase2): Increment frame
++      count with _Unwind_Frames_Increment.
++      (_Unwind_ForcedUnwind_Phase2): Likewise.
++
++2018-04-19  H.J. Lu  <address@hidden>
++
++      PR libgcc/85379
++      * config/i386/morestack.S (__stack_split_initialize): Add
++      _CET_ENDBR.
++
++2018-04-19  Jakub Jelinek  <address@hidden>
++
++      * configure: Regenerated.
++
++2018-04-18  David Malcolm  <address@hidden>
++
++      PR jit/85384
++      * configure: Regenerate.
++
++2018-04-16  Jakub Jelinek  <address@hidden>
++
++      PR target/84945
++      * config/i386/cpuinfo.c (set_feature): Wrap into do while (0) to avoid
++      -Wdangling-else warnings.  Mask shift counts to avoid
++      -Wshift-count-negative and -Wshift-count-overflow false positives.
++
++2018-04-06  Ruslan Bukin  <address@hidden>
++
++      * config.host (riscv*-*-freebsd*): Add RISC-V FreeBSD support.
++
++2018-03-29  H.J. Lu  <address@hidden>
+ 
+       PR target/85100
+       * config/i386/cpuinfo.c (XCR_XFEATURE_ENABLED_MASK): New.
+@@ -95,49 +1460,336 @@
+       (get_available_features): Enable AVX and AVX512 features only
+       if their states are supported by OSXSAVE.
+ 
+-2018-03-11  John David Anglin  <address@hidden>
++2018-03-22  Igor Tsimbalist  <address@hidden>
++
++      PR target/85025
++      * config/i386/shadow-stack-unwind.h (_Unwind_Frames_Extra):
++      Fix a typo, tmp => 255.
+ 
+-      Backport from mainline
+-      2018-03-06  John David Anglin  <address@hidden>
++2018-03-20  Jakub Jelinek  <address@hidden>
++
++      PR target/84945
++      * config/i386/cpuinfo.h (__cpu_features2): Declare.
++      * config/i386/cpuinfo.c (__cpu_features2): New variable for
++      ifndef SHARED only.
++      (set_feature): Define.
++      (get_available_features): Use set_feature macro.  Set __cpu_features2
++      to the second word of features ifndef SHARED.
++
++2018-03-15  Julia Koval  <address@hidden>
++
++      * config/i386/cpuinfo.c (get_available_features): Add
++      FEATURE_AVX512VBMI2, FEATURE_GFNI, FEATURE_VPCLMULQDQ,
++      FEATURE_AVX512VNNI, FEATURE_AVX512BITALG.
++      * config/i386/cpuinfo.h (processor_features): Add FEATURE_AVX512VBMI2,
++      FEATURE_GFNI, FEATURE_VPCLMULQDQ, FEATURE_AVX512VNNI,
++      FEATURE_AVX512BITALG.
++
++2018-03-14  Julia Koval  <address@hidden>
++
++      * config/i386/cpuinfo.h (processor_subtypes): Split up icelake on
++      icelake client and icelake server.
++
++2018-03-06  John David Anglin  <address@hidden>
+ 
+       * config/pa/fptr.c (_dl_read_access_allowed): New.
+       (__canonicalize_funcptr_for_compare): Use it.
+-      
+-2018-02-20  Max Filippov  <address@hidden>
+ 
+-      Backport from mainline
+-      2018-02-20  Max Filippov  <address@hidden>
++2018-02-28  Jakub Jelinek  <address@hidden>
++
++      PR debug/83917
++      * configure.ac (AS_HIDDEN_DIRECTIVE): AC_DEFINE_UNQUOTED this to
++      $asm_hidden_op if visibility ("hidden") attribute works.
++      (HAVE_AS_CFI_SECTIONS): New AC_DEFINE.
++      * config/i386/i386-asm.h: Don't include auto-host.h.
++      (PACKAGE_VERSION, PACKAGE_NAME, PACKAGE_STRING, PACKAGE_TARNAME,
++      PACKAGE_URL): Don't undefine.
++      (USE_GAS_CFI_DIRECTIVES): Don't use nor define this macro, instead
++      guard cfi_startproc only on ifdef __GCC_HAVE_DWARF2_CFI_ASM.
++      (FN_HIDDEN): Change guard from #ifdef HAVE_GAS_HIDDEN to
++      #ifdef AS_HIDDEN_DIRECTIVE, use AS_HIDDEN_DIRECTIVE macro in the
++      definition instead of hardcoded .hidden.
++      * config/i386/cygwin.S: Include i386-asm.h first before .cfi_sections
++      directive.  Use #ifdef HAVE_AS_CFI_SECTIONS rather than
++      #ifdef HAVE_GAS_CFI_SECTIONS_DIRECTIVE to guard .cfi_sections.
++      (USE_GAS_CFI_DIRECTIVES): Don't define.
++      * configure: Regenerated.
++      * config.in: Likewise.
++
++2018-02-26  Jakub Jelinek  <address@hidden>
++
++      PR debug/83917
++      * config/i386/i386-asm.h (PACKAGE_VERSION, PACKAGE_NAME,
++      PACKAGE_STRING, PACKAGE_TARNAME, PACKAGE_URL): Undefine between
++      inclusion of auto-target.h and auto-host.h.
++      (USE_GAS_CFI_DIRECTIVES): Define if not defined already based on
++      __GCC_HAVE_DWARF2_CFI_ASM.
++      (cfi_startproc, cfi_endproc, cfi_adjust_cfa_offset,
++      cfi_def_cfa_register, cfi_def_cfa, cfi_register, cfi_offset, cfi_push,
++      cfi_pop): Define.
++      * config/i386/cygwin.S: Don't include auto-host.h here, just
++      define USE_GAS_CFI_DIRECTIVES to 1 or 0 and include i386-asm.h.
++      (cfi_startproc, cfi_endproc, cfi_adjust_cfa_offset,
++      cfi_def_cfa_register, cfi_register, cfi_push, cfi_pop): Remove.
++      * config/i386/resms64fx.h: Add cfi_* directives.
++      * config/i386/resms64x.h: Likewise.
++
++2018-02-20  Max Filippov  <address@hidden>
+ 
+       * config/xtensa/ieee754-df.S (__adddf3_aux): Add
+       .literal_position directive.
+       * config/xtensa/ieee754-sf.S (__addsf3_aux): Likewise.
+ 
+-2018-01-25  Release Manager
++2018-02-14  Igor Tsimbalist  <address@hidden>
+ 
+-      * GCC 7.3.0 released.
++      PR target/84148
++      * configure: Regenerate.
+ 
+-2018-01-23  Max Filippov  <address@hidden>
++2018-02-16  Igor Tsimbalist  <address@hidden>
++
++      PR target/84239
++      * config/i386/shadow-stack-unwind.h (_Unwind_Frames_Extra):
++      Include cetintrin.h not x86intrin.h.
++
++2018-02-08  Igor Tsimbalist  <address@hidden>
++
++      PR target/84239
++      * config/i386/shadow-stack-unwind.h (_Unwind_Frames_Extra):
++      Use new _get_ssp and _inc_ssp intrinsics.
++
++2018-02-02  Julia Koval  <address@hidden>
+ 
+-      Backport from mainline
+-      2018-01-23  Max Filippov  <address@hidden>
++      * config/i386/cpuinfo.h (processor_subtypes): Add INTEL_COREI7_ICELAKE.
++
++2018-01-26  Claudiu Zissulescu  <address@hidden>
++
++      * config/arc/lib1funcs.S (__udivmodsi4): Use safe version for RF16
++      option.
++      (__divsi3): Use RF16 safe registers.
++      (__modsi3): Likewise.
++
++2018-01-23  Max Filippov  <address@hidden>
+ 
+       * config/xtensa/ieee754-df.S (__addsf3, __subsf3, __mulsf3)
+       (__divsf3): Make NaN return value quiet.
+       * config/xtensa/ieee754-sf.S (__adddf3, __subdf3, __muldf3)
+       (__divdf3): Make NaN return value quiet.
+ 
+-2018-01-08  Sebastian Huber  <address@hidden>
++2018-01-22  Sebastian Perta  <address@hidden>
++
++      * config/rl78/anddi3.S: New assembly file.
++      * config/rl78/t-rl78: Added anddi3.S to LIB2ADD.
++
++2018-01-22  Sebastian Perta  <address@hidden>
++
++      * config/rl78/umindi3.S: New assembly file.
++      * config/rl78/t-rl78: Added umindi3.S to LIB2ADD.
++
++2018-01-22  Sebastian Perta  <address@hidden>
+ 
+-      Backport from mainline
+-      2018-01-05  Sebastian Huber  <address@hidden>
++      * config/rl78/smindi3.S: New assembly file.
++      * config/rl78/t-rl78: Added smindi3.S to LIB2ADD.
++
++2018-01-22  Sebastian Perta  <address@hidden>
++
++      * config/rl78/smaxdi3.S: New assembly file.
++      * config/rl78/t-rl78: Added smaxdi3.S to LIB2ADD.
++
++2018-01-22  Sebastian Perta  <address@hidden>
++
++      * config/rl78/umaxdi3.S: New assembly file.
++      * config/rl78/t-rl78: Added umaxdi3.S to LIB2ADD.
++
++2018-01-21  John David Anglin  <address@hidden>
++
++      PR lto/83452
++      * config/pa/stublib.c (L_gnu_lto_v1): New stub definition.
++      * config/pa/t-stublib (gnu_lto_v1-stub.o): Add make fragment.
++
++2018-01-13  Richard Sandiford  <address@hidden>
++
++      * config/aarch64/value-unwind.h (aarch64_vg): New function.
++      (DWARF_LAZY_REGISTER_VALUE): Define.
++      * unwind-dw2.c (_Unwind_GetGR): Use DWARF_LAZY_REGISTER_VALUE
++      to provide a fallback register value.
++
++2018-01-08  Michael Meissner  <address@hidden>
++
++      * config/rs6000/quad-float128.h (IBM128_TYPE): Explicitly use
++      __ibm128, instead of trying to use long double.
++      (CVT_FLOAT128_TO_IBM128): Use TFtype instead of __float128 to
++      accomidate -mabi=ieeelongdouble multilibs.
++      (CVT_IBM128_TO_FLOAT128): Likewise.
++      * config/rs6000/ibm-ldouble.c (IBM128_TYPE): New macro to define
++      the appropriate IBM extended double type.
++      (__gcc_qadd): Change all occurances of long double to IBM128_TYPE.
++      (__gcc_qsub): Likewise.
++      (__gcc_qmul): Likewise.
++      (__gcc_qdiv): Likewise.
++      (pack_ldouble): Likewise.
++      (__gcc_qneg): Likewise.
++      (__gcc_qeq): Likewise.
++      (__gcc_qne): Likewise.
++      (__gcc_qge): Likewise.
++      (__gcc_qle): Likewise.
++      (__gcc_stoq): Likewise.
++      (__gcc_dtoq): Likewise.
++      (__gcc_itoq): Likewise.
++      (__gcc_utoq): Likewise.
++      (__gcc_qunord): Likewise.
++      * config/rs6000/_mulkc3.c (toplevel): Include soft-fp.h and
++      quad-float128.h for the definitions.
++      (COPYSIGN): Use the f128 version instead of the q version.
++      (INFINITY): Likewise.
++      (__mulkc3): Use TFmode/TCmode for float128 scalar/complex types.
++      * config/rs6000/_divkc3.c (toplevel): Include soft-fp.h and
++      quad-float128.h for the definitions.
++      (COPYSIGN): Use the f128 version instead of the q version.
++      (INFINITY): Likewise.
++      (FABS): Likewise.
++      (__divkc3): Use TFmode/TCmode for float128 scalar/complex types.
++      * config/rs6000/extendkftf2-sw.c (__extendkftf2_sw): Likewise.
++      * config/rs6000/trunctfkf2-sw.c (__trunctfkf2_sw): Likewise.
++
++2018-01-05  Sebastian Huber  <address@hidden>
+ 
+       * config.host (epiphany-*-elf*): Add (epiphany-*-rtems*)
+       configuration.
+ 
+-2017-11-21  Rainer Orth  <address@hidden>
++2018-01-03  Jakub Jelinek  <address@hidden>
++
++      Update copyright years.
++
++2017-12-12  Kito Cheng  <address@hidden>
++
++      * config/riscv/t-elf: Use multi3.c instead of multi3.S.
++      * config/riscv/multi3.c: New file.
++      * config/riscv/multi3.S: Remove.
++
++2017-12-08  Jim Wilson  <address@hidden>
++
++      * config/riscv/div.S: Use FUNC_* macros.
++      * config/riscv/muldi3.S, config/riscv/multi3.S: Likewise
++      * config/riscv/save-restore.S: Likewise.
++      * config/riscv/riscv-asm.h: New.
++
++2017-11-30  Michael Meissner  <address@hidden>
++
++      * config/rs6000/_mulkc3.c (__mulkc3): Add forward declaration.
++      * config/rs6000/_divkc3.c (__divkc3): Likewise.
++
++      PR libgcc/83112
++      * config/rs6000/float128-ifunc.c (__addkf3_resolve): Use the
++      correct type for all ifunc resolvers to silence -Wattribute-alias
++      warnings.  Eliminate the forward declaration of the resolver
++      functions which is no longer needed.
++      (__subkf3_resolve): Likewise.
++      (__mulkf3_resolve): Likewise.
++      (__divkf3_resolve): Likewise.
++      (__negkf2_resolve): Likewise.
++      (__eqkf2_resolve): Likewise.
++      (__nekf2_resolve): Likewise.
++      (__gekf2_resolve): Likewise.
++      (__gtkf2_resolve): Likewise.
++      (__lekf2_resolve): Likewise.
++      (__ltkf2_resolve): Likewise.
++      (__unordkf2_resolve): Likewise.
++      (__extendsfkf2_resolve): Likewise.
++      (__extenddfkf2_resolve): Likewise.
++      (__trunckfsf2_resolve): Likewise.
++      (__trunckfdf2_resolve): Likewise.
++      (__fixkfsi_resolve): Likewise.
++      (__fixkfdi_resolve): Likewise.
++      (__fixunskfsi_resolve): Likewise.
++      (__fixunskfdi_resolve): Likewise.
++      (__floatsikf_resolve): Likewise.
++      (__floatdikf_resolve): Likewise.
++      (__floatunsikf_resolve): Likewise.
++      (__floatundikf_resolve): Likewise.
++      (__extendkftf2_resolve): Likewise.
++      (__trunctfkf2_resolve): Likewise.
++
++      PR libgcc/83103
++      * config/rs6000/quad-float128.h (TF): Don't define if long double
++      is IEEE 128-bit floating point.
++      (TCtype): Define as either TCmode or KCmode, depending on whether
++      long double is IEEE 128-bit floating point.
++      (__mulkc3_sw): Add declarations for software/hardware versions of
++      complex multiply/divide.
++      (__divkc3_sw): Likewise.
++      (__mulkc3_hw): Likewise.
++      (__divkc3_hw): Likewise.
++      * config/rs6000/_mulkc3.c (_mulkc3): If we are building ifunc
++      handlers to switch between using software emulation and hardware
++      float128 instructions, build the complex multiply/divide functions
++      for both software and hardware support.
++      * config/rs6000/_divkc3.c (_divkc3): Likewise.
++      * config/rs6000/float128-ifunc.c (__mulkc3_resolve): Likewise.
++      (__divkc3_resolve): Likewise.
++      (__mulkc3): Likewise.
++      (__divkc3): Likewise.
++      * config/rs6000/t-float128-hw (fp128_hardfp_src): Likewise.
++      (fp128_hw_src): Likewise.
++      (fp128_hw_static_obj): Likewise.
++      (fp128_hw_shared_obj): Likewise.
++      (_mulkc3-hw.c): Create _mulkc3-hw.c and _divkc3-hw.c from
++      _mulkc3.c and _divkc3.c, changing the function name.
++      (_divkc3-hw.c): Likewise.
++      * config/rs6000/t-float128 (clean-float128): Delete _mulkc3-hw.c
++      and _divkc3-hw.c.
++
++2017-11-26  Julia Koval  <address@hidden>
++
++      * config/i386/cpuinfo.c (get_intel_cpu): Handle cannonlake.
++      * config/i386/cpuinfo.h (processor_subtypes): Add
++      INTEL_COREI7_CANNONLAKE.
++
++2017-11-20  Igor Tsimbalist  <address@hidden>
++
++      PR bootstrap/83015
++      * config/cr16/unwind-cr16.c (uw_install_context): Add FRAMES
++      parameter.
++      * config/xtensa/unwind-dw2-xtensa.c: Likewise
++      * config/ia64/unwind-ia64.c: Add frames parameter.
++      * unwind-sjlj.c: Likewise.
++
++2017-11-17  Igor Tsimbalist  <address@hidden>
++
++      * config/i386/linux-unwind.h: Include
++      config/i386/shadow-stack-unwind.h.
++      * config/i386/shadow-stack-unwind.h: New file.
++      * unwind-dw2.c: (uw_install_context): Add a frame parameter and
++      pass it to _Unwind_Frames_Extra.
++      * unwind-generic.h (_Unwind_Frames_Extra): New.
++      * unwind.inc (_Unwind_RaiseException_Phase2): Add frames_p
++      parameter. Add local variable frames to count number of frames.
++      (_Unwind_ForcedUnwind_Phase2): Likewise.
++      (_Unwind_RaiseException): Add local variable frames to count
++      number of frames, pass it to _Unwind_RaiseException_Phase2 and
++      uw_install_context.
++      (_Unwind_ForcedUnwind): Likewise.
++      (_Unwind_Resume): Likewise.
++      (_Unwind_Resume_or_Rethrow): Likewise.
++
++2017-11-17  Igor Tsimbalist  <address@hidden>
++
++      * Makefile.in (configure_deps): Add $(srcdir)/../config/cet.m4.
++      (CET_FLAGS): New.
++      * config/i386/morestack.S: Include <cet.h>.
++      (__morestack_large_model): Add _CET_ENDBR at function entrance.
++      * config/i386/resms64.h: Include <cet.h>.
++      * config/i386/resms64f.h: Likewise.
++      * config/i386/resms64fx.h: Likewise.
++      * config/i386/resms64x.h: Likewise.
++      * config/i386/savms64.h: Likewise.
++      * config/i386/savms64f.h: Likewise.
++      * config/i386/t-linux (HOST_LIBGCC2_CFLAGS): Add $(CET_FLAGS).
++      (CRTSTUFF_T_CFLAGS): Likewise.
++      * configure.ac: Include ../config/cet.m4.
++      Set and substitute CET_FLAGS.
++      * configure: Regenerated.
+ 
+-      Backport from mainline
+-      2017-11-14  Rainer Orth  <address@hidden>
++2017-11-14  Rainer Orth  <address@hidden>
+ 
+       * config.host (*-*-solaris2*): Adapt comment for Solaris 12
+       renaming.
+@@ -145,14 +1797,22 @@
+       * configure.ac (libgcc_cv_solaris_crts): Likewise.
+       * configure: Regenerate.
+ 
+-2017-11-17  Vineet Gupta <address@hidden>
++2017-11-07  Tom de Vries  <address@hidden>
+ 
+-      * config.host: Remove uclibc from arc target spec.
++      * config/rs6000/aix-unwind.h (REGISTER_CFA_OFFSET_FOR): Remove semicolon
++      after "do {} while (0)".
+ 
+-2017-11-05  Andreas Tobler  <address@hidden>
++2017-11-07  Tom de Vries  <address@hidden>
+ 
+-      Backport from mainline
+-      2017-11-04  Andreas Tobler  <address@hidden>
++      PR other/82784
++      * config/aarch64/sfp-machine.h (FP_HANDLE_EXCEPTIONS): Remove
++      semicolon after "do {} while (0)".
++      * config/i386/sfp-machine.h (FP_HANDLE_EXCEPTIONS): Same.
++      * config/ia64/sfp-machine.h (FP_HANDLE_EXCEPTIONS): Same.
++      * config/mips/sfp-machine.h (FP_HANDLE_EXCEPTIONS): Same.
++      * config/rs6000/sfp-machine.h (FP_HANDLE_EXCEPTIONS): Same.
++
++2017-11-04  Andreas Tobler  <address@hidden>
+ 
+       PR libgcc/82635
+       * config/i386/freebsd-unwind.h (MD_FALLBACK_FRAME_STATE_FOR): Use a
+@@ -160,6 +1820,23 @@
+       Keep the pattern matching method for systems without
+       KERN_PROC_SIGTRAMP sysctl.
+ 
++2017-11-03  Cupertino Miranda  <address@hidden>
++          Vineet Gupta <address@hidden>
++
++      * config.host (arc*-*-linux*): Set md_unwind_header variable.
++      * config/arc/linux-unwind-reg.def: New file.
++      * config/arc/linux-unwind-reg.h: Likewise.
++
++2017-10-23  Sebastian Perta  <address@hidden>
++
++      * config/rl78/subdi3.S: New assembly file.
++      * config/rl78/t-rl78: Added subdi3.S to LIB2ADD.
++
++2017-10-13  Sebastian Perta  <address@hidden>
++
++      * config/rl78/adddi3.S: New assembly file.
++      * config/rl78/t-rl78: Added adddi3.S to LIB2ADD.
++
+ 2017-10-13  Jakub Jelinek  <address@hidden>
+ 
+       PR target/82274
+@@ -167,39 +1844,156 @@
+       the same highpart of -1 and the topmost bit of lowpart is 0,
+       multiplication overflows even if both lowparts are 0.
+ 
+-2017-09-28  Krister Walfridsson  <address@hidden>
++2017-09-28  James Bowman  <address@hidden>
+ 
+-      Backport from mainline
+-      2017-05-14  Krister Walfridsson  <address@hidden>
++      * config/ft32/crti-hw.S: Add watchdog vector, FT930 IRQ support.
+ 
+-      PR target/80600
+-      * config.host (*-*-netbsd*): Add t-slibgcc-libgcc to tmake_file.
++2017-09-26  Joseph Myers  <address@hidden>
+ 
+-2017-08-14  Release Manager
++      * config/microblaze/crti.S, config/microblaze/crtn.S,
++      config/microblaze/divsi3.S, config/microblaze/moddi3.S,
++      config/microblaze/modsi3.S, config/microblaze/muldi3_hard.S,
++      config/microblaze/mulsi3.S,
++      config/microblaze/stack_overflow_exit.S,
++      config/microblaze/udivsi3.S, config/microblaze/umodsi3.S,
++      config/pa/milli64.S: Add .note.GNU-stack section.
+ 
+-      * GCC 7.2.0 released.
++2017-09-23  Daniel Santos  <address@hidden>
+ 
+-2017-07-28  Sebastian Huber  <address@hidden>
++      * configure.ac: Add Check for HAVE_AS_AVX.
++      * config.in: Regenerate.
++      * configure: Likewise.
++      * config/i386/i386-asm.h: Include auto-target.h from libgcc.
++      (SSE_SAVE, SSE_RESTORE): Emit .byte sequence for !HAVE_AS_AVX.
++      Correct out-of-date comments.
++
++2017-09-20  Sebastian Peryt  <address@hidden>
++
++      * config/i386/cpuinfo.h (processor_types): Add INTEL_KNM.
++      * config/i386/cpuinfo.c (get_intel_cpu): Detect Knights Mill.
++
++2017-09-17  Daniel Santos  <address@hidden>
++
++      * config/i386/i386-asm.h (PASTE2): New macro.
++      (ASMNAME): Modify to use PASTE2.
++      (MS2SYSV_STUB_PREFIX): New macro for isa prefix.
++      (MS2SYSV_STUB_BEGIN, MS2SYSV_STUB_END): New macros for stub headers.
++      * config/i386/resms64.S: Rename to a header file, use MS2SYSV_STUB_BEGIN
++      instead of HIDDEN_FUNC and MS2SYSV_STUB_END instead of FUNC_END.
++      * config/i386/resms64f.S: Likewise.
++      * config/i386/resms64fx.S: Likewise.
++      * config/i386/resms64x.S: Likewise.
++      * config/i386/savms64.S: Likewise.
++      * config/i386/savms64f.S: Likewise.
++      * config/i386/avx_resms64.S: New file that only defines a macro and
++      includes it's corresponding header file.
++      * config/i386/avx_resms64f.S: Likewise.
++      * config/i386/avx_resms64fx.S: Likewise.
++      * config/i386/avx_resms64x.S: Likewise.
++      * config/i386/avx_savms64.S: Likewise.
++      * config/i386/avx_savms64f.S: Likewise.
++      * config/i386/sse_resms64.S: Likewise.
++      * config/i386/sse_resms64f.S: Likewise.
++      * config/i386/sse_resms64fx.S: Likewise.
++      * config/i386/sse_resms64x.S: Likewise.
++      * config/i386/sse_savms64.S: Likewise.
++      * config/i386/sse_savms64f.S: Likewise.
++      * config/i386/t-msabi: Modified to add avx and sse versions of stubs.
++
++2017-09-01  Olivier Hainque  <address@hidden>
++      * config.host (*-*-vxworks7): Widen scope to vxworks7*.
++
++2017-08-31  Olivier Hainque  <address@hidden>
++
++      * config.host (powerpc-wrs-vxworks|vxworksae|vxworksmils): Now
++      match as powerpc-wrs-vxworks*.
++
++2017-08-07  Jonathan Yong  <address@hidden>
++
++      * config.host (*-cygwin): Include file from mingw
++      config/i386/enable-execute-stack-mingw32.c
++
++2017-08-01  Jerome Lambourg  <address@hidden>
++          Doug Rupp  <address@hidden>
++          Olivier Hainque  <address@hidden>
++
++      * config.host (arm-wrs-vxworks*): Rework to handle arm-wrs-vxworks7
++      as well as arm-wrs-vxworks.
++      * config/arm/t-vxworks7: New file.  Add unwind-arm-vxworks.c to
++      LIB2ADDEH.
++      * config/arm/unwind-arm-vxworks.c: New file. Provide dummy
++      __exidx_start and __exidx_end for downloadable modules.
++
++2017-08-01  Olivier Hainque  <address@hidden>
++
++      * config/t-vxworks (LIBGCC2_INCLUDES): Start with -I. after -nostdinc.
++      * config/t-vxworks7: Likewise.
++
++2017-08-01  Olivier Hainque  <address@hidden>
++
++      * config/t-vxworks: Instead of redefining LIB2ADD,
++      augment LIB2ADDEH with vxlib.c and vxlib-tls.c.
+ 
+-      Backport from mainline
+-      2017-07-28  Sebastian Huber  <address@hidden>
++2017-07-28  Sebastian Huber  <address@hidden>
+ 
+       * config/rs6000/ibm-ldouble.c: Disable if defined __rtems__.
+ 
+-2017-07-20  Peter Bergner  <address@hidden>
++2017-07-24  Daniel Santos  <address@hidden>
++
++      PR testsuite/80759
++      * config.host: include i386/t-msabi for darwin and solaris.
++      * config/i386/i386-asm.h
++      (ELFFN): Rename to FN_TYPE.
++      (FN_SIZE): New macro.
++      (FN_HIDDEN): Likewise.
++      (ASMNAME): Likewise.
++      (FUNC_START): Rename to FUNC_BEGIN, use ASMNAME, replace .global with
++      .globl.
++      (HIDDEN_FUNC): Use ASMNAME and .globl instead of .global.
++      (SSE_SAVE): Convert to cpp macro, hard-code offset (always 0x60).
++      * config/i386/resms64.S: Use SSE_SAVE as cpp macro instead of gas
++      .macro.
++      * config/i386/resms64f.S: Likewise.
++      * config/i386/resms64fx.S: Likewise.
++      * config/i386/resms64x.S: Likewise.
++      * config/i386/savms64.S: Likewise.
++      * config/i386/savms64f.S: Likewise.
++
++2017-07-19  John Marino  <address@hidden>
++
++      * config/i386/dragonfly-unwind.h: Handle sigtramp relocation.
++
++2017-07-12  Michael Meissner  <address@hidden>
++
++      PR target/81193
++      * configure.ac (PowerPC float128 hardware support): Test whether
++      we can use __builtin_cpu_supports before enabling the ifunc
++      handler.
++      * configure: Regenerate.
++
++2017-07-10  Vineet Gupta <address@hidden>
+ 
+-      Backport from mainline
+-      2017-07-07  Peter Bergner  <address@hidden>
++      * config.host: Remove uclibc from arc target spec.
++
++2017-07-09  Krister Walfridsson  <address@hidden>
++
++      * config.host (*-*-netbsd*): Remove check for aout NetBSD releases.
++
++2017-07-07  Peter Bergner  <address@hidden>
+ 
+       * config/rs6000/float128-ifunc.c: Don't include auxv.h.
+       (have_ieee_hw_p): Delete function.
+       (SW_OR_HW) Use __builtin_cpu_supports().
+ 
+-2017-07-19  John Marino  <address@hidden>
++2017-07-06  Thomas Preud'homme  <address@hidden>
+ 
+-      * config/i386/dragonfly-unwind.h: Handle sigtramp relocation.
++      * config/arm/lib1funcs.S: Defined __ARM_ARCH__ to 8 for ARMv8-R.
++
++2017-07-03  Olivier Hainque  <address@hidden>
++
++      * config/t-vxworks7: New file, really.
+ 
+-2017-07-04  Joseph Myers  <address@hidden>
++2017-06-28  Joseph Myers  <address@hidden>
+ 
+       * config/aarch64/linux-unwind.h (aarch64_fallback_frame_state),
+       config/alpha/linux-unwind.h (alpha_fallback_frame_state),
+@@ -214,10 +2008,22 @@
+       config/xtensa/linux-unwind.h (xtensa_fallback_frame_state): Use
+       ucontext_t instead of struct ucontext.
+ 
+-2017-06-28  Richard Biener  <address@hidden>
++2017-06-27  Jerome Lambourg  <address@hidden>
+ 
+-      Backport from mainline
+-      2017-06-21  Richard Biener  <address@hidden>
++      * config.host (i*86-wrs-vxworks7): Handle new acceptable triplet.
++      (x86_64-wrs-vxworks7): Likewise.
++
++2017-06-27  Olivier Hainque  <address@hidden>
++
++      * config/t-vxworks7: New file.
++      * config.host (*-*-vxworks7): Use it.
++
++2017-06-22  Matt Turner  <address@hidden>
++
++      * config/i386/cpuinfo.c (get_intel_cpu): Add Kaby Lake models to
++      skylake case.
++
++2017-06-21  Richard Biener  <address@hidden>
+ 
+       PR gcov-profile/81080
+       * configure.ac: Add AC_SYS_LARGEFILE.
+@@ -226,15 +2032,46 @@
+       * config.in: Regenerate.
+       * configure: Likewise.
+ 
++2017-06-16  Richard Earnshaw  <address@hidden>
++
++      * config/arm/cmse_nonsecure_call.S: Explicitly set the FPU.
++
++2017-06-09  Martin Liska  <address@hidden>
++
++      * libgcov-profiler.c (__gcov_indirect_call_profiler_v2):
++      Reset __gcov_indirect_call_callee to NULL.
++
++2017-06-08  Olivier Hainque  <address@hidden>
++
++      * config/t-vxworks (LIBGCC2_INCLUDES): Add path to wrn/coreip to
++      the set of -I options, support for direct inclusions of net/uio.h
++      by VxWorks header files via ioLib.h.
++
++2017-06-07  Tony Reix  <address@hidden>
++          Matthieu Sarter  <address@hidden>
++          David Edelsohn  <address@hidden>
++
++      * config/rs6000/aix-unwind.h (MD_FALLBACK_FRAME_STATE_FOR): Define
++      unconditionally.
++      (ucontext_for): Add 64-bit AIX 6.1, 7.1, 7.2 support.  Add 32-bit
++      AIX 7.2 support.
++
++2017-06-02  Olivier Hainque  <address@hidden>
++
++      * config/vxlib.c (__gthread_once): Add missing value to
++      return statement.
++
++2017-05-30  Olivier Hainque  <address@hidden>
++
++      * config/t-vxworks (LIBGCC2_INCLUDES): Remove extraneous
++      dollar sign before $(MULTIDIR).
++
+ 2017-05-26  Richard Henderson  <address@hidden>
+ 
+       PR libgcc/80037
+       * config/alpha/t-alpha (CRTSTUFF_T_CFLAGS): New.
+ 
+-2017-05-19  Andreas Tobler  <address@hidden>
+-
+-      Backport from mainline
+-      2017-05-17  Andreas Tobler  <address@hidden>
++2017-05-17  Andreas Tobler  <address@hidden>
+ 
+       * config/arm/unwind-arm.h: Make _Unwind_GetIP, _Unwind_GetIPInfo and
+       _Unwind_SetIP available as functions for arm*-*-freebsd*.
+@@ -245,17 +2082,35 @@
+       * config/sparc/lb1spc.S [__ELF__ && __linux__]: Emit .note.GNU-stack
+       section for a non-executable stack.
+ 
+-2017-05-10  Andreas Tobler  <address@hidden>
++2017-05-14  Krister Walfridsson  <address@hidden>
++
++      PR target/80600
++      * config.host (*-*-netbsd*): Add t-slibgcc-libgcc to tmake_file.
++
++2017-05-14  Daniel Santos  <address@hidden>
++
++      * config.host: Add i386/t-msabi to i386/t-linux file list.
++      * config/i386/i386-asm.h: New file.
++      * config/i386/resms64.S: New file.
++      * config/i386/resms64f.S: New file.
++      * config/i386/resms64fx.S: New file.
++      * config/i386/resms64x.S: New file.
++      * config/i386/savms64.S: New file.
++      * config/i386/savms64f.S: New file.
++      * config/i386/t-msabi: New file.
+ 
+-      Backport from mainline
+-        2017-05-09  Andreas Tobler  <address@hidden>
++2017-05-09  Andreas Tobler  <address@hidden>
+ 
+       * config.host: Use the generic FreeBSD t-slibgcc-elf-ver for
+       arm*-*-freebsd* instead of the t-slibgcc-libgcc.
+ 
+-2017-05-02  Release Manager
++2017-05-05  Joshua Conner  <address@hidden>
+ 
+-      * GCC 7.1.0 released.
++      * config/arm/unwind-arm.h (_Unwind_decode_typeinfo_ptr): Use
++      pc-relative indirect handling for fuchsia.
++      * config/t-slibgcc-fuchsia: New file.
++      * config.host (*-*-fuchsia*, aarch64*-*-fuchsia*, arm*-*-fuchsia*,
++      x86_64-*-fuchsia*): Add definitions.
+ 
+ 2017-04-19  Martin Liska  <address@hidden>
+ 
+@@ -8675,7 +10530,7 @@
+       shared-object.mk, siditi-object.mk, static-object.mk: New files.
+       * configure: Generated.
+
+-Copyright (C) 2007-2017 Free Software Foundation, Inc.
++Copyright (C) 2007-2020 Free Software Foundation, Inc.
+ 
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+diff --git a/libgcc/Makefile.in b/libgcc/Makefile.in
+index a1a392de88d..3a94dab2fdd 100644
+--- a/libgcc/Makefile.in
++++ b/libgcc/Makefile.in
+@@ -163,6 +163,7 @@ AUTOCONF = autoconf
+ configure_deps = \
+       $(srcdir)/../config/enable.m4 \
+       $(srcdir)/../config/tls.m4 \
++      $(srcdir)/../config/toolexeclibdir.m4 \
+       $(srcdir)/../config/acx.m4 \
+       $(srcdir)/../config/no-executables.m4 \
+       $(srcdir)/../config/lib-ld.m4 \
+diff --git a/libgcc/configure b/libgcc/configure
+index 441601a1f76..976827dc57e 100644
+--- a/libgcc/configure
++++ b/libgcc/configure
+@@ -669,6 +669,7 @@ enable_shared
+ enable_vtable_verify
+ with_aix_soname
+ enable_version_specific_runtime_libs
++with_toolexeclibdir
+ with_slibdir
+ enable_maintainer_mode
+ with_build_libsubdir
+@@ -1329,6 +1330,9 @@ Optional Packages:
+   --with-aix-soname=aix|svr4|both
+                           shared library versioning (aka "SONAME") variant to
+                           provide on AIX
++  --with-toolexeclibdir=DIR
++                          install libraries built with a cross compiler within
++                          DIR
+   --with-slibdir=DIR      shared libraries in DIR LIBDIR
+   --with-build-libsubdir=DIR  Directory where to find libraries for build 
system
+   --with-system-libunwind use installed libunwind
+@@ -2403,6 +2407,22 @@ fi
+ $as_echo "$version_specific_libs" >&6; }
+ 
+ 
++# Check whether --with-toolexeclibdir was given.
++if test "${with_toolexeclibdir+set}" = set; then :
++  withval=$with_toolexeclibdir; case ${with_toolexeclibdir} in
++  /)
++    ;;
++  */)
++    with_toolexeclibdir=`echo $with_toolexeclibdir | sed 's,/$,,'`
++    ;;
++esac
++else
++  with_toolexeclibdir=no
++fi
++
++
++
++
+ # Check whether --with-slibdir was given.
+ if test "${with_slibdir+set}" = set; then :
+   withval=$with_slibdir; slibdir="$with_slibdir"
+@@ -2410,7 +2430,14 @@ else
+   if test "${version_specific_libs}" = yes; then
+   slibdir='$(libsubdir)'
+ elif test -n "$with_cross_host" && test x"$with_cross_host" != x"no"; then
+-  slibdir='$(exec_prefix)/$(host_noncanonical)/lib'
++  case ${with_toolexeclibdir} in
++    no)
++      slibdir='$(exec_prefix)/$(host_noncanonical)/lib'
++      ;;
++    *)
++      slibdir=${with_toolexeclibdir}
++      ;;
++  esac
+ else
+   slibdir='$(libdir)'
+ fi
+@@ -2640,7 +2667,14 @@ case ${version_specific_libs} in
+        test x"$with_cross_host" != x"no"; then
+       # Install a library built with a cross compiler in tooldir, not libdir.
+       toolexecdir='$(exec_prefix)/$(target_noncanonical)'
+-      toolexeclibdir='$(toolexecdir)/lib'
++      case ${with_toolexeclibdir} in
++      no)
++        toolexeclibdir='$(toolexecdir)/lib'
++        ;;
++      *)
++        toolexeclibdir=${with_toolexeclibdir}
++        ;;
++      esac
+     else
+       toolexecdir='$(libdir)/gcc-lib/$(target_noncanonical)'
+       toolexeclibdir='$(libdir)'
+diff --git a/libgcc/configure.ac b/libgcc/configure.ac
+index 99b8e15562f..ca833fdc5c1 100644
+--- a/libgcc/configure.ac
++++ b/libgcc/configure.ac
+@@ -2,6 +2,7 @@ dnl Process this file with autoconf to produce a configure 
script.
+ 
+ sinclude(../config/enable.m4)
+ sinclude(../config/tls.m4)
++sinclude(../config/toolexeclibdir.m4)
+ sinclude(../config/acx.m4)
+ sinclude(../config/no-executables.m4)
+ sinclude(../config/lib-ld.m4)
+@@ -108,16 +109,25 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
+ [version_specific_libs=no])
+ AC_MSG_RESULT($version_specific_libs)
+ 
++GCC_WITH_TOOLEXECLIBDIR
++
+ AC_ARG_WITH(slibdir,
+ [  --with-slibdir=DIR      shared libraries in DIR [LIBDIR]],
+ slibdir="$with_slibdir",
+-if test "${version_specific_libs}" = yes; then
++[if test "${version_specific_libs}" = yes; then
+   slibdir='$(libsubdir)'
+ elif test -n "$with_cross_host" && test x"$with_cross_host" != x"no"; then
+-  slibdir='$(exec_prefix)/$(host_noncanonical)/lib'
++  case ${with_toolexeclibdir} in
++    no)
++      slibdir='$(exec_prefix)/$(host_noncanonical)/lib'
++      ;;
++    *)
++      slibdir=${with_toolexeclibdir}
++      ;;
++  esac
+ else
+   slibdir='$(libdir)'
+-fi)
++fi])
+ AC_SUBST(slibdir)
+ 
+ # Command-line options.
+@@ -163,7 +173,14 @@ case ${version_specific_libs} in
+        test x"$with_cross_host" != x"no"; then
+       # Install a library built with a cross compiler in tooldir, not libdir.
+       toolexecdir='$(exec_prefix)/$(target_noncanonical)'
+-      toolexeclibdir='$(toolexecdir)/lib'
++      case ${with_toolexeclibdir} in
++      no)
++        toolexeclibdir='$(toolexecdir)/lib'
++        ;;
++      *)
++        toolexeclibdir=${with_toolexeclibdir}
++        ;;
++      esac
+     else
+       toolexecdir='$(libdir)/gcc-lib/$(target_noncanonical)'
+       toolexeclibdir='$(libdir)'
+diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
+index 1de15a0c710..fe7e48040cd 100644
+--- a/libgfortran/ChangeLog
++++ b/libgfortran/ChangeLog
+@@ -1,709 +1,46 @@
+-2019-11-14  Release Manager
++2020-01-24  Maciej W. Rozycki  <address@hidden>
+ 
+-      * GCC 7.5.0 released.
+-
+-2019-04-16  John David Anglin  <address@hidden>
+-
+-      Backport from mainline
+-      2019-03-25  John David Anglin  <address@hidden>
+-
+-      PR libgfortran/79540
+-      * io/write_float.def (build_float_string): Don't copy digits when
+-      ndigits is negative.
+-
+-2019-02-03  Uroš Bizjak  <address@hidden>
+-
+-      PR libfortran/88678
+-      Revert:
+-      2016-11-16  Szabolcs Nagy  <address@hidden>
+-
+-      PR libfortran/78314
+-      * config/fpu-glibc.h (support_fpu_trap): Use feenableexcept.
+-
+-2019-02-03  Uroš Bizjak  <address@hidden>
+-
+-      PR libfortran/88678
+-      * config/fpu-glibc.h (set_fpu_trap_exceptions): Clear stalled
+-      exception flags before changing trap mode.  Optimize to call
+-      feenableexcept and fedisableexcept only once.
+-
+-2019-01-13  Jerry DeLisle  <address@hidden>
+-
+-      PR libfortran/88776
+-      * io/list_read.c (namelist_read): Use nml_err_ret path on read error
+-      not based on stdin_unit.
+-      * io/open.c (newunit): Free format buffer if the unit specified is for
+-      stdin, stdout, or stderr.
+-
+-2018-12-06  Janne Blomqvist  <address@hidden>
+-
+-      Backport from trunk
+-      PR libfortran/88137
+-      * runtime/backtrace.c (show_backtrace): Store backtrace state in a
+-      static variable, initialize once.
+-
+-2018-12-06  Release Manager
+-
+-      * GCC 7.4.0 released.
+-
+-2018-10-13  Gerald Pfeifer  <address@hidden>
+-
+-      Backport from trunk
+-      * io/close.c [!HAVE_UNLINK_OPEN_FILE]: Include <string.h>.
+-
+-2018-09-18  Kyrylo Tkachov  <address@hidden>
+-
+-      Backport from trunk
+-      2018-09-14  Kyrylo Tkachov  <address@hidden>
+-
+-      * io/unix.c (fallback_access): Avoid calling close on
+-      uninitialized file descriptor.
+-
+-2018-06-22  Jakub Jelinek  <address@hidden>
+-
+-      Backported from mainline
+-      2018-04-18  David Malcolm  <address@hidden>
+-
+-      PR jit/85384
++      * configure.ac: Handle `--with-toolexeclibdir='.
++      * Makefile.in: Regenerate.
++      * aclocal.m4: Regenerate.
+       * configure: Regenerate.
+ 
+-2018-06-09  Jerry DeLisle  <address@hidden>
+-
+-      Backport from trunk.
+-      PR libgfortran/86070
+-      * io/write_float.def (build_float_string): Initialize *len.
+-
+-2018-06-01  Jerry DeLisle  <address@hidden>
+-
+-      Backport from trunk.
+-      PR libgfortran/85840
+-      * io/write.c (write_float_0, write_real, write_real_g0,
+-      write_complex): Use separate local variables for the float
+-      string length.
+-
+-2018-02-18  Jerry DeLisle  <address@hidden>
+-
+-      Backport from trunk
+-      PR libgfortran/84412
+-      * io/transfer.c (finalize_transfer): After completng an internal unit
+-      I/O operation, clear internal_unit_kind.
+-
+-2018-01-25  Release Manager
+-
+-      * GCC 7.3.0 released.
+-
+-2018-01-14  Jerry DeLisle  <address@hidden>
+-
+-      Backport from trunk
+-      PR libgfortran/83811
+-      * write.c (select_buffer): Adjust buffer size up by 1.
+-
+-2018-01-03  Janne Blomqvist  <address@hidden>
+-
+-      Backport from trunk
+-      PR libgfortran/83649
+-      * io/unix.c (MAX_CHUNK): New define.
+-      (raw_read): For reads larger than MAX_CHUNK, loop.
+-      (raw_write): Write no more than MAX_CHUNK bytes per iteration.
+-
+-2017-12-29  Jerry DeLisle  <address@hidden>
+-
+-      Backport from trunk
+-      PR libgfortran/83613
+-      * io/unit.c (init_units): Don't forget to unlock the unit locks
+-      after being inserted.
+-
+-2017-12-16  Jerry DeLisle  <address@hidden>
+-
+-      Backport from trunk
+-      PR libgfortran/81937
+-      * io/list_read.c (next_char_internal): Don't attempt to read
+-      from the internal unit stream if no bytes are left. Decrement
+-      bytes_left in the right place.
+-
+-2017-12-16  Jerry DeLisle  <address@hidden>
+-
+-      Backport from trunk
+-      PR libgfortran/78549
+-      * io/inquire.c (inquire_via_unit): Adjust test for existence for
+-      pre-connected internal units.
+-      * io/transfer.c (finalize_transfer): When done with a transfer
+-      to internal units, free the format buffer and close the stream.
+-      (st_read_done): Delete freeing the stream, now handled using
+-      sclose in finalize_transfer. (st_write_done): Likewise.
+-      * io/unit.c (get_unit): Return NULL for special reserved unit
+-      numbers, signifying not accessible to the user.
+-      (init_units): Insert the two special internal units into the
+-      unit treap. This makes these unit structures available without
+-      further allocations for later use by internal unit I/O. These
+-      units are automatically deleted by normal program termination.
+-      * io/unix.c (mem_close): Add a guard check to protect from double free.
+-
+-2017-12-03  Jerry DeLisle  <address@hidden>
+-
+-      Backport from trunk
+-      PR libgfortran/83168
+-      * io/write.c (select_string): Bump size by one to avoid
+-      overrun.
+-
+-2017-12-03  Jerry DeLisle  <address@hidden>
+-          Dominique d'Humieres  <address@hidden>
+-
+-      Backport from trunk
+-      PR libgfortran/83191
+-      * io/transfer.c (list_formatted_read_scalar): Do not set
+-      namelist_mode bit here. (namelist_read): Likewise.
+-      (data_transfer_init): Clear the mode bit here.
+-      (finalize_transfer): Do set the mode bit just before any calls
+-      to namelist_read or namelist_write. It can now be referred to
+-      in complex_write.
+-      * io/write.c (write_complex): Suppress the leading blanks when
+-      namelist_mode bit is not set to 1.
+-
+-2017-12-02  Jerry DeLisle  <address@hidden>
+-
+-      Backport from trunk
+-      PR libgfortran/83225
+-      * io/io.h (is_internal_unit): Use the unit_is_internal bit.
+-      * io/transfer.c (data_transfer_init): Set the bit to true for
+-      internal units. Use that bit for checks for internal unit
+-      initializations.
+-      * io/unit.c (insert_unit): As a precaution, set the
+-      internal_unit_kind to zero when a unit structure is first created.
+-
+-2017-11-23  Jerry DeLisle  <address@hidden>
+-
+-      Backport from trunk
+-      PR libgfortran/78549
+-      * io/io.h (newunit_free): Add declaration. Clean some whitespace.
+-      * io/transfer.c (st_read_done, st_write_done): Call newunit_free.
+-      * io/unit.c (newunit_free): Change type from static void to void.
+-
+-2017-10-27  Jerry DeLisle  <address@hidden>
+-          Rimvydas (RJ)
+-
+-      Backport from trunk
+-      PR libgfortran/81938
+-      io/format.c (free_format_data): Don't try to free vlist
+-      descriptors past the end of the fnode array.
+-
+-2017-10-19  Thomas Koenig  <address@hidden>
+-
+-      Backport from trunk
+-      PR libfortran/82233
+-      * intrinsics/execute_command_line.c (execute_command_line):
+-      No call to runtime_error if cmdstat is present.
+-
+-2017-09-19  Jerry DeLisle  <address@hidden>
+-
+-      Backport from trunk
+-      PR libgfortran/78387
+-      * io/list_read.c (nml_read_obj): Remove use of stash.
+-      * io/transfer.c (st_read_done, st_write_done): Likewise.
+-      * io/unit.c (stash_internal_unit): Delete function.
+-      (get_unit): Remove use of stash.
+-      (init_units): Likewise.
+-      (close_units): Likewise.
+-      * io/write.c (nml_write_obj): Likewise:
+-
+-2017-08-14  Release Manager
+-
+-      * GCC 7.2.0 released.
+-
+-2017-06-27  Jerry DeLisle  <address@hidden>
+-
+-      Backport from trunk
+-      PR libgfortran/53029
+-      * io/list_read.c(list_formatted_read_scalar: Set the err return
+-      value to the common.flags error values.
+-
+-2017-06-26  Jim Wilson  <address@hidden-colo>
+-
+-      Backport from trunk
+-      PR libfortran/81195
+-      * io/unit.c (get_unit): Call __gthread_mutex_lock before newunit_stack
+-      and newunit_tos references.  Call __gthread_mutex_unlock afterward.
+-
+-2017-06-06  Thomas Koenig  <address@hidden>
+-
+-      Backport from trunk
+-      PR fortran/80975
+-      * m4/matmul_internal.m4:  Move zeroing before early return.
+-      * generated/matmul_c10.c: Regenerated.
+-      * generated/matmul_c16.c: Regenerated.
+-      * generated/matmul_c4.c: Regenerated.
+-      * generated/matmul_c8.c: Regenerated.
+-      * generated/matmul_i1.c: Regenerated.
+-      * generated/matmul_i16.c: Regenerated.
+-      * generated/matmul_i2.c: Regenerated.
+-      * generated/matmul_i4.c: Regenerated.
+-      * generated/matmul_i8.c: Regenerated.
+-      * generated/matmul_r10.c: Regenerated.
+-      * generated/matmul_r16.c: Regenerated.
+-      * generated/matmul_r4.c: Regenerated.
+-      * generated/matmul_r8.c: Regenerated.
+-
+-2017-05-23  Jerry DeLisle  <address@hidden>
+-
+-      Backport from trunk
+-      PR libgfortran/80741
+-      * transfer.c (finalize_transfer): Reset last_char to 'empty'.
+-      * file_pos.c (formatted_backspace): Likewise.
+-      (st_endfile): Likewise.
+-      (st_rewind): Likewise.
+-      (st_flush): Likewise.
+-
+-2017-05-23  Paul Thomas  <address@hidden>
+-          Jerry DeLisle  <address@hidden>
+-
+-      Backport from trunk
+-      PR fortran/80333
+-      * list_read.c (nml_read_obj): Compute pointer into class/type
+-      arrays from the nl->dim information. Update it for each iteration
+-      of the loop for the given object.
+-
+-2017-05-19  Janne Blomqvist  <address@hidden>
+-
+-      Backport from trunk
+-      * libgfortran.h: HAVE_SECURE_GETENV: Don't check
+-      HAVE___SECURE_GETENV.
+-      * environ/runtime.c (secure_getenv): Use __secure_getenv via a
+-        weak reference.
+-
+-2017-05-17  Jerry DeLisle  <address@hidden>
+-
+-      Backport from trunk
+-      PR libgfortran/80727
+-      * transfer.c (read_sf_internal): Remove bogus code to detect EOR.
+-      (read_block_form): For internal units, generate EOR if no more
+-      bytes left in unit and we are trying to read with ADVANCE='NO'.
+-
+-2017-05-02  Release Manager
+-
+-      * GCC 7.1.0 released.
+-
+-2017-04-11  Jerry DeLisle  <address@hidden>
+-
+-      * close.c: Fix white space in pointer declarations and comment
+-      formats where applicable.
+-      * fbuf.c: Likewise.
+-      * fbuf.h: Likewise.
+-      * format.c: Likewise.
+-      * inquire.c: Likewise.
+-      * intrinsics.c: Likewise.
+-      * list_read.c: Likewise.
+-      * lock.c: Likewise.
+-      * open.c: Likewise.
+-      * read.c: Likewise.
+-      * transfer.c: Likewise.
+-      * unit.c: Likewise.
+-      * unix.c: Likewise.
+-      * unix.h: Likewise.
+-      * write.c: Likewise.
+-
+-2017-03-29  Jerry DeLisle  <address@hidden>
+-
+-      PR libgfortran/78670
+-      * io/list_read.c (nml_get_obj_data): Delete code which calls the
+-      child read procedure. (nml_read_obj): Insert the code which
+-      calls the child procedure. Don't need to touch nodes if using
+-      dtio since parent will not be traversing the components.
+-
+-2017-03-28  Janus Weil  <address@hidden>
+-
+-      PR fortran/78661
+-      * io/write.c (nml_write_obj): Build a class container only if necessary.
+-
+-2017-03-27  Dominique d'Humieres  <address@hidden>
+-
+-      * io/list_read.c: Insert /* Fall through. */ in the macro
+-      CASE_SEPARATORS in order to silence warnings.
+-
+-2017-03-25  Jerry DeLisle  <address@hidden>
+-
+-      PR libgfortran/78881
+-      * io/io.h (st_parameter_dt): Rename unused component last_char to
+-      child_saved_iostat. Move comment to gfc_unit.
+-      * io/list_read.c (list_formatted_read_scalar): After call to
+-      child READ procedure, save the returned iostat value for later
+-      check. (finish_list_read): Only finish READ if child_saved_iostat
+-      was OK.
+-      * io/transfer.c (read_sf_internal): If there is a saved character
+-      in last character, seek back one. Add a new check for EOR
+-      condition. (read_sf): If there is a saved character
+-      in last character, seek back one. (formatted_transfer_scalar_read):
+-      Initialize last character before invoking child procedure.
+-      (data_transfer_init): If child dtio, set advance
+-      status to nonadvancing. Move update of size and check for EOR
+-      condition to before child dtio return.
+-
+-2017-03-17  Thomas Koenig  <address@hidden>
+-
+-      PR libfortran/79956
+-      * m4/reshape.m4 (reshape_'rtype_ccode`):  Correct use
+-      of GFC_ASSERT.
+-      * generated/reshape_c10.c: Regenerated.
+-      * generated/reshape_c16.c: Regenerated.
+-      * generated/reshape_c4.c: Regenerated.
+-      * generated/reshape_c8.c: Regenerated.
+-      * generated/reshape_i16.c: Regenerated.
+-      * generated/reshape_i4.c: Regenerated.
+-      * generated/reshape_i8.c: Regenerated.
+-      * generated/reshape_r10.c: Regenerated.
+-      * generated/reshape_r16.c: Regenerated.
+-      * generated/reshape_r4.c: Regenerated.
+-      * generated/reshape_r8.c: Regenerated.
+-
+-2017-03-15  NightStrike  <address@hidden>
+-          Janne Blomqvist  <address@hidden>
+-
+-      * intrinsics/random.c (getosrandom): Remove check for __CYGWIN__
+-      preprocessor flag.
+-      * intrinsics/system_clock.c: Likewise.
+-      (system_clock_4): Likewise.
+-      (system_clock_8): Likewise.
+-      * intrinsics/time_1.h: Don't include windows.h if __CYGWIN__ is
+-      defined.
+-
+-2017-03-10  Thomas Koenig  <address@hidden>
+-
+-      PR libfortran/79956
+-      * libgfortran.h (GFC_ASSERT):  New macro.
+-      * m4/reshape.m4 (reshape_'rtype_ccode`):  Use GFC_ASSERT
+-      to specify that sdim > 0 and rdim > 0.
+-      * intrinsic/reshape_generic.c (reshape_internal):  Likweise.
+-      * generated/reshape_c10.c: Regenerated.
+-      * generated/reshape_c16.c: Regenerated.
+-      * generated/reshape_c4.c: Regenerated.
+-      * generated/reshape_c8.c: Regenerated.
+-      * generated/reshape_i16.c: Regenerated.
+-      * generated/reshape_i4.c: Regenerated.
+-      * generated/reshape_i8.c: Regenerated.
+-      * generated/reshape_r10.c: Regenerated.
+-      * generated/reshape_r16.c: Regenerated.
+-      * generated/reshape_r4.c: Regenerated.
+-      * generated/reshape_r8.c: Regenerated.
+-
+-2017-03-11  Jerry DeLisle  <address@hidden>
+-
+-      PR libgfortran/78854
+-      * io/list_read.c (nml_get_obj_data): Stash internal unit for
+-      later use by child procedures.
+-      * io/write.c (nml_write_obj): Likewise.
+-      * io/tranfer.c (data_transfer_init): Minor whitespace.
+-      * io/unit.c (set_internal_uit): Look for the stashed internal
+-      unit and use it if found.
+-
+-2017-03-10  Thomas Koenig  <address@hidden>
+-
+-      PR libfortran/79956
+-      * m4/iforeach.m4:  Change exit condition from loop for
+-      increasing dimension to >=.  Fix type in comment.
+-      * m4/ifunction.m4:  Likewise.
+-      * m4/ifunction_logical.m4: Likewise.
+-      * generated/all_l1.c: Regenerated.
+-      * generated/all_l16.c: Regenerated.
+-      * generated/all_l2.c: Regenerated.
+-      * generated/all_l4.c: Regenerated.
+-      * generated/all_l8.c: Regenerated.
+-      * generated/any_l1.c: Regenerated.
+-      * generated/any_l16.c: Regenerated.
+-      * generated/any_l2.c: Regenerated.
+-      * generated/any_l4.c: Regenerated.
+-      * generated/any_l8.c: Regenerated.
+-      * generated/count_16_l.c: Regenerated.
+-      * generated/count_1_l.c: Regenerated.
+-      * generated/count_2_l.c: Regenerated.
+-      * generated/count_4_l.c: Regenerated.
+-      * generated/count_8_l.c: Regenerated.
+-      * generated/iall_i1.c: Regenerated.
+-      * generated/iall_i16.c: Regenerated.
+-      * generated/iall_i2.c: Regenerated.
+-      * generated/iall_i4.c: Regenerated.
+-      * generated/iall_i8.c: Regenerated.
+-      * generated/iany_i1.c: Regenerated.
+-      * generated/iany_i16.c: Regenerated.
+-      * generated/iany_i2.c: Regenerated.
+-      * generated/iany_i4.c: Regenerated.
+-      * generated/iany_i8.c: Regenerated.
+-      * generated/iparity_i1.c: Regenerated.
+-      * generated/iparity_i16.c: Regenerated.
+-      * generated/iparity_i2.c: Regenerated.
+-      * generated/iparity_i4.c: Regenerated.
+-      * generated/iparity_i8.c: Regenerated.
+-      * generated/maxloc0_16_i1.c: Regenerated.
+-      * generated/maxloc0_16_i16.c: Regenerated.
+-      * generated/maxloc0_16_i2.c: Regenerated.
+-      * generated/maxloc0_16_i4.c: Regenerated.
+-      * generated/maxloc0_16_i8.c: Regenerated.
+-      * generated/maxloc0_16_r10.c: Regenerated.
+-      * generated/maxloc0_16_r16.c: Regenerated.
+-      * generated/maxloc0_16_r4.c: Regenerated.
+-      * generated/maxloc0_16_r8.c: Regenerated.
+-      * generated/maxloc0_4_i1.c: Regenerated.
+-      * generated/maxloc0_4_i16.c: Regenerated.
+-      * generated/maxloc0_4_i2.c: Regenerated.
+-      * generated/maxloc0_4_i4.c: Regenerated.
+-      * generated/maxloc0_4_i8.c: Regenerated.
+-      * generated/maxloc0_4_r10.c: Regenerated.
+-      * generated/maxloc0_4_r16.c: Regenerated.
+-      * generated/maxloc0_4_r4.c: Regenerated.
+-      * generated/maxloc0_4_r8.c: Regenerated.
+-      * generated/maxloc0_8_i1.c: Regenerated.
+-      * generated/maxloc0_8_i16.c: Regenerated.
+-      * generated/maxloc0_8_i2.c: Regenerated.
+-      * generated/maxloc0_8_i4.c: Regenerated.
+-      * generated/maxloc0_8_i8.c: Regenerated.
+-      * generated/maxloc0_8_r10.c: Regenerated.
+-      * generated/maxloc0_8_r16.c: Regenerated.
+-      * generated/maxloc0_8_r4.c: Regenerated.
+-      * generated/maxloc0_8_r8.c: Regenerated.
+-      * generated/maxloc1_16_i1.c: Regenerated.
+-      * generated/maxloc1_16_i16.c: Regenerated.
+-      * generated/maxloc1_16_i2.c: Regenerated.
+-      * generated/maxloc1_16_i4.c: Regenerated.
+-      * generated/maxloc1_16_i8.c: Regenerated.
+-      * generated/maxloc1_16_r10.c: Regenerated.
+-      * generated/maxloc1_16_r16.c: Regenerated.
+-      * generated/maxloc1_16_r4.c: Regenerated.
+-      * generated/maxloc1_16_r8.c: Regenerated.
+-      * generated/maxloc1_4_i1.c: Regenerated.
+-      * generated/maxloc1_4_i16.c: Regenerated.
+-      * generated/maxloc1_4_i2.c: Regenerated.
+-      * generated/maxloc1_4_i4.c: Regenerated.
+-      * generated/maxloc1_4_i8.c: Regenerated.
+-      * generated/maxloc1_4_r10.c: Regenerated.
+-      * generated/maxloc1_4_r16.c: Regenerated.
+-      * generated/maxloc1_4_r4.c: Regenerated.
+-      * generated/maxloc1_4_r8.c: Regenerated.
+-      * generated/maxloc1_8_i1.c: Regenerated.
+-      * generated/maxloc1_8_i16.c: Regenerated.
+-      * generated/maxloc1_8_i2.c: Regenerated.
+-      * generated/maxloc1_8_i4.c: Regenerated.
+-      * generated/maxloc1_8_i8.c: Regenerated.
+-      * generated/maxloc1_8_r10.c: Regenerated.
+-      * generated/maxloc1_8_r16.c: Regenerated.
+-      * generated/maxloc1_8_r4.c: Regenerated.
+-      * generated/maxloc1_8_r8.c: Regenerated.
+-      * generated/maxval_i1.c: Regenerated.
+-      * generated/maxval_i16.c: Regenerated.
+-      * generated/maxval_i2.c: Regenerated.
+-      * generated/maxval_i4.c: Regenerated.
+-      * generated/maxval_i8.c: Regenerated.
+-      * generated/maxval_r10.c: Regenerated.
+-      * generated/maxval_r16.c: Regenerated.
+-      * generated/maxval_r4.c: Regenerated.
+-      * generated/maxval_r8.c: Regenerated.
+-      * generated/minloc0_16_i1.c: Regenerated.
+-      * generated/minloc0_16_i16.c: Regenerated.
+-      * generated/minloc0_16_i2.c: Regenerated.
+-      * generated/minloc0_16_i4.c: Regenerated.
+-      * generated/minloc0_16_i8.c: Regenerated.
+-      * generated/minloc0_16_r10.c: Regenerated.
+-      * generated/minloc0_16_r16.c: Regenerated.
+-      * generated/minloc0_16_r4.c: Regenerated.
+-      * generated/minloc0_16_r8.c: Regenerated.
+-      * generated/minloc0_4_i1.c: Regenerated.
+-      * generated/minloc0_4_i16.c: Regenerated.
+-      * generated/minloc0_4_i2.c: Regenerated.
+-      * generated/minloc0_4_i4.c: Regenerated.
+-      * generated/minloc0_4_i8.c: Regenerated.
+-      * generated/minloc0_4_r10.c: Regenerated.
+-      * generated/minloc0_4_r16.c: Regenerated.
+-      * generated/minloc0_4_r4.c: Regenerated.
+-      * generated/minloc0_4_r8.c: Regenerated.
+-      * generated/minloc0_8_i1.c: Regenerated.
+-      * generated/minloc0_8_i16.c: Regenerated.
+-      * generated/minloc0_8_i2.c: Regenerated.
+-      * generated/minloc0_8_i4.c: Regenerated.
+-      * generated/minloc0_8_i8.c: Regenerated.
+-      * generated/minloc0_8_r10.c: Regenerated.
+-      * generated/minloc0_8_r16.c: Regenerated.
+-      * generated/minloc0_8_r4.c: Regenerated.
+-      * generated/minloc0_8_r8.c: Regenerated.
+-      * generated/minloc1_16_i1.c: Regenerated.
+-      * generated/minloc1_16_i16.c: Regenerated.
+-      * generated/minloc1_16_i2.c: Regenerated.
+-      * generated/minloc1_16_i4.c: Regenerated.
+-      * generated/minloc1_16_i8.c: Regenerated.
+-      * generated/minloc1_16_r10.c: Regenerated.
+-      * generated/minloc1_16_r16.c: Regenerated.
+-      * generated/minloc1_16_r4.c: Regenerated.
+-      * generated/minloc1_16_r8.c: Regenerated.
+-      * generated/minloc1_4_i1.c: Regenerated.
+-      * generated/minloc1_4_i16.c: Regenerated.
+-      * generated/minloc1_4_i2.c: Regenerated.
+-      * generated/minloc1_4_i4.c: Regenerated.
+-      * generated/minloc1_4_i8.c: Regenerated.
+-      * generated/minloc1_4_r10.c: Regenerated.
+-      * generated/minloc1_4_r16.c: Regenerated.
+-      * generated/minloc1_4_r4.c: Regenerated.
+-      * generated/minloc1_4_r8.c: Regenerated.
+-      * generated/minloc1_8_i1.c: Regenerated.
+-      * generated/minloc1_8_i16.c: Regenerated.
+-      * generated/minloc1_8_i2.c: Regenerated.
+-      * generated/minloc1_8_i4.c: Regenerated.
+-      * generated/minloc1_8_i8.c: Regenerated.
+-      * generated/minloc1_8_r10.c: Regenerated.
+-      * generated/minloc1_8_r16.c: Regenerated.
+-      * generated/minloc1_8_r4.c: Regenerated.
+-      * generated/minloc1_8_r8.c: Regenerated.
+-      * generated/minval_i1.c: Regenerated.
+-      * generated/minval_i16.c: Regenerated.
+-      * generated/minval_i2.c: Regenerated.
+-      * generated/minval_i4.c: Regenerated.
+-      * generated/minval_i8.c: Regenerated.
+-      * generated/minval_r10.c: Regenerated.
+-      * generated/minval_r16.c: Regenerated.
+-      * generated/minval_r4.c: Regenerated.
+-      * generated/minval_r8.c: Regenerated.
+-      * generated/norm2_r10.c: Regenerated.
+-      * generated/norm2_r16.c: Regenerated.
+-      * generated/norm2_r4.c: Regenerated.
+-      * generated/norm2_r8.c: Regenerated.
+-      * generated/parity_l1.c: Regenerated.
+-      * generated/parity_l16.c: Regenerated.
+-      * generated/parity_l2.c: Regenerated.
+-      * generated/parity_l4.c: Regenerated.
+-      * generated/parity_l8.c: Regenerated.
+-      * generated/product_c10.c: Regenerated.
+-      * generated/product_c16.c: Regenerated.
+-      * generated/product_c4.c: Regenerated.
+-      * generated/product_c8.c: Regenerated.
+-      * generated/product_i1.c: Regenerated.
+-      * generated/product_i16.c: Regenerated.
+-      * generated/product_i2.c: Regenerated.
+-      * generated/product_i4.c: Regenerated.
+-      * generated/product_i8.c: Regenerated.
+-      * generated/product_r10.c: Regenerated.
+-      * generated/product_r16.c: Regenerated.
+-      * generated/product_r4.c: Regenerated.
+-      * generated/product_r8.c: Regenerated.
+-      * generated/sum_c10.c: Regenerated.
+-      * generated/sum_c16.c: Regenerated.
+-      * generated/sum_c4.c: Regenerated.
+-      * generated/sum_c8.c: Regenerated.
+-      * generated/sum_i1.c: Regenerated.
+-      * generated/sum_i16.c: Regenerated.
+-      * generated/sum_i2.c: Regenerated.
+-      * generated/sum_i4.c: Regenerated.
+-      * generated/sum_i8.c: Regenerated.
+-      * generated/sum_r10.c: Regenerated.
+-      * generated/sum_r16.c: Regenerated.
+-      * generated/sum_r4.c: Regenerated.
+-      * generated/sum_r8.c: Regenerated.
+-
+-2017-03-05  Andre Vehreschild  <address@hidden>
+-            Alessandro Fanfarillo  <address@hidden>
+-
+-      * caf/libcaf.h: Added prototypes and stat codes for failed and stopped
+-      images.
+-      * caf/single.c (void _gfortran_caf_fail_image): Add the routine.
+-      (int _gfortran_caf_image_status): Same.
+-      (_gfortran_caf_failed_images): Same.
+-      (_gfortran_caf_stopped_images): Same.
+-
+-2017-03-02  Thomas Koenig  <address@hidden>
+-          Jakub Jelinek  <address@hidden>
+-
+-      * m4/matmul.m4 (matmul_'rtype_code`):  Avoid
+-      race condition on storing function pointer.
+-        * generated/matmul_c10.c: Regenerated.
+-        * generated/matmul_c16.c: Regenerated.
+-        * generated/matmul_c4.c: Regenerated.
+-        * generated/matmul_c8.c: Regenerated.
+-        * generated/matmul_i1.c: Regenerated.
+-        * generated/matmul_i16.c: Regenerated.
+-        * generated/matmul_i2.c: Regenerated.
+-        * generated/matmul_i4.c: Regenerated.
+-        * generated/matmul_i8.c: Regenerated.
+-        * generated/matmul_r10.c: Regenerated.
+-        * generated/matmul_r16.c: Regenerated.
+-        * generated/matmul_r4.c: Regenerated.
+-        * generated/matmul_r8.c: Regenerated.
+-
+-2017-03-02  Thomas Koenig  <address@hidden>
+-
+-      PR fortran/78379
+-      * m4/matmul.m4: (matmul_'rtype_code`_avx2): Also generate for
+-      reals.  Add fma to target options.
+-      (matmul_'rtype_code`):  Call AVX2 only if FMA is available.
+-        * generated/matmul_c10.c: Regenerated.
+-        * generated/matmul_c16.c: Regenerated.
+-        * generated/matmul_c4.c: Regenerated.
+-        * generated/matmul_c8.c: Regenerated.
+-        * generated/matmul_i1.c: Regenerated.
+-        * generated/matmul_i16.c: Regenerated.
+-        * generated/matmul_i2.c: Regenerated.
+-        * generated/matmul_i4.c: Regenerated.
+-        * generated/matmul_i8.c: Regenerated.
+-        * generated/matmul_r10.c: Regenerated.
+-        * generated/matmul_r16.c: Regenerated.
+-        * generated/matmul_r4.c: Regenerated.
+-        * generated/matmul_r8.c: Regenerated.
+-
+-2017-02-27  Janne Blomqvist  <address@hidden>
+-
+-      * intrinsics/random.c (getosrandom): Don't try to use rand_s on
+-      CYGWIN.
+-
+-2017-02-16  Paul Thomas  <address@hidden>
+-
+-      PR fortran/79382
+-      * io/transfer.c (check_dtio_proc): New function.
+-      (formatted_transfer_scalar_read): Use it.
+-      (formatted_transfer_scalar_write): ditto.
+-
+-2017-01-31  Steven G. Kargl  <address@hidden>
+-
+-      PR fortran/79305
+-      * c99_protos.h: Spell HAVE_EXPL correctly.
+-      * intrinsics/c99_functions.c: Ditto.
+-
+-2017-01-19  Uros Bizjak  <address@hidden>
+-
+-      PR target/78478
+-      * acinclude.m4: Include ../config/ax_check_define.m4
+-      * configure.ac: Check if _SOFT_FLOAT is defined.
+-      * configure.host (i?86 | x86_64): Use fpu-generic when
+-      have_soft_float is set.
+-      * configure: Regenerate.
+-
+-2017-01-19  Jakub Jelinek  <address@hidden>
+-
+-      PR target/79127
+-      * acinclude.m4 (LIBGFOR_CHECK_AVX512F): Ensure the test clobbers
+-      some zmm16+ registers to verify they are handled by unwind info
+-      properly if needed.
+-      * configure: Regenerated.
+-
+-2017-01-17  Jakub Jelinek  <address@hidden>
++2020-01-17  Jerry DeLisle  <address@hidden>
+ 
+-      PR other/79046
+-      * configure.ac: Add GCC_BASE_VER.
+-      * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
+-      get version from BASE-VER file.
+-      * configure: Regenerated.
+-      * Makefile.in: Regenerated.
++      PR libfortran/93234
++      * io/unit.c (set_internal_unit): Set round and sign flags
++      correctly.
+ 
+-2017-01-13  Andre Vehreschild  <address@hidden>
++2020-01-17  Jerry DeLisle  <address@hidden>
+ 
+-      PR fortran/70696
+-      * caf/single.c (_gfortran_caf_register): Allocate enough memory for
+-      the event counter.
++      PR libfortran/90374
++      * io/format.c (parse_format_list): Zero width not allowed with
++      FMT_D.
++      * io/write_float.def (build_float_string): Include range of
++      higher exponent values that require wider width.
+ 
+-2017-01-07  Andre Vehreschild  <address@hidden>
++2020-01-01  Jerry DeLisle  <address@hidden>
+ 
+-      PR fortran/78781
+-      PR fortran/78935
+-      * caf/single.c (send_by_ref): Fix addressing of non-allocatable scalar
+-      destination components.
++      PR libfortran/90374
++      * io/format.c (parse_format_list): Implement the E0 exponent
++      width to provide smallest possible width for exponent fields.
++      Refactor code for correct parsing and better readability of the
++      code.
++      * io/io.h (write_real_w0): Change interface to pass in pointer
++      to fnode.
++      * io/transfer.c: Update all calls to write_real_w0 to use the
++      new interface.
++      * io/write.c ((write_real_w0): Use the new interface with fnode
++      to access both the decimal precision and exponent widths used in
++      build_float_string.
++      * io/write_float.def (build_float_string): Use the passed in
++      exponent width to calculate the used width in the case of E0.
+ 
+-2017-01-01  Jakub Jelinek  <address@hidden>
++2020-01-01  Jakub Jelinek  <address@hidden>
+ 
+       Update copyright years.
+
+-Copyright (C) 2017 Free Software Foundation, Inc.
++Copyright (C) 2020 Free Software Foundation, Inc.
+ 
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+diff --git a/libgfortran/Makefile.in b/libgfortran/Makefile.in
+index 4914a6f323f..ba700a8002c 100644
+--- a/libgfortran/Makefile.in
++++ b/libgfortran/Makefile.in
+@@ -133,6 +133,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/depstand.m4 \
+       $(top_srcdir)/../config/multi.m4 \
+       $(top_srcdir)/../config/override.m4 \
+       $(top_srcdir)/../config/stdint.m4 \
++      $(top_srcdir)/../config/toolexeclibdir.m4 \
+       $(top_srcdir)/../ltoptions.m4 $(top_srcdir)/../ltsugar.m4 \
+       $(top_srcdir)/../ltversion.m4 $(top_srcdir)/../lt~obsolete.m4 \
+       $(top_srcdir)/acinclude.m4 $(top_srcdir)/../config/acx.m4 \
+diff --git a/libgfortran/aclocal.m4 b/libgfortran/aclocal.m4
+index 015537ef197..58f0687d7a5 100644
+--- a/libgfortran/aclocal.m4
++++ b/libgfortran/aclocal.m4
+@@ -1030,6 +1030,7 @@ m4_include([../config/lthostflags.m4])
+ m4_include([../config/multi.m4])
+ m4_include([../config/override.m4])
+ m4_include([../config/stdint.m4])
++m4_include([../config/toolexeclibdir.m4])
+ m4_include([../ltoptions.m4])
+ m4_include([../ltsugar.m4])
+ m4_include([../ltversion.m4])
+diff --git a/libgfortran/configure b/libgfortran/configure
+index 1db8f5f5224..e28fa82d8d5 100755
+--- a/libgfortran/configure
++++ b/libgfortran/configure
+@@ -771,6 +771,7 @@ enable_intermodule
+ enable_maintainer_mode
+ enable_multilib
+ enable_dependency_tracking
++with_toolexeclibdir
+ enable_symvers
+ with_gnu_ld
+ enable_shared
+@@ -1436,6 +1437,9 @@ Optional Packages:
+   --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
+   --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
+   --with-build-libsubdir=DIR  Directory where to find libraries for build 
system
++  --with-toolexeclibdir=DIR
++                          install libraries built with a cross compiler within
++                          DIR
+   --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
+   --with-pic              try to use only PIC/non-PIC objects [default=use
+                           both]
+@@ -4927,6 +4931,22 @@ $as_echo "$ac_cv_safe_to_define___extensions__" >&6; }
+ 
+ 
+ 
++
++# Check whether --with-toolexeclibdir was given.
++if test "${with_toolexeclibdir+set}" = set; then :
++  withval=$with_toolexeclibdir; case ${with_toolexeclibdir} in
++  /)
++    ;;
++  */)
++    with_toolexeclibdir=`echo $with_toolexeclibdir | sed 's,/$,,'`
++    ;;
++esac
++else
++  with_toolexeclibdir=no
++fi
++
++
++
+ # Calculate toolexeclibdir
+ # Also toolexecdir, though it's only used in toolexeclibdir
+ case ${version_specific_libs} in
+@@ -4942,7 +4962,14 @@ case ${version_specific_libs} in
+        test x"$with_cross_host" != x"no"; then
+       # Install a library built with a cross compiler in tooldir, not libdir.
+       toolexecdir='$(exec_prefix)/$(target_alias)'
+-      toolexeclibdir='$(toolexecdir)/lib'
++      case ${with_toolexeclibdir} in
++      no)
++        toolexeclibdir='$(toolexecdir)/lib'
++        ;;
++      *)
++        toolexeclibdir=${with_toolexeclibdir}
++        ;;
++      esac
+     else
+       toolexecdir='$(libdir)/gcc-lib/$(target_alias)'
+       toolexeclibdir='$(libdir)'
+@@ -12421,7 +12448,7 @@ else
+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+   lt_status=$lt_dlunknown
+   cat > conftest.$ac_ext <<_LT_EOF
+-#line 12424 "configure"
++#line 12451 "configure"
+ #include "confdefs.h"
+ 
+ #if HAVE_DLFCN_H
+@@ -12527,7 +12554,7 @@ else
+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+   lt_status=$lt_dlunknown
+   cat > conftest.$ac_ext <<_LT_EOF
+-#line 12530 "configure"
++#line 12557 "configure"
+ #include "confdefs.h"
+ 
+ #if HAVE_DLFCN_H
+diff --git a/libgfortran/configure.ac b/libgfortran/configure.ac
+index 37b12d2998f..6dee8ef15b0 100644
+--- a/libgfortran/configure.ac
++++ b/libgfortran/configure.ac
+@@ -87,6 +87,8 @@ fi
+ 
+ AC_USE_SYSTEM_EXTENSIONS
+ 
++GCC_WITH_TOOLEXECLIBDIR
++
+ # Calculate toolexeclibdir
+ # Also toolexecdir, though it's only used in toolexeclibdir
+ case ${version_specific_libs} in
+@@ -102,7 +104,14 @@ case ${version_specific_libs} in
+        test x"$with_cross_host" != x"no"; then
+       # Install a library built with a cross compiler in tooldir, not libdir.
+       toolexecdir='$(exec_prefix)/$(target_alias)'
+-      toolexeclibdir='$(toolexecdir)/lib'
++      case ${with_toolexeclibdir} in
++      no)
++        toolexeclibdir='$(toolexecdir)/lib'
++        ;;
++      *)
++        toolexeclibdir=${with_toolexeclibdir}
++        ;;
++      esac
+     else
+       toolexecdir='$(libdir)/gcc-lib/$(target_alias)'
+       toolexeclibdir='$(libdir)'
+diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
+index c34a9284081..b8fa7d457d8 100644
+--- a/libgomp/ChangeLog
++++ b/libgomp/ChangeLog
+@@ -1,155 +1,4375 @@
+-2019-11-14  Release Manager
++2020-01-24  Maciej W. Rozycki  <address@hidden>
+ 
+-      * GCC 7.5.0 released.
++      * configure.ac: Handle `--with-toolexeclibdir='.
++      * Makefile.in: Regenerate.
++      * aclocal.m4: Regenerate.
++      * configure: Regenerate.
++      * testsuite/Makefile.in: Regenerate.
++
++2020-01-24  Frederik Harwath  <address@hidden>
++
++      * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c
++      (expect_device_properties): Remove "expected_free_mem" argument,
++      change "expected_total_mem" argument type to size_t;
++      change types of acc_get_property results to size_t,
++      adapt format strings.
++      * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c:
++      Use %zu instead of %zd to print size_t values.
++      * testsuite/libgomp.oacc-c-c++-common/acc_get_property-2.c: Adapt and
++      rename to ...
++      * testsuite/libgomp.oacc-c-c++-common/acc_get_property-nvptx.c: ... 
this.
++      * testsuite/libgomp.oacc-c-c++-common/acc_get_property-3.c: Adapt and
++      rename to ...
++      * testsuite/libgomp.oacc-c-c++-common/acc_get_property-host.c: ... this.
++
++2020-01-23  Andrew Stubbs  <address@hidden>
++
++      * plugin/plugin-gcn.c (parse_target_attributes): Use correct mask for
++      the device id.
++
++2020-01-20  Andrew Stubbs  <address@hidden>
++
++      * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Skip test on gcn.
++      * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c (main):
++      Adjust test dimensions for amdgcn.
++      * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c (main): Adjust
++      gang/worker/vector expectations dynamically.
++      * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c
++      (main): Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c (main): Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c (main): Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c (main): Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c (main): Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c (main): Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c (main): Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c (main): Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c (main): Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
++      (acc_gang): Recognise acc_device_radeon.
++      (acc_worker): Likewise.
++      (acc_vector): Likewise.
++      (main): Set expectations for amdgcn.
++      * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c
++      (main): Adjust gang/worker/vector expectations dynamically.
++      * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c (main): Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c (main): Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c (main): Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Set expectations
++      for amdgcn.
++
++2020-01-17  Andrew Stubbs  <address@hidden>
++
++      * config/accel/openacc.f90 (openacc_kinds): Rename acc_device_gcn to
++      acc_device_radeon.
++      (openacc): Likewise.
++      * openacc.f90 (openacc_kinds): Likewise.
++      (openacc): Likewise.
++      * openacc.h (acc_device_t): Likewise.
++      * openacc_lib.h: Likewise.
++      * testsuite/lib/libgomp.exp
++      (check_effective_target_openacc_amdgcn_accel_present): Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c
++      (cb_compute_construct_end): Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c
++      (cb_enqueue_launch_start): Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c
++      (cb_enter_data_end): Likewise.
++      (cb_exit_data_start): Likewise.
++      (cb_exit_data_end): Likewise.
++      (cb_compute_construct_end): Likewise.
++      (cb_enqueue_launch_start): Likewise.
++      (cb_enqueue_launch_end): Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c
++      (main): Likewise.
++
++2020-01-10  Thomas Schwinge  <address@hidden>
++
++      * libgomp-plugin.h (enum goacc_property): New.  Adjust all users
++      to use this instead of 'enum gomp_device_property'.
++      (GOMP_OFFLOAD_get_property): Rename to...
++      (GOMP_OFFLOAD_openacc_get_property): ... this.  Adjust all users.
++      * libgomp.h (struct gomp_device_descr): Move
++      'GOMP_OFFLOAD_openacc_get_property'...
++      (struct acc_dispatch_t): ... here.  Adjust all users.
++      * plugin/plugin-hsa.c (GOMP_OFFLOAD_get_property): Remove.
++
++      * target.c (gomp_map_vars_internal)
++      <GOMP_MAP_USE_DEVICE_PTR_IF_PRESENT>: Clean up/elaborate code
++      paths.
++
++2020-01-10  Jakub Jelinek  <address@hidden>
++
++      PR libgomp/93219
++      * libgomp.h (gomp_print_string): Change return type from void to int.
++      * affinity-fmt.c (gomp_print_string): Likewise.  Return true if
++      not all characters have been written.
++
++2020-01-08  Tobias Burnus  <address@hidden>
++
++      * libgomp.texi: Fix typos, use https.
++
++2020-01-03  Tobias Burnus  <address@hidden>
++
++      * testsuite/libgomp.fortran/optional-map.f90: Add test for
++      unallocated/disassociated actual arguments to nonallocatable/nonpointer
++      dummy arguments; those are/shall be regarded as absent arguments.
++      * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Ditto.
++      * testsuite/libgomp.fortran/use_device_ptr-optional-3.f90: New.
++
++2020-01-01  Jakub Jelinek  <address@hidden>
++
++      Update copyright years.
++
++      * libgomp.texi: Bump @copying's copyright year.
++
++2019-12-31  Ayush Mittal  <address@hidden>
++
++      PR libgomp/93065
++      * oacc-init.c (goacc_runtime_deinitialize): New function.
++
++2019-12-28  Jakub Jelinek  <address@hidden>
++
++      PR bootstrap/93074
++      * plugin/cuda/cuda.h (cuDeviceGetName, cuDriverGetVersion): Declare.
++      (cuDeviceTotalMem, cuMemGetInfo): Likewise.  Define to *_v2.
++
++2019-12-22  Maciej W. Rozycki  <address@hidden>
++          Frederik Harwath  <address@hidden>
++          Thomas Schwinge  <address@hidden>
++
++      * libgomp.h (gomp_device_descr): Add `get_property_func' member.
++      * libgomp-plugin.h (gomp_device_property_value): New union.
++      (gomp_device_property_value): New prototype.
++      * openacc.h (acc_device_t): Add `acc_device_current' enumeration
++      constant.
++      (acc_device_property_t): New enum.
++      (acc_get_property, acc_get_property_string): New prototypes.
++      * oacc-init.c (acc_get_device_type): Also assert that result
++      is not `acc_device_current'.
++      (get_property_any, acc_get_property, acc_get_property_string):
++      New functions.
++      * openacc.f90 (openacc_kinds): Add `acc_device_current' and
++      `acc_property_memory', `acc_property_free_memory',
++      `acc_property_name', `acc_property_vendor' and
++      `acc_property_driver' constants.  Add `acc_device_property' data
++      type.
++      (openacc_internal): Add `acc_get_property' and
++      `acc_get_property_string' interfaces.  Add `acc_get_property_h',
++      `acc_get_property_string_h', `acc_get_property_l' and
++      `acc_get_property_string_l'.
++      * oacc-host.c (host_get_property): New function.
++      (host_dispatch): Wire it.
++      * target.c (gomp_load_plugin_for_device): Handle `get_property'.
++      * libgomp.map (OACC_2.6): Add `acc_get_property', `acc_get_property_h_',
++      `acc_get_property_string' and `acc_get_property_string_h_' symbols.
++      * libgomp.texi (OpenACC Runtime Library Routines): Add
++      `acc_get_property'.
++      (acc_get_property): New node.
++      * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_property): New
++      function (stub).
++      * plugin/plugin-hsa.c (GOMP_OFFLOAD_get_property): New function.
++      * plugin/plugin-nvptx.c (CUDA_CALLS): Add `cuDeviceGetName',
++      `cuDeviceTotalMem', `cuDriverGetVersion' and `cuMemGetInfo'
++      calls.
++      (GOMP_OFFLOAD_get_property): New function.
++      (struct ptx_device): Add new field "name".
++      (cuda_driver_version_s): Add new static variable ...
++      (nvptx_init): ... and init from here.
++
++      * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/acc_get_property-2.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/acc_get_property-3.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c: New file
++      with test helper functions.
++
++      * testsuite/libgomp.oacc-fortran/acc_get_property.f90: New test.
++
++2019-12-22  Maciej W. Rozycki  <address@hidden>
++
++      * testsuite/libgomp-test-support.exp.in (GCC_UNDER_TEST): New
++      variable.
++
++2019-12-21  Thomas Schwinge  <address@hidden>
++
++      * target.c (gomp_map_vars_internal): Restore 'omp declare target
++      link' handling.
++
++2019-12-19  Julian Brown  <address@hidden>
++
++      * testsuite/libgomp.oacc-fortran/class-ptr-param.f95: New test.
++      * testsuite/libgomp.oacc-fortran/classtypes-1.f95: New test.
++      * testsuite/libgomp.oacc-fortran/classtypes-2.f95: New test.
++
++2019-12-19  Julian Brown  <address@hidden>
++          Cesar Philippidis  <address@hidden>
++
++      * testsuite/libgomp.oacc-fortran/deep-copy-1.f90: New test.
++      * testsuite/libgomp.oacc-fortran/deep-copy-2.f90: New test.
++      * testsuite/libgomp.oacc-fortran/deep-copy-3.f90: New test.
++      * testsuite/libgomp.oacc-fortran/deep-copy-4.f90: New test.
++      * testsuite/libgomp.oacc-fortran/deep-copy-5.f90: New test.
++      * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: New test.
++      * testsuite/libgomp.oacc-fortran/deep-copy-7.f90: New test.
++      * testsuite/libgomp.oacc-fortran/deep-copy-8.f90: New test.
++      * testsuite/libgomp.oacc-fortran/derived-type-1.f90: New test.
++      * testsuite/libgomp.oacc-fortran/derivedtype-1.f95: New test.
++      * testsuite/libgomp.oacc-fortran/derivedtype-2.f95: New test.
++      * testsuite/libgomp.oacc-fortran/multidim-slice.f95: New test.
++      * testsuite/libgomp.oacc-fortran/update-2.f90: New test.
++
++2019-12-19  Julian Brown  <address@hidden>
++
++      * testsuite/libgomp.oacc-c-c++-common/deep-copy-1.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/deep-copy-2.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/deep-copy-4.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/deep-copy-6.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/deep-copy-7.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/deep-copy-8.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/deep-copy-9.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/deep-copy-10.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/deep-copy-11.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/deep-copy-14.c: New test.
++      * testsuite/libgomp.oacc-c++/deep-copy-12.C: New test.
++      * testsuite/libgomp.oacc-c++/deep-copy-13.C: New test.
++
++2019-12-19  Julian Brown  <address@hidden>
++
++      * libgomp.h (struct target_var_desc): Add do_detach flag.
++      * oacc-init.c (acc_shutdown_1): Free aux block if present.
++      * oacc-mem.c (find_group_last): Add SIZES parameter. Support
++      struct components.  Tidy up and add some new checks.
++      (goacc_enter_data_internal): Update call to find_group_last.
++      (goacc_exit_data_internal): Support detach operations and
++      GOMP_MAP_STRUCT.
++      (GOACC_enter_exit_data): Handle initial GOMP_MAP_STRUCT or
++      GOMP_MAP_FORCE_PRESENT in finalization detection code.  Handle
++      attach/detach in enter/exit data detection code.
++      * target.c (gomp_map_vars_existing): Initialise do_detach field of
++      tgt_var_desc.
++      (gomp_map_vars_internal): Support attach.
++      (gomp_unmap_vars_internal): Support detach.
++
++2019-12-19  Julian Brown  <address@hidden>
++          Thomas Schwinge  <address@hidden>
++
++      * libgomp.h (struct splay_tree_aux): Add attach_count field.
++      (gomp_attach_pointer, gomp_detach_pointer): Add prototypes.
++      * libgomp.map (OACC_2.6): New section. Add acc_attach,
++      acc_attach_async, acc_detach, acc_detach_async, acc_detach_finalize,
++      acc_detach_finalize_async.
++      * oacc-mem.c (acc_attach_async, acc_attach, goacc_detach_internal,
++      acc_detach, acc_detach_async, acc_detach_finalize,
++      acc_detach_finalize_async): New functions.
++      * openacc.h (acc_attach, acc_attach_async, acc_detach,
++      (acc_detach_async, acc_detach_finalize, acc_detach_finalize_async): Add
++      prototypes.
++      * target.c (gomp_attach_pointer, gomp_detach_pointer): New functions.
++      (gomp_remove_var_internal): Free attachment counts if present.
++      * testsuite/libgomp.oacc-c-c++-common/deep-copy-3.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/deep-copy-5.c: New test.
++
++2019-12-19  Julian Brown  <address@hidden>
++          Cesar Philippidis  <address@hidden>
++
++      * libgomp.h (gomp_map_val): Add prototype.
++      * oacc-parallel.c (GOACC_parallel_keyed): Use gomp_map_val instead of
++      open-coding device-address calculation.
++      * target.c (gomp_map_val): Make global. Use OFFSET_POINTER in
++      non-present case.
++
++2019-12-19  Julian Brown  <address@hidden>
++
++      * libgomp.h (struct splay_tree_key_s): Substitute dynamic_refcount
++      field for virtual_refcount.
++      (enum gomp_map_vars_kind): Add GOMP_MAP_VARS_OPENACC_ENTER_DATA.
++      (gomp_free_memmap): Remove prototype.
++      * oacc-init.c (acc_shutdown_1): Iteratively call gomp_remove_var
++      instead of calling gomp_free_memmap.
++      * oacc-mem.c (acc_map_data): Use virtual_refcount instead of
++      dynamic_refcount.
++      (acc_unmap_data): Open code instead of forcing target_mem_desc's
++      to_free field to NULL then calling gomp_unmap_vars.  Handle
++      REFCOUNT_INFINITY on target blocks.
++      (goacc_enter_data): Rename to...
++      (goacc_enter_datum): ...this.  Remove MAPNUM parameter and special
++      handling for mapping groups.  Use virtual_refcount instead of
++      dynamic_refcount.  Use GOMP_MAP_VARS_OPENACC_ENTER_DATA for
++      map_map_vars_async call.  Re-do lookup for target pointer return value.
++      (acc_create, acc_create_async, acc_copyin, acc_copyin_async): Call
++      renamed goacc_enter_datum function.
++      (goacc_exit_data): Rename to...
++      (goacc_exit_datum): ...this.  Update for virtual_refcount semantics.
++      (acc_delete, acc_delete_async, acc_delete_finalize,
++      acc_delete_finalize_async, acc_copyout, acc_copyout_async,
++      acc_copyout_finalize, acc_copyout_finalize_async): Call renamed
++      goacc_exit_datum function.
++      (gomp_acc_remove_pointer, find_pointer): Remove functions.
++      (find_group_last, goacc_enter_data_internal, goacc_exit_data_internal):
++      New functions.
++      (GOACC_enter_exit_data): Use goacc_enter_data_internal and
++      goacc_exit_data_internal helper functions.
++      * target.c (gomp_map_vars_internal): Handle
++      GOMP_MAP_VARS_OPENACC_ENTER_DATA.  Update for virtual_refcount
++      semantics.
++      (gomp_unmap_vars_internal): Update for virtual_refcount semantics.
++      (gomp_load_image_to_device, omp_target_associate_ptr): Zero-initialise
++      virtual_refcount field instead of dynamic_refcount.
++      (gomp_free_memmap): Remove function.
++      * testsuite/libgomp.oacc-c-c++-common/unmap-infinity-1.c: New test.
++      * testsuite/libgomp.c-c++-common/unmap-infinity-2.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Add XFAIL.
++
++2019-12-19  Julian Brown  <address@hidden>
++          Thomas Schwinge  <address@hidden>
++
++      * libgomp.h (struct splay_tree_aux): New.
++      (struct splay_tree_key_s): Replace link_key field with aux pointer.
++      * target.c (gomp_map_vars_internal): Adjust for link_key being moved
++      to aux struct.
++      (gomp_remove_var_internal): Free aux block if present.
++      (gomp_load_image_to_device): Zero-initialise aux field instead of
++      link_key field.
++      (omp_target_associate_pointer): Zero-initialise aux field.
++
++2019-12-18  Jakub Jelinek  <address@hidden>
++
++      PR middle-end/86416
++      * testsuite/libgomp.c/pr86416-1.c (main): Use L suffixes rather than
++      q or none.
++      * testsuite/libgomp.c/pr86416-2.c (main): Use Q suffixes rather than
++      L or none.
++
++2019-12-19  Julian Brown  <address@hidden>
++          Maciej W. Rozycki  <address@hidden>
++          Tobias Burnus  <address@hidden>
++          Thomas Schwinge  <address@hidden>
++
++      * target.c (gomp_map_vars_async): Support GOMP_MAP_NO_ALLOC.
++      * testsuite/libgomp.oacc-c-c++-common/no_create-1.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/no_create-2.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/no_create-3.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/no_create-4.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/no_create-5.c: New test.
++      * testsuite/libgomp.oacc-fortran/no_create-1.f90: New test.
++      * testsuite/libgomp.oacc-fortran/no_create-2.f90: New test.
++      * testsuite/libgomp.oacc-fortran/no_create-3.F90: New test.
++
++2019-12-18  Thomas Schwinge  <address@hidden>
++
++      * oacc-mem.c (goacc_enter_data): Refactor, so that it can be
++      called...
++      (goacc_insert_pointer): ... from here, "present" case.
++      (goacc_insert_pointer): Inline function into...
++      (GOACC_enter_exit_data): ... here, and simplify.
++
++      * oacc-mem.c (goacc_enter_data): Refactor, so that it can be
++      called...
++      (goacc_insert_pointer): ... from here, "not present" case.
++
++      * oacc-mem.c (goacc_remove_pointer): Refactor interface.  Adjust
++      all users.
++
++      * oacc-mem.c (GOACC_enter_exit_data): Refactor code to call
++      'goacc_enter_data', 'goacc_exit_data'.
++
++      * oacc-mem.c (delete_copyout): Refactor into...
++      (goacc_exit_data): ... this.  Adjust all users.
++
++      * oacc-mem.c (present_create_copy): Refactor into...
++      (goacc_enter_data): ... this.  Adjust all users.
++
++      * target.c (gomp_unmap_vars_internal): Add a safeguard to
++      'gomp_remove_var'.
++
++      * target.c (gomp_to_device_kind_p): Handle 'GOMP_MAP_FORCE_FROM'
++      like 'GOMP_MAP_FROM'.
++
++      PR libgomp/92726
++      PR libgomp/92970
++      PR libgomp/92984
++      * oacc-mem.c (delete_copyout): No-op behavior if 'lookup_host'
++      fails.
++      (GOACC_enter_exit_data): Simplify accordingly.
++      * testsuite/libgomp.oacc-c-c++-common/pr92970-1.c: New file,
++      subsuming...
++      * testsuite/libgomp.oacc-c-c++-common/lib-17.c: ... this file...
++      * testsuite/libgomp.oacc-c-c++-common/lib-18.c: ..., and this
++      file.
++      * testsuite/libgomp.oacc-c-c++-common/pr92984-1.c: New file,
++      subsuming...
++      * testsuite/libgomp.oacc-c-c++-common/lib-21.c: ... this file...
++      * testsuite/libgomp.oacc-c-c++-common/lib-29.c: ..., and this
++      file.
++      * testsuite/libgomp.oacc-c-c++-common/pr92726-1.c: New file,
++      subsuming...
++      * testsuite/libgomp.oacc-c-c++-common/lib-28.c: ... this file.
++
++      * oacc-mem.c (GOACC_enter_exit_data): Simplify 'exit data'
++      'finalize' handling.
++
++      PR libgomp/92848
++      * oacc-mem.c (acc_map_data, present_create_copy)
++      (goacc_insert_pointer): Use 'GOMP_MAP_VARS_ENTER_DATA'.
++      (acc_unmap_data, delete_copyout, goacc_remove_pointer): Adjust.
++      * testsuite/libgomp.oacc-c-c++-common/lib-50.c: Remove.
++      * testsuite/libgomp.oacc-c-c++-common/pr92848-1-d-a.c: New file
++      * testsuite/libgomp.oacc-c-c++-common/pr92848-1-d-p.c: Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/pr92848-1-r-a.c: Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/pr92848-1-r-p.c: Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-p.c:
++      Remove "XFAIL"s.
++
++      * target.c (gomp_unmap_tgt): Make it 'static'.
++      * libgomp.h (gomp_unmap_tgt): Remove.
++
++2019-12-18  Tobias Burnus  <address@hidden>
++
++      PR middle-end/86416
++      * testsuite/libgomp.c/pr86416-1.c: New.
++      * testsuite/libgomp.c/pr86416-2.c: New.
++
++2019-12-17  Tobias Burnus  <address@hidden>
++
++      * config/accel/openacc.f90 (module openacc_kinds): Use 'PUBLIC' to mark
++      all symbols as public except for the 'use …, only' imported symbol,
++      which is private.
++      (module openacc): Default to 'PRIVATE' to exclude openacc_internal; mark
++      all symbols from module openacc_kinds as PUBLIC
++      * openacc.f90: Add comment with crossref to that file and openmp_lib.h;
++      fix comment typo.
++      * openacc_lib.h (acc_device_gcn): Add this PARAMETER.
++
++2019-12-13  Julian Brown  <address@hidden>
++
++      PR libgomp/92881
++
++      * libgomp.h (gomp_remove_var_async): Add prototype.
++      * oacc-mem.c (delete_copyout): Call gomp_remove_var_async instead of
++      gomp_remove_var.
++      * target.c (gomp_unref_tgt): Change return type to bool, indicating
++      whether target_mem_desc was unmapped.
++      (gomp_unref_tgt_void): New.
++      (gomp_remove_var): Reimplement in terms of...
++      (gomp_remove_var_internal): ...this new helper function.
++      (gomp_remove_var_async): New, implemented using above helper function.
++      (gomp_unmap_vars_internal): Use gomp_unref_tgt_void instead of
++      gomp_unref_tgt.
++
++2019-12-13  Andrew Stubbs  <address@hidden>
++
++      * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Handle gcn.
++      * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c: Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/function-not-offloaded.c:
++      Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Disable on GCN.
++      * testsuite/libgomp.oacc-c-c++-common/tile-1.c: Likewise.
++
++2019-12-13  Tobias Burnus  <address@hidden>
++
++      * openacc.f90 (module openacc_kinds): Use 'PUBLIC' to mark all symbols
++      as public except for the 'use …, only' imported symbol, which is
++      private.
++      (module openacc): Default to 'PRIVATE' to exclude openacc_internal; mark
++      all symbols from module openacc_kinds as PUBLIC; add missing PUBLIC
++      attributes for acc_copyout_finalize and acc_delete_finalize.
++
++2019-12-11  Jakub Jelinek  <address@hidden>
++
++      PR fortran/92899
++      * testsuite/libgomp.fortran/atomic1.f90: New test.
++
++2019-12-11  Thomas Schwinge  <address@hidden>
++
++      PR libgomp/92843
++      * oacc-mem.c (present_create_copy, delete_copyout): Fix dynamic
++      reference counting for structured 'REFCOUNT_INFINITY'.  Add some
++      assertions.
++      (goacc_insert_pointer, goacc_remove_pointer): Adjust accordingly.
++      * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: New file.
++      * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Fix OpenACC.
++      * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
++
++      * oacc-parallel.c (find_pointer, GOACC_enter_exit_data): Move...
++      * oacc-mem.c: ... here.
++      (gomp_acc_insert_pointer, gomp_acc_remove_pointer): Rename to
++      'goacc_insert_pointer', 'goacc_remove_pointer', and make 'static'.
++      * libgomp.h (gomp_acc_insert_pointer, gomp_acc_remove_pointer):
++      Remove.
++      * libgomp_g.h: Update.
++
++      * oacc-parallel.c (GOACC_wait, goacc_wait): Move...
++      * oacc-async.c: ... here.
++      * oacc-int.h (goacc_wait): Declare.
++      * libgomp_g.h: Update
++
++      PR libgomp/92854
++      * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-1.c:
++      New file.
++      * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-2.c:
++      Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-3.c:
++      Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-1.c:
++      Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-2.c:
++      Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-3.c:
++      Likewise.
++
++2019-12-11  Thomas Schwinge  <address@hidden>
++          Julian Brown  <address@hidden>
++
++      * target.c (gomp_load_image_to_device, omp_target_associate_ptr):
++      Initialize 'dynamic_refcount' whenever we initialize 'refcount'.
++
++2019-12-11  Tobias Burnus  <address@hidden>
++
++      * omp_lib.h.in: Fix spelling of function declaration
++      omp_get_cancell(l)ation.
++      * libgomp.texi (acc_is_present, acc_async_test, acc_async_test_all):
++      Fix typos.
++      * env.c: Fix comment typos.
++      * oacc-host.c: Likewise.
++      * ordered.c: Likewise.
++      * task.c: Likewise.
++      * team.c: Likewise.
++      * config/gcn/task.c: Likewise.
++      * config/gcn/team.c: Likewise.
++      * config/nvptx/task.c: Likewise.
++      * config/nvptx/team.c: Likewise.
++      * plugin/plugin-gcn.c: Likewise.
++      * testsuite/libgomp.fortran/jacobi.f: Likewise.
++      * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/enter_exit-lib.c: Likewise.
++
++2019-12-11  Tobias Burnus  <address@hidden>
++
++      * testsuite/libgomp.oacc-fortran/optional-cache.f95: Add 'dg-do run'.
++      * testsuite/libgomp.oacc-fortran/optional-reduction.f90: Remove
++      unnecessary 'dg-additional-options "-w"'.
++
++2019-12-09  Thomas Schwinge  <address@hidden>
++          Julian Brown  <address@hidden>
++
++      PR libgomp/92116
++      PR libgomp/92877
++
++      * oacc-mem.c (lookup_dev): Reimplement.  Adjust all users.
++      * libgomp.h (struct acc_dispatch_t): Remove 'data_environ' member.
++      Adjust all users.
++      * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4-2.c:
++      Remove XFAIL.
++      * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4.c:
++      Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/pr92877-1.c: New file.
++
++2019-12-09  Thomas Schwinge  <address@hidden>
++
++      PR libgomp/92503
++      * oacc-mem.c (acc_free): Error out instead of 'acc_unmap_data'.
++      * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-1.c: New
++      file.
++      * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-2.c:
++      Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-3-2.c:
++      Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-3.c:
++      Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4-2.c:
++      Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4.c:
++      Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Adjust.
++      * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
++
++      PR libgomp/92840
++      * oacc-mem.c (acc_map_data): Clarify reference counting behavior.
++      (acc_unmap_data): Add error case for 'REFCOUNT_INFINITY'.
++      * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-1.c:
++      New file.
++      * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-2.c:
++      Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-3.c:
++      Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Adjust.
++      * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Adjust.
++
++      PR libgomp/92511
++      * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-1.c: Remove
++      this file...
++      * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-2.c: ..., and
++      this file...
++      * testsuite/libgomp.oacc-c-c++-common/lib-22.c: ..., and this
++      file...
++      * testsuite/libgomp.oacc-c-c++-common/lib-30.c: ..., and this
++      file...
++      * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-p.c:
++      ... with their content moved into, and extended in this new file.
++      * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-d-a.c:
++      New file.
++      * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-d-p.c:
++      Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-a.c:
++      Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-2.c:
++      Likewise.
++
++      * testsuite/libgomp.oacc-c-c++-common/map-data-1.c: New file.
++
++      PR libgomp/92854
++      * testsuite/libgomp.oacc-c-c++-common/pr92854-1.c: New file.
++
++      * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: New file.
++
++      * target.c (gomp_exit_data): Use 'gomp_remove_var'.
++
++2019-12-09  Tobias Burnus  <address@hidden>
++
++      * testsuite/libgomp.fortran/use_device_addr-3.f90: Make 'stop' codes
++      unique.
++      * testsuite/libgomp.fortran/use_device_addr-4.f90: Ditto.
++      * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/declare-5.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/optional-data-copyin-by-value.f90:
++      Ditto.
++      * testsuite/libgomp.oacc-fortran/optional-firstprivate.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/optional-update-host.f90: Ditto.
++
++2019-12-06  Kwok Cheung Yeung  <address@hidden>
++
++      * config/accel/proc.c (omp_get_num_procs): Apply ialias macro.
++
++2019-12-06  Tobias Burnus  <address@hidden>
++          Kwok Cheung Yeung <address@hidden>
++
++      * oacc-mem.c (update_dev_host, gomp_acc_insert_pointer): Just return
++      if input it a NULL pointer.
++      * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Remove; dependent on
++      diagnostic of NULL pointer.
++      * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Ditto.
++      * testsuite/libgomp.fortran/optional-map.f90: New.
++      * testsuite/libgomp.fortran/use_device_addr-1.f90
++      (test_dummy_opt_callee_1_absent): New.
++      (test_dummy_opt_call_1): Call it.
++      * testsuite/libgomp.fortran/use_device_addr-2.f90: Likewise.
++      * testsuite/libgomp.fortran/use_device_addr-3.f90: Likewise.
++      * testsuite/libgomp.fortran/use_device_addr-4.f90: Likewise.
++      * testsuite/libgomp.oacc-fortran/optional-cache.f95: New.
++      * testsuite/libgomp.oacc-fortran/optional-data-copyin-by-value.f90: New.
++      * testsuite/libgomp.oacc-fortran/optional-data-copyin.f90: New.
++      * testsuite/libgomp.oacc-fortran/optional-data-copyout.f90: New.
++      * testsuite/libgomp.oacc-fortran/optional-data-enter-exit.f90: New.
++      * testsuite/libgomp.oacc-fortran/optional-declare.f90: New.
++      * testsuite/libgomp.oacc-fortran/optional-firstprivate.f90: New.
++      * testsuite/libgomp.oacc-fortran/optional-host_data.f90: New.
++      * testsuite/libgomp.oacc-fortran/optional-nested-calls.f90: New.
++      * testsuite/libgomp.oacc-fortran/optional-private.f90: New.
++      * testsuite/libgomp.oacc-fortran/optional-reduction.f90: New.
++      * testsuite/libgomp.oacc-fortran/optional-update-device.f90: New.
++      * testsuite/libgomp.oacc-fortran/optional-update-host.f90: New.
++
++2019-12-05  Tobias Burnus  <address@hidden>
++
++      * testsuite/libgomp.oacc-fortran/error_stop-1.f: Also don't
++      expect dg-output of 'Error termination.' for GCN.
++      * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
++      * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
++
++2019-12-04  Jakub Jelinek  <address@hidden>
++
++      PR fortran/92756
++      * testsuite/libgomp.fortran/teams1.f90: New test.
++      * testsuite/libgomp.fortran/teams2.f90: New test.
++
++2019-12-03  Frederik Harwath  <address@hidden>
++
++      * oacc-init.c (acc_known_device_type): Add function.
++      (unknown_device_type_error): Add function.
++      (name_of_acc_device_t): Change to call unknown_device_type_error
++      on unknown type.
++      (resolve_device): Use acc_known_device_type.
++      (acc_init): Fail if acc_device_t argument is not valid.
++      (acc_shutdown): Likewise.
++      (acc_get_num_devices): Likewise.
++      (acc_set_device_type): Likewise.
++      (acc_get_device_num): Likewise.
++      (acc_set_device_num): Likewise.
++      (acc_on_device): Add comment that argument validity is not checked.
++
++2019-12-03  Andrew Stubbs  <address@hidden>
++
++      * testsuite/lib/libgomp.exp (offload_target_to_openacc_device_type):
++      Recognize amdgcn.
++      (check_effective_target_openacc_amdgcn_accel_present): New proc.
++      (check_effective_target_openacc_amdgcn_accel_selected): New proc.
++      * testsuite/libgomp.oacc-c++/c++.exp: Add support for amdgcn.
++      * testsuite/libgomp.oacc-c/c.exp: Likewise.
++      * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
++
++2019-12-03  Szabolcs Nagy  <address@hidden>
++
++      PR libgomp/91938
++      * configure.tgt: Avoid IE tls on *-*-musl*.
++
++2019-11-29  Tobias Burnus  <address@hidden>
++
++      * testsuite/libgomp.oacc-fortran/declare-5.f90: Extend by
++      adding a common-block test case.
++
++2019-11-29  Jakub Jelinek  <address@hidden>
++
++      PR c++/60228
++      * testsuite/libgomp.c++/udr-20.C: New test.
++      * testsuite/libgomp.c++/udr-21.C: New test.
++
++2019-11-27  Thomas Schwinge  <address@hidden>
++
++      * testsuite/lib/libgomp.exp
++      (check_effective_target_offload_target_nvptx): New proc.
++      * testsuite/libgomp.fortran/target-print-1.f90: Use it with
++      'dg-skip-if'.
++      * testsuite/libgomp.oacc-fortran/print-1.f90: Likewise.
++      * testsuite/libgomp.fortran/target-print-1-nvptx.f90: New file.
++      * testsuite/libgomp.oacc-fortran/print-1-nvptx.f90: Likewise.
++
++2019-11-21  Rainer Orth  <address@hidden>
++
++      * testsuite/libgomp.c/pr39591-1.c: Rename err to e.
++      * testsuite/libgomp.c/pr39591-2.c: Likewise.
++      * testsuite/libgomp.c/pr39591-3.c: Likewise.
++      * testsuite/libgomp.c/private-1.c: Likewise.
++      * testsuite/libgomp.c/task-1.c: Likewise.
++      * testsuite/libgomp.c/task-5.c: Renamed err to serr.
++
++2019-11-20  Julian Brown  <address@hidden>
++
++      * plugin/plugin-gcn.c (wait_for_queue_nonfull): Don't lock/unlock
++      aq->mutex here.
++      (queue_push_launch): Lock aq->mutex before calling
++      wait_for_queue_nonfull.
++      (queue_push_callback): Likewise.
++      (queue_push_asyncwait): Likewise.
++      (queue_push_placeholder): Likewise.
++
++2019-11-20  Julian Brown  <address@hidden>
++
++      * plugin/plugin-gcn.c (hsa_memory_copy_wrapper): New.
++      (copy_data, GOMP_OFFLOAD_host2dev): Use above function.
++      (GOMP_OFFLOAD_dev2host, GOMP_OFFLOAD_dev2dev): Check hsa_memory_copy
++      return code.
++
++2019-11-20  Julian Brown  <address@hidden>
++
++      PR libgomp/92511
++
++      * oacc-mem.c (present_create_copy): Fix device pointer return value in
++      case of "present" subarray.  Use tgt->tgt_start instead of tgt->to_free
++      in non-present/create case.
++      (delete_copyout): Change error condition to fail only on copies outside
++      of mapped block.  Adjust error message accordingly.
++      * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-1.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-2.c: New test.
++      * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Adjust expected error
++      message.
++      * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Allow test to pass now.
++      * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
++
++2019-11-20  Maciej W. Rozycki  <address@hidden>
++
++      * testsuite/lib/libgomp.exp (libgomp_init): Add flags to find
++      libatomic in build-tree testing.
++
++2019-11-18  Maciej W. Rozycki  <address@hidden>
++
++      * testsuite/Makefile.in: Regenerate.
++
++2019-11-15  Andrew Stubbs  <address@hidden>
++
++      * testsuite/libgomp.c/target-print-1.c: New file.
++      * testsuite/libgomp.fortran/target-print-1.f90: New file.
++      * testsuite/libgomp.oacc-c/print-1.c: New file.
++      * testsuite/libgomp.oacc-fortran/print-1.f90: New file.
++
++2019-11-13  Andrew Stubbs  <address@hidden>
++          Kwok Cheung Yeung  <address@hidden>
++          Julian Brown  <address@hidden>
++          Tom de Vries  <address@hidden>
++
++      * plugin/Makefrag.am: Add amdgcn plugin support.
++      * plugin/configfrag.ac: Likewise.
++      * plugin/plugin-gcn.c: New file.
++      * configure: Regenerate.
++      * Makefile.in: Regenerate.
++      * testsuite/Makefile.in: Regenerate.
++
++2019-11-13  Andrew Stubbs  <address@hidden>
++
++      * config/gcn/team.c (gomp_gcn_enter_kernel): Set up the team arena
++      and use team_malloc variants.
++      (gomp_gcn_exit_kernel): Use team_free.
++      * libgomp.h (TEAM_ARENA_SIZE): Define.
++      (TEAM_ARENA_START): Define.
++      (TEAM_ARENA_FREE): Define.
++      (TEAM_ARENA_END): Define.
++      (team_malloc): New function.
++      (team_malloc_cleared): New function.
++      (team_free): New function.
++      * team.c (gomp_new_team): Initialize and use team_malloc.
++      (free_team): Use team_free.
++      (gomp_free_thread): Use team_free.
++      (gomp_pause_host): Use team_free.
++      * work.c (gomp_init_work_share): Use team_malloc.
++      (gomp_fini_work_share): Use team_free.
++
++2019-11-13  Andrew Stubbs  <address@hidden>
++          Kwok Cheung Yeung  <address@hidden>
++          Julian Brown  <address@hidden>
++          Tom de Vries  <address@hidden>
++
++      * Makefile.am (libgomp_la_SOURCES): Add oacc-target.c.
++      * Makefile.in: Regenerate.
++      * config.h.in (PLUGIN_GCN): Add new undef.
++      * config/accel/openacc.f90 (acc_device_gcn): New parameter.
++      * config/gcn/affinity-fmt.c: New file.
++      * config/gcn/bar.c: New file.
++      * config/gcn/bar.h: New file.
++      * config/gcn/doacross.h: New file.
++      * config/gcn/icv-device.c: New file.
++      * config/gcn/oacc-target.c: New file.
++      * config/gcn/simple-bar.h: New file.
++      * config/gcn/target.c: New file.
++      * config/gcn/task.c: New file.
++      * config/gcn/team.c: New file.
++      * config/gcn/time.c: New file.
++      * configure.ac: Add amdgcn*-*-*.
++      * configure: Regenerate.
++      * configure.tgt: Add amdgcn*-*-*.
++      * libgomp-plugin.h (offload_target_type): Add OFFLOAD_TARGET_TYPE_GCN.
++      * libgomp.h (gcn_thrs): Add amdgcn variant.
++      (set_gcn_thrs): Likewise.
++      (gomp_thread): Likewise.
++      * oacc-int.h (goacc_thread): Likewise.
++      * oacc-target.c: New file.
++      * openacc.f90 (acc_device_gcn): New parameter.
++      * openacc.h (acc_device_t): Add acc_device_gcn.
++      * team.c (gomp_free_pool_helper): Add amdgcn support.
++
++2019-11-13  Andrew Stubbs  <address@hidden>
++          Julian Brown  <address@hidden>
++
++      * libgomp-plugin.h (GOMP_OFFLOAD_openacc_async_construct): Add int
++      parameter.
++      * oacc-async.c (lookup_goacc_asyncqueue): Pass device number to the
++      queue constructor.
++      * oacc-host.c (host_openacc_async_construct): Add device parameter.
++      * plugin/plugin-nvptx.c (GOMP_OFFLOAD_openacc_async_construct): Add
++      device parameter.
++
++2019-11-13  Andrew Stubbs  <address@hidden>
++
++      * configure.tgt (nvptx*-*-*): Add "accel" directory.
++      * config/nvptx/libgomp-plugin.c: Move ...
++      * config/accel/libgomp-plugin.c: ... to here.
++      * config/nvptx/lock.c: Move ...
++      * config/accel/lock.c: ... to here.
++      * config/nvptx/mutex.c: Move ...
++      * config/accel/mutex.c: ... to here.
++      * config/nvptx/mutex.h: Move ...
++      * config/accel/mutex.h: ... to here.
++      * config/nvptx/oacc-async.c: Move ...
++      * config/accel/oacc-async.c: ... to here.
++      * config/nvptx/oacc-cuda.c: Move ...
++      * config/accel/oacc-cuda.c: ... to here.
++      * config/nvptx/oacc-host.c: Move ...
++      * config/accel/oacc-host.c: ... to here.
++      * config/nvptx/oacc-init.c: Move ...
++      * config/accel/oacc-init.c: ... to here.
++      * config/nvptx/oacc-mem.c: Move ...
++      * config/accel/oacc-mem.c: ... to here.
++      * config/nvptx/oacc-plugin.c: Move ...
++      * config/accel/oacc-plugin.c: ... to here.
++      * config/nvptx/omp-lock.h: Move ...
++      * config/accel/omp-lock.h: ... to here.
++      * config/nvptx/openacc.f90: Move ...
++      * config/accel/openacc.f90: ... to here.
++      * config/nvptx/pool.h: Move ...
++      * config/accel/pool.h: ... to here.
++      * config/nvptx/proc.c: Move ...
++      * config/accel/proc.c: ... to here.
++      * config/nvptx/ptrlock.c: Move ...
++      * config/accel/ptrlock.c: ... to here.
++      * config/nvptx/ptrlock.h: Move ...
++      * config/accel/ptrlock.h: ... to here.
++      * config/nvptx/sem.c: Move ...
++      * config/accel/sem.c: ... to here.
++      * config/nvptx/sem.h: Move ...
++      * config/accel/sem.h: ... to here.
++      * config/nvptx/thread-stacksize.h: Move ...
++      * config/accel/thread-stacksize.h: ... to here.
++
++2019-11-12  Maciej W. Rozycki  <address@hidden>
++          Tobias Burnus  <address@hidden>
++          Frederik Harwath  <address@hidden>
++          Thomas Schwinge  <address@hidden>
++
++      libgomp/
++      * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: New test.
++      * testsuite/libgomp.oacc-fortran/parallel-dims-aux.c: New test.
++      * testsuite/libgomp.oacc-fortran/parallel-dims.f89: New test.
++
++2019-11-11  Tobias Burnus  <address@hidden>
++          Kwok Cheung Yeung  <address@hidden>
++
++      * testsuite/libgomp.fortran/use_device_ptr-optional-1.f90: Extend.
++      * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: New.
++
++2019-11-11  Thomas Schwinge  <address@hidden>
++
++      * testsuite/libgomp.fortran/target9.f90: Specify 'dg-do run'.
++
++      * testsuite/libgomp.fortran/use_device_addr-3.f90: Specify 'dg-do
++      run'.
++      * testsuite/libgomp.fortran/use_device_addr-4.f90: Likewise.
++      * testsuite/libgomp.fortran/use_device_ptr-1.f90: Likewise.
++
++2019-11-06  Thomas Schwinge  <address@hidden>
++
++      * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-1.c:
++      Add expected warnings about missing reduction clauses.
++      * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c:
++      Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c:
++      Likewise.
++      * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c:
++      Likewise.
++
++2019-11-04  Tobias Burnus  <address@hidden>
++
++      * testsuite/libgomp.fortran/pr66199-1.f90: Remove
++      'dg-do run' (implies torture test) as 'dg-options "O2"' is used.
++      * testsuite/libgomp.fortran/pr66199-2.f90: Ditto.
++      * testsuite/libgomp.fortran/taskloop2.f90: Ditto.
++      * testsuite/libgomp.fortran/taskloop3.f90: Ditto.
++      * testsuite/libgomp.fortran/taskloop4.f90: Ditto.
++
++2019-11-04  Tobias Burnus  <address@hidden>
++
++      PR fortran/92305
++      * testsuite/libgomp.fortran/allocatable2.f90: Use
++      unique numbers with 'stop'.
++      * testsuite/libgomp.fortran/use_device_addr-1.f90: Ditto.
++      * testsuite/libgomp.fortran/use_device_addr-2.f90: Ditto.
++      * testsuite/libgomp.fortran/use_device_ptr-1.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/lib-15.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/pset-1.f90: Ditto.
++
++2019-11-01  Tobias Burnus  <address@hidden>
++
++      * testsuite/libgomp.fortran/use_device_addr-1.f90 (test_nullptr_1,
++      test_dummy_opt_nullptr_callee_1): Add present but unallocated test.
++      * testsuite/libgomp.fortran/use_device_addr-2.f90: Likewise.
++      * testsuite/libgomp.fortran/use_device_addr-3.f90: New.
++      * testsuite/libgomp.fortran/use_device_addr-4.f90: New.
++      * testsuite/testsuite/libgomp.fortran/use_device_ptr-1.f90: New.
++
++2019-10-30  Tobias Burnus  <address@hidden>
++
++      * testsuite/libgomp.fortran/target9.f90: New.
++
++2019-10-30  Tobias Burnus  <address@hidden>
++
++      * testsuite/libgomp.fortran/aligned1.f03: Replace 'STOP' by 'stop'.
++      * testsuite/libgomp.fortran/alloc-comp-1.f90: Ditto.
++      * testsuite/libgomp.fortran/alloc-comp-2.f90: Ditto.
++      * testsuite/libgomp.fortran/alloc-comp-3.f90: Ditto.
++      * testsuite/libgomp.fortran/allocatable1.f90: Ditto.
++      * testsuite/libgomp.fortran/allocatable10.f90: Ditto.
++      * testsuite/libgomp.fortran/allocatable11.f90: Ditto.
++      * testsuite/libgomp.fortran/allocatable12.f90: Ditto.
++      * testsuite/libgomp.fortran/allocatable2.f90: Ditto.
++      * testsuite/libgomp.fortran/allocatable3.f90: Ditto.
++      * testsuite/libgomp.fortran/allocatable4.f90: Ditto.
++      * testsuite/libgomp.fortran/allocatable5.f90: Ditto.
++      * testsuite/libgomp.fortran/allocatable6.f90: Ditto.
++      * testsuite/libgomp.fortran/allocatable7.f90: Ditto.
++      * testsuite/libgomp.fortran/allocatable8.f90: Ditto.
++      * testsuite/libgomp.fortran/allocatable9.f90: Ditto.
++      * testsuite/libgomp.fortran/associate1.f90: Ditto.
++      * testsuite/libgomp.fortran/associate2.f90: Ditto.
++      * testsuite/libgomp.fortran/associate3.f90: Ditto.
++      * testsuite/libgomp.fortran/async_io_4.f90: Ditto.
++      * testsuite/libgomp.fortran/async_io_5.f90: Ditto.
++      * testsuite/libgomp.fortran/async_io_6.f90: Ditto.
++      * testsuite/libgomp.fortran/async_io_7.f90: Ditto.
++      * testsuite/libgomp.fortran/cancel-do-1.f90: Ditto.
++      * testsuite/libgomp.fortran/cancel-do-2.f90: Ditto.
++      * testsuite/libgomp.fortran/cancel-parallel-1.f90: Ditto.
++      * testsuite/libgomp.fortran/cancel-sections-1.f90: Ditto.
++      * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: Ditto.
++      * testsuite/libgomp.fortran/character1.f90: Ditto.
++      * testsuite/libgomp.fortran/character2.f90: Ditto.
++      * testsuite/libgomp.fortran/collapse1.f90: Ditto.
++      * testsuite/libgomp.fortran/collapse2.f90: Ditto.
++      * testsuite/libgomp.fortran/collapse3.f90: Ditto.
++      * testsuite/libgomp.fortran/collapse4.f90: Ditto.
++      * testsuite/libgomp.fortran/crayptr1.f90: Ditto.
++      * testsuite/libgomp.fortran/crayptr2.f90: Ditto.
++      * testsuite/libgomp.fortran/crayptr3.f90: Ditto.
++      * testsuite/libgomp.fortran/declare-simd-1.f90: Ditto.
++      * testsuite/libgomp.fortran/declare-simd-3.f90: Ditto.
++      * testsuite/libgomp.fortran/declare-target-2.f90: Ditto.
++      * testsuite/libgomp.fortran/depend-1.f90: Ditto.
++      * testsuite/libgomp.fortran/depend-2.f90: Ditto.
++      * testsuite/libgomp.fortran/depend-3.f90: Ditto.
++      * testsuite/libgomp.fortran/do1.f90: Ditto.
++      * testsuite/libgomp.fortran/do2.f90: Ditto.
++      * testsuite/libgomp.fortran/do_concurrent_5.f90: Ditto.
++      * testsuite/libgomp.fortran/doacross1.f90: Ditto.
++      * testsuite/libgomp.fortran/doacross2.f90: Ditto.
++      * testsuite/libgomp.fortran/doacross3.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/async_target-1.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/device-1.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/device-2.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/device-3.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/simd-1.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/simd-2.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/simd-3.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/simd-4.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/simd-5.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/simd-6.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/simd-7.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/simd-8.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/target-1.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/target-2.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/target-3.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/target-4.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/target-5.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/target_data-1.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/target_data-2.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/target_data-3.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/target_data-4.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/target_data-5.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/target_update-1.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/target_update-2.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/teams-2.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/teams-3.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/teams-4.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/teams-5.f90: Ditto.
++      * testsuite/libgomp.fortran/examples-4/teams-6.f90: Ditto.
++      * testsuite/libgomp.fortran/lastprivate1.f90: Ditto.
++      * testsuite/libgomp.fortran/lastprivate2.f90: Ditto.
++      * testsuite/libgomp.fortran/lib1.f90: Ditto.
++      * testsuite/libgomp.fortran/lib4.f90: Ditto.
++      * testsuite/libgomp.fortran/lock-1.f90: Ditto.
++      * testsuite/libgomp.fortran/lock-2.f90: Ditto.
++      * testsuite/libgomp.fortran/nested1.f90: Ditto.
++      * testsuite/libgomp.fortran/nestedfn1.f90: Ditto.
++      * testsuite/libgomp.fortran/nestedfn2.f90: Ditto.
++      * testsuite/libgomp.fortran/nestedfn3.f90: Ditto.
++      * testsuite/libgomp.fortran/nestedfn4.f90: Ditto.
++      * testsuite/libgomp.fortran/nestedfn5.f90: Ditto.
++      * testsuite/libgomp.fortran/omp_atomic1.f90: Ditto.
++      * testsuite/libgomp.fortran/omp_atomic2.f90: Ditto.
++      * testsuite/libgomp.fortran/omp_atomic3.f90: Ditto.
++      * testsuite/libgomp.fortran/omp_atomic4.f90: Ditto.
++      * testsuite/libgomp.fortran/omp_atomic5.f90: Ditto.
++      * testsuite/libgomp.fortran/omp_cond1.f: Ditto.
++      * testsuite/libgomp.fortran/omp_cond2.f: Ditto.
++      * testsuite/libgomp.fortran/omp_cond3.F90: Ditto.
++      * testsuite/libgomp.fortran/omp_cond4.F90: Ditto.
++      * testsuite/libgomp.fortran/omp_parse1.f90: Ditto.
++      * testsuite/libgomp.fortran/omp_parse2.f90: Ditto.
++      * testsuite/libgomp.fortran/omp_parse3.f90: Ditto.
++      * testsuite/libgomp.fortran/omp_parse4.f90: Ditto.
++      * testsuite/libgomp.fortran/openmp_version-1.f: Ditto.
++      * testsuite/libgomp.fortran/openmp_version-2.f90: Ditto.
++      * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: Ditto.
++      * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: Ditto.
++      * testsuite/libgomp.fortran/pointer1.f90: Ditto.
++      * testsuite/libgomp.fortran/pointer2.f90: Ditto.
++      * testsuite/libgomp.fortran/pr25219.f90: Ditto.
++      * testsuite/libgomp.fortran/pr27395-1.f90: Ditto.
++      * testsuite/libgomp.fortran/pr27395-2.f90: Ditto.
++      * testsuite/libgomp.fortran/pr27416-1.f90: Ditto.
++      * testsuite/libgomp.fortran/pr27916-1.f90: Ditto.
++      * testsuite/libgomp.fortran/pr27916-2.f90: Ditto.
++      * testsuite/libgomp.fortran/pr28390.f: Ditto.
++      * testsuite/libgomp.fortran/pr29629.f90: Ditto.
++      * testsuite/libgomp.fortran/pr32550.f90: Ditto.
++      * testsuite/libgomp.fortran/pr33880.f90: Ditto.
++      * testsuite/libgomp.fortran/pr34020.f90: Ditto.
++      * testsuite/libgomp.fortran/pr35130.f90: Ditto.
++      * testsuite/libgomp.fortran/pr42162.f90: Ditto.
++      * testsuite/libgomp.fortran/pr46753.f90: Ditto.
++      * testsuite/libgomp.fortran/pr48894.f90: Ditto.
++      * testsuite/libgomp.fortran/pr49792-1.f90: Ditto.
++      * testsuite/libgomp.fortran/pr49792-2.f90: Ditto.
++      * testsuite/libgomp.fortran/pr63938-1.f90: Ditto.
++      * testsuite/libgomp.fortran/pr63938-2.f90: Ditto.
++      * testsuite/libgomp.fortran/pr65597.f90: Ditto.
++      * testsuite/libgomp.fortran/pr66199-1.f90: Ditto.
++      * testsuite/libgomp.fortran/pr71014.f90: Ditto.
++      * testsuite/libgomp.fortran/pr81304.f90: Ditto.
++      * testsuite/libgomp.fortran/pr81841.f90: Ditto.
++      * testsuite/libgomp.fortran/pr84418-1.f90: Ditto.
++      * testsuite/libgomp.fortran/pr84418-2.f90: Ditto.
++      * testsuite/libgomp.fortran/procptr1.f90: Ditto.
++      * testsuite/libgomp.fortran/recursion1.f90: Ditto.
++      * testsuite/libgomp.fortran/reduction1.f90: Ditto.
++      * testsuite/libgomp.fortran/reduction2.f90: Ditto.
++      * testsuite/libgomp.fortran/reduction3.f90: Ditto.
++      * testsuite/libgomp.fortran/reduction4.f90: Ditto.
++      * testsuite/libgomp.fortran/reduction5.f90: Ditto.
++      * testsuite/libgomp.fortran/reduction6.f90: Ditto.
++      * testsuite/libgomp.fortran/reference1.f90: Ditto.
++      * testsuite/libgomp.fortran/reference2.f90: Ditto.
++      * testsuite/libgomp.fortran/retval1.f90: Ditto.
++      * testsuite/libgomp.fortran/retval2.f90: Ditto.
++      * testsuite/libgomp.fortran/sharing1.f90: Ditto.
++      * testsuite/libgomp.fortran/sharing2.f90: Ditto.
++      * testsuite/libgomp.fortran/simd1.f90: Ditto.
++      * testsuite/libgomp.fortran/simd2.f90: Ditto.
++      * testsuite/libgomp.fortran/simd3.f90: Ditto.
++      * testsuite/libgomp.fortran/simd4.f90: Ditto.
++      * testsuite/libgomp.fortran/simd5.f90: Ditto.
++      * testsuite/libgomp.fortran/simd6.f90: Ditto.
++      * testsuite/libgomp.fortran/simd7.f90: Ditto.
++      * testsuite/libgomp.fortran/stack.f90: Ditto.
++      * testsuite/libgomp.fortran/strassen.f90: Ditto.
++      * testsuite/libgomp.fortran/tabs1.f90: Ditto.
++      * testsuite/libgomp.fortran/tabs2.f: Ditto.
++      * testsuite/libgomp.fortran/target1.f90: Ditto.
++      * testsuite/libgomp.fortran/target2.f90: Ditto.
++      * testsuite/libgomp.fortran/target3.f90: Ditto.
++      * testsuite/libgomp.fortran/target4.f90: Ditto.
++      * testsuite/libgomp.fortran/target5.f90: Ditto.
++      * testsuite/libgomp.fortran/target6.f90: Ditto.
++      * testsuite/libgomp.fortran/target7.f90: Ditto.
++      * testsuite/libgomp.fortran/target8.f90: Ditto.
++      * testsuite/libgomp.fortran/task1.f90: Ditto.
++      * testsuite/libgomp.fortran/task2.f90: Ditto.
++      * testsuite/libgomp.fortran/task3.f90: Ditto.
++      * testsuite/libgomp.fortran/task4.f90: Ditto.
++      * testsuite/libgomp.fortran/taskgroup1.f90: Ditto.
++      * testsuite/libgomp.fortran/taskloop1.f90: Ditto.
++      * testsuite/libgomp.fortran/taskloop2.f90: Ditto.
++      * testsuite/libgomp.fortran/taskloop3.f90: Ditto.
++      * testsuite/libgomp.fortran/taskloop4.f90: Ditto.
++      * testsuite/libgomp.fortran/threadprivate1.f90: Ditto.
++      * testsuite/libgomp.fortran/threadprivate2.f90: Ditto.
++      * testsuite/libgomp.fortran/threadprivate3.f90: Ditto.
++      * testsuite/libgomp.fortran/threadprivate4.f90: Ditto.
++      * testsuite/libgomp.fortran/udr1.f90: Ditto.
++      * testsuite/libgomp.fortran/udr10.f90: Ditto.
++      * testsuite/libgomp.fortran/udr11.f90: Ditto.
++      * testsuite/libgomp.fortran/udr12.f90: Ditto.
++      * testsuite/libgomp.fortran/udr13.f90: Ditto.
++      * testsuite/libgomp.fortran/udr14.f90: Ditto.
++      * testsuite/libgomp.fortran/udr15.f90: Ditto.
++      * testsuite/libgomp.fortran/udr2.f90: Ditto.
++      * testsuite/libgomp.fortran/udr3.f90: Ditto.
++      * testsuite/libgomp.fortran/udr4.f90: Ditto.
++      * testsuite/libgomp.fortran/udr5.f90: Ditto.
++      * testsuite/libgomp.fortran/udr6.f90: Ditto.
++      * testsuite/libgomp.fortran/udr7.f90: Ditto.
++      * testsuite/libgomp.fortran/udr8.f90: Ditto.
++      * testsuite/libgomp.fortran/udr9.f90: Ditto.
++      * testsuite/libgomp.fortran/vla1.f90: Ditto.
++      * testsuite/libgomp.fortran/vla2.f90: Ditto.
++      * testsuite/libgomp.fortran/vla3.f90: Ditto.
++      * testsuite/libgomp.fortran/vla4.f90: Ditto.
++      * testsuite/libgomp.fortran/vla5.f90: Ditto.
++      * testsuite/libgomp.fortran/vla6.f90: Ditto.
++      * testsuite/libgomp.fortran/vla7.f90: Ditto.
++      * testsuite/libgomp.fortran/vla8.f90: Ditto.
++      * testsuite/libgomp.fortran/workshare1.f90: Ditto.
++      * testsuite/libgomp.fortran/workshare2.f90: Ditto.
++
++2019-10-30  Tobias Burnus  <address@hidden>
++
++      * testsuite/libgomp.fortran/target-simd.f90: Use stop not abort.
++      * testsuite/libgomp.fortran/use_device_ptr-optional-1.f90:
++      Ditto; add 'dg-do run' for torture testing.
++      * testsuite/libgomp.fortran/lastprivate1.f90:  Add 'dg-do run'.
++      * testsuite/libgomp.fortran/lastprivate2.f90: Ditto.
++      * testsuite/libgomp.fortran/nestedfn4.f90: Ditto.
++      * testsuite/libgomp.fortran/pr25219.f90: Ditto.
++      * testsuite/libgomp.fortran/pr28390.f: Ditto.
++      * testsuite/libgomp.fortran/pr35130.f90: Ditto.
++      * testsuite/libgomp.fortran/pr90779.f90: Ditto.
++      * testsuite/libgomp.fortran/task2.f90: Ditto.
++      * testsuite/libgomp.fortran/taskgroup1.f90: Ditto.
++      * testsuite/libgomp.fortran/taskloop1.f90: Ditto.
++      * testsuite/libgomp.fortran/use_device_addr-1.f90: Ditto.
++      * testsuite/libgomp.fortran/use_device_addr-2.f90: Ditto.
++      * testsuite/libgomp.fortran/workshare1.f90: Ditto.
++      * testsuite/libgomp.fortran/workshare2.f90: Ditto.
++
++2019-10-28  Tobias Burnus  <address@hidden>
++
++      * testsuite/libgomp.oacc-fortran/abort-1.f90: Add 'dg-do run'.
++      * testsuite/libgomp.oacc-fortran/abort-2.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/lib-1.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/common-block-1.f90:
++      Use 'stop' not abort().
++      * testsuite/libgomp.oacc-fortran/common-block-2.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/common-block-3.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/data-1.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/data-2.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/data-5.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/dummy-array.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/gemm-2.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/gemm.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/host_data-2.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/host_data-3.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/host_data-4.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-collapse-3.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-collapse-4.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-independent.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-loop-1.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-map-1.f90: Ditto.
++      * 
testsuite/libgomp.oacc-fortran/kernels-parallel-loop-data-enter-exit.f95:
++      Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
++      Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
++      Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
++      Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
++      Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-private-vars-vector-1.f90:
++      Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-private-vars-vector-2.f90:
++      Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-1.f90:
++      Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-2.f90:
++      Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-3.f90:
++      Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-4.f90:
++      Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-5.f90:
++      Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-6.f90:
++      Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-7.f90:
++      Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/lib-12.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/lib-13.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/lib-14.f90: Ditto.
++      * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction-2.f90:
++      Likewise and also add 'dg-do run'.
++      * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction.f90:
++      Ditto.
++
++2019-10-25  Cesar Philippidis <address@hidden>
++          Tobias Burnus  <address@hidden>
++
++      * testsuite/libgomp.oacc-fortran/common-block-1.f90: New test.
++      * testsuite/libgomp.oacc-fortran/common-block-2.f90: New test.
++      * testsuite/libgomp.oacc-fortran/common-block-3.f90: New test.
++
++2019-10-14  Jakub Jelinek  <address@hidden>
++
++      PR libgomp/92081
++      * testsuite/libgomp.fortran/target-simd.f90: Iterate from 1 rather
++      than 0.
++
++2019-10-11  Tobias Burnus  <address@hidden>
++
++      * testsuite/libgomp.fortran/use_device_addr-1.f90: New.
++      * testsuite/libgomp.fortran/use_device_addr-2.f90: New.
++
++2019-10-09  Thomas Schwinge  <address@hidden>
++
++      PR middle-end/92036
++      * testsuite/libgomp.oacc-c-c++-common/data-firstprivate-1.c: New
++      file.
++
++2019-10-09  Tobias Burnus  <address@hidden>
++
++      PR testsuite/91884
++      * testsuite/libgomp.fortran/fortran.exp: Conditionally
++      add -lquadmath.
++      * testsuite/libgomp.oacc-fortran/fortran.exp: Ditto.
++
++2019-10-09  Jakub Jelinek  <address@hidden>
++
++      PR libgomp/92028
++      * target.c (gomp_map_vars_internal): Readd the previous
++      GOMP_MAP_USE_DEVICE_PTR handling code in the first loop,
++      though do that just in the !not_found_cnt case.
++
++2019-10-08  Tobias Burnus  <address@hidden>
++
++      * gfortran.dg/gomp/target-simd.f90: New.
++
++2019-10-02  Julian Brown  <address@hidden>
++          Cesar Philippidis  <address@hidden>
++
++      * libgomp.h (OFFSET_INLINED, OFFSET_POINTER, OFFSET_STRUCT): Define.
++      * target.c (FIELD_TGT_EMPTY): Define.
++      (gomp_map_val): Use OFFSET_* macros instead of magic constants.  Write
++      as switch instead of list of ifs.
++      (gomp_map_vars_internal): Use OFFSET_* and FIELD_TGT_EMPTY macros.
++
++2019-10-02  Andreas Tobler  <address@hidden>
++
++      * testsuite/libgomp.oacc-c-c++-common/loop-default.h: Remove alloca.h
++      include. Replace alloca () with __builtin_alloca ().
++      * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Likewise.
++
++2019-10-01  Jakub Jelinek  <address@hidden>
++
++      * configure.ac: Remove GCC_HEADER_STDINT(gstdint.h).
++      * libgomp.h: Include <stdint.h> instead of "gstdint.h".
++      * oacc-parallel.c: Don't include "libgomp_g.h".
++      * plugin/plugin-hsa.c: Include <stdint.h> instead of "gstdint.h".
++      * plugin/plugin-nvptx.c: Don't include "gstdint.h".
++      * aclocal.m4: Regenerated.
++      * config.h.in: Regenerated.
++      * configure: Regenerated.
++      * Makefile.in: Regenerated.
++
++2019-09-30  Kwok Cheung Yeung  <address@hidden>
++
++      * libgomp_g.h: Include stdint.h instead of gstdint.h.
++
++2019-09-27  Maciej W. Rozycki  <address@hidden>
++
++      * configure: Regenerate.
++
++2019-09-13  Tobias Burnus  <address@hidden>
++
++      * plugin/plugin-hsa.c (hsa_warn, hsa_fatal, hsa_error): Ensure
++      string is initialized.
++
++2019-09-06  Florian Weimer  <address@hidden>
++
++      * configure: Regenerate.
++
++2019-09-03  Chung-Lin Tang  <address@hidden>
++
++      PR other/79543
++      * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Fix GNU ld --version
++      scanning to conform to the GNU Coding Standards.
++      * configure: Regenerate.
++
++2019-08-28  Jakub Jelinek  <address@hidden>
++
++      PR libgomp/91530
++      * testsuite/libgomp.c/scan-21.c: New test.
++      * testsuite/libgomp.c/scan-22.c: New test.
++
++2019-08-27  Jakub Jelinek  <address@hidden>
++
++      PR libgomp/91530
++      * testsuite/libgomp.c/scan-11.c: Add -msse2 option for sse2_runtime
++      targets.
++      * testsuite/libgomp.c/scan-12.c: Likewise.
++      * testsuite/libgomp.c/scan-13.c: Likewise.
++      * testsuite/libgomp.c/scan-14.c: Likewise.
++      * testsuite/libgomp.c/scan-15.c: Likewise.
++      * testsuite/libgomp.c/scan-16.c: Likewise.
++      * testsuite/libgomp.c/scan-17.c: Likewise.
++      * testsuite/libgomp.c/scan-18.c: Likewise.
++      * testsuite/libgomp.c/scan-19.c: Likewise.
++      * testsuite/libgomp.c/scan-20.c: Likewise.
++      * testsuite/libgomp.c++/scan-9.C: Likewise.
++      * testsuite/libgomp.c++/scan-10.C: Likewise.
++      * testsuite/libgomp.c++/scan-11.C: Likewise.
++      * testsuite/libgomp.c++/scan-12.C: Likewise.
++      * testsuite/libgomp.c++/scan-14.C: Likewise.
++      * testsuite/libgomp.c++/scan-15.C: Likewise.
++      * testsuite/libgomp.c++/scan-13.C: Likewise.  Use sse2_runtime
++      instead of i?86-*-* x86_64-*-* as target for scan-tree-dump-times.
++      * testsuite/libgomp.c++/scan-16.C: Likewise.
++
++2019-08-17  Thomas Koenig  <address@hidden>
++
++      PR fortran/91473
++      * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: Add
++      -std=legacy so invalid code in the test case is accepted.
++
++2019-08-12  Thomas Koenig  <address@hidden>
++
++      PR fortran/91422
++      * testsuite/libgomp.oacc-fortran/routine-7.f90: Correct array
++      dimension.
++
++2019-08-08  Jakub Jelinek  <address@hidden>
++
++      * target.c (gomp_map_vars_internal): For GOMP_MAP_USE_DEVICE_PTR
++      perform the lookup in the first loop only if !not_found_cnt, otherwise
++      perform lookups for it in the second loop guarded with
++      if (not_found_cnt || has_firstprivate).
++      * testsuit