From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Arthur Miller Newsgroups: gmane.emacs.devel Subject: Re: Native compiler - passing command line options to C compiler Date: Wed, 01 Sep 2021 00:53:31 +0200 Message-ID: References: <83bl5fkvky.fsf@gnu.org> <83v93njc3x.fsf@gnu.org> <831r69u5s3.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="17234"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: emacs-devel@gnu.org, akrl@sdf.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Sep 01 00:54:54 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mLCeb-0004C2-4f for ged-emacs-devel@m.gmane-mx.org; Wed, 01 Sep 2021 00:54:54 +0200 Original-Received: from localhost ([::1]:44764 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mLCeZ-00087q-3e for ged-emacs-devel@m.gmane-mx.org; Tue, 31 Aug 2021 18:54:51 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:51998) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mLCdP-0007RM-Bc for emacs-devel@gnu.org; Tue, 31 Aug 2021 18:53:39 -0400 Original-Received: from mail-db8eur05olkn2097.outbound.protection.outlook.com ([40.92.89.97]:14405 helo=EUR05-DB8-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mLCdL-00039x-9P; Tue, 31 Aug 2021 18:53:38 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UT6cMYxFhOu29EvO0W81afSvrmXJLzpwMRKUIYjiz0M8BRsmDt+hrPIzbiDiOJ063xl+mmBtMTpWcsqTkiDsil1DVM8qtfEtnMFWc/I++LBbyrTuRmFjvqh7kTBBtbpPyqg3QftDsIhZ2m07gYASre9dejYKBao0R4+R6vD+6M83X9s2sFUqWqHu2DUyN4LxYJBsq5b5jNwQem2B2bpEgCRmO/raau6ydmG1iYO3fLMv2YgLXhbenl+4I6MlNBu2z5puhIDTbisv49pTyiga65tQwNMsr0PgG4ybP4+l/R3+veON804FPgmQAATYeAfdIT6hM3+j9wxwYinRviJr4w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=thvxXidzF827LafV934rtBDM6AngVwvukGZOLLrWEZc=; b=n5N0L+dlNn89XlYc9JA6Q6Lr7uR63VxxYygGOUMbLq4B0lWjo1dnMMnaF9SHnW55TqAkOsb6GeOlH7t3Ly74VhTes7CJmYao2ylIaPoNtyVUinL+pIogeLDNQvHI8i30cG6RpMPGs66IvR5exh5JM++7E8n9wbD7WotQDgayBE+cC8jqyracMuKZwhJDWVSWyaNkl+L/O7/j7e8D2d562skLZ2pK8tIy8Snx0xfnn7KFUb3+VkKWSDr6XWMvcvOFfnizs3kNU5/OEfy15JP1AWY1f2T8O69NcxMhYb/SzZwjmk+YquIf0Qs2gFBv2ie61sqaJAn/0/ky1fw+MlqicQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=live.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=thvxXidzF827LafV934rtBDM6AngVwvukGZOLLrWEZc=; b=q+9yqxv+Q0Nf6/1QbrWoOxyTkU8mNhGYQqZqPDh+6UOENBt4K13jnkhlBhnEyKgHitfy8WxuLN9L7e9cG3nhs7cmJLexFb31r7P9GqleIkSBfFGQrMV8J3MpsVIqjLNDx8TzDUmNEGaXJOjSfhhjoTG4FKHlEYn6/1EpQ5hs3JjPR36Ts9moiS7DicSfvLd0JzvJ4RIoaEEqduIcfPziq2U7KJWFiWXxD/23aAYKDNX7ZmzF4Rz+hR7jNtzZ0eal2xzVx+yV47D+1y7h13py+Y2ZC+HmIAFCJLxk25D6kCB7YmanTqvPuaJiLH7MmRKe79VdWCbPeBG8O7gnva6iJw== Original-Received: from AM6EUR05FT022.eop-eur05.prod.protection.outlook.com (2a01:111:e400:fc11::47) by AM6EUR05HT078.eop-eur05.prod.protection.outlook.com (2a01:111:e400:fc11::127) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4457.17; Tue, 31 Aug 2021 22:53:32 +0000 Original-Received: from AM9PR09MB4977.eurprd09.prod.outlook.com (2a01:111:e400:fc11::47) by AM6EUR05FT022.mail.protection.outlook.com (2a01:111:e400:fc11::168) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4457.17 via Frontend Transport; Tue, 31 Aug 2021 22:53:32 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:412AB071491ACA208AA2FAC6C56B16C4A652B05621087371C58B7D864D4FAC91; UpperCasedChecksum:7AD3059BAC86B9EAF6784E57707B979AB883C97AD07A6DDFEB178FB0330007C9; SizeAsReceived:7819; Count:46 Original-Received: from AM9PR09MB4977.eurprd09.prod.outlook.com ([fe80::35f2:ac79:ee50:c46c]) by AM9PR09MB4977.eurprd09.prod.outlook.com ([fe80::35f2:ac79:ee50:c46c%8]) with mapi id 15.20.4457.024; Tue, 31 Aug 2021 22:53:32 +0000 In-Reply-To: <831r69u5s3.fsf@gnu.org> (Eli Zaretskii's message of "Tue, 31 Aug 2021 16:01:48 +0300") X-TMN: [oxOjnSFp+2VV6sysxi4E/CIBw1A9ZAiy] X-ClientProxiedBy: AS8P251CA0007.EURP251.PROD.OUTLOOK.COM (2603:10a6:20b:2f2::7) To AM9PR09MB4977.eurprd09.prod.outlook.com (2603:10a6:20b:304::20) X-Microsoft-Original-Message-ID: <87sfypns44.fsf@live.com> X-MS-Exchange-MessageSentRepresentingType: 1 Original-Received: from pascal.homepc (81.232.177.30) by AS8P251CA0007.EURP251.PROD.OUTLOOK.COM (2603:10a6:20b:2f2::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4457.18 via Frontend Transport; Tue, 31 Aug 2021 22:53:32 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 46 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 8a58867d-8941-4bad-37d9-08d96cd22813 X-MS-TrafficTypeDiagnostic: AM6EUR05HT078: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: lkn2FrDcS6x05hktYtr9ncQPaEAyFFsZembaaUNc8TggNzCTgV8d0coIqoMgWS1ZpLbvL67JyUYLuME3tADQ6QA6lIwLf4+MGH/NNYQAbuJ2venakiqfZMKfK/Wa+28dhGwC0qfmYNfPtLt/GQxAEJjtq6BOf0UqKVZ9u8JJHtO6+o98pPsuGONmjiepcQkm4yFRrlyotqzf5aY4mCL0Bk5VZX3QjXflX1o6KbMzBllx4H5MBySPSCws5AWLcjgXFZc3vbLTljlnJMR4zkRHhCmdVDOB4J65dt86HrTsc5iTPKazcwkPgXQn9wTcvHHWXx/9L+HB32WN20h8L35NlK7ijMyaCdvo5pl8F4JZ9rr4P8NivmVcb0H4EHBctZOH2mTYpYN4KTqzIq5G90f8+Xa7sYqEZ0wyzp2+AxlXKmVerj19k8DLjv+Od4+ogbAe X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: IDMUaf+k8A2XFHftvcj0EPGck3OZ36hi2+wfksHsyrU/VyrDMfAcZTomzkQVXGy0vH9Bf4WI45zwQVn3PqZIw3ef1mIANyap/eUXXUMrkCJuvt4VOOyuuLG7ylP3BdgK23h0uad4JOJws+QItu3jtw== X-OriginatorOrg: live.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8a58867d-8941-4bad-37d9-08d96cd22813 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Aug 2021 22:53:32.4440 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: AM6EUR05FT022.eop-eur05.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6EUR05HT078 Received-SPF: pass client-ip=40.92.89.97; envelope-from=arthur.miller@live.com; helo=EUR05-DB8-obe.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, MSGID_FROM_MTA_HEADER=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:273629 Archived-At: --=-=-= Content-Type: text/plain Eli Zaretskii writes: >> From: Arthur Miller >> Cc: Eli Zaretskii , emacs-devel@gnu.org >> Date: Tue, 31 Aug 2021 07:36:47 +0200 >> >> Ok, I have made those changes. I have removed double checks from both >> add_driver_options () and add_compiler_options (). If it is not OK, I can made >> another one and revert back this change in add_driver_options. > > I think you should indeed do the latter. > >> I forgott to ask, which Changelog are we talking about? Changelo.3 in top Emacs >> dir or some other file? > > No file. We no longer maintain ChangeLog files by hand, we generate > them from Git log. So you should include in the patch the log message > formatted according to ChangeLog rules, but not a patch to any > specific ChangeLog file. Oki, guys here is one: no Windows check, but double checks left. That is what is asked? Hopefully changelog works, I have tried to conform to instruction in CONTRIBUTING and I have tried to keep mysef breef. I forgott to say, I have tested to sett options via Customize and it worked fine, so I have also removed that 'FIXME' in comp.el next to '(repeat string) option. Hope it is OK. Since this is a user visible change, does it need to be documented in some manual and NEWS too? Best regards /arthur --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=ncomp-options.patch >From 52cc5d113bcb3b8c1b0654cc855c0857b2c0bb95 Mon Sep 17 00:00:00 2001 From: Arthur Miller Date: Wed, 1 Sep 2021 00:50:49 +0200 Subject: [PATCH] Native comp add/change GCC command-line options Added support for GCC command-line options via 'native-comp-compiler-options'. Renamed 'native-comp-driver-options' to 'native-comp-backend-options'. --- lisp/emacs-lisp/bytecomp.el | 4 +- lisp/emacs-lisp/comp.el | 36 +++++++++++---- src/comp.c | 87 ++++++++++++++++++++++++++++++------- 3 files changed, 100 insertions(+), 27 deletions(-) diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index 145cdbaa6e..c2f7b951d9 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el @@ -2257,8 +2257,8 @@ byte-compile-from-buffer (push `(native-comp-speed . ,native-comp-speed) byte-native-qualities) (defvar native-comp-debug) (push `(native-comp-debug . ,native-comp-debug) byte-native-qualities) - (defvar native-comp-driver-options) - (push `(native-comp-driver-options . ,native-comp-driver-options) + (defvar native-comp-backend-options) + (push `(native-comp-backend-options . ,native-comp-backend-options) byte-native-qualities) (defvar no-native-compile) (push `(no-native-compile . ,no-native-compile) diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el index 80a1da5ad8..30febaf7d8 100644 --- a/lisp/emacs-lisp/comp.el +++ b/lisp/emacs-lisp/comp.el @@ -166,14 +166,24 @@ native-comp-async-query-on-exit :type 'boolean :version "28.1") -(defcustom native-comp-driver-options nil +(defcustom native-comp-compiler-options nil + "Command line options passed verbatim to GCC compiler. +Note that not all options are meaningful and some options might even +break your Emacs. Use at own risk. + +Passing these options is only available in libgccjit version 9 +and above." + :type '(repeat string) + :version "28.1") + +(defcustom native-comp-backend-options nil "Options passed verbatim to the native compiler's back-end driver. Note that not all options are meaningful; typically only the options affecting the assembler and linker are likely to be useful. Passing these options is only available in libgccjit version 9 and above." - :type '(repeat string) ; FIXME is this right? + :type '(repeat string) :version "28.1") (defcustom comp-libgccjit-reproducer nil @@ -755,8 +765,10 @@ comp-data-container :documentation "Default speed for this compilation unit.") (debug native-comp-debug :type number :documentation "Default debug level for this compilation unit.") - (driver-options native-comp-driver-options :type list - :documentation "Options for the GCC driver.") + (compiler-options native-comp-compiler-options :type list + :documentation "Options for the GCC compiler.") + (backend-options native-comp-backend-options :type list + :documentation "Options for the GCC driver.") (top-level-forms () :type list :documentation "List of spilled top level forms.") (funcs-h (make-hash-table :test #'equal) :type hash-table @@ -1347,7 +1359,9 @@ comp-spill-lap-function byte-native-qualities) (comp-ctxt-debug comp-ctxt) (alist-get 'native-comp-debug byte-native-qualities) - (comp-ctxt-driver-options comp-ctxt) (alist-get 'native-comp-driver-options + (comp-ctxt-compiler-options comp-ctxt) (alist-get 'native-comp-compiler-options + byte-native-qualities) + (comp-ctxt-backend-options comp-ctxt) (alist-get 'native-comp-backend-options byte-native-qualities) (comp-ctxt-top-level-forms comp-ctxt) (cl-loop @@ -3663,8 +3677,10 @@ comp-final comp-libgccjit-reproducer ,comp-libgccjit-reproducer comp-ctxt ,comp-ctxt native-comp-eln-load-path ',native-comp-eln-load-path - native-comp-driver-options - ',native-comp-driver-options + native-comp-backend-options + ',native-comp-backend-options + native-comp-compiler-options + ',native-comp-compiler-options load-path ',load-path) ,native-comp-async-env-modifier-form (message "Compiling %s..." ',output) @@ -3926,8 +3942,10 @@ comp-run-async-workers comp-libgccjit-reproducer ,comp-libgccjit-reproducer comp-async-compilation t native-comp-eln-load-path ',native-comp-eln-load-path - native-comp-driver-options - ',native-comp-driver-options + native-comp-backend-options + ',native-comp-backend-options + native-comp-compiler-options + ',native-comp-compiler-options load-path ',load-path warning-fill-column most-positive-fixnum) ,native-comp-async-env-modifier-form diff --git a/src/comp.c b/src/comp.c index 3ea2836560..7fb74c88d2 100644 --- a/src/comp.c +++ b/src/comp.c @@ -509,7 +509,8 @@ #define NUM_CAST_TYPES 15 typedef struct { EMACS_INT speed; EMACS_INT debug; - Lisp_Object driver_options; + Lisp_Object backend_options; + Lisp_Object compiler_options; gcc_jit_context *ctxt; gcc_jit_type *void_type; gcc_jit_type *bool_type; @@ -4361,15 +4362,14 @@ DEFUN ("comp--release-ctxt", Fcomp__release_ctxt, Scomp__release_ctxt, } #pragma GCC diagnostic ignored "-Waddress" -DEFUN ("comp-native-driver-options-effective-p", - Fcomp_native_driver_options_effective_p, - Scomp_native_driver_options_effective_p, +DEFUN ("comp-native-backend-options-effective-p", + Fcomp_native_backend_options_effective_p, + Scomp_native_backend_options_effective_p, 0, 0, 0, - doc: /* Return t if `comp-native-driver-options' is effective. */) + doc: /* Return t if `comp-native-backend-options' is effective. */) (void) { -#if defined (LIBGCCJIT_HAVE_gcc_jit_context_add_driver_option) \ - || defined (WINDOWSNT) +#if defined (LIBGCCJIT_HAVE_gcc_jit_context_add_driver_option) if (gcc_jit_context_add_driver_option) return Qt; #endif @@ -4377,15 +4377,30 @@ DEFUN ("comp-native-driver-options-effective-p", } #pragma GCC diagnostic pop +#pragma GCC diagnostic ignored "-Waddress" +DEFUN ("comp-native-compiler-options-effective-p", + Fcomp_native_compiler_options_effective_p, + Scomp_native_compiler_options_effective_p, + 0, 0, 0, + doc: /* Return t if `comp-native-compiler-options' is effective. */) + (void) +{ +#if defined (LIBGCCJIT_HAVE_gcc_jit_context_add_command_line_option) + if (gcc_jit_context_add_command_line_option) + return Qt; +#endif + return Qnil; +} +#pragma GCC diagnostic pop + static void add_driver_options (void) { Lisp_Object options = Fsymbol_value (Qnative_comp_driver_options); -#if defined (LIBGCCJIT_HAVE_gcc_jit_context_add_driver_option) \ - || defined (WINDOWSNT) +#if defined (LIBGCCJIT_HAVE_gcc_jit_context_add_driver_option) load_gccjit_if_necessary (true); - if (!NILP (Fcomp_native_driver_options_effective_p ())) + if (!NILP (Fcomp_native_backend_options_effective_p ())) FOR_EACH_TAIL (options) gcc_jit_context_add_driver_option (comp.ctxt, /* FIXME: Need to encode @@ -4397,15 +4412,15 @@ add_driver_options (void) if (CONSP (options)) xsignal1 (Qnative_compiler_error, build_string ("Customizing native compiler options" - " via `comp-native-driver-options' is" + " via `comp-native-backend-options' is" " only available on libgccjit version 9" " and above.")); /* Captured `comp-native-driver-options' because file-local. */ #if defined (LIBGCCJIT_HAVE_gcc_jit_context_add_driver_option) \ || defined (WINDOWSNT) - options = comp.driver_options; - if (!NILP (Fcomp_native_driver_options_effective_p ())) + options = comp.backend_options; + if (!NILP (Fcomp_native_backend_options_effective_p ())) FOR_EACH_TAIL (options) gcc_jit_context_add_driver_option (comp.ctxt, /* FIXME: Need to encode @@ -4416,6 +4431,43 @@ add_driver_options (void) #endif } +static void +add_compiler_options (void) +{ + Lisp_Object options = Fsymbol_value (Qnative_comp_compiler_options); + +#if defined (LIBGCCJIT_HAVE_gcc_jit_context_add_command_line_option) + load_gccjit_if_necessary (true); + if (!NILP (Fcomp_native_compiler_options_effective_p ())) + FOR_EACH_TAIL (options) + gcc_jit_context_add_command_line_option (comp.ctxt, + /* FIXME: Need to encode + this, but how? either + ENCODE_FILE or + ENCODE_SYSTEM. */ + SSDATA (XCAR (options))); +#endif + if (CONSP (options)) + xsignal1 (Qnative_compiler_error, + build_string ("Customizing native compiler options" + " via `comp-native-compiler-options' is" + " only available on libgccjit version 9" + " and above.")); + + /* Captured `comp-native-compiler-options' because file-local. */ +#if defined (LIBGCCJIT_HAVE_gcc_jit_context_add_command_line_option) + options = comp.compiler_options; + if (!NILP (Fcomp_native_compiler_options_effective_p ())) + FOR_EACH_TAIL (options) + gcc_jit_context_add_command_line_option (comp.ctxt, + /* FIXME: Need to encode + this, but how? either + ENCODE_FILE or + ENCODE_SYSTEM. */ + SSDATA (XCAR (options))); +#endif +} + DEFUN ("comp--compile-ctxt-to-file", Fcomp__compile_ctxt_to_file, Scomp__compile_ctxt_to_file, 1, 1, 0, @@ -4460,7 +4512,7 @@ DEFUN ("comp--compile-ctxt-to-file", Fcomp__compile_ctxt_to_file, eassert (comp.speed < INT_MAX); comp.debug = XFIXNUM (CALL1I (comp-ctxt-debug, Vcomp_ctxt)); eassert (comp.debug < INT_MAX); - comp.driver_options = CALL1I (comp-ctxt-driver-options, Vcomp_ctxt); + comp.backend_options = CALL1I (comp-ctxt-backend-options, Vcomp_ctxt); if (comp.debug) gcc_jit_context_set_bool_option (comp.ctxt, @@ -4536,6 +4588,7 @@ DEFUN ("comp--compile-ctxt-to-file", Fcomp__compile_ctxt_to_file, #endif add_driver_options (); + add_compiler_options (); if (comp.debug > 1) gcc_jit_context_dump_to_file (comp.ctxt, @@ -5241,7 +5294,8 @@ syms_of_comp (void) DEFSYM (Qnative_comp_speed, "native-comp-speed"); DEFSYM (Qnative_comp_debug, "native-comp-debug"); - DEFSYM (Qnative_comp_driver_options, "native-comp-driver-options"); + DEFSYM (Qnative_comp_backend_options, "native-comp-backend-options"); + DEFSYM (Qnative_comp_compiler_options, "native-comp-compiler-options"); DEFSYM (Qcomp_libgccjit_reproducer, "comp-libgccjit-reproducer"); /* Limple instruction set. */ @@ -5350,7 +5404,8 @@ syms_of_comp (void) defsubr (&Scomp__subr_signature); defsubr (&Scomp_el_to_eln_rel_filename); defsubr (&Scomp_el_to_eln_filename); - defsubr (&Scomp_native_driver_options_effective_p); + defsubr (&Scomp_native_backend_options_effective_p); + defsubr (&Scomp_native_compiler_options_effective_p); defsubr (&Scomp__install_trampoline); defsubr (&Scomp__init_ctxt); defsubr (&Scomp__release_ctxt); -- 2.33.0 --=-=-=--