Add hook for C back end so that generated labels are legal C labels.
authorGuillermo J. Rozas <edu/mit/csail/zurich/gjr>
Sat, 14 Nov 1992 17:24:28 +0000 (17:24 +0000)
committerGuillermo J. Rozas <edu/mit/csail/zurich/gjr>
Sat, 14 Nov 1992 17:24:28 +0000 (17:24 +0000)
v7/src/compiler/base/asstop.scm
v7/src/compiler/base/utils.scm
v7/src/compiler/machines/alpha/compiler.pkg
v7/src/compiler/machines/bobcat/compiler.pkg
v7/src/compiler/machines/i386/compiler.pkg
v7/src/compiler/machines/mips/compiler.pkg
v7/src/compiler/machines/spectrum/compiler.pkg
v7/src/compiler/machines/vax/compiler.pkg

index ce759cdeead1e4beb908f0a5d369f0cbdb0d14bc..8fe8907eafdcb7bd755db6ace736425172906123 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: asstop.scm,v 1.2 1992/10/24 16:00:56 jinx Exp $
+$Id: asstop.scm,v 1.3 1992/11/14 17:20:27 gjr Exp $
 
 Copyright (c) 1988-1992 Massachusetts Institute of Technology
 
@@ -360,4 +360,8 @@ MIT in each case. |#
      (set! *ic-procedure-headers* '())
      (phase/assemble)
      (phase/link)
-     *result*)))
\ No newline at end of file
+     *result*)))
+
+(define (canonicalize-label-name name)
+  ;; The Scheme assembler allows any Scheme symbol as a label
+  name)
\ No newline at end of file
index 63b198c8238f68e9fb0ce1703ce16e06c77452f7..801ba03ecca43b4779d6be51c96330ad0bca67b9 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: utils.scm,v 4.17 1992/10/24 21:30:18 jinx Exp $
+$Id: utils.scm,v 4.18 1992/11/14 17:20:17 gjr Exp $
 
 Copyright (c) 1987-1992 Massachusetts Institute of Technology
 
@@ -67,20 +67,19 @@ MIT in each case. |#
          (else
           (loop (cdr items) passed (cons (car items) failed))))))
 
