Go to file
Richard Earnshaw 867944533b [arm] Rewrite -march and -mcpu options for passing to
The assembler does not understand all the '+' options accepted by the
compiler.  The best solution to this is to simply strip the extensions
and just pass the raw architecture or cpu name through to the
assembler.  We will use .arch and .arch_extension directives anyway to
turn on or off individual features.  We already do something similar
for big.little combinations and this just extends this principle a bit
further.  This patch also fixes a possible bug by ensuring that the
limited string copy is correctly NUL-terminated.

While messing with this code I've also taken the opportunity to clean up
the duplicate definitions of EXTRA_SPEC_FUNCTIONS by moving it outside of
the ifdef wrapper.

	* config/arm/arm.h (BIG_LITTLE_SPEC): Delete macro.
	(ASM_REWRITE_SPEC_FUNCTIONS): New macro.
	(BIG_LITTLE_CPU_SPEC_FUNCTIONS): Delete macro.
	(ASM_CPU_SPEC): Rewrite.
	(MCPU_MTUNE_NATIVE_FUNCTIONS): New macro.
	(EXTRA_SPEC_FUNCTIONS): Move outside of ifdef.  Use
	MCPU_MTUNE_NATIVE_FUNCTIONS and ASM_REWRITE_SPEC_FUNCTIONS.  Remove
	reference to BIG_LITTLE_CPU_SPEC_FUNCTIONS.
	* common/config/arm/arm-common.c (arm_rewrite_selected_cpu): Ensure
	copied string is NUL-terminated.  Also strip any characters prefixed
	by '+'.
	(arm_rewrite_selected_arch): New function.
	(arm_rewrite_march): New function.

From-SVN: r249280
2017-06-16 21:01:29 +00:00
config configure.ac (*-*-linux-android*): Set target_makefile_frag. 2017-06-03 08:23:22 +00:00
contrib Doxygen: transform ENUM_BITFIELD and comments starting with '/**'. 2017-05-31 14:08:36 +00:00
fixincludes config.gcc (*-*-vxworks*): Set use_gcc_stdint to "provide". 2017-06-12 12:10:12 +00:00
gcc [arm] Rewrite -march and -mcpu options for passing to 2017-06-16 21:01:29 +00:00
gnattools
gotools Don't use >& for I/O redirection 2017-06-16 06:58:06 +00:00
include * libiberty.h (ASTRDUP): Adjust cast to avoid warning. 2017-05-25 00:33:48 +00:00
INSTALL
intl
libada re PR ada/80921 (cross compiling fails to build Ada shared libraries) 2017-06-01 10:51:15 +00:00
libatomic Load new scanlang.exp 2017-05-12 09:20:37 +00:00
libbacktrace elf.c (backtrace_initialize): Always set *fileline_fn. 2017-06-12 03:25:04 +00:00
libcc1 cp-tree.h (build_this_parm, [...]): Add FN parm. 2017-06-16 15:42:33 +00:00
libcilkrts re PR other/79046 (g++ -print-file-name=plugin uses full version number in path) 2017-01-20 09:27:29 +01:00
libcpp PR c++/80560 - warn on undefined memory operations involving non-trivial types 2017-06-15 21:48:59 -06:00
libdecnumber Fix numerous typos in comments 2017-04-03 23:30:56 +01:00
libffi re PR other/79046 (g++ -print-file-name=plugin uses full version number in path) 2017-01-21 09:47:11 +01:00
libgcc Speed-up indirect-call instrumentation 2017-06-09 12:54:53 +00:00
libgfortran re PR fortran/80975 (matmul for zero-length arrays) 2017-06-06 19:18:37 +00:00
libgo cmd/cgo: make _cgo_flags consistent across runs 2017-06-14 13:59:02 +00:00
libgomp invoke.texi: Document the -Wsizeof-pointer-div warning. 2017-06-02 04:06:59 +00:00
libhsail-rt Minor BRIG/HSAIL frontend updates and bug fixes: 2017-05-04 05:50:21 +00:00
libiberty simple-object-xcoff.c (simple_object_xcoff_find_sections): Search symbol table for .go_export symbol and apply pfn if found. 2017-06-07 19:23:55 -04:00
libitm PR c++/80560 - warn on undefined memory operations involving non-trivial types 2017-06-15 21:48:59 -06:00
libmpx * mpxrt/mpxrt-utils.h (__mpxrt_stop): New prototype. 2017-01-30 15:26:24 +01:00
libobjc re PR tree-optimization/79256 (FAIL: gcc.dg/vect/pr25413a.c execution test) 2017-02-07 11:29:06 +00:00
liboffloadmic libgomp: Provide prototypes for functions implemented by libgomp plugins 2017-01-31 15:32:58 +01:00
libquadmath configure.ac (ACX_BUGURL): Update. 2017-02-09 10:56:08 +00:00
libsanitizer Cherry-pick upstream r299036 from libsanitizer (PR sanitizer/80166). 2017-04-06 13:42:24 +00:00
libssp ssp.c (__guard_setup): Suppress unused variable warning. 2017-04-02 00:35:58 +00:00
libstdc++-v3 Add std::get_deleter overload with correct signature 2017-06-16 16:20:14 +01:00
libvtv re PR other/79046 (g++ -print-file-name=plugin uses full version number in path) 2017-01-21 09:47:11 +01:00
lto-plugin
maintainer-scripts gcc_release (XZ): Default to xz --best. 2017-05-23 23:14:10 +00:00
zlib re PR bootstrap/79771 (in-tree zlib breaks build) 2017-03-14 23:01:23 -06:00
.dir-locals.el
.gitattributes
.gitignore
ABOUT-NLS
ChangeLog Makefile.def: Add check-gotools to go check targets. 2017-06-14 19:36:42 +00:00
ChangeLog.jit
ChangeLog.tree-ssa
compile
config-ml.in
config.guess * config.guess: Import latest from upstream. 2017-03-18 18:22:06 +00:00
config.rpath
config.sub
configure configure.ac (*-*-linux-android*): Set target_makefile_frag. 2017-06-03 08:23:22 +00:00
configure.ac configure.ac (*-*-linux-android*): Set target_makefile_frag. 2017-06-03 08:23:22 +00:00
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: Add self to Write After Approval 2017-05-31 08:25:25 +00:00
Makefile.def Makefile.def: Add check-gotools to go check targets. 2017-06-14 19:36:42 +00:00
Makefile.in Makefile.def: Add check-gotools to go check targets. 2017-06-14 19:36:42 +00:00
Makefile.tpl Restore Graphite fuse-*.c testing 2017-02-15 15:43:42 +01: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.