]> granicus.if.org Git - strace/commitdiff
or1k: move or1k_atomic parser to a separate file
authorDmitry V. Levin <ldv@altlinux.org>
Wed, 3 Dec 2014 20:00:42 +0000 (20:00 +0000)
committerDmitry V. Levin <ldv@altlinux.org>
Wed, 3 Dec 2014 21:20:37 +0000 (21:20 +0000)
* or1k_atomic.c: New file.
* Makefile.am (strace_SOURCES): Add it.
* system.c [OR1K]: Move to or1k_atomic.c.

Makefile.am
or1k_atomic.c [new file with mode: 0644]
system.c

index f046e0c562c11a394652ffcba87f01fcc1617edf..38193f2d567d7815f1f3cb9f3e3ff515121bf5cd 100644 (file)
@@ -37,6 +37,7 @@ strace_SOURCES =      \
        mem.c           \
        mtd.c           \
        net.c           \
+       or1k_atomic.c   \
        pathtrace.c     \
        process.c       \
        ptp.c           \
diff --git a/or1k_atomic.c b/or1k_atomic.c
new file mode 100644 (file)
index 0000000..1b60272
--- /dev/null
@@ -0,0 +1,51 @@
+#include "defs.h"
+
+#ifdef OR1K
+
+#define OR1K_ATOMIC_SWAP        1
+#define OR1K_ATOMIC_CMPXCHG     2
+#define OR1K_ATOMIC_XCHG        3
+#define OR1K_ATOMIC_ADD         4
+#define OR1K_ATOMIC_DECPOS      5
+#define OR1K_ATOMIC_AND         6
+#define OR1K_ATOMIC_OR          7
+#define OR1K_ATOMIC_UMAX        8
+#define OR1K_ATOMIC_UMIN        9
+
+#include "xlat/atomic_ops.h"
+
+int sys_or1k_atomic(struct tcb *tcp)
+{
+       if (entering(tcp)) {
+               printxval(atomic_ops, tcp->u_arg[0], "???");
+               switch(tcp->u_arg[0]) {
+               case OR1K_ATOMIC_SWAP:
+                       tprintf(", 0x%lx, 0x%lx", tcp->u_arg[1], tcp->u_arg[2]);
+                       break;
+               case OR1K_ATOMIC_CMPXCHG:
+                       tprintf(", 0x%lx, %#lx, %#lx", tcp->u_arg[1], tcp->u_arg[2],
+                               tcp->u_arg[3]);
+                       break;
+
+               case OR1K_ATOMIC_XCHG:
+               case OR1K_ATOMIC_ADD:
+               case OR1K_ATOMIC_AND:
+               case OR1K_ATOMIC_OR:
+               case OR1K_ATOMIC_UMAX:
+               case OR1K_ATOMIC_UMIN:
+                       tprintf(", 0x%lx, %#lx", tcp->u_arg[1], tcp->u_arg[2]);
+                       break;
+
+               case OR1K_ATOMIC_DECPOS:
+                       tprintf(", 0x%lx", tcp->u_arg[1]);
+                       break;
+
+               default:
+                       break;
+               }
+       }
+
+       return RVAL_HEX;
+}
+
+#endif /* OR1K */
index 86cb024340ac1ebf121568f2821fe2d0903fb665..2bd1dac1d678bdcfeec06a216d2d0f1099cd4420 100644 (file)
--- a/system.c
+++ b/system.c
@@ -610,52 +610,3 @@ int sys_sysmips(struct tcb *tcp)
 }
 
 #endif /* MIPS */
-
-#ifdef OR1K
-#define OR1K_ATOMIC_SWAP        1
-#define OR1K_ATOMIC_CMPXCHG     2
-#define OR1K_ATOMIC_XCHG        3
-#define OR1K_ATOMIC_ADD         4
-#define OR1K_ATOMIC_DECPOS      5
-#define OR1K_ATOMIC_AND         6
-#define OR1K_ATOMIC_OR          7
-#define OR1K_ATOMIC_UMAX        8
-#define OR1K_ATOMIC_UMIN        9
-
-#include "xlat/atomic_ops.h"
-
-int sys_or1k_atomic(struct tcb *tcp)
-{
-       if (entering(tcp)) {
-               printxval(atomic_ops, tcp->u_arg[0], "???");
-               switch(tcp->u_arg[0]) {
-               case OR1K_ATOMIC_SWAP:
-                       tprintf(", 0x%lx, 0x%lx", tcp->u_arg[1], tcp->u_arg[2]);
-                       break;
-               case OR1K_ATOMIC_CMPXCHG:
-                       tprintf(", 0x%lx, %#lx, %#lx", tcp->u_arg[1], tcp->u_arg[2],
-                               tcp->u_arg[3]);
-                       break;
-
-               case OR1K_ATOMIC_XCHG:
-               case OR1K_ATOMIC_ADD:
-               case OR1K_ATOMIC_AND:
-               case OR1K_ATOMIC_OR:
-               case OR1K_ATOMIC_UMAX:
-               case OR1K_ATOMIC_UMIN:
-                       tprintf(", 0x%lx, %#lx", tcp->u_arg[1], tcp->u_arg[2]);
-                       break;
-
-               case OR1K_ATOMIC_DECPOS:
-                       tprintf(", 0x%lx", tcp->u_arg[1]);
-                       break;
-
-               default:
-                       break;
-               }
-       }
-
-       return RVAL_HEX;
-}
-
-#endif /* OR1K */