libgcov-interface.c (STRONG_ALIAS): Rename to ...

* libgcov-interface.c (STRONG_ALIAS): Rename to ...
	(ALIAS_weak): ... here. Use forwarding function.  Adjust uses.

From-SVN: r215005
This commit is contained in:
Nathan Sidwell 2014-09-07 18:09:34 +00:00 committed by Nathan Sidwell
parent 2ce145f58f
commit 71c3e2ef09
2 changed files with 13 additions and 5 deletions

View File

@ -1,3 +1,8 @@
2014-09-07 Nathan sidwell <nathan@acm.org>
* libgcov-interface.c (STRONG_ALIAS): Rename to ...
(ALIAS_weak): ... here. Use forwarding function. Adjust uses.
2014-09-05 Joseph Myers <joseph@codesourcery.com>
* Makefile.in (CRTSTUFF_CFLAGS): Add -fbuilding-libgcc.

View File

@ -42,11 +42,14 @@ void __gcov_dump (void) {}
#else
/* Some functions we want to bind in this dynamic object, but have an
overridable global alias. */
#define STRONG_ALIAS(src,dst) \
extern __typeof (src) dst __attribute__((alias (#src)))
overridable global alias. Unfortunately not all targets support
aliases, so we just have a forwarding function. That'll be tail
called, so the cost is a single jump instruction.*/
#define ALIAS_void_fn(src,dst) \
void dst (void) \
{ src (); }
extern __gthread_mutex_t __gcov_flush_mx ATTRIBUTE_HIDDEN;
extern __gthread_mutex_t __gcov_flush_mx ATTRIBUTE_HIDDEN;
@ -133,7 +136,7 @@ __gcov_reset_int (void)
__gcov_root.dumped = 0;
}
STRONG_ALIAS (__gcov_reset_int, __gcov_reset);
ALIAS_void_fn (__gcov_reset_int, __gcov_reset);
#endif /* L_gcov_reset */