summaryrefslogtreecommitdiff
path: root/package/strace/patches/patch-util_c
diff options
context:
space:
mode:
authorwbx <wbx@hydrogenium.(none)>2009-05-17 14:41:34 +0200
committerwbx <wbx@hydrogenium.(none)>2009-05-17 14:41:34 +0200
commit219a6dab8995aad9ac4860cc1a84d6f3509a03a4 (patch)
treeb9c0f3c43aebba2fcfef777592d0add39f2072f4 /package/strace/patches/patch-util_c
Initial import
Diffstat (limited to 'package/strace/patches/patch-util_c')
-rw-r--r--package/strace/patches/patch-util_c53
1 files changed, 53 insertions, 0 deletions
diff --git a/package/strace/patches/patch-util_c b/package/strace/patches/patch-util_c
new file mode 100644
index 000000000..17112f30e
--- /dev/null
+++ b/package/strace/patches/patch-util_c
@@ -0,0 +1,53 @@
+$Id: update-patches 24 2008-08-31 14:56:13Z wbx $
+--- strace-4.5.18.orig/util.c 2008-08-19 06:47:51.000000000 +0200
++++ strace-4.5.18/util.c 2009-01-02 21:24:05.530098238 +0100
+@@ -1097,6 +1097,12 @@ struct tcb *tcp;
+ #elif defined(SH64)
+ if (upeek(tcp->pid, REG_PC ,&pc) < 0)
+ return -1;
++#elif defined(CRISV10)
++ if (upeek(tcp->pid, 4*PT_IRP, &pc) < 0)
++ return -1;
++#elif defined(CRISV32)
++ if (upeek(tcp->pid, 4*PT_ERP, &pc) < 0)
++ return -1;
+ #endif
+ return pc;
+ #endif /* LINUX */
+@@ -1245,6 +1251,22 @@ struct tcb *tcp;
+ return;
+ }
+ tprintf("[%08lx] ", pc);
++#elif defined(CRISV10)
++ long pc;
++
++ if (upeek(tcp->pid, 4*PT_IRP, &pc) < 0) {
++ PRINTBADPC;
++ return;
++ }
++ tprintf("[%08lx] ", (unsigned long)pc);
++#elif defined(CRISV32)
++ long pc;
++
++ if (upeek(tcp->pid, 4*PT_ERP, &pc) < 0) {
++ PRINTBADPC;
++ return;
++ }
++ tprintf("[%08lx] ", (unsigned long)pc);
+ #endif /* !architecture */
+ #endif /* LINUX */
+
+@@ -1444,6 +1466,13 @@ typedef struct regs arg_setup_state;
+ # define arg0_offset (REG_OFFSET+16)
+ # define arg1_offset (REG_OFFSET+24)
+ # define restore_arg0(tcp, state, val) 0
++# elif defined CRISV10 || defined CRISV32
++# define arg0_offset (4*PT_R11)
++# define arg1_offset (4*PT_ORIG_R10)
++# define restore_arg0(tcp, state, val) 0
++# define restore_arg1(tcp, state, val) 0
++# define arg0_index 1
++# define arg1_index 0
+ # else
+ # define arg0_offset 0
+ # define arg1_offset 4