;ELC   
;;; Compiled by pot@pot.cnuce.cnr.it on Tue Mar 18 15:39:07 2003
;;; from file /home/pot/gnu/emacs-pretest.new/lisp/emacs-lisp/disass.el
;;; in Emacs version 21.3
;;; with bytecomp version 2.85.4.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.
(if (and (boundp 'emacs-version)
	 (< (aref emacs-version (1- (length emacs-version))) ?A)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`disass.el' was compiled for Emacs 19.29 or later"))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(require 'byte-compile "bytecomp")
#@3 *
(defvar disassemble-column-1-indent 8 (#$ . -659))
#@3 *
(defvar disassemble-column-2-indent 10 (#$ . -717))
#@3 *
(defvar disassemble-recursive-indent 3 (#$ . -776))
#@274 Print disassembled code for OBJECT in (optional) BUFFER.
OBJECT can be a symbol defined as a function, or a function itself
(a lambda expression or a compiled-function object).
If OBJECT is not already compiled, we compile it, but do not
redefine OBJECT if it is a symbol.
(defalias 'disassemble #[(object &optional buffer indent interactive-p) "\242\304=\203\f \305\306E	\204 \307\212\n\204 \204+ \310\220\310q\210\311	\n?#\221\210\2024 q\210\311	\306#\210)\306\207" [object indent interactive-p buffer byte-code lambda nil 0 "*Disassemble*" disassemble-internal] 5 (#$ . 837) (list (intern (completing-read "Disassemble function: " obarray 'fboundp t)) nil 0 t)])
(defalias 'disassemble-internal #[(obj indent interactive-p) "\306\211\211\211\f9\203 \f\fK\211\202	 \307\f!\203! \310\311\n\"\210\f<\2036 \f@\312=\2036 \313\fA@!\210\nK\f\242\303=\203B \314\fA\f<\203S \f@\315=\203S \316\306\fE\f<\203c \f@\316=\204c \310\317!\210\f:\203\213 \315\f\236\204\213 \203 \320\n\203{ \321\202| \322\n\"\210\323\f!\203\213 \320\324!\210\f:\203\234 \fA\211@\fA\202\255 \325\f!\203\251 \f\326H\202\255 \310\327!\210\330-!\203\337 -j\210\331\332\204\302 \n\203\306 \333\202\307 \334\203\317 \335\202\320 \334\n\203\333 \331\336\n\"\202\334 \334$c\210\f:\203\357 \f@;\205\363 \f@\202\363 \337\f\314\"\211\203\"	;\203\"\f:\203\fA-j\210\340\341p\"\210\342\343	\"\203	\326\211\224O\344P	\343\261\210)-j\210\345c\210\346p\"\210\343c\210\f:\203=\347\f\236\202I\fG\350V\205I\347\f\350HD\211'\203\214'A@'\f\242\242\347=\203`\fA-j\210\351c\210'\242\315=\203\343c\210\352'-.\\\"\210\202\211\314/\346'p\"\210)\343c\210)\f:\203\243\315\f\236\203\243\352\315\f\236-\"\210\202\312\325\f!\203\262\352\f-\"\210\202\312\353c\210\314/\346\fA\203\304\354\fB\202\306\f@p\"\210),\205\322\320\334!\207" [args doc name macro obj interactive-p nil subrp error "Can't disassemble #<subr %s>" autoload load t byte-code lambda "not a function" message "Compiling %s's definition..." "Compiling definition..." byte-compile "Done compiling.  Disassembling..." byte-code-function-p 0 "Compilation failed" zerop format "byte code%s%s%s:\n" " for" "" " macro" " %s" documentation princ "  doc:  " string-match "\n" " ..." "  args: " prin1 interactive 5 " interactive: " disassemble-1 "Uncompiled body:  " progn indent disassemble-recursive-indent print-escape-newlines] 8])
#@120 Prints the byte-code call OBJ in the current buffer.
OBJ should be a call to BYTE-CODE generated by the byte compiler.
(defalias 'disassemble-1 #[(obj indent) "\306\211\n:\203 \nA@\nAA@\202! \307\n!\210\n\310H\n\311H\312\313	!\"\306\211\211\211./\314\306//01\315/\236\2110\203\\ 0A1T\2111\240\2100/>A/\202< +/\203\270\306/@\247\203t /@/A//@@./@A/A/2j\210.\315=\203\242 \203\231 \316\317\"c\210\320@!c\210\202] \203\254 \316\321\"c\21023\\j\210.\203\314 \322\323\324.!\211\"\203\314 \f\325\306O\202\316 \326.\327=\203\330 \330c\210\fc\21023\\4\\\331\\j\210\332c\210.5>\203\374 \320A@!c\210\202\262.\333>\203\320!c\210\202\262.\334>\203\335@p\"\210\202\262.\336>\203\262@\337!\204U\242\340=\2038\341\236\204U\242\342=\203\200\337A!\204UA\242\340=\203\200\341A\236\203\200\337!\203a\343c\210\202q\242\340=\203n\344c\210\202q\345c\210\34626\\\310\\\306#\210\202\262\242\341=\203\226\347c\210\35026\\\"\210\202\262\242\242\341=\203\251\351c\210\352\353\"\210\202\262\3547\335p\"\210)\355c\210\202] .\306\207" [constvec bytes obj pc-value opname arg nil fetch-bytecode 1 2 byte-decompile-bytecode string-as-unibyte 0 TAG format "%d:" int-to-string "%d" string-match "^byte-" symbol-name 5 "<not-an-opcode>" byte-constant2 " #### shouldn't have seen constant2 here!\n  " -1 " " (byte-call byte-unbind byte-listN byte-concatN byte-insertN) (byte-varref byte-varset byte-varbind) prin1 (byte-constant byte-constant2) byte-code-function-p lambda byte-code macro "<compiled-function>\n" "<compiled lambda>" "<compiled macro>\n" disassemble-internal "<byte code>\n" disassemble-1 "(<byte code>...)\n" mapcar #[(obj) "\303	\n\\\"\207" [obj indent disassemble-recursive-indent disassemble-1] 4] t "\n" op lap tmp tagno indent disassemble-column-1-indent disassemble-column-2-indent byte-goto-ops disassemble-recursive-indent print-escape-newlines] 5 (#$ . 3252)])
(provide 'disass)
