@@ -81,7 +81,7 @@ asmlib = $(TEST_DIR)/cstart64.o $(TEST_DIR)/cpu.o
FLATLIBS = $(libcflat)
SNIPPET_DIR = $(TEST_DIR)/snippets
-snippet_asmlib = $(SNIPPET_DIR)/c/cstart.o
+snippet_asmlib = $(SNIPPET_DIR)/c/cstart.o lib/auxinfo.o
# perquisites (=guests) for the snippet hosts.
# $(TEST_DIR)/<snippet-host>.elf: snippets = $(SNIPPET_DIR)/<c/asm>/<snippet>.gbin
@@ -20,6 +20,17 @@ start:
lghi %r15, stackptr
sam64
brasl %r14, main
+ /*
+ * If main() returns, we stop the CPU with the code below. We also
+ * route some functions that are required by the libc (but not usable
+ * from snippets) to the CPU stop code below, so that snippets can
+ * still be linked against the libc code (to use non-related functions
+ * like memset() etc.)
+ */
+.global puts
+.global exit
+puts:
+exit:
/* For now let's only use cpu 0 in snippets so this will always work. */
xgr %r0, %r0
sigp %r2, %r0, SIGP_STOP