From: Guillermo J. Rozas Date: Wed, 12 Aug 1992 09:45:11 +0000 (+0000) Subject: Fix signedness of offset field in read-procedure. X-Git-Tag: 20090517-FFI~9127 X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=717ed2eb8e3753edd2113ce52956f5d5020f42e2;p=mit-scheme.git Fix signedness of offset field in read-procedure. --- diff --git a/v7/src/compiler/machines/i386/dassm2.scm b/v7/src/compiler/machines/i386/dassm2.scm index fedc7feb0..6164a718b 100644 --- a/v7/src/compiler/machines/i386/dassm2.scm +++ b/v7/src/compiler/machines/i386/dassm2.scm @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/i386/dassm2.scm,v 1.4 1992/08/11 02:19:44 jinx Exp $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/i386/dassm2.scm,v 1.5 1992/08/12 09:45:11 jinx Exp $ $MC68020-Header: /scheme/compiler/bobcat/RCS/dassm2.scm,v 4.18 1991/05/07 13:46:04 jinx Exp $ Copyright (c) 1992 Massachusetts Institute of Technology @@ -176,7 +176,7 @@ MIT in each case. |# ((ucode-primitive primitive-object-set-type 2) (ucode-type compiled-entry) ((ucode-primitive make-non-pointer-object 1) - (+ (read-unsigned-integer offset 32) + (+ (read-signed-integer offset 32) (+ (if *block (object-datum *block) 0) @@ -185,6 +185,9 @@ MIT in each case. |# (define (read-unsigned-integer offset size) (bit-string->unsigned-integer (read-bits offset size))) +(define (read-signed-integer offset size) + (bit-string->signed-integer (read-bits offset size))) + (define (read-bits offset size-in-bits) (let ((word (bit-string-allocate size-in-bits)) (bit-offset (* offset addressing-granularity)))