Go to file
Ramana Radhakrishnan f869c12f4c [PATCH PR target/67366 2/2] [gimple-fold.c] Support movmisalign optabs in gimple-fold.c
This patch by Richard allows for movmisalign optabs to be supported
in gimple-fold.c. This caused a bit of pain in the testsuite with strlenopt-8.c
in conjunction with the ARM support for movmisalign_optabs as the test
was coded up to do different things depending on whether the target
supported misaligned access or not. However now with unaligned access
being allowed for different levels of the architecture in the arm backend,
the concept of the helper function non_strict_align mapping identically
to the definition of STRICT_ALIGNMENT disappears.

Adjusted thusly for ARM. The testsuite/lib changes were tested with an
arm-none-eabi multilib that included architecture variants that did not
support unaligned access and architecture variants that did.

The testing matrix for this patch was:

1. x86_64 bootstrap and regression test - no regressions.
2. armhf bootstrap and regression test - no regressions.
3. arm-none-eabi cross build and regression test for

{-marm/-march=armv7-a/-mfpu=vfpv3-d16/-mfloat-abi=softfp}
{-mthumb/-march=armv8-a/-mfpu=crypto-neon-fp-armv8/-mfloat-abi=hard}
{-marm/-mcpu=arm7tdmi/-mfloat-abi=soft}
{-mthumb/-mcpu=arm7tdmi/-mfloat-abi=soft}

with no regressions.

Ok to apply ?

2015-10-09  Richard Biener  <rguenth@suse.de>

	PR target/67366
	* gimple-fold.c (optabs-query.h): Include
	(gimple_fold_builtin_memory_op): Allow unaligned stores
	when movmisalign_optabs are available.

2015-10-09  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

	PR target/67366
	* lib/target-supports.exp (check_effective_target_non_strict_align):
	Adjust for arm*-*-*.
	* gcc.target/arm/pr67366.c: New test.

