diff options
| author | Mattias EngdegÄrd <mattiase@acm.org> | 2025-09-18 16:25:02 +0200 |
|---|---|---|
| committer | Mattias EngdegÄrd <mattiase@acm.org> | 2025-09-18 17:05:29 +0200 |
| commit | 0767f1818a25f1efeefeb24a96eecf553396b2ed (patch) | |
| tree | fe6c44cf51336ff65a205c56ed7cff00bf5f1ad6 /src/bytecode.c | |
| parent | 979ddc06019cce249a9ada359b85f3cd4b6a0149 (diff) | |
Don't save quitcounter across longjmp in exec_byte_code
* src/bytecode.c (exec_byte_code): Reset quitcounter to 1 after longjmp;
the exact value isn't important. This may reduce register pressure a
tiny bit or at least remove a useless stack slot.
Diffstat (limited to 'src/bytecode.c')
| -rw-r--r-- | src/bytecode.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/src/bytecode.c b/src/bytecode.c index debb08c2347..318b96a12be 100644 --- a/src/bytecode.c +++ b/src/bytecode.c @@ -526,7 +526,6 @@ exec_byte_code (Lisp_Object fun, ptrdiff_t args_template, for (ptrdiff_t i = nargs - rest; i < nonrest; i++) PUSH (Qnil); - unsigned char volatile saved_quitcounter; #if GCC_LINT && __GNUC__ && !__clang__ Lisp_Object *volatile saved_vectorp; unsigned char const *volatile saved_bytestr_data; @@ -960,7 +959,7 @@ exec_byte_code (Lisp_Object fun, ptrdiff_t args_template, if (sys_setjmp (c->jmp)) { - quitcounter = saved_quitcounter; + quitcounter = 1; /* no need to restore old value */ struct handler *c = handlerlist; handlerlist = c->next; top = c->bytecode_top; @@ -990,7 +989,6 @@ exec_byte_code (Lisp_Object fun, ptrdiff_t args_template, goto op_branch; } - saved_quitcounter = quitcounter; #if GCC_LINT && __GNUC__ && !__clang__ saved_vectorp = vectorp; saved_bytestr_data = bytestr_data; |
