diff options
| author | Richard M. Stallman | 1992-07-14 02:11:50 +0000 |
|---|---|---|
| committer | Richard M. Stallman | 1992-07-14 02:11:50 +0000 |
| commit | 70e1dad880ddabb7e32447526d555fd05d4aed14 (patch) | |
| tree | 02fae4c9754cc7bb387a55852aa6dd15bbb3149e | |
| parent | 0137dbf747e9fcbfe6f37c7fb0bbb29012a27179 (diff) | |
| download | emacs-70e1dad880ddabb7e32447526d555fd05d4aed14.tar.gz emacs-70e1dad880ddabb7e32447526d555fd05d4aed14.zip | |
*** empty log message ***
| -rw-r--r-- | lisp/emacs-lisp/byte-opt.el | 37 | ||||
| -rw-r--r-- | lisp/loadup.el | 2 | ||||
| -rw-r--r-- | lisp/mail/rmailsort.el | 30 |
3 files changed, 30 insertions, 39 deletions
diff --git a/lisp/emacs-lisp/byte-opt.el b/lisp/emacs-lisp/byte-opt.el index b595d6699d9..8ed85ff805c 100644 --- a/lisp/emacs-lisp/byte-opt.el +++ b/lisp/emacs-lisp/byte-opt.el | |||
| @@ -1,8 +1,6 @@ | |||
| 1 | ;;; -*- Mode:Emacs-Lisp -*- | ||
| 2 | ;;; The optimization passes of the emacs-lisp byte compiler. | 1 | ;;; The optimization passes of the emacs-lisp byte compiler. |
| 3 | 2 | ;;; Copyright (c) 1991 Free Software Foundation, Inc. | |
| 4 | ;; By Jamie Zawinski <jwz@lucid.com> and Hallvard Furuseth <hbf@ulrik.uio.no>. | 3 | ;; By Jamie Zawinski <jwz@lucid.com> and Hallvard Furuseth <hbf@ulrik.uio.no>. |
| 5 | ;; last modified 29-oct-91. | ||
| 6 | 4 | ||
| 7 | ;; This file is part of GNU Emacs. | 5 | ;; This file is part of GNU Emacs. |
| 8 | 6 | ||
| @@ -131,11 +129,6 @@ | |||
| 131 | ;;; the code that relies on dynamic scope of non-defvarred variables. | 129 | ;;; the code that relies on dynamic scope of non-defvarred variables. |
| 132 | 130 | ||
| 133 | 131 | ||
| 134 | (require 'byte-compile "bytecomp") | ||
| 135 | |||
| 136 | (or (fboundp 'byte-compile-lapcode) | ||
| 137 | (error "loading bytecomp got the wrong version of the compiler.")) | ||
| 138 | |||
| 139 | (defun byte-compile-log-lap-1 (format &rest args) | 132 | (defun byte-compile-log-lap-1 (format &rest args) |
| 140 | (if (aref byte-code-vector 0) | 133 | (if (aref byte-code-vector 0) |
| 141 | (error "The old version of the disassembler is loaded. Reload new-bytecomp as well.")) | 134 | (error "The old version of the disassembler is loaded. Reload new-bytecomp as well.")) |
| @@ -196,11 +189,11 @@ | |||
| 196 | (cdr form)))) | 189 | (cdr form)))) |
| 197 | 190 | ||
| 198 | 191 | ||
| 192 | ;; Splice the given lap code into the current instruction stream. | ||
| 193 | ;; If it has any labels in it, you're responsible for making sure there | ||
| 194 | ;; are no collisions, and that byte-compile-tag-number is reasonable | ||
| 195 | ;; after this is spliced in. The provided list is destroyed. | ||
| 199 | (defun byte-inline-lapcode (lap) | 196 | (defun byte-inline-lapcode (lap) |
| 200 | "splice the given lap code into the current instruction stream. | ||
| 201 | If it has any labels in it, you're responsible for making sure there | ||
| 202 | are no collisions, and that byte-compile-tag-number is reasonable | ||
| 203 | after this is spliced in. the provided list is destroyed." | ||
| 204 | (setq byte-compile-output (nconc (nreverse lap) byte-compile-output))) | 197 | (setq byte-compile-output (nconc (nreverse lap) byte-compile-output))) |
| 205 | 198 | ||
| 206 | 199 | ||
| @@ -528,10 +521,10 @@ after this is spliced in. the provided list is destroyed." | |||
| 528 | ((not (symbolp (, form)))) | 521 | ((not (symbolp (, form)))) |
| 529 | ((eq (, form) t))))) | 522 | ((eq (, form) t))))) |
| 530 | 523 | ||
| 524 | ;; If the function is being called with constant numeric args, | ||
| 525 | ;; evaluate as much as possible at compile-time. This optimizer | ||
| 526 | ;; assumes that the function is associative, like + or *. | ||
| 531 | (defun byte-optimize-associative-math (form) | 527 | (defun byte-optimize-associative-math (form) |
| 532 | "If the function is being called with constant numeric args, | ||
| 533 | evaluate as much as possible at compile-time. This optimizer | ||
| 534 | assumes that the function is associative, like + or *." | ||
| 535 | (let ((args nil) | 528 | (let ((args nil) |
| 536 | (constants nil) | 529 | (constants nil) |
| 537 | (rest (cdr form))) | 530 | (rest (cdr form))) |
| @@ -550,10 +543,10 @@ assumes that the function is associative, like + or *." | |||
| 550 | (apply (car form) constants)) | 543 | (apply (car form) constants)) |
| 551 | form))) | 544 | form))) |
| 552 | 545 | ||
| 546 | ;; If the function is being called with constant numeric args, | ||
| 547 | ;; evaluate as much as possible at compile-time. This optimizer | ||
| 548 | ;; assumes that the function is nonassociative, like - or /. | ||
| 553 | (defun byte-optimize-nonassociative-math (form) | 549 | (defun byte-optimize-nonassociative-math (form) |
| 554 | "If the function is being called with constant numeric args, | ||
| 555 | evaluate as much as possible at compile-time. This optimizer | ||
| 556 | assumes that the function is nonassociative, like - or /." | ||
| 557 | (if (or (not (numberp (car (cdr form)))) | 550 | (if (or (not (numberp (car (cdr form)))) |
| 558 | (not (numberp (car (cdr (cdr form)))))) | 551 | (not (numberp (car (cdr (cdr form)))))) |
| 559 | form | 552 | form |
| @@ -1052,11 +1045,11 @@ assumes that the function is nonassociative, like - or /." | |||
| 1052 | (byte-compile-tag-number 0)) | 1045 | (byte-compile-tag-number 0)) |
| 1053 | (byte-decompile-bytecode-1 bytes constvec))) | 1046 | (byte-decompile-bytecode-1 bytes constvec))) |
| 1054 | 1047 | ||
| 1048 | ;; As byte-decompile-bytecode, but updates | ||
| 1049 | ;; byte-compile-{constants, variables, tag-number}. | ||
| 1050 | ;; If the optional 3rd arg is true, then `return' opcodes are replaced | ||
| 1051 | ;; with `goto's destined for the end of the code. | ||
| 1055 | (defun byte-decompile-bytecode-1 (bytes constvec &optional make-splicable) | 1052 | (defun byte-decompile-bytecode-1 (bytes constvec &optional make-splicable) |
| 1056 | "As byte-decompile-bytecode, but updates | ||
| 1057 | byte-compile-{constants, variables, tag-number}. | ||
| 1058 | If the optional 3rd arg is true, then `return' opcodes are replaced | ||
| 1059 | with `goto's destined for the end of the code." | ||
| 1060 | (let ((length (length bytes)) | 1053 | (let ((length (length bytes)) |
| 1061 | (ptr 0) optr tag tags op offset | 1054 | (ptr 0) optr tag tags op offset |
| 1062 | lap tmp | 1055 | lap tmp |
diff --git a/lisp/loadup.el b/lisp/loadup.el index ba89a76f157..b502f457899 100644 --- a/lisp/loadup.el +++ b/lisp/loadup.el | |||
| @@ -24,7 +24,7 @@ | |||
| 24 | 24 | ||
| 25 | (load "subr") | 25 | (load "subr") |
| 26 | (garbage-collect) | 26 | (garbage-collect) |
| 27 | (load "bytecomp-runtime") | 27 | (load "byte-run") |
| 28 | (garbage-collect) | 28 | (garbage-collect) |
| 29 | (load "map-ynp") | 29 | (load "map-ynp") |
| 30 | (garbage-collect) | 30 | (garbage-collect) |
diff --git a/lisp/mail/rmailsort.el b/lisp/mail/rmailsort.el index d17c5fa6b42..32f459c0d4d 100644 --- a/lisp/mail/rmailsort.el +++ b/lisp/mail/rmailsort.el | |||
| @@ -1,24 +1,22 @@ | |||
| 1 | ;;; rmailsort.el --- Rmail: sort messages. | 1 | ;;; rmailsort.el --- Rmail: sort messages. |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1990 Masanobu UMEDA | 3 | ;; Copyright (C) 1990 Free Software Foundation, Inc. |
| 4 | ;; umerin@tc.Nagasaki.GO.JP? | ||
| 5 | |||
| 6 | ;; This file is part of GNU Emacs. | 4 | ;; This file is part of GNU Emacs. |
| 7 | 5 | ||
| 6 | ;; GNU Emacs is free software; you can redistribute it and/or modify | ||
| 7 | ;; it under the terms of the GNU General Public License as published by | ||
| 8 | ;; the Free Software Foundation; either version 1, or (at your option) | ||
| 9 | ;; any later version. | ||
| 10 | |||
| 8 | ;; GNU Emacs is distributed in the hope that it will be useful, | 11 | ;; GNU Emacs is distributed in the hope that it will be useful, |
| 9 | ;; but WITHOUT ANY WARRANTY. No author or distributor | 12 | ;; but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 10 | ;; accepts responsibility to anyone for the consequences of using it | 13 | ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 11 | ;; or for whether it serves any particular purpose or works at all, | 14 | ;; GNU General Public License for more details. |
| 12 | ;; unless he says so in writing. Refer to the GNU Emacs General Public | 15 | |
| 13 | ;; License for full details. | 16 | ;; You should have received a copy of the GNU General Public License |
| 14 | 17 | ;; along with GNU Emacs; see the file COPYING. If not, write to | |
| 15 | ;; Everyone is granted permission to copy, modify and redistribute | 18 | ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. |
| 16 | ;; GNU Emacs, but only under the conditions described in the | 19 | |
| 17 | ;; GNU Emacs General Public License. A copy of this license is | ||
| 18 | ;; supposed to have been given to you along with GNU Emacs so you | ||
| 19 | ;; can know your rights and responsibilities. It should be in a | ||
| 20 | ;; file named COPYING. Among other things, the copyright notice | ||
| 21 | ;; and this notice must be preserved on all copies. | ||
| 22 | 20 | ||
| 23 | (require 'rmail) | 21 | (require 'rmail) |
| 24 | (require 'sort) | 22 | (require 'sort) |