summaryrefslogtreecommitdiffstats
path: root/qemu/roms/SLOF/slof/entry.S
diff options
context:
space:
mode:
Diffstat (limited to 'qemu/roms/SLOF/slof/entry.S')
-rw-r--r--qemu/roms/SLOF/slof/entry.S9
1 files changed, 9 insertions, 0 deletions
diff --git a/qemu/roms/SLOF/slof/entry.S b/qemu/roms/SLOF/slof/entry.S
index dcff57ba0..5372de357 100644
--- a/qemu/roms/SLOF/slof/entry.S
+++ b/qemu/roms/SLOF/slof/entry.S
@@ -207,4 +207,13 @@ call_client:
li 3, -1 # client app return
blr
+
+ # Call another function via pointer in r6
+ # (arguments can be provided in r3 to r5)
+ # Destination function should jump back to lr
+C_ENTRY(call_c)
+ mtctr r6
+ bctr
+
+.global the_system_stack
.lcomm the_system_stack, STACKSIZE, 16