summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
Diffstat (limited to 'examples')
-rw-r--r--examples/syscall.S14
1 files changed, 14 insertions, 0 deletions
diff --git a/examples/syscall.S b/examples/syscall.S
index 9e8725e..9934490 100644
--- a/examples/syscall.S
+++ b/examples/syscall.S
@@ -38,12 +38,26 @@ mon_free:
sub fp, ip, #4
ldmea fp, {fp, sp, pc}
#else /* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX */
+
+#ifdef CONFIG_I386 /* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX */
+#define SYMBOL_NAME(X) X
+#define SYMBOL_NAME_LABEL(X) X##:
+
+#define SYSCALL(name,n) \
+ .globl SYMBOL_NAME(name) ; \
+SYMBOL_NAME_LABEL(name) ; \
+ ret
+
+#endif /* CONFIG_I386 */
+
+#ifdef CONFIG_PPC
#define SYSCALL(name,n) \
.globl name ; \
name: ; \
li r0,n ; \
sc ; \
blr
+#endif /* CONFIG_PPC */
.text