From 9abbceb413e20de8a6cab932006b06264818bef3 Mon Sep 17 00:00:00 2001 From: "Guillermo J. Rozas" Date: Thu, 26 Aug 1993 18:00:26 +0000 Subject: [PATCH] Add missing rule. --- v7/src/compiler/machines/i386/rules2.scm | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/v7/src/compiler/machines/i386/rules2.scm b/v7/src/compiler/machines/i386/rules2.scm index f74fd11e9..f52a3705a 100644 --- a/v7/src/compiler/machines/i386/rules2.scm +++ b/v7/src/compiler/machines/i386/rules2.scm @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Id: rules2.scm,v 1.6 1993/07/16 19:27:54 gjr Exp $ +$Id: rules2.scm,v 1.7 1993/08/26 18:00:26 gjr Exp $ Copyright (c) 1992-1993 Massachusetts Institute of Technology @@ -93,6 +93,20 @@ MIT in each case. |# (LAP (CMP W ,(offset->reference! expression) (&U ,(non-pointer->literal constant))))) +(define-rule predicate + (EQ-TEST (CONSTANT (? constant-1)) (CONSTANT (? constant-2))) + (let ((always-jump + (lambda (label) + (LAP (JMP (@PCR ,label))))) + (always-fall-through + (lambda (label) + label ; ignored + (LAP)))) + (if (eq? constant-1 constant-2) + (set-current-branches! always-jump always-fall-through) + (set-current-branches! always-fall-through always-jump))) + (LAP)) + (define-rule predicate (EQ-TEST (CONS-POINTER (MACHINE-CONSTANT (? type)) (MACHINE-CONSTANT (? datum))) -- 2.25.1