diff options
| author | Andrea Corallo | 2024-10-03 09:23:30 +0200 |
|---|---|---|
| committer | Andrea Corallo | 2024-10-03 13:10:09 +0200 |
| commit | abb932290dff3ad7456477a7401df01e3105336f (patch) | |
| tree | 437a824c7423719f97b9cfd9a8c9c539b6fd7acf /src/comp.c | |
| parent | f985bab71bc58c51d9c9dad3bac78271de8d5290 (diff) | |
| download | emacs-abb932290dff3ad7456477a7401df01e3105336f.tar.gz emacs-abb932290dff3ad7456477a7401df01e3105336f.zip | |
* src/comp.c (compile_function, Fcomp__compile_ctxt_to_file0): Use DOHASH.
Diffstat (limited to 'src/comp.c')
| -rw-r--r-- | src/comp.c | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/src/comp.c b/src/comp.c index 44ab6b34939..cee2859c2eb 100644 --- a/src/comp.c +++ b/src/comp.c | |||
| @@ -4340,11 +4340,9 @@ compile_function (Lisp_Object func) | |||
| 4340 | /* Pre-declare all basic blocks to gcc. | 4340 | /* Pre-declare all basic blocks to gcc. |
| 4341 | The "entry" block must be declared as first. */ | 4341 | The "entry" block must be declared as first. */ |
| 4342 | declare_block (Qentry); | 4342 | declare_block (Qentry); |
| 4343 | Lisp_Object blocks = CALL1I (comp-func-blocks, func); | 4343 | struct Lisp_Hash_Table *ht = XHASH_TABLE (CALL1I (comp-func-blocks, func)); |
| 4344 | struct Lisp_Hash_Table *ht = XHASH_TABLE (blocks); | 4344 | DOHASH (ht, block_name, block) |
| 4345 | DOHASH_SAFE (ht, i) | ||
| 4346 | { | 4345 | { |
| 4347 | Lisp_Object block_name = HASH_KEY (ht, i); | ||
| 4348 | if (!EQ (block_name, Qentry)) | 4346 | if (!EQ (block_name, Qentry)) |
| 4349 | declare_block (block_name); | 4347 | declare_block (block_name); |
| 4350 | } | 4348 | } |
| @@ -4355,10 +4353,8 @@ compile_function (Lisp_Object func) | |||
| 4355 | gcc_jit_lvalue_as_rvalue (comp.func_relocs)); | 4353 | gcc_jit_lvalue_as_rvalue (comp.func_relocs)); |
| 4356 | 4354 | ||
| 4357 | 4355 | ||
| 4358 | DOHASH_SAFE (ht, i) | 4356 | DOHASH (ht, block_name, block) |
| 4359 | { | 4357 | { |
| 4360 | Lisp_Object block_name = HASH_KEY (ht, i); | ||
| 4361 | Lisp_Object block = HASH_VALUE (ht, i); | ||
| 4362 | Lisp_Object insns = CALL1I (comp-block-insns, block); | 4358 | Lisp_Object insns = CALL1I (comp-block-insns, block); |
| 4363 | if (NILP (block) || NILP (insns)) | 4359 | if (NILP (block) || NILP (insns)) |
| 4364 | xsignal1 (Qnative_ice, | 4360 | xsignal1 (Qnative_ice, |
| @@ -4975,12 +4971,12 @@ DEFUN ("comp--compile-ctxt-to-file0", Fcomp__compile_ctxt_to_file0, | |||
| 4975 | 4971 | ||
| 4976 | struct Lisp_Hash_Table *func_h = | 4972 | struct Lisp_Hash_Table *func_h = |
| 4977 | XHASH_TABLE (CALL1I (comp-ctxt-funcs-h, Vcomp_ctxt)); | 4973 | XHASH_TABLE (CALL1I (comp-ctxt-funcs-h, Vcomp_ctxt)); |
| 4978 | DOHASH_SAFE (func_h, i) | 4974 | DOHASH (func_h, k, function) |
| 4979 | declare_function (HASH_VALUE (func_h, i)); | 4975 | declare_function (function); |
| 4980 | /* Compile all functions. Can't be done before because the | 4976 | /* Compile all functions. Can't be done before because the |
| 4981 | relocation structs has to be already defined. */ | 4977 | relocation structs has to be already defined. */ |
| 4982 | DOHASH_SAFE (func_h, i) | 4978 | DOHASH (func_h, k, function) |
| 4983 | compile_function (HASH_VALUE (func_h, i)); | 4979 | compile_function (function); |
| 4984 | 4980 | ||
| 4985 | /* Work around bug#46495 (GCC PR99126). */ | 4981 | /* Work around bug#46495 (GCC PR99126). */ |
| 4986 | #if defined (WIDE_EMACS_INT) \ | 4982 | #if defined (WIDE_EMACS_INT) \ |