;ELC   
;;; compiled by kwzh@hal.gnu.ai.mit.edu on Tue May  2 20:21:54 1995
;;; from file /gd/gnu/emacs/19.0/lisp/disass.el
;;; emacs version 19.28.90.69.
;;; bytecomp version FSF 2.10
;;; optimization is on.
;;; this file uses opcodes which do not exist in Emacs 18.

(if (and (boundp 'emacs-version)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19")))
    (error "`/gd/gnu/emacs/19.0/lisp/disass.el' was compiled for Emacs 19"))


(require (quote byte-compile) "bytecomp")
#@3 *
(defvar disassemble-column-1-indent 8 (#$ . -522))
#@3 *
(defvar disassemble-column-2-indent 10 (#$ . -580))
#@3 *
(defvar disassemble-recursive-indent 3 (#$ . -639))
#@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) "¢Á=ƒ\f ÂÃE\f„ ÅŠ„ „. È�ÈqˆÉ\f?#‘ˆ‚8 qˆÉ\fÃ#ˆ)Ã‡" [object byte-code lambda nil indent 0 interactive-p buffer "*Disassemble*" disassemble-internal] 5 (#$ . 700) (list (intern (completing-read "Disassemble function: " obarray (quote fboundp) t)) nil 0 t)])
(defalias 'disassemble-internal #[(obj indent interactive-p) "À‰‰‰9ƒ K‰‚	 Æ!ƒ! ÇÈ\"ˆ<ƒ6 @É=ƒ6 ÊA@!ˆK¢Ä=ƒB ËA<ƒS @Ì=ƒS ÍÀE<ƒc @Í=„c ÇÎ!ˆ:ƒ� Ìž„� ƒ€ Ðƒ| Ñ‚} Ò\"ˆÓ!ƒ� ÐÔ!ˆ:ƒž A‰@A‚¢ ÕHÕUƒÔ jˆ×Ø\f„· ƒ» Ù‚¼ Ú\fƒÄ Û‚Å ÚƒÐ ×Ü\"‚Ñ Ú$cˆ:ƒä @;…î @‚î GÝV…î ÝH‰ƒ\n;ƒ:ƒ AjˆÞßp\"ˆàá\n\"ƒ\nÕ‰”OâP\ná±ˆ)jˆãcˆä	p\"ˆácˆ:ƒ8åž‚DGæV…DåæHD‰%ƒ‡%A@%¢¢å=ƒ[Ajˆçcˆ%¢Ì=ƒzácˆè%)\\\"ˆ‚„Ë*ä%p\"ˆ)ácˆ):ƒžÌžƒžèÌž\"ˆ‚Åë!ƒ­è\"ˆ‚ÅìcˆË*äAƒ¿íB‚Á@p\"ˆ),…ÎÐÚ!‡" [nil args doc name macro obj subrp error "Can't disassemble #<subr %s>" autoload load t byte-code lambda "not a function" interactive-p message "Compiling %s's definition..." "Compiling definition..." byte-compile "Done compiling.  Disassembling..." 0 indent format "byte code%s%s%s:\n" " for" "" " macro" " %s" 4 princ "  doc:  " string-match "\n" " ..." "  args: " prin1 interactive 5 " interactive: " disassemble-1 disassemble-recursive-indent print-escape-newlines byte-code-function-p "Uncompiled body:  " progn] 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) "À‰:ƒ A@AA@‚ ÄHÅHÆ\n	\"À‰‰‰	\nÌÀÏž‰ƒY AT‰ ˆ>A‚9 +ƒÖÀ@§ƒs @A@@\n@A	Ajˆ\nÏ=ƒ¥ ƒ› ÑÒ\"cˆÓ	@!cˆ‚Z ƒ± ÑÔ\"cˆ\\jˆ\nƒÔ Ö×Ø\n!‰\"ƒÔ ÙÀO‚× Ú\nÛ=ƒá ÜcˆcˆÞ\\\\\\jˆßcˆ\n >ƒÓ	A@!cˆ‚Ð\ná>ƒÓ	!cˆ‚Ð\nâ>ƒ(ã	@p\"ˆ‚Ð\nä>ƒÐ	@	å	!„k	¢æ=ƒJç	ž„k	¢è=ƒ™å	A!„k	A¢æ=ƒ™ç	Ažƒ™å	!ƒxécˆ‚‰	¢æ=ƒ†êcˆ‚‰ëcˆì	-Ä\\\\À#ˆ‚Ð	¢ç=ƒ±îcˆï	-\\\"ˆ‚Ð	¢¢ç=ƒÆðcˆñò	\"ˆ‚Ðó4ã	p\"ˆ)õcˆ‚Z .À‡" [nil constvec bytes obj 1 2 byte-decompile-bytecode pc-value opname arg op lap 0 tmp tagno TAG indent format "%d:" int-to-string "%d" disassemble-column-1-indent string-match "^byte-" symbol-name 5 "<not-an-opcode>" byte-constant2 " #### shouldn't have seen constant2 here!\n  " disassemble-column-2-indent -1 " " byte-goto-ops (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 disassemble-recursive-indent "<byte code>\n" disassemble-1 "(<byte code>...)\n" mapcar #[(obj) "À	\n\\\"‡" [disassemble-1 obj indent disassemble-recursive-indent] 4] t print-escape-newlines "\n"] 5 (#$ . 2390)])
