Go to file
Sandra Loosemore cd3a59b38e mips.c (mips_attribute_table): Add "near" and "far" function attributes, "far" being an alias for "long_call".
2007-05-25  Sandra Loosemore  <sandra@codesourcery.com>
	    Nigel Stephens  <nigel@mips.com>

	gcc/
	* config/mips/mips.c (mips_attribute_table): Add "near" and "far"
	function attributes, "far" being an alias for "long_call".
	(TARGET_COMP_TYPE_ATTRIBUTES): Define as mips_comp_type_attributes.
	(mips_near_type_p, mips_far_type_p): New.
	(mips_comp_type_attributes): New function to check that attributes
	attached to a function type are compatible.
	(mips_output_mi_thunk): Test SYMBOL_REF_LONG_CALL_P() rather than
	TARGET_LONG_CALLS when deciding	whether we can do a direct sibcall
	to the target function of the thunk.
	(mips_encode_section_info): Check for "near" and "far" function
	attributes, and always set the SYMBOL_FLAG_LONG_CALL bit explicitly.

	* config/mips/predicates.md (const_call_insn_operand): Test only
	SYMBOL_REF_LONG_CALL_P() and not TARGET_LONG_CALLS.

	* doc/extend.texi (Function Attributes): Document MIPS "near" and
	"far" attributes.

	* testsuite/gcc.target/mips/near-far-1.c:  New test case.
	* testsuite/gcc.target/mips/near-far-2.c:  New test case.
	* testsuite/gcc.target/mips/near-far-3.c:  New test case.
	* testsuite/gcc.target/mips/near-far-4.c:  New test case.

Co-Authored-By: Nigel Stephens <nigel@mips.com>

