aarch64: common recursion

This commit is contained in:
deesix 2020-02-01 21:23:49 +01:00
parent 74991dfe3f
commit 0737a2acf0
3 changed files with 8 additions and 5 deletions

View File

@ -1,5 +1,6 @@
/* Copyright (C) 2016 Jeremiah Orians
* Copyright (C) 2018 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
* Copyright (C) 2020 deesix <deesix@tuta.io>
* This file is part of M2-Planet.
*
* M2-Planet is free software: you can redistribute it and/or modify
@ -506,6 +507,7 @@ void common_recursion(FUNCTION f)
else if(X86 == Architecture) emit_out("PUSH_eax\t#_common_recursion\n");
else if(AMD64 == Architecture) emit_out("PUSH_RAX\t#_common_recursion\n");
else if(ARMV7L == Architecture) emit_out("{R0} PUSH_ALWAYS\t#_common_recursion\n");
else if(AARCH64 == Architecture) emit_out("PUSH_X0\t#_common_recursion\n");
struct type* last_type = current_target;
global_token = global_token->next;
@ -517,6 +519,7 @@ void common_recursion(FUNCTION f)
else if(X86 == Architecture) emit_out("POP_ebx\t# _common_recursion\n");
else if(AMD64 == Architecture) emit_out("POP_RBX\t# _common_recursion\n");
else if(ARMV7L == Architecture) emit_out("{R1} POP_ALWAYS\t# _common_recursion\n");
else if(AARCH64 == Architecture) emit_out("POP_X1\t# _common_recursion\n");
}
void general_recursion(FUNCTION f, char* s, char* name, FUNCTION iterate)

View File

@ -53,10 +53,10 @@ a0ae067746e7a2b01d33950da1cf640e12c3a70a045ab331ea2025af59dec9af test/results/t
e01b615db5df31392bd1054c45141dcff936b11dfb1cad270edc0aa67653f5a1 test/results/test10-knight-native-binary
c1b5a2a3cd46c5e95e5540e871c2a916e028684ca80f51c001ef489342e27625 test/results/test10-knight-posix-binary
b3e13d54aab689137628fb9c4487bfd8288f9bd18bef8fe756577c8d2dce1f1f test/results/test10-x86-binary
e637a8ed8d30248bc2093e36b58f67018219f27a7b051e6c069ed718b0d625c6 test/results/test100-amd64-binary
c560cecfeb221cf76e24efdfa43cdaad627195f53812c5066cf4bdfddb1e314b test/results/test100-armv7l-binary
a516649bb595fbb8906bb30182b1909d9e274208eff36e0ea6203df6ba0dbefd test/results/test100-knight-posix-binary
e3624643ff747252dd55e4a5165e9d60b3d7126e0edc6515cc2a14775e1b8919 test/results/test100-x86-binary
a1f83eb368fd6afa168693a05fd89743d036beb582bb24ec3d030ef1fd6d9dad test/results/test100-amd64-binary
76c143d17b6a26f7b29df5459dc7915846d3855350499024f84f8109fcabd1f4 test/results/test100-armv7l-binary
1235d2a8da677a67d2f42c0377f152f94b47bebc0aa7a00e393f8a572a034449 test/results/test100-knight-posix-binary
5fc5a9096d7f1a48a10b39111403707c6f19e9d57284efaa707aebe14e63fecf test/results/test100-x86-binary
34e6d535e30ef8826a4ad1a4d08b76cfa370c54595599ad3be784b64c9cd8ec5 test/results/test11-amd64-binary
893695e6f300a0fe055fad935a56abd549bba70d1d39c535a680f41bbb73f117 test/results/test11-armv7l-binary
7115c4a552eb4b2c1a868ac3dca43be7d040c8e89b7b66851d0522d298429af9 test/results/test11-knight-native-binary

View File

@ -1 +1 @@
ab19170f335226f182ef2371f91d17de8ea3a9f7316d48eceb8d0e99ec71b165 test/test100/proof
9c167fc8acc1d97d7d1c9a9356835e6e6b45383cbe62276bd1e863dc49af5ba5 test/test100/proof