From: Chris Hanson Date: Sat, 2 Jan 1988 21:02:45 +0000 (+0000) Subject: Fix bugs where immediate data and effective address were being read in X-Git-Tag: 20090517-FFI~12950 X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=4d54b2d1dce239ba70fb32c11d71ac54b3983478;p=mit-scheme.git Fix bugs where immediate data and effective address were being read in the wrong order. --- diff --git a/v7/src/compiler/machines/bobcat/dassm3.scm b/v7/src/compiler/machines/bobcat/dassm3.scm index f331b654d..f4421194d 100644 --- a/v7/src/compiler/machines/bobcat/dassm3.scm +++ b/v7/src/compiler/machines/bobcat/dassm3.scm @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/dassm3.scm,v 4.1 1987/12/30 07:04:49 cph Exp $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/dassm3.scm,v 4.2 1988/01/02 21:02:45 cph Exp $ Copyright (c) 1987 Massachusetts Institute of Technology @@ -172,8 +172,8 @@ MIT in each case. |# (undefined-instruction) `(,keyword ,size (& ,(fetch-immediate size)) (SR)))) (else - (let ((ea (decode-ea-d&a))) - `(,keyword ,size (& ,(fetch-immediate size)) ,ea)))))) + (let ((immediate (fetch-immediate size))) + `(,keyword ,size (& ,immediate) ,(decode-ea-d&a))))))) (define %ORI (logical-immediate 'ORI)) (define %ANDI (logical-immediate 'ANDI)) @@ -183,8 +183,8 @@ MIT in each case. |# (let ((size (decode-bwl (extract *ir 6 8)))) (if (null? size) (undefined-instruction) - (let ((ea (decode-ea-d&a))) - `(,keyword ,size (& ,(fetch-immediate size)) ,ea))))) + (let ((immediate (fetch-immediate size))) + `(,keyword ,size (& ,immediate) ,(decode-ea-d&a)))))) (define %SUBI (arithmetic-immediate 'SUBI)) (define %ADDI (arithmetic-immediate 'ADDI))