Skip to content
Snippets Groups Projects
Commit 4718ea77 authored by wlott's avatar wlott
Browse files

Initial revision

parent 3541db08
No related branches found
No related tags found
No related merge requests found
;;; -*- Log: code.log; Package: Mach -*-
;;;
;;; **********************************************************************
;;; This code was written as part of the CMU Common Lisp project at
;;; Carnegie Mellon University, and has been placed in the public domain.
;;; If you want to use this code or any part of CMU Common Lisp, please contact
;;; Scott Fahlman or slisp-group@cs.cmu.edu.
;;;
(ext:file-comment
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/rt-machdef.lisp,v 1.1 1991/04/16 19:32:33 wlott Exp $")
;;;
;;; **********************************************************************
;;;
;;; Record definitions needed for the interface to Mach.
;;;
(in-package "MACH")
(export '(sigcontext-onstack sigcontext-mask sigcontext-sp sigcontext-pc
sigcontext-psr sigcontext-g1 sigcontext-o0
sigcontext-regs sigcontext-fpregs sigcontext-y sigcontext-fsr
sigcontext *sigcontext indirect-*sigcontext))
(def-c-record sigcontext
(onstack unsigned-long)
(mask unsigned-long)
(floatsave system-area-pointer)
(sp system-area-pointer)
(fp system-area-pointer)
(ap system-area-pointer)
(iar system-area-pointer)
(icscs unsigned-long))
;;; -*- Package: RT -*-
;;;
;;; **********************************************************************
;;; This code was written as part of the CMU Common Lisp project at
;;; Carnegie Mellon University, and has been placed in the public domain.
;;; If you want to use this code or any part of CMU Common Lisp, please contact
;;; Scott Fahlman or slisp-group@cs.cmu.edu.
;;;
(ext:file-comment
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/rt-vm.lisp,v 1.1 1991/04/16 19:33:16 wlott Exp $")
;;;
;;; **********************************************************************
;;;
;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/rt-vm.lisp,v 1.1 1991/04/16 19:33:16 wlott Exp $
;;;
;;; This file contains the RT specific runtime stuff.
;;;
(in-package "RT")
(use-package "SYSTEM")
(export '(fixup-code-object internal-error-arguments))
;;;; Add machine specific features to *features*
(pushnew :ibm-pc-rt *features*)
(pushnew :ibmrt *features*)
(pushnew :rt *features*)
;;;; MACHINE-TYPE and MACHINE-VERSION
(defun machine-type ()
"Returns a string describing the type of the local machine."
"IBM PC/RT")
(defun machine-version ()
"Returns a string describing the version of the local machine."
"IBM PC/RT")
;;; FIXUP-CODE-OBJECT -- Interface
;;;
(defun fixup-code-object (code offset fixup kind)
(error "Not yet." code offset fixup kind))
;;;; Internal-error-arguments.
;;; INTERNAL-ERROR-ARGUMENTS -- interface.
;;;
;;; Given the sigcontext, extract the internal error arguments from the
;;; instruction stream.
;;;
(defun internal-error-arguments (sc)
(alien-bind ((sc sc mach:sigcontext t))
(values (error-number-or-lose 'unknown-error)
nil)))
;;; SIGCONTEXT-FLOATING-POINT-MODES -- Interface
;;;
;;; Given a sigcontext pointer, return the floating point modes word in the
;;; same format as returned by FLOATING-POINT-MODES.
;;;
(defun sigcontext-floating-point-modes (scp)
(alien-bind ((sc (make-alien 'mach:sigcontext
#.(ext:c-sizeof 'mach:sigcontext)
scp)
mach:sigcontext
t))
(alien-access (mach:sigcontext-fsr (alien-value sc)))))
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment