Go to file
Richard Sandiford a9b76c8962 Prevent invalid register mode changes in combine
This patch stops combine from changing the mode of an existing register
in-place if doing so would change the size of the underlying register
allocation size, as given by REGMODE_NATURAL_SIZE.  Without this,
many tests fail in adjust_reg_mode after SVE is added.  One example
is gcc.c-torture/compile/20090401-1.c.

2017-11-01  Richard Sandiford  <richard.sandiford@linaro.org>
	    Alan Hayward  <alan.hayward@arm.com>
	    David Sherwood  <david.sherwood@arm.com>

gcc/
	* combine.c (can_change_dest_mode): Reject changes in
	REGMODE_NATURAL_SIZE.

Co-Authored-By: Alan Hayward <alan.hayward@arm.com>
Co-Authored-By: David Sherwood <david.sherwood@arm.com>

From-SVN: r254291
2017-11-01 08:54:22 +00:00
config Add bootstrap-cet.mk to bootstrap GCC with Intel CET 2017-10-24 05:50:03 -07:00
contrib Handle libbacktrace in contrib/gcc_update 2017-10-02 13:56:50 +02:00
fixincludes fixinc.in (dirname): Change sed from 's|[^/]*/||' to 's|[^/]*//*||'. 2017-10-13 09:28:41 -06:00
gcc Prevent invalid register mode changes in combine 2017-11-01 08:54:22 +00:00
gnattools re PR ada/81878 (--disable-bootstrap --enable-languages=ada fails) 2017-08-17 13:39:58 +00:00
gotools Makefile.am (check-go-tool): Output colon after ${fl}. 2017-10-25 22:00:50 +00:00
include Add INCLUDE_UNIQUE_PTR and use it (PR bootstrap/82610) 2017-10-23 20:25:58 +00:00
INSTALL
intl
libada
libatomic [arm] Fix architecture selection when building libatomic with automatic FPU selection 2017-10-20 12:33:39 +00:00
libbacktrace ztest.c (test_large): Pass unsigned long *, not size_t *, to zlib uncompress function. 2017-10-06 13:37:20 +00:00
libcc1 [C++ PATCH] overloaded operator fns [2/N] 2017-10-31 14:39:44 +00:00
libcilkrts
libcpp diagnostics: get rid of *_at_rich_loc in favor of overloading 2017-10-31 20:21:58 +00:00
libdecnumber
libffi Import from libffi master repository. 2017-10-03 14:26:31 -04:00
libgcc rl78.md: New define_expand "subdi3". 2017-10-23 13:54:02 -04:00
libgfortran re PR libfortran/81938 (valgrind error message and heap-buffer-overflow on address sanitized libgfortran.so) 2017-10-27 17:50:22 +00:00
libgo debug/dwarf: support 64-bit DWARF in byte order check 2017-10-20 18:34:36 +00:00
libgomp Remove semicolon after do {} while (false) in HSA_LOG 2017-10-31 12:56:41 +00:00
libhsail-rt [BRIGFE] Improved support for function and module scope group 2017-09-27 15:40:24 +00:00
libiberty re PR lto/82757 (r251560 causes: plugin needed to handle lto object) 2017-10-30 12:48:53 +00:00
libitm
libmpx
libobjc [2/77] Add an E_ prefix to case statements 2017-08-30 11:08:28 +00:00
liboffloadmic
libquadmath re PR libquadmath/81848 (Add PowerPC support to libquadmath) 2017-09-01 22:10:57 +00:00
libsanitizer re PR sanitizer/82595 (bootstrap fails in libsanitizer on powerpc64-unknown-linux-gnu) 2017-10-20 09:32:35 +02:00
libssp
libstdc++-v3 Don't create broken symlink in libstdc++-v3/include/bits 2017-10-30 16:28:13 +00:00
libvtv
lto-plugin
maintainer-scripts update_version_svn: Ignore the GCC 5 branch. 2017-10-10 15:10:28 +02:00
zlib
.dir-locals.el
.gitattributes
.gitignore
ABOUT-NLS
ChangeLog Fix profiledbootstrap. 2017-10-27 13:13:05 +00:00
ChangeLog.jit
ChangeLog.tree-ssa
compile
config-ml.in
config.guess
config.rpath
config.sub
configure
configure.ac
COPYING
COPYING3
COPYING3.LIB
COPYING.LIB
COPYING.RUNTIME
depcomp
install-sh
libtool-ldflags
libtool.m4
lt~obsolete.m4
ltgcc.m4
ltmain.sh
ltoptions.m4
ltsugar.m4
ltversion.m4
MAINTAINERS MAINTAINERS (write after approval): Add myself. 2017-10-16 23:36:39 +02:00
Makefile.def
Makefile.in Fix profiledbootstrap. 2017-10-27 13:13:05 +00:00
Makefile.tpl Fix profiledbootstrap. 2017-10-27 13:13:05 +00:00
missing
mkdep
mkinstalldirs
move-if-change
README
symlink-tree
ylwrap

This directory contains the GNU Compiler Collection (GCC).

The GNU Compiler Collection is free software.  See the files whose
names start with COPYING for copying permission.  The manuals, and
some of the runtime libraries, are under different terms; see the
individual source files for details.

The directory INSTALL contains copies of the installation information
as HTML and plain text.  The source of this information is
gcc/doc/install.texi.  The installation information includes details
of what is included in the GCC sources and what files GCC installs.

See the file gcc/doc/gcc.texi (together with other files that it
includes) for usage and porting information.  An online readable
version of the manual is in the files gcc/doc/gcc.info*.

See http://gcc.gnu.org/bugs/ for how to report bugs usefully.

Copyright years on GCC source files may be listed using range
notation, e.g., 1987-2012, indicating that every year in the range,
inclusive, is a copyrightable year that could otherwise be listed
individually.