From 65f4f1d53c114dc1c9632a2cf047b7890cf31fbe Mon Sep 17 00:00:00 2001 From: fche Date: Fri, 1 Jun 2001 21:21:30 +0000 Subject: [PATCH] * sfmt optimism fix 2001-06-01 Frank Ch. Eigler * rtl.scm (hw): Encode hw access mode into name, since this is required for multi-mode hw types (memory). --- cgen/ChangeLog | 5 +++++ cgen/rtl.scm | 7 ++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/cgen/ChangeLog b/cgen/ChangeLog index c792e3c3e6..8217c65ab1 100644 --- a/cgen/ChangeLog +++ b/cgen/ChangeLog @@ -1,3 +1,8 @@ +2001-06-01 Frank Ch. Eigler + + * rtl.scm (hw): Encode hw access mode into name, since this + is required for multi-mode hw types (memory). + 2001-05-11 Ben Elliston * gas-test.scm (cgen-build.sh, gentest): Escape $ with a backslash diff --git a/cgen/rtl.scm b/cgen/rtl.scm index 6159c2e55a..d7d0025ab6 100644 --- a/cgen/rtl.scm +++ b/cgen/rtl.scm @@ -1996,8 +1996,9 @@ (if (not hw) (parse-error "hw" "invalid hardware element" hw-name)) - (let ((mode (if (eq? mode-name 'DFLT) (hw-mode hw) (mode:lookup mode-name))) - (result (new ))) ; ??? lookup-for-new? + (let* ((mode (if (eq? mode-name 'DFLT) (hw-mode hw) (mode:lookup mode-name))) + (hw-name-with-mode (symbol-append hw-name '- (obj:name mode))) + (result (new ))) ; ??? lookup-for-new? (if (not mode) (parse-error "hw" "invalid mode" mode-name)) @@ -2035,7 +2036,7 @@ ; The name of the operand must include the index so that multiple copies ; of a hardware object (e.g. h-gr[0], h-gr[14]) can be distinguished. - (let ((name (-rtx-hw-name hw hw-name index-arg))) + (let ((name (-rtx-hw-name hw hw-name-with-mode index-arg))) (send result 'set-name! name) (op:set-sem-name! result name)) -- 2.11.0