From 73b6446251856ea8b0c38fab3b088bcfc41e04be Mon Sep 17 00:00:00 2001 From: wlott <wlott> Date: Mon, 12 Nov 1990 00:09:47 +0000 Subject: [PATCH] Changed def-vm-support-routine to explicitly change *target-backend* instead of assuming special macroexpand support in the compiler. Changed backend-info-environment to be a list instead of a single info environment. NIL (the default) means use *info-environment*. Added slots to hold assembler data structures. --- compiler/backend.lisp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/compiler/backend.lisp b/compiler/backend.lisp index 6b45de7f5..a522decc0 100644 --- a/compiler/backend.lisp +++ b/compiler/backend.lisp @@ -75,7 +75,7 @@ (defun ,local-name ,ll ,@body) (setf (,(intern (concatenate 'simple-string "BACKEND-" (string name)) (find-package "C")) - *backend*) + *target-backend*) #',local-name)))) @@ -157,7 +157,12 @@ (parsed-vops (make-hash-table :test #'eq) :type hash-table) ;; The backend specific aspects of the info environment. - (info-environment (make-info-environment :name "Backend Info")) + (info-environment nil :type list) + + ;; Support for the assembler. + (instruction-formats (make-hash-table :test #'eq) :type hash-table) + (instruction-flavors (make-hash-table :test #'equal) :type hash-table) + (special-arg-types (make-hash-table :test #'eq) :type hash-table) . #.(mapcar #'(lambda (slot) `(,slot nil :type (or null function))) @@ -165,6 +170,7 @@ #'string< :key #'symbol-name))) + (defprinter backend name) -- GitLab