nooc

nooc programming language compiler
git clone git://git.nihaljere.xyz/nooc
Log | Files | Refs | LICENSE

commit 7d9a544e434a3a5b4b92e2584b009f61580ec96d
parent 279c421184bfd8ce59f29f903aa269fd2ccf1901
Author: Nihal Jere <nihal@nihaljere.xyz>
Date:   Tue, 14 Dec 2021 16:42:38 -0600

reserve RBP and RSP

Diffstat:
Mmain.c | 2++
Mx64.c | 2+-
2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/main.c b/main.c @@ -596,6 +596,7 @@ main(int argc, char *argv[]) struct block items = parse(head); typecheck(items); + clearreg(); size_t len = genblock(NULL, &items, true); char *text = malloc(len); if (!text) { @@ -603,6 +604,7 @@ main(int argc, char *argv[]) return 1; } + clearreg(); size_t len2 = genblock(text, &items, true); assert(len == len2); diff --git a/x64.c b/x64.c @@ -14,7 +14,7 @@ unsigned short used_reg; void clearreg() { - used_reg = 0; + used_reg = RBP | RSP; } enum reg