1 |
Description: unset CALL_MCOUNT for __libc_do_syscall |
2 |
unset CALL_MCOUNT before __libc_do_syscall, because it only supports Thumb-2 |
3 |
and ARM mode, not Thumb-1; and because profiling this internal routine |
4 |
is of dubious value. |
5 |
Origin: https://bugs.launchpad.net/linaro-toolchain-misc/+bug/605030/+attachment/1484534/+files/libc-do-syscall.S |
6 |
Author: Peter Pearse <peter.pearse@linaro.org> |
7 |
Bug-Linaro: https://bugs.launchpad.net/linaro-toolchain-misc/+bug/605030 |
8 |
Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/eglibc/+bug/605030 |
9 |
Reviewed-by: Steve Langasek <steve.langasek@linaro.org> |
10 |
|
11 |
Index: glibc-2.14.1/ports/sysdeps/unix/sysv/linux/arm/eabi/libc-do-syscall.S |
12 |
=================================================================== |
13 |
--- glibc-2.14.1.orig/ports/sysdeps/unix/sysv/linux/arm/eabi/libc-do-syscall.S |
14 |
+++ glibc-2.14.1/ports/sysdeps/unix/sysv/linux/arm/eabi/libc-do-syscall.S |
15 |
@@ -32,6 +32,12 @@ |
16 |
#undef CALL_MCOUNT |
17 |
#define CALL_MCOUNT |
18 |
|
19 |
+/* |
20 |
+ * PMP Work round for https://bugs.launchpad.net/gcc-linaro/+bug/605030 |
21 |
+ */ |
22 |
+#undef CALL_MCOUNT |
23 |
+#define CALL_MCOUNT |
24 |
+ |
25 |
ENTRY (__libc_do_syscall) |
26 |
.fnstart |
27 |
push {r7, lr} |