-(define *label-separator* "-")         ; Not integrable!!!
-
 (define (generate-label #!optional prefix)
   (if (default-object? prefix) (set! prefix 'LABEL))
   (string->uninterned-symbol
-   (string-append
-    (symbol->string
-     (cond ((eq? prefix lambda-tag:unnamed) 'LAMBDA)
-          ((eq? prefix lambda-tag:let) 'LET)
-          ((eq? prefix lambda-tag:make-environment) 'MAKE-ENVIRONMENT)
-          ((eq? prefix lambda-tag:fluid-let) 'FLUID-LET)
-          (else prefix)))
-    *label-separator*
-    (number->string (generate-label-number)))))
+   (canonicalize-label-name
+    (string-append
+     (symbol->string
+      (cond ((eq? prefix lambda-tag:unnamed) 'LAMBDA)
+           ((eq? prefix lambda-tag:let) 'LET)
+           ((eq? prefix lambda-tag:make-environment) 'MAKE-ENVIRONMENT)
+           ((eq? prefix lambda-tag:fluid-let) 'FLUID-LET)
+           (else prefix)))
+     "-"
+     (number->string (generate-label-number))))))
 
 (define *current-label-number*)
 
index 4cd1e7af02ac9247b5fb3e08a66cfe35341c9724..d8d6361d87839d22d276b069156617b7273a5b40 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: compiler.pkg,v 1.2 1992/10/19 20:14:24 jinx Exp $
+$Id: compiler.pkg,v 1.3 1992/11/14 17:24:28 gjr Exp $
 
 Copyright (c) 1992 Digital Equipment Corporation (D.E.C.)
 
@@ -165,6 +165,8 @@ case.
          compiler:reset!
          cross-compile-bin-file
          cross-compile-bin-file-end)
+  (export (compiler)
+         canonicalize-label-name)
   (export (compiler fg-generator)
          compile-recursively)
   (export (compiler rtl-generator)
index 383e369bd1a4913645ddef96c457c6e500edcb63..0d11b58997f4fb664111dd0f3ac626e88d892c01 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: compiler.pkg,v 1.40 1992/10/19 19:17:02 jinx Exp $
+$Id: compiler.pkg,v 1.41 1992/11/14 17:22:55 gjr Exp $
 
 Copyright (c) 1988-1992 Massachusetts Institute of Technology
 
@@ -169,6 +169,8 @@ MIT in each case. |#
          compiler:reset!
          cross-compile-bin-file
          cross-compile-bin-file-end)
+  (export (compiler)
+         canonicalize-label-name)
   (export (compiler fg-generator)
          compile-recursively)
   (export (compiler rtl-generator)
index fce5047789909a380c0363555ed4f8f50e6a85ab..d0ab9f785f06d4e0da4ac8c0fde1070d1f1d0876 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: compiler.pkg,v 1.12 1992/10/19 20:14:15 jinx Exp $
+$Id: compiler.pkg,v 1.13 1992/11/14 17:23:19 gjr Exp $
 
 Copyright (c) 1992 Massachusetts Institute of Technology
 
@@ -166,6 +166,8 @@ MIT in each case. |#
          cross-compile-bin-file
          cross-compile-bin-file-end
          lap->code)
+  (export (compiler)
+         canonicalize-label-name)
   (export (compiler fg-generator)
          compile-recursively)
   (export (compiler rtl-generator)
index 2ac1166b83fe00d455375d25bcf9294aa4f67db8..9f242502f42b86cb87b56080b5215badd513cb2b 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: compiler.pkg,v 1.10 1992/11/06 23:15:01 cph Exp $
+$Id: compiler.pkg,v 1.11 1992/11/14 17:23:44 gjr Exp $
 
 Copyright (c) 1988-1992 Massachusetts Institute of Technology
 
@@ -169,6 +169,8 @@ MIT in each case. |#
          compiler:reset!
          cross-compile-bin-file
          cross-compile-bin-file-end)
+  (export (compiler)
+         canonicalize-label-name)
   (export (compiler fg-generator)
          compile-recursively)
   (export (compiler rtl-generator)
index b91a0346f6b27e86b8da8e26f3db8f5540d5f1e8..d5e7ff785405e44d8afa13a44968b9f748cc9ffe 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: compiler.pkg,v 1.38 1992/10/19 19:15:35 jinx Exp $
+$Id: compiler.pkg,v 1.39 1992/11/14 17:21:08 gjr Exp $
 
 Copyright (c) 1988-1992 Massachusetts Institute of Technology
 
@@ -169,6 +169,8 @@ MIT in each case. |#
          compiler:reset!
          cross-compile-bin-file
          cross-compile-bin-file-end)
+  (export (compiler)
+         canonicalize-label-name)
   (export (compiler fg-generator)
          compile-recursively)
   (export (compiler rtl-generator)
index 268cd3ed30085dc2b6b0b9d5fc37d8d0eb62a49f..477acdb9dd8bf10c4a5d0840f2d9a2359d820477 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: compiler.pkg,v 1.13 1992/10/19 20:14:08 jinx Exp $
+$Id: compiler.pkg,v 1.14 1992/11/14 17:24:05 gjr Exp $
 
 Copyright (c) 1988-1992 Massachusetts Institute of Technology
 
@@ -164,6 +164,8 @@ MIT in each case. |#
          compiler:reset!
          cross-compile-bin-file
          cross-compile-bin-file-end)
+  (export (compiler)
+         canonicalize-label-name)
   (export (compiler fg-generator)
          compile-recursively)
   (export (compiler rtl-generator)