summaryrefslogtreecommitdiff
path: root/systemv64call_test.c
diff options
context:
space:
mode:
Diffstat (limited to 'systemv64call_test.c')
-rw-r--r--systemv64call_test.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/systemv64call_test.c b/systemv64call_test.c
index 3febbba..0d7165a 100644
--- a/systemv64call_test.c
+++ b/systemv64call_test.c
@@ -31,11 +31,13 @@ should output:
Hello 3.000000 -2848239.700000 -123 456 789 43873243.234982 111.100000 222.200000 333.300000 444.400000 555.500000 666.600000
126
foo returned: -298.100006
+that's all!
*/
#include <stdio.h>
#include <stdint.h>
#include <stdbool.h>
+#include <stdlib.h>
#include <math.h>
@@ -77,6 +79,11 @@ Point mkpoint(int a, int b, int c) {
return ret;
}
+void end(void) {
+ puts("that's all!");
+ exit(0);
+}
+
int main(void) {
uint64_t params[13] = {
123,
@@ -145,5 +152,7 @@ int main(void) {
int ret3 = systemv64_call((FnPtr)printf, params3, arr_sz(params3), is_fp3);
printf("%d\n",ret3);
main2();
+ systemv64_call(end, NULL, 0, NULL);
+ puts("this shouldn't be printed");
return 0;
}