]> git.eshelyaron.com Git - emacs.git/commitdiff
add record_unwind_current_buffer as imported
authorAndrea Corallo <andrea_corallo@yahoo.it>
Sun, 1 Sep 2019 15:16:13 +0000 (17:16 +0200)
committerAndrea Corallo <akrl@sdf.org>
Wed, 1 Jan 2020 10:37:42 +0000 (11:37 +0100)
src/comp.c

index f428a440b05bff035738c719d790abc484da65f0..58f86322ac19125bccccbcef18687cbeb6ed59f8 100644 (file)
@@ -31,6 +31,7 @@ along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.  */
 #include "puresize.h"
 #include "window.h"
 #include "dynlib.h"
+#include "buffer.h"
 
 #define DEFAULT_SPEED 2 /* See comp-speed var.  */
 
@@ -172,19 +173,16 @@ static comp_t comp;
 FILE *logfile = NULL;
 
 \f
+/*
+   Helper functions called by the runtime.
+*/
 Lisp_Object helper_save_window_excursion (Lisp_Object v1);
-
 void helper_unwind_protect (Lisp_Object handler);
-
 Lisp_Object helper_temp_output_buffer_setup (Lisp_Object x);
-
 Lisp_Object helper_unbind_n (Lisp_Object n);
-
 bool helper_PSEUDOVECTOR_TYPEP_XUNTAG (const union vectorlike_header *a,
                                       enum pvec_type code);
-
 void helper_emit_save_restriction (void);
-
 void helper_set_data_relocs (Lisp_Object *d_relocs_vec, char const *relocs);
 
 \f
@@ -1596,6 +1594,8 @@ declare_runtime_imported (void)
   args[0] = comp.lisp_obj_type;
   ADD_IMPORTED ("helper_unbind_n", comp.lisp_obj_type, 1, args);
 
+  ADD_IMPORTED ("record_unwind_current_buffer", comp.void_type, 0, NULL);
+
 #undef ADD_IMPORTED
 
   return field_list;
@@ -3069,6 +3069,9 @@ load_comp_unit (dynlib_handle_ptr handle)
        } else if (!strcmp (f_str, "helper_unbind_n"))
        {
          f_relocs[i] = (void *) helper_unbind_n;
+       } else if (!strcmp (f_str, "record_unwind_current_buffer"))
+       {
+         f_relocs[i] = (void *) record_unwind_current_buffer;
        } else
        {
          error ("Unexpected function relocation %s", f_str);