From f34769eda0d9b475d529059ebc4b064f86456f45 Mon Sep 17 00:00:00 2001 From: Taylor R Campbell Date: Mon, 21 Jan 2019 22:39:11 +0000 Subject: [PATCH] Fix large application setup. --- src/compiler/machines/aarch64/rules3.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/compiler/machines/aarch64/rules3.scm b/src/compiler/machines/aarch64/rules3.scm index 37f7fd8d7..29feed26c 100644 --- a/src/compiler/machines/aarch64/rules3.scm +++ b/src/compiler/machines/aarch64/rules3.scm @@ -69,6 +69,7 @@ USA. (BR ,regnum:applicand-pc)))) (define (apply-setup frame-size) + (assert (= regnum:applicand regnum:utility-arg1)) (case frame-size ((1) (invoke-hook/subroutine entry:compiler-apply-setup-size-1)) ((2) (invoke-hook/subroutine entry:compiler-apply-setup-size-2)) @@ -79,7 +80,7 @@ USA. ((7) (invoke-hook/subroutine entry:compiler-apply-setup-size-7)) ((8) (invoke-hook/subroutine entry:compiler-apply-setup-size-8)) (else - (LAP ,@(load-unsigned-immediate regnum:utility-arg1 frame-size) + (LAP ,@(load-unsigned-immediate regnum:utility-arg2 frame-size) ,@(invoke-hook/subroutine entry:compiler-apply-setup))))) (define-rule statement -- 2.25.1