From-SVN: r125086
2007-05-25 22:02:37 -04:00
INSTALL README: Update wrt. 2001-06-13 14:51:33 +00:00
boehm-gc Commit the change of this file, mentionend in the CL from 2007-05-20. 2007-05-24 21:33:23 +02:00
config re PR bootstrap/32009 (building gcc4-4.3/4.4.0-20070518 failed on OSX 10.3.9) 2007-05-23 14:26:31 +00:00
contrib * gennews (files): Reference GCC 4.2 web pages. 2007-05-14 00:33:48 +00:00
fixincludes inclhack.def (glibc_c99_inline_1): Define __USE_EXTERN_INLINES if __extern_inline or __GNUC_GNU_INLINE__ is... 2007-03-26 15:25:26 +02:00
gcc mips.c (mips_attribute_table): Add "near" and "far" function attributes, "far" being an alias for "long_call". 2007-05-25 22:02:37 -04:00
gnattools re PR ada/28953 (Ada: Documentation for gprmake is missing) 2007-04-30 12:14:24 +02:00
include libiberty.h (writeargv): Declare. 2007-05-08 00:37:39 +00:00
intl Makefile.in (distclean): Delete config files. 2006-09-27 18:51:52 +09:30
libada * Makefile.in: Add dummy install-pdf target. 2007-03-01 16:05:13 -08:00
libcpp macro.c (_cpp_builtin_macro_text): Handle BT_COUNTER. 2007-05-24 20:55:36 +00:00
libdecnumber Makefile.in (aclocal.m4): Depend on stdint.m4 instead of acx.m4. 2007-04-16 13:57:10 -07:00
libffi ltmain.sh: Update from ToT Libtool. 2007-05-24 16:37:27 +00:00
libgcc config.gcc (sparc-wrs-vxworks): New target. 2007-05-10 11:15:07 +00:00
libgfortran transfer.c (unformatted_read): Use size from front end eliminating use of size_from_real_kind. 2007-05-25 17:41:17 +00:00
libgomp ltmain.sh: Update from ToT Libtool. 2007-05-24 16:37:27 +00:00
libiberty libiberty.h (writeargv): Declare. 2007-05-08 00:37:39 +00:00
libjava java-interp.h (_Jv_InterpFrame::get_pc): Only deduct one when pc_ptr is non-NULL. 2007-05-24 20:40:47 +00:00
libmudflap ltmain.sh: Update from ToT Libtool. 2007-05-24 16:37:27 +00:00
libobjc Makefile.in: Remove all uses of $(libext). 2007-05-24 17:13:40 -07:00
libssp ltmain.sh: Update from ToT Libtool. 2007-05-24 16:37:27 +00:00
libstdc++-v3 c_locale.h (__convert_from_v): Fix typo. 2007-05-25 09:28:48 +00:00
maintainer-scripts Revert some changes inadvertently committed as part of the previous revision. 2007-04-01 00:08:27 +00:00
zlib ltmain.sh: Update from ToT Libtool. 2007-05-24 16:37:27 +00:00
ABOUT-NLS intl: New directory; see intl/ChangeLog for details. 2003-07-04 18:18:54 +00:00
COPYING COPYING, [...]: Sync from upstream sources. 2005-07-14 01:08:13 +00:00
COPYING.LIB Update COPYING.LIB from upstream. Correct last Changelog. 2005-07-14 01:41:54 +00:00
ChangeLog * MAINTAINERS (Write After Approval): Remove myself. 2007-05-25 21:25:28 +00:00
ChangeLog.tree-ssa Merge tree-ssa-20020619-branch into mainline. 2004-05-13 02:41:07 -04:00
MAINTAINERS * MAINTAINERS (Write After Approval): Remove myself. 2007-05-25 21:25:28 +00:00
Makefile.def Makefile.def (bootstrap_stage): Replace stage_make_flags with stage_cflags. 2007-05-16 09:01:01 +00:00
Makefile.in Makefile.def (bootstrap_stage): Replace stage_make_flags with stage_cflags. 2007-05-16 09:01:01 +00:00
Makefile.tpl Makefile.def (bootstrap_stage): Replace stage_make_flags with stage_cflags. 2007-05-16 09:01:01 +00:00
README * README: Remove version number. 2001-06-13 19:48:09 +01:00
README.SCO * README.SCO: Update the URL. 2005-05-08 17:49:46 +00:00
compile COPYING, [...]: Sync from upstream sources. 2005-07-14 01:08:13 +00:00
config-ml.in * config-ml.in: Pass ${ml_config_env} to configure calls. 2007-04-14 19:48:36 +00:00
config.guess config.guess: Import latest version. 2006-12-11 15:11:34 +11:00
config.rpath all files: Update FSF address. 2005-07-16 02:30:53 +00:00
config.sub config.sub: Sync with src. 2007-02-09 16:31:28 +00:00
configure Revert accidental commit. 2007-03-26 18:50:13 -04:00
configure.ac configure.ac (TOPLEVEL_CONFIGURE_ARGUMENTS): Fix m4 quoting of glob. 2007-03-21 20:09:15 +00:00
depcomp top level: 2005-06-13 08:26:05 +00:00
install-sh COPYING, [...]: Sync from upstream sources. 2005-07-14 01:08:13 +00:00
libtool-ldflags libtool-ldflags: New script. 2006-01-03 00:30:27 +00:00
libtool.m4 ltmain.sh: Update from ToT Libtool. 2007-05-24 16:37:27 +00:00
ltmain.sh ltmain.sh: Fix Darwin verstring, remove ${wl}. 2007-05-25 21:26:27 +02:00
ltoptions.m4 ltmain.sh: Update from ToT Libtool. 2007-05-24 16:37:27 +00:00
ltsugar.m4 ltmain.sh: Update from ToT Libtool. 2007-05-24 16:37:27 +00:00
ltversion.m4 ltmain.sh: Update from ToT Libtool. 2007-05-24 16:37:27 +00:00
missing COPYING, [...]: Sync from upstream sources. 2005-07-14 01:08:13 +00:00
mkdep merge with /cvs/src 2000-07-22 04:08:22 -04:00
mkinstalldirs COPYING, [...]: Sync from upstream sources. 2005-07-14 01:08:13 +00:00
move-if-change Import from Autoconf sources: 2005-11-21 13:21:37 +11:00
symlink-tree COPYING, [...]: Sync from upstream sources. 2005-07-14 01:08:13 +00:00
ylwrap COPYING, [...]: Sync from upstream sources. 2005-07-14 01:08:13 +00:00

README

This directory contains the GNU Compiler Collection (GCC).

The GNU Compiler Collection is free software.  See the file 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.html for how to report bugs usefully.