summaryrefslogtreecommitdiff
path: root/packages/ltrace/files/mvc-toolchain.patch
blob: 886759dfbf000f8bd1e89e8c64b31bcb5535d8ba (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
diff -ru ltrace-0.3.36/sysdeps/linux-gnu/arm/arch.h ltrace-0.3.36-mvc/sysdeps/linux-gnu/arm/arch.h
--- ltrace-0.3.36/sysdeps/linux-gnu/arm/arch.h	2004-11-09 20:25:15.000000000 +0800
+++ ltrace-0.3.36-mvc/sysdeps/linux-gnu/arm/arch.h	2005-12-17 02:00:34.000000000 +0800
@@ -1,4 +1,5 @@
-#define BREAKPOINT_VALUE { 0x01, 0x00, 0x9f, 0xef }
+#define BREAKPOINT_VALUE { 0xfe, 0xde, 0xff, 0xe7}
+
 #define BREAKPOINT_LENGTH 4
 #define DECR_PC_AFTER_BREAK 0
 
diff -ru ltrace-0.3.36/sysdeps/linux-gnu/arm/plt.c ltrace-0.3.36-mvc/sysdeps/linux-gnu/arm/plt.c
--- ltrace-0.3.36/sysdeps/linux-gnu/arm/plt.c	2004-11-09 20:25:15.000000000 +0800
+++ ltrace-0.3.36-mvc/sysdeps/linux-gnu/arm/plt.c	2005-12-19 08:08:54.000000000 +0800
@@ -5,5 +5,5 @@
 GElf_Addr
 arch_plt_sym_val (struct ltelf *lte, size_t ndx, GElf_Rela *rela)
 {
-  return lte->plt_addr + 20 + ndx * 12;
+  return lte->plt_addr + 16 + ndx * 16;
 }
diff -ru ltrace-0.3.36/wait_for_something.c ltrace-0.3.36-mvc/wait_for_something.c
--- ltrace-0.3.36/wait_for_something.c	2004-06-14 23:55:50.000000000 +0800
+++ ltrace-0.3.36-mvc/wait_for_something.c	2005-12-17 02:21:15.000000000 +0800
@@ -82,7 +82,7 @@
 		event.thing = LT_EV_UNKNOWN;
 		return &event;
 	}
-	if (WSTOPSIG(status) != SIGTRAP) {
+	if (WSTOPSIG(status) != SIGTRAP && WSTOPSIG(status) != SIGILL) {
 		event.thing = LT_EV_SIGNAL;
 		event.e_un.signum = WSTOPSIG(status);
 		return &event;