From 1cfc1d91b7b6b3ce90eb944f12dab6723a58be2d Mon Sep 17 00:00:00 2001 From: Stas Boukarev Date: Tue, 29 Sep 2015 03:44:33 +0300 Subject: [PATCH] ARM64: fix compute-fun. OFSSET is in bytes, not words. --- src/compiler/arm64/system.lisp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/compiler/arm64/system.lisp b/src/compiler/arm64/system.lisp index 829b20d66..9da45fac1 100644 --- a/src/compiler/arm64/system.lisp +++ b/src/compiler/arm64/system.lisp @@ -194,8 +194,8 @@ (:temporary (:scs (non-descriptor-reg)) ndescr) (:generator 10 (loadw ndescr code 0 other-pointer-lowtag) - (inst add ndescr offset (lsr ndescr n-widetag-bits)) - (inst lsl ndescr ndescr word-shift) + (inst lsr ndescr ndescr n-widetag-bits) + (inst add ndescr offset (lsl ndescr word-shift)) (inst sub ndescr ndescr (- other-pointer-lowtag fun-pointer-lowtag)) (inst add func code ndescr))) ;;; -- 2.11.4.GIT