crtstuff.c (__dso_handle): Set section from TARGET_LBIGCC_SDATA_SECTION if defined.
* crtstuff.c (__dso_handle): Set section from TARGET_LBIGCC_SDATA_SECTION if defined. * doc/tm.text (TARGET_LIBGCC_SDATA_SECTION): Document. * config/mips/mips.h (TARGET_LIBGCC_SDATA_SECTION): Define. From-SVN: r113817
This commit is contained in:
parent
2102802062
commit
a0cfeb0fcd
@ -1,3 +1,10 @@
|
||||
2006-05-16 DJ Delorie <dj@redhat.com>
|
||||
|
||||
* crtstuff.c (__dso_handle): Set section from
|
||||
TARGET_LBIGCC_SDATA_SECTION if defined.
|
||||
* doc/tm.text (TARGET_LIBGCC_SDATA_SECTION): Document.
|
||||
* config/mips/mips.h (TARGET_LIBGCC_SDATA_SECTION): Define.
|
||||
|
||||
2006-05-16 Danny Smith <dannysmith@users.sourceforge.net>
|
||||
|
||||
PR target/27599
|
||||
|
@ -466,6 +466,8 @@ extern const struct mips_rtx_cost_data *mips_cost;
|
||||
#endif
|
||||
#endif /* IN_LIBGCC2 */
|
||||
|
||||
#define TARGET_LIBGCC_SDATA_SECTION ".sdata"
|
||||
|
||||
#ifndef MULTILIB_ENDIAN_DEFAULT
|
||||
#if TARGET_ENDIAN_DEFAULT == 0
|
||||
#define MULTILIB_ENDIAN_DEFAULT "EL"
|
||||
|
@ -225,6 +225,9 @@ STATIC void *__JCR_LIST__[]
|
||||
in one DSO or the main program is not used in another object. The
|
||||
dynamic linker takes care of this. */
|
||||
|
||||
#ifdef TARGET_LIBGCC_SDATA_SECTION
|
||||
extern void *__dso_handle __attribute__ ((__section__ (TARGET_LIBGCC_SDATA_SECTION)));
|
||||
#endif
|
||||
#ifdef HAVE_GAS_HIDDEN
|
||||
extern void *__dso_handle __attribute__ ((__visibility__ ("hidden")));
|
||||
#endif
|
||||
|
@ -6217,6 +6217,18 @@ registers initialized in the function prologue or to ensure that
|
||||
constant pools don't end up too far way in the text section.
|
||||
@end defmac
|
||||
|
||||
@defmac TARGET_LIBGCC_SDATA_SECTION
|
||||
If defined, a string which names the section into which small
|
||||
variables defined in crtstuff and libgcc should go. This is useful
|
||||
when the target has options for optimizing access to small data, and
|
||||
you want the crtstuff and libgcc routines to be conservative in what
|
||||
they expect of your application yet liberal in what your application
|
||||
expects. For example, for targets with a @code{.sdata} section (like
|
||||
MIPS), you could compile crtstuff with @code{-G 0} so that it doesn't
|
||||
require small data support from your application, but use this macro
|
||||
to put small data into @code{.sdata} so that your application can
|
||||
access these variables whether it uses small data or not.
|
||||
|
||||
@defmac FORCE_CODE_SECTION_ALIGN
|
||||
If defined, an ASM statement that aligns a code section to some
|
||||
arbitrary boundary. This is used to force all fragments of the
|
||||
|
Loading…
Reference in New Issue
Block a user