diff options
Diffstat (limited to 'src/comp.c')
| -rw-r--r-- | src/comp.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/comp.c b/src/comp.c index 9855e352785..0fc6e412924 100644 --- a/src/comp.c +++ b/src/comp.c | |||
| @@ -47,6 +47,7 @@ along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>. */ | |||
| 47 | #define TEXT_DATA_RELOC_SYM "text_data_reloc" | 47 | #define TEXT_DATA_RELOC_SYM "text_data_reloc" |
| 48 | #define TEXT_DATA_RELOC_IMPURE_SYM "text_data_reloc_imp" | 48 | #define TEXT_DATA_RELOC_IMPURE_SYM "text_data_reloc_imp" |
| 49 | #define TEXT_DATA_RELOC_EPHEMERAL_SYM "text_data_reloc_eph" | 49 | #define TEXT_DATA_RELOC_EPHEMERAL_SYM "text_data_reloc_eph" |
| 50 | #define TEXT_OPTIM_QLY "text_optim_qly" | ||
| 50 | 51 | ||
| 51 | #define SPEED XFIXNUM (Fsymbol_value (Qcomp_speed)) | 52 | #define SPEED XFIXNUM (Fsymbol_value (Qcomp_speed)) |
| 52 | #define COMP_DEBUG XFIXNUM (Fsymbol_value (Qcomp_debug)) | 53 | #define COMP_DEBUG XFIXNUM (Fsymbol_value (Qcomp_debug)) |
| @@ -1915,6 +1916,14 @@ declare_runtime_imported_funcs (void) | |||
| 1915 | static void | 1916 | static void |
| 1916 | emit_ctxt_code (void) | 1917 | emit_ctxt_code (void) |
| 1917 | { | 1918 | { |
| 1919 | /* Emit optimize qualities. */ | ||
| 1920 | Lisp_Object opt_qly[] = | ||
| 1921 | { Fcons (Qcomp_speed, | ||
| 1922 | Fsymbol_value (Qcomp_speed)), | ||
| 1923 | Fcons (Qcomp_debug, | ||
| 1924 | Fsymbol_value (Qcomp_debug)) }; | ||
| 1925 | emit_static_object (TEXT_OPTIM_QLY, Flist (2, opt_qly)); | ||
| 1926 | |||
| 1918 | comp.current_thread_ref = | 1927 | comp.current_thread_ref = |
| 1919 | gcc_jit_lvalue_as_rvalue ( | 1928 | gcc_jit_lvalue_as_rvalue ( |
| 1920 | gcc_jit_context_new_global ( | 1929 | gcc_jit_context_new_global ( |
| @@ -3414,6 +3423,7 @@ load_comp_unit (struct Lisp_Native_Comp_Unit *comp_u, bool loading_dump) | |||
| 3414 | /* Imported data. */ | 3423 | /* Imported data. */ |
| 3415 | if (!loading_dump) | 3424 | if (!loading_dump) |
| 3416 | { | 3425 | { |
| 3426 | comp_u->optimize_qualities = load_static_obj (comp_u, TEXT_OPTIM_QLY); | ||
| 3417 | comp_u->data_vec = load_static_obj (comp_u, TEXT_DATA_RELOC_SYM); | 3427 | comp_u->data_vec = load_static_obj (comp_u, TEXT_DATA_RELOC_SYM); |
| 3418 | comp_u->data_impure_vec = | 3428 | comp_u->data_impure_vec = |
| 3419 | load_static_obj (comp_u, TEXT_DATA_RELOC_IMPURE_SYM); | 3429 | load_static_obj (comp_u, TEXT_DATA_RELOC_IMPURE_SYM); |