Remove ARM __GNUC_PREREQ(4,4) conditionals

Message ID alpine.DEB.2.10.1411141839540.1269@digraph.polyomino.org.uk
State Committed
Headers

Commit Message

Joseph Myers Nov. 14, 2014, 6:40 p.m. UTC
  This patch removes conditionals in ARM code on __GNUC_PREREQ(4,4),
which were already obsolete even before the move from 4.4 to 4.6 as
minimum GCC version for building glibc.

Tested for ARM that installed shared libraries are unchanged by this
patch.  Committed.

2014-11-14  Joseph Myers  <joseph@codesourcery.com>

	* sysdeps/arm/sysdep.h [PROF && __GNUC_PREREQ(4,4)] (CALL_MCOUNT):
	Make definition conditional only on [PROF].
	[PROF && !__GNUC_PREREQ(4,4)] (CALL_MCOUNT): Remove conditional
	definition.
	[__GNUC_PREREQ(4,4)] (mcount): Make definition unconditional.
	[!__GNUC_PREREQ(4,4)] (mcount): Remove conditional definition.
  

Patch

diff --git a/sysdeps/arm/sysdep.h b/sysdeps/arm/sysdep.h
index 8614b4a..9225293 100644
--- a/sysdeps/arm/sysdep.h
+++ b/sysdeps/arm/sysdep.h
@@ -109,8 +109,7 @@ 
 
 /* If compiled for profiling, call `mcount' at the start of each function.  */
 #ifdef	PROF
-/* Call __gnu_mcount_nc if GCC >= 4.4.  */
-#if __GNUC_PREREQ(4,4)
+/* Call __gnu_mcount_nc (GCC >= 4.4).  */
 #define CALL_MCOUNT					\
 	push	{lr};					\
 	cfi_adjust_cfa_offset (4);			\
@@ -118,16 +117,6 @@ 
 	bl	PLTJMP(mcount);				\
 	cfi_adjust_cfa_offset (-4);			\
 	cfi_restore (lr)
-#else /* else call _mcount */
-#define CALL_MCOUNT					\
-	push	{lr};					\
-	cfi_adjust_cfa_offset (4);			\
-	cfi_rel_offset (lr, 0);				\
-	bl	PLTJMP(mcount);				\
-	pops	{lr};					\
-	cfi_adjust_cfa_offset (-4);			\
-	cfi_restore (lr)
-#endif
 #else
 #define CALL_MCOUNT		/* Do nothing.  */
 #endif
@@ -136,11 +125,7 @@ 
    on this system, the asm identifier `syscall_error' intrudes on the
    C name space.  Make sure we use an innocuous name.  */
 #define	syscall_error	__syscall_error
-#if __GNUC_PREREQ(4,4)
 #define mcount		__gnu_mcount_nc
-#else
-#define mcount		_mcount
-#endif
 
 /* Tag_ABI_align8_preserved: This code preserves 8-byte
    alignment in any callee.  */