svn commit: r276198 - head/sys/arm/include

Ian Lepore ian at FreeBSD.org
Thu Dec 25 04:41:45 UTC 2014


Author: ian
Date: Thu Dec 25 04:41:43 2014
New Revision: 276198
URL: https://svnweb.freebsd.org/changeset/base/276198

Log:
  Remove _PROF_PROLOGUE from the EENTRY() macros.  These macros define
  'extra' entry points which are nested within or provide a synonym name
  for another function.  It's most likely not safe to be messing with the
  IP and LR registers at anything other than the primary entry point to a
  function.  Anywhere beyond initial function entry, those registers may
  be in use as scratch or variable registers.

Modified:
  head/sys/arm/include/asm.h

Modified: head/sys/arm/include/asm.h
==============================================================================
--- head/sys/arm/include/asm.h	Thu Dec 25 04:18:31 2014	(r276197)
+++ head/sys/arm/include/asm.h	Thu Dec 25 04:41:43 2014	(r276198)
@@ -90,17 +90,17 @@
 #endif
 
 #define	ENTRY(y)	_ENTRY(_C_LABEL(y)); _PROF_PROLOGUE
-#define	EENTRY(y)	_EENTRY(_C_LABEL(y)); _PROF_PROLOGUE
+#define	EENTRY(y)	_EENTRY(_C_LABEL(y));
 #define	ENTRY_NP(y)	_ENTRY(_C_LABEL(y))
 #define	EENTRY_NP(y)	_EENTRY(_C_LABEL(y))
 #define	END(y)		_END(_C_LABEL(y))
-#define	EEND(y)
+#define	EEND(y)		_EEND(_C_LABEL(y))
 #define	ASENTRY(y)	_ENTRY(_ASM_LABEL(y)); _PROF_PROLOGUE
-#define	ASEENTRY(y)	_EENTRY(_ASM_LABEL(y)); _PROF_PROLOGUE
+#define	ASEENTRY(y)	_EENTRY(_ASM_LABEL(y));
 #define	ASENTRY_NP(y)	_ENTRY(_ASM_LABEL(y))
 #define	ASEENTRY_NP(y)	_EENTRY(_ASM_LABEL(y))
 #define	ASEND(y)	_END(_ASM_LABEL(y))
-#define	ASEEND(y)
+#define	ASEEND(y)	_EEND(_ASM_LABEL(y))
 
 #define	ASMSTR		.asciz
 


More information about the svn-src-head mailing list