Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
emacs
emacs
Commits
cffcfe66
Commit
cffcfe66
authored
Jul 20, 1994
by
Richard M. Stallman
Browse files
(byte-decompile-bytecode-1): Don't add pc values
if make-spliceable is non-nil. (Arg renamed from make-splicable.)
parent
3c7e6b9d
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
9 additions
and
4 deletions
+9
-4
lisp/emacs-lisp/byte-opt.el
lisp/emacs-lisp/byte-opt.el
+9
-4
No files found.
lisp/emacs-lisp/byte-opt.el
View file @
cffcfe66
...
...
@@ -1094,16 +1094,21 @@
;; As byte-decompile-bytecode, but updates
;; byte-compile-{constants, variables, tag-number}.
;; If
the optional 3rd arg
is true, then `return' opcodes are replaced
;; If
MAKE-SPLICEABLE
is true, then `return' opcodes are replaced
;; with `goto's destined for the end of the code.
(
defun
byte-decompile-bytecode-1
(
bytes
constvec
&optional
make-splicable
)
;; That is for use by the compiler.
;; If MAKE-SPLICEABLE is nil, we are being called for the disassembler.
;; In that case, we put a pc value into the list
;; before each insn (or its label).
(
defun
byte-decompile-bytecode-1
(
bytes
constvec
&optional
make-spliceable
)
(
let
((
length
(
length
bytes
))
(
ptr
0
)
optr
tag
tags
op
offset
lap
tmp
endtag
(
retcount
0
))
(
while
(
not
(
=
ptr
length
))
(
setq
lap
(
cons
ptr
lap
))
(
or
make-spliceable
(
setq
lap
(
cons
ptr
lap
)))
(
setq
op
(
aref
bytes
ptr
)
optr
ptr
offset
(
disassemble-offset
))
; this does dynamic-scope magic
...
...
@@ -1125,7 +1130,7 @@
(
car
(
setq
byte-compile-variables
(
cons
(
list
tmp
)
byte-compile-variables
)))))))
((
and
make-splicable
((
and
make-splic
e
able
(
eq
op
'byte-return
))
(
if
(
=
ptr
(
1-
length
))
(
setq
op
nil
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment