From: Stephen Adams Date: Mon, 22 Jul 1996 17:47:18 +0000 (+0000) Subject: Improved the ascii byte store code (elide object->datum on store). X-Git-Tag: 20090517-FFI~5460 X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=f6d283209e63fa5f4660e45bdc0ae016a3722540;p=mit-scheme.git Improved the ascii byte store code (elide object->datum on store). --- 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)))