diff options
| author | Eli Zaretskii | 2006-09-02 13:40:16 +0000 |
|---|---|---|
| committer | Eli Zaretskii | 2006-09-02 13:40:16 +0000 |
| commit | eaa1e5ed0fb421b09e41568318e85a7e582490eb (patch) | |
| tree | 046acbe87f7af1e459c40639a28387c18899dfe0 | |
| parent | af91f644f4f857ddffcf3744987e89e2dc31dc19 (diff) | |
| download | emacs-eaa1e5ed0fb421b09e41568318e85a7e582490eb.tar.gz emacs-eaa1e5ed0fb421b09e41568318e85a7e582490eb.zip | |
(apply1, call2) [__GNUC__]: Declare with `__attribute__((noinline))'.
| -rw-r--r-- | src/eval.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/eval.c b/src/eval.c index 0d7a6a31038..5f3bd46c4dc 100644 --- a/src/eval.c +++ b/src/eval.c | |||
| @@ -199,6 +199,14 @@ extern Lisp_Object Qrisky_local_variable; | |||
| 199 | 199 | ||
| 200 | static Lisp_Object funcall_lambda P_ ((Lisp_Object, int, Lisp_Object*)); | 200 | static Lisp_Object funcall_lambda P_ ((Lisp_Object, int, Lisp_Object*)); |
| 201 | static void unwind_to_catch P_ ((struct catchtag *, Lisp_Object)) NO_RETURN; | 201 | static void unwind_to_catch P_ ((struct catchtag *, Lisp_Object)) NO_RETURN; |
| 202 | |||
| 203 | #if __GNUC__ | ||
| 204 | /* "gcc -O3" enables automatic function inlining, which optimizes out | ||
| 205 | the arguments for the invocations of these functions, whereas they | ||
| 206 | expect these values on the stack. */ | ||
| 207 | Lisp_Object apply1 () __attribute__((noinline)); | ||
| 208 | Lisp_Object call2 () __attribute__((noinline)); | ||
| 209 | #endif | ||
| 202 | 210 | ||
| 203 | void | 211 | void |
| 204 | init_eval_once () | 212 | init_eval_once () |