GCC modified for the FreeChainXenon project
![]() This is the main patch to provide the infrastructure for adding feature extensions to CPU and architecture specifications. It does not, however, add all the extensions that we intend to support (just a small number to permit some basic testing). Now, instead of having specific entries in the architecture table for variants such as armv8-a+crc, the crc extension is specified as an optional component of the armv8-a architecture entry. Similar control can be added to CPU option names. In both cases the list of permitted options is controlled by the main architecture or CPU name to prevent arbitrary cross-products of options. * config/arm/arm-cpus.in (armv8-a): Add options crc, simd crypto and nofp. (armv8-a+crc): Delete. (armv8.1-a): Add options simd, crypto and nofp. (armv8.2-a): Add options fp16, simd, crypto and nofp. (armv8.2-a+fp16): Delete. (armv8-m.main): Add option dsp. (armv8-m.main+dsp): Delete. (cortex-a8): Add fpu. Add nofp option. (cortex-a9): Add fpu. Add nofp and nosimd options. * config/arm/parsecpu.awk (gen_data): Generate option tables and link to main cpu and architecture data structures. (gen_comm_data): Only put isa attributes from the main architecture in common tables. (option): New statement for architecture and CPU entries. * arm.c (struct cpu_option): New structure. (struct processors): Add entry for options. (arm_unrecognized_feature): New function. (arm_parse_arch_cpu_name): Ignore any characters after the first '+' character. (arm_parse_arch_cpu_feature): New function. (arm_configure_build_target): Separate out any CPU and architecture features and parse separately. Don't error out if -mfpu=auto is used with only an architecture string. (arm_print_asm_arch_directives): New function. (arm_file_start): Call it. * config/arm/arm-cpu-cdata.h: Regenerated. * config/arm/arm-cpu-data.h: Likewise. * config/arm/arm-tables.opt: Likewise. From-SVN: r249282 |
||
---|---|---|
config | ||
contrib | ||
fixincludes | ||
gcc | ||
gnattools | ||
gotools | ||
include | ||
INSTALL | ||
intl | ||
libada | ||
libatomic | ||
libbacktrace | ||
libcc1 | ||
libcilkrts | ||
libcpp | ||
libdecnumber | ||
libffi | ||
libgcc | ||
libgfortran | ||
libgo | ||
libgomp | ||
libhsail-rt | ||
libiberty | ||
libitm | ||
libmpx | ||
libobjc | ||
liboffloadmic | ||
libquadmath | ||
libsanitizer | ||
libssp | ||
libstdc++-v3 | ||
libvtv | ||
lto-plugin | ||
maintainer-scripts | ||
zlib | ||
.dir-locals.el | ||
.gitattributes | ||
.gitignore | ||
ABOUT-NLS | ||
ChangeLog | ||
ChangeLog.jit | ||
ChangeLog.tree-ssa | ||
compile | ||
config-ml.in | ||
config.guess | ||
config.rpath | ||
config.sub | ||
configure | ||
configure.ac | ||
COPYING | ||
COPYING.LIB | ||
COPYING.RUNTIME | ||
COPYING3 | ||
COPYING3.LIB | ||
depcomp | ||
install-sh | ||
libtool-ldflags | ||
libtool.m4 | ||
ltgcc.m4 | ||
ltmain.sh | ||
ltoptions.m4 | ||
ltsugar.m4 | ||
ltversion.m4 | ||
lt~obsolete.m4 | ||
MAINTAINERS | ||
Makefile.def | ||
Makefile.in | ||
Makefile.tpl | ||
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.