i386: Replace internal_function attribute for __mcount_internal
authorFlorian Weimer <fweimer@redhat.com>
Tue, 15 Aug 2017 12:46:19 +0000 (14:46 +0200)
committerFlorian Weimer <fweimer@redhat.com>
Tue, 15 Aug 2017 12:51:55 +0000 (14:51 +0200)
__mcount_internal is called from assembler code.  Use an explicit
regparm attribute to pass both arguments in registers, to match what
used to happen with internal_function before commit
fbdc1e3e8de7f49e439b6e274d3e7e07da78416e (i386: Do not set
internal_function).

ChangeLog
sysdeps/i386/machine-gmon.h

index b540c5f995b7b415bd0cfa09a80db0a79e673864..8f072e701b7c9cb87cebf6b829acb98ec6d38777 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2017-08-15  Florian Weimer  <fweimer@redhat.com>
+
+       * sysdeps/i386/machine-gmon.h (mcount_internal): Declare with
+       regparm (2) instead of internal_function.
+       (_MCOUNT_DECL): Adjust.
+
 2017-08-15  Stefan Liebler  <stli@linux.vnet.ibm.com>
 
        * sysdeps/s390/dl-procinfo.c (_dl_s390_cap_flags): Add z14.
index d5d8cdf7c6d190097c269345fc0095109f788373..3e90b8c0c7cb5908d9b2d067325f3a677d576da4 100644 (file)
 /* We must not pollute the global namespace.  */
 #define mcount_internal __mcount_internal
 
-extern void mcount_internal (u_long frompc, u_long selfpc) internal_function;
+extern void mcount_internal (u_long frompc, u_long selfpc)
+  __attribute__ ((regparm (2)));
 
-#define _MCOUNT_DECL(frompc, selfpc) \
-void internal_function mcount_internal (u_long frompc, u_long selfpc)
+#define _MCOUNT_DECL(frompc, selfpc)                \
+  __attribute__ ((regparm (2)))                            \
+void mcount_internal (u_long frompc, u_long selfpc)
 
 
 /* Define MCOUNT as empty since we have the implementation in another