From-SVN: r228644
2015-10-09 10:58:06 +00:00
INSTALL README: Do not mention CVS. 2014-10-12 15:05:28 +00:00
boehm-gc Avoid unstructured procfs on Solaris 2015-08-27 11:26:18 +00:00
config Missing parts of fixes for in-tree libiconv 2015-08-24 10:24:52 +00:00
contrib Make sure that contrib/download_prerequisites is run from correct place 2015-09-11 06:09:36 +00:00
fixincludes inclhack.def (aix_stdio_inline): New fix. 2015-08-14 07:17:29 -04:00
gcc [PATCH PR target/67366 2/2] [gimple-fold.c] Support movmisalign optabs in gimple-fold.c 2015-10-09 10:58:06 +00:00
gnattools configure.ac (*-*-dragonfly*): New configuration. 2015-06-08 07:27:56 +00:00
gotools gotools: Bump to automake 1.11.6 2015-05-13 10:59:14 +00:00
include Implement N4514, C++ Extensions for Transactional Memory. 2015-10-04 15:17:19 -04:00
intl Makefile.def (libiconv): Define bootstrap=true. 2015-08-07 01:13:52 -04:00
libada re PR target/65351 (libiberty's pic version contains non-pic code on m32 darwin; causes bootstrap fail building libcc1.) 2015-04-10 06:43:52 +00:00
libatomic configure.tgt: Add *-*-dragonfly to supported targets. 2015-07-14 16:36:51 +01:00
libbacktrace posix.c (backtrace_open): Cast second argument of open() to int. 2015-09-17 13:08:04 -04:00
libcc1 hash-traits.h (free_ptr_hash): New class. 2015-06-25 17:06:24 +00:00
libcilkrts libcilkrts: Bump to automake 1.11.6 2015-05-13 11:01:24 +00:00
libcpp * zh_TW.po: Update. 2015-10-08 16:55:25 +01:00
libdecnumber IA MCU psABI support: changes to libraries 2015-06-30 09:42:07 -07:00
libffi [RS6000] Correct powerpc sysv stack argument accounting 2015-10-01 06:59:00 +09:30
libgcc cpuinfo.c (get_intel_cpu): Detect "skylake-avx512". 2015-10-05 13:16:07 +00:00
libgfortran re PR libfortran/67527 (io.h sanitizer complains on 1 << 31) 2015-09-12 12:05:44 +00:00
libgo re PR go/67874 (fd_unix.go does not build when there is fcntl64 and no fcntl syscall) 2015-10-07 17:22:08 +00:00
libgomp nvptx offloading linking 2015-10-02 21:43:41 +02:00
libiberty Implement N4514, C++ Extensions for Transactional Memory. 2015-10-04 15:17:19 -04:00
libitm Move runtime transactional memory tests to libitm testsute. 2015-10-05 11:21:15 -04:00
libjava configure.ac (tools/gjdoc): Depend on CREATE_WRAPPERS. 2015-08-11 19:59:25 +02:00
libmpx linux-common.h (LINK_MPX): New. 2015-07-16 08:36:02 +00:00
libobjc stop including tm.h in sendmsg.c 2015-09-12 22:19:11 +00:00
liboffloadmic liboffloadmic: Add missed checks for malloc and strdup return values 2015-10-08 19:04:43 +00:00
libquadmath Makefile.am (libquadmath_la_SOURCES): Add math/logbq.c. 2015-08-09 08:46:52 +00:00
libsanitizer Fix sanitizer/67258 by cherry picking upstream patch 2015-09-09 16:34:59 +00:00
libssp libssp: Bump to automake 1.11.6 2015-05-13 11:12:39 +00:00
libstdc++-v3 re PR c++/67844 (Cannot make tuple of class with template constructor) 2015-10-05 12:57:20 +03:00
libvtv Update copyrights 2015-08-27 14:26:08 +00:00
lto-plugin configure.ac: Add AC_USE_SYSTEM_EXTENSIONS. 2015-07-02 10:30:07 +02:00
maintainer-scripts update_version_svn: Add gcc-4_8-branch to IGNORE_BRANCHES. 2015-06-23 07:48:06 +00:00
zlib zlib: Bump to automake 1.11.6 2015-05-13 11:31:32 +00:00
.dir-locals.el * .dir-locals.el: Add. 2013-10-16 18:25:31 +00:00
.gitignore Local Vim config with GNU formatting. 2014-12-09 13:45:47 +00:00
ABOUT-NLS
COPYING
COPYING.LIB
COPYING.RUNTIME
COPYING3
COPYING3.LIB
ChangeLog * MAINTAINERS (Write After Approval): Add myself. 2015-10-09 06:50:51 -04:00
ChangeLog.jit Merger of dmalcolm/jit branch from git 2014-11-11 21:55:52 +00:00
ChangeLog.tree-ssa
MAINTAINERS * MAINTAINERS (Write After Approval): Add myself. 2015-10-09 06:50:51 -04:00
Makefile.def re PR libfortran/54572 (Use libbacktrace library) 2015-08-23 21:50:30 +00:00
Makefile.in re PR libfortran/54572 (Use libbacktrace library) 2015-08-23 21:50:30 +00:00
Makefile.tpl revert: configure.ac: Add -std=c++98 to stage1_cxxflags. 2015-05-21 13:05:33 -04:00
README
compile Update from upstream Automake files. 2014-11-16 14:07:13 +00:00
config-ml.in re PR other/66259 (Combined gcc and binutils build from git-master fails, with gas/as-new not existing) 2015-07-24 12:20:44 -06:00
config.guess * config.sub, config.guess: Import from upstream. 2015-07-28 10:57:40 +10:00
config.rpath
config.sub * config.sub, config.guess: Import from upstream. 2015-07-28 10:57:40 +10:00
configure Remove --with-host-libstdcxx 2015-08-12 15:13:35 +00:00
configure.ac Remove --with-host-libstdcxx 2015-08-12 15:13:35 +00:00
depcomp Update from upstream Automake files. 2014-11-16 14:07:13 +00:00
install-sh Update from upstream Automake files. 2014-11-16 14:07:13 +00:00
libtool-ldflags re PR sanitizer/56781 (boostrap-asan failure: fixincl fails to link (missing -lasan)) 2014-04-17 14:23:28 +02:00
libtool.m4 Always use PIC option with -shared in libtool 2014-11-21 08:49:17 -08:00
ltgcc.m4
ltmain.sh Ensure libgcc_s unwinder is always used on 64-bit Solaris 10+/x86 (PR target/59788) 2014-02-04 09:31:38 +00:00
ltoptions.m4
ltsugar.m4
ltversion.m4
lt~obsolete.m4
missing Update from upstream Automake files. 2014-11-16 14:07:13 +00:00
mkdep
mkinstalldirs Update from upstream Automake files. 2014-11-16 14:07:13 +00:00
move-if-change Update move-if-change from gnulib 2014-11-16 16:12:44 +00:00
symlink-tree
ylwrap Update from upstream Automake files. 2014-11-16 14:07:13 +00:00

README

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.