(DEFINE-FILE-INFO PACKAGE "XCL" READTABLE "XCL")(il:filecreated "28-Aug-87 18:42:36" il:{phylum}<pcl>pcl-env-internal.\;1 8356         il:|changes| il:|to:|  (il:vars il:pcl-env-internalcoms)                             (il:props (il:pcl-env-internal il:makefile-environment))                             (il:functions stack-eql stack-pointer-frame stack-frame-valid-p                                     stack-frame-fn-header stack-frame-pc fnheader-debugging-info                                     stack-frame-name compiled-closure-fnheader compiled-closure-env)); Copyright (c) 1987 by Xerox Corporation.  All rights reserved.(il:prettycomprint il:pcl-env-internalcoms)(il:rpaqq il:pcl-env-internalcoms ((il:* il:|;;;| "***************************************")                                   (il:* il:|;;;| " Copyright (c) 1987 Xerox Corporation.  All rights reserved.")                                   (il:* il:|;;;| "")                                   (il:* il:|;;;| "Use and copying of this software and preparation of derivative works based upon this software are permitted.  Any distribution of this software or derivative works must comply with all applicable United States export control laws.")                                   (il:* il:|;;;| " ")                                   (il:* il:|;;;| "This software is made available AS IS, and Xerox Corporation makes no  warranty about the software, its performance or its conformity to any  specification.")                                   (il:* il:|;;;| " ")                                   (il:* il:|;;;| "Any person obtaining a copy of this software is requested to send their name and post office or electronic mail address to:")                                   (il:* il:|;;;| "   CommonLoops Coordinator")                                   (il:* il:|;;;| "   Xerox Artifical Intelligence Systems")                                   (il:* il:|;;;| "   2400 Hanover St.")                                   (il:* il:|;;;| "   Palo Alto, CA 94303")                                   (il:* il:|;;;| "(or send Arpanet mail to CommonLoops-Coordinator.pa@Xerox.arpa)")                                   (il:* il:|;;;| "")                                   (il:* il:|;;;| " Suggestions, comments and requests for improvements are also welcome.")                                   (il:* il:|;;;| " *************************************************************************")                                   (il:* il:|;;;| "")                                   (il:declare\: il:dontcopy (il:prop il:makefile-environment                                                                     il:pcl-env-internal))                                                             (il:* il:\;                                                              "We're off to hack the system...")                                   (il:declare\: il:eval@compile il:dontcopy (il:files pcl::abc)                                                              (il:* il:|;;| "The Deltas and The East and The Freeze"))                                   (il:functions stack-eql stack-pointer-frame stack-frame-valid-p                                           stack-frame-fn-header stack-frame-pc                                           fnheader-debugging-info stack-frame-name                                           compiled-closure-fnheader compiled-closure-env)))(il:* il:|;;;| "***************************************")(il:* il:|;;;| " Copyright (c) 1987 Xerox Corporation.  All rights reserved.")(il:* il:|;;;| "")(il:* il:|;;;| "Use and copying of this software and preparation of derivative works based upon this software are permitted.  Any distribution of this software or derivative works must comply with all applicable United States export control laws.")(il:* il:|;;;| " ")(il:* il:|;;;| "This software is made available AS IS, and Xerox Corporation makes no  warranty about the software, its performance or its conformity to any  specification.")(il:* il:|;;;| " ")(il:* il:|;;;| "Any person obtaining a copy of this software is requested to send their name and post office or electronic mail address to:")(il:* il:|;;;| "   CommonLoops Coordinator")(il:* il:|;;;| "   Xerox Artifical Intelligence Systems")(il:* il:|;;;| "   2400 Hanover St.")(il:* il:|;;;| "   Palo Alto, CA 94303")(il:* il:|;;;| "(or send Arpanet mail to CommonLoops-Coordinator.pa@Xerox.arpa)")(il:* il:|;;;| "")(il:* il:|;;;| " Suggestions, comments and requests for improvements are also welcome.")(il:* il:|;;;| " *************************************************************************")(il:* il:|;;;| "")(il:declare\: il:dontcopy (il:putprops il:pcl-env-internal il:makefile-environment (:package "XCL" :readtable "XCL")))(il:* il:\; "We're off to hack the system...")(il:declare\: il:eval@compile il:dontcopy (il:filesload pcl::abc))(defun stack-eql (x y) "Test two stack pointers for equality" (and (il:stackp x)                                                                   (il:stackp y)                                                                   (eql (il:fetch (il:stackp il:edfxp                                                                                         )                                                                           il:of x)                                                                        (il:fetch (il:stackp il:edfxp                                                                                         )                                                                           il:of y))))(defun stack-pointer-frame (stack-pointer) (il:|fetch| (il:stackp il:edfxp) il:|of| stack-pointer))(defun stack-frame-valid-p (frame) (not (il:|fetch| (il:fx il:invalidp) il:|of| frame)))(defun stack-frame-fn-header (frame) (il:|fetch| (il:fx il:fnheader) il:|of| frame))(defun stack-frame-pc (frame) (il:|fetch| (il:fx il:pc) il:|of| frame))(defun fnheader-debugging-info (fnheader) (let* ((start-pc (il:fetch (il:fnheader il:startpc)                                                              il:of fnheader))                                                 (name-table-words                                                  (let ((size (il:fetch (il:fnheader il:ntsize)                                                                 il:of fnheader)))                                                       (if (zerop size)                                                           il:wordsperquad                                                           (* size 2))))                                                 (past-name-table-in-words (+ (il:fetch (il:fnheader                                                                                                                                                                              il:overheadwords                                                                                         )                                                                                 il:of fnheader)                                                                              name-table-words)))                                                (and (= (- start-pc (* il:bytesperword                                                                        past-name-table-in-words))                                                        il:bytespercell)                    (il:* il:|;;| "It's got a debugging-info list.")                                                     (il:\\getbaseptr fnheader                                                             past-name-table-in-words))))(defun stack-frame-name (frame) (il:|fetch| (il:fx il:framename) il:|of| frame))(defun compiled-closure-fnheader (closure) (il:|fetch| (il:compiled-closure il:fnheader) il:|of|                                                                                         closure))(defun compiled-closure-env (closure) (il:fetch (il:compiled-closure il:environment) il:of closure))(il:putprops il:pcl-env-internal il:copyright ("Xerox Corporation" 1987))(il:declare\: il:dontcopy  (il:filemap (nil)))il:stop