[named-addr-spaces-branch][Patch,committed] Update hook documentation

Michael Meissner meissner@linux.vnet.ibm.com
Wed Dec 17 00:12:00 GMT 2008


In my last patch, I forgot to update the hook documentation:

2008-12-16  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* doc/tm.texi (TARGET_ADDR_SPACE_MINUS_TYPE): Document new hook.
	(TARGET_ADDR_SPACE_MEMORY_ADDRESS_P): Ditto.
	(TARGET_ADDR_SPACE_STRICT_MEMORY_ADDRESS_P): Ditto.
	(TARGET_ADDR_SPACE_LEGITIMIZE_ADDRESS): Ditto.
	(TARGET_ADDR_SPACE_STATIC_INIT_OK_P): Ditto.

Index: gcc/doc/tm.texi
===================================================================
--- gcc/doc/tm.texi	(revision 142784)
+++ gcc/doc/tm.texi	(working copy)
@@ -9652,6 +9652,12 @@ space.  For example, the SPU port uses t
 
 @end defmac
 
+@deftypefn {Target Hook} {tree} TARGET_ADDR_SPACE_MINUS_TYPE (addr_space_t @var{asl}, addr_space_t @var{asr})
+Define this to return the @code{tree} type to use for the subtraction
+of two pointers to named address spaces (@var{asl} and @var{asr}).
+The default version of this hook returns @code{ptrdiff_type}.
+@end deftypefn
+
 @deftypefn {Target Hook} {const char *} TARGET_ADDR_SPACE_NAME (addr_space_t @var{address_space})
 Define this to return a string that describes the @var{address_space}.
 As this hook should never be called for targets that do not support
@@ -9659,6 +9665,27 @@ named address spaces, the default versio
 compiler to abort.
 @end deftypefn
 
+@deftypefn {Target Hook} {bool} TARGET_ADDR_SPACE_MEMORY_ADDRESS_P (enum machine_mode @var{mode}, rtx @var{exp}, addr_space_t @var{as})
+Define this to return true if @var{exp} is a valid address for mode
+@var{mode} in the named address space @var{as}.  Valid address can
+contain references to psuedo registers that are not yet assigned to
+hard registers.
+@end deftypefn
+
+@deftypefn {Target Hook} {bool} TARGET_ADDR_SPACE_STRICT_MEMORY_ADDRESS_P (enum machine_mode @var{mode}, rtx @var{exp}, addr_space_t @var{as})
+Define this to return true if @var{exp} is a valid address for mode
+@var{mode} in the named address space @var{as}.  Valid address can
+only contain references to hard registers.  Any address with a pseudo
+register should return false.
+@end deftypefn
+
+@deftypefn {Target Hook} {rtx} TARGET_ADDR_SPACE_LEGITIMIZE_ADDRESS (rtx @var{x}, rtx @var{oldx}, enum machine_mode @var{mode}, addr_space_t @var{as})
+Define this to modify an invalid address @var{x} to be a valid address
+with mode @var{mode} in the named address space @var{as}.  This hook
+is similar to the @code{LEGITIMIZE_ADDRESS} macro, except that it
+includes explicit named address space support.
+@end deftypefn
+
 @deftypefn {Target Hook} {bool} TARGET_ADDR_SPACE_CAN_CONVERT_P (addr_space_t @var{from}, addr_space_t @var{to})
 Define this to return whether a pointer which points to the @var{from}
 named address space can be converted to a pointer which points to the
@@ -9691,6 +9718,13 @@ Define this to return the section name t
 variables
 @end deftypefn
 
+@deftypefn {Target Hook} {bool} TARGET_ADDR_SPACE_STATIC_INIT_OK_P (tree @var{init}, addr_space_t @var{as_var}, addr_space_t @var{as_init})
+Define this to return whether a static initialization should be
+allowed for @var{init} to be stored in the @var{as_var} named address
+space.  If @var{init} is a pointer or reference, @var{as_init}
+describes the named address space that the pointer points to.
+@end deftypefn
+
 @node Misc
 @section Miscellaneous Parameters
 @cindex parameters, miscellaneous

-- 
Michael Meissner, IBM
4 Technology Place Drive, MS 2203A, Westford, MA, 01886, USA
meissner@linux.vnet.ibm.com



More information about the Gcc-patches mailing list