aboutsummaryrefslogtreecommitdiffstats
path: root/src/comp.c
diff options
context:
space:
mode:
authorAndrea Corallo2024-10-03 09:23:30 +0200
committerAndrea Corallo2024-10-03 13:10:09 +0200
commitabb932290dff3ad7456477a7401df01e3105336f (patch)
tree437a824c7423719f97b9cfd9a8c9c539b6fd7acf /src/comp.c
parentf985bab71bc58c51d9c9dad3bac78271de8d5290 (diff)
downloademacs-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.c18
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) \