Commit 73b64462 authored by wlott's avatar wlott
Browse files

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.
parent 1a3bb12e
......@@ -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)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment