#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/i386/instr1.scm,v 1.5 1992/02/13 02:43:12 jinx Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/i386/instr1.scm,v 1.6 1992/02/13 03:22:20 jinx Exp $
Copyright (c) 1992 Massachusetts Institute of Technology
(define-bit-test-instruction BTS #xab 5))
\f
(define-instruction CALL
- (((@PCR ,dest))
+ (((@PCR (? dest)))
(BYTE (8 #xe8))
(IMMEDIATE `(- ,dest (+ *PC* ,*ADDRESS-SIZE*)) ADDRESS))
- (((@PCO ,displ))
+ (((@PCRO (? dest) (? offset)))
+ (BYTE (8 #xe8))
+ (IMMEDIATE `(- (+ ,dest ,offset) (+ *PC* ,*ADDRESS-SIZE*)) ADDRESS))
+
+ (((@PCO (? displ)))
(BYTE (8 #xe8))
(IMMEDIATE displ ADDRESS))
(BYTE (8 #xe9)
(32 (- disp 3) SIGNED)))))
+ (((@PCRO (? dest) (? offset)))
+ (VARIABLE-WIDTH
+ (disp `(- (+ ,dest ,offset) (+ *PC* 2)))
+ ((-128 127)
+ (BYTE (8 #xeb)
+ (8 disp SIGNED)))
+ ((() ())
+ (BYTE (8 #xe9)
+ (32 (- disp 3) SIGNED)))))
+
(((? dest r/mW))
(BYTE (8 #xff))
(ModR/M 4 dest))
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/i386/rules3.scm,v 1.8 1992/02/11 14:48:20 jinx Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/i386/rules3.scm,v 1.9 1992/02/13 03:18:38 jinx Exp $
$MC68020-Header: /scheme/compiler/bobcat/RCS/rules3.scm,v 4.31 1991/05/28 19:14:55 jinx Exp $
Copyright (c) 1992 Massachusetts Institute of Technology
(INVOCATION:UUO-LINK (? frame-size) (? continuation) (? name))
continuation
(LAP ,@(clear-map!)
- (JMP (@PCRO ,(free-uuo-link-label name frame-size) 2))))
+ (JMP (@PCRO ,(free-uuo-link-label name frame-size) 3))))
\f
(define-rule statement
(INVOCATION:GLOBAL-LINK (? frame-size) (? continuation) (? name))
continuation
(LAP ,@(clear-map!)
- (JMP (@PCRO ,(global-uuo-link-label name frame-size) 2))))
+ (JMP (@PCRO ,(global-uuo-link-label name frame-size) 3))))
(define-rule statement
(INVOCATION:CACHE-REFERENCE (? frame-size) (? continuation) (? extension))