From f6d283209e63fa5f4660e45bdc0ae016a3722540 Mon Sep 17 00:00:00 2001 From: Stephen Adams Date: Mon, 22 Jul 1996 17:47:18 +0000 Subject: [PATCH] Improved the ascii byte store code (elide object->datum on store). --- v8/src/compiler/machines/spectrum/rules1.scm | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/v8/src/compiler/machines/spectrum/rules1.scm b/v8/src/compiler/machines/spectrum/rules1.scm index 373822708..f1fd2e396 100644 --- a/v8/src/compiler/machines/spectrum/rules1.scm +++ b/v8/src/compiler/machines/spectrum/rules1.scm @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Id: rules1.scm,v 1.3 1995/03/12 16:04:31 adams Exp $ +$Id: rules1.scm,v 1.4 1996/07/22 17:47:18 adams Exp $ Copyright (c) 1989-1994 Massachusetts Institute of Technology @@ -421,6 +421,13 @@ MIT in each case. |# (CHAR->ASCII (REGISTER (? source)))) (store-byte (standard-source! source) offset (standard-source! base))) +(define-rule statement + ;; convert char object to ASCII byte and store it in memory + ;; register + byte offset <- contents of register (clear top bits) + (ASSIGN (BYTE-OFFSET (REGISTER (? base)) (MACHINE-CONSTANT (? offset))) + (OBJECT->DATUM (REGISTER (? source)))) + (store-byte (standard-source! source) offset (standard-source! base))) + ;; store null byte in memory (define-rule statement (ASSIGN (BYTE-OFFSET (REGISTER (? base)) (MACHINE-CONSTANT (? offset))) -- 2.25.1