unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#46983: 28.0.50; [feature/native] Allow .el files to specify non-default values for native-compilation options
@ 2021-03-07  5:43 Eli Zaretskii
  2021-03-07  6:54 ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
  0 siblings, 1 reply; 10+ messages in thread
From: Eli Zaretskii @ 2021-03-07  5:43 UTC (permalink / raw)
  To: 46983

This is a feature request.  Since there are various stability and
reliability issues with libgccjit, some Emacs Lisp files may need to
specify non-default values for some native-compilation options, such as
'comp-speed' or 'comp-native-driver-options'.  Moreover, some files may
need to prevent native-compilation entirely.  The natural way of
specifying these is via file-local variables; this would require the
native-compilation process to either read and process that section up
front, or load the file in a regular buffer and then use buffer-local
values of these variables.


In GNU Emacs 28.0.50 (build 1072, i686-pc-mingw32)
 of 2021-03-06 built on HOME-C4E4A596F7
Repository revision: 9cbdf20316e1cec835a7dfe28877142e437976f4
Repository branch: master
Windowing system distributor 'Microsoft Corp.', version 5.1.2600
System Description: Microsoft Windows XP Service Pack 3 (v5.1.0.2600)

Configured using:
 'configure -C --prefix=/d/usr --with-wide-int --with-modules
 --enable-checking=yes,glyphs 'CFLAGS=-O0 -gdwarf-4 -g3''

Configured features:
ACL GIF GMP GNUTLS HARFBUZZ JPEG JSON LCMS2 LIBXML2 MODULES NOTIFY
W32NOTIFY PDUMPER PNG RSVG SOUND THREADS TIFF TOOLKIT_SCROLL_BARS XPM
ZLIB

Important settings:
  value of $LANG: ENU
  locale-coding-system: cp1255

Major mode: Lisp Interaction

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message rmc puny dired dired-loaddefs
rfc822 mml mml-sec epa derived epg epg-config gnus-util rmail
rmail-loaddefs auth-source cl-seq eieio eieio-core cl-macs
eieio-loaddefs password-cache json map text-property-search time-date
subr-x seq byte-opt gv bytecomp byte-compile cconv mm-decode mm-bodies
mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader cl-loaddefs
cl-lib sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils
iso-transl tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel dos-w32 ls-lisp disp-table term/w32-win w32-win
w32-vars term/common-win tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode elisp-mode lisp-mode
prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu
timer select scroll-bar mouse jit-lock font-lock syntax facemenu
font-core term/tty-colors frame minibuffer cl-generic cham georgian
utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european
ethiopic indian cyrillic chinese composite charscript charprop
case-table epa-hook jka-cmpr-hook help simple abbrev obarray
cl-preloaded nadvice button loaddefs faces cus-face macroexp files
window text-properties overlay sha1 md5 base64 format env code-pages
mule custom widget hashtable-print-readable backquote threads w32notify
w32 lcms2 multi-tty make-network-process emacs)

Memory information:
((conses 16 56666 13540)
 (symbols 48 7799 1)
 (strings 16 21544 2081)
 (string-bytes 1 626660)
 (vectors 16 13060)
 (vector-slots 8 172279 12109)
 (floats 8 23 236)
 (intervals 40 255 62)
 (buffers 888 10))





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#46983: 28.0.50; [feature/native] Allow .el files to specify non-default values for native-compilation options
  2021-03-07  5:43 bug#46983: 28.0.50; [feature/native] Allow .el files to specify non-default values for native-compilation options Eli Zaretskii
@ 2021-03-07  6:54 ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2021-03-07  7:23   ` Eli Zaretskii
  2021-03-07 19:35   ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
  0 siblings, 2 replies; 10+ messages in thread
From: Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2021-03-07  6:54 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 46983

Eli Zaretskii <eliz@gnu.org> writes:

> This is a feature request.  Since there are various stability and
> reliability issues with libgccjit, some Emacs Lisp files may need to
> specify non-default values for some native-compilation options, such as
> 'comp-speed' or 'comp-native-driver-options'.

Hi Eli,

if the interface we'd like to expose is the through file-local variables
then this should work already for `comp-speed' and `comp-debug',
I'extend it for `comp-native-driver-options'.

> Moreover, some files may
> need to prevent native-compilation entirely.

Setting comp-speed to -1 achieve something close but still producing a
.eln as output.  I guess we want also a way to prevent
native-compilation entirely correct?

Thanks

  Andrea





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#46983: 28.0.50; [feature/native] Allow .el files to specify non-default values for native-compilation options
  2021-03-07  6:54 ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2021-03-07  7:23   ` Eli Zaretskii
  2021-03-12 12:25     ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2021-03-07 19:35   ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
  1 sibling, 1 reply; 10+ messages in thread
From: Eli Zaretskii @ 2021-03-07  7:23 UTC (permalink / raw)
  To: Andrea Corallo; +Cc: 46983

> From: Andrea Corallo <akrl@sdf.org>
> Cc: 46983@debbugs.gnu.org
> Date: Sun, 07 Mar 2021 06:54:06 +0000
> 
> > Moreover, some files may
> > need to prevent native-compilation entirely.
> 
> Setting comp-speed to -1 achieve something close but still producing a
> .eln as output.  I guess we want also a way to prevent
> native-compilation entirely correct?

Yes.  Something similar to no-byte-compile, I think.





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#46983: 28.0.50; [feature/native] Allow .el files to specify non-default values for native-compilation options
  2021-03-07  6:54 ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2021-03-07  7:23   ` Eli Zaretskii
@ 2021-03-07 19:35   ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2021-03-07 20:18     ` Eli Zaretskii
  1 sibling, 1 reply; 10+ messages in thread
From: Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2021-03-07 19:35 UTC (permalink / raw)
  To: 46983; +Cc: eliz

Andrea Corallo via "Bug reports for GNU Emacs, the Swiss army knife of
text editors" <bug-gnu-emacs@gnu.org> writes:

> Eli Zaretskii <eliz@gnu.org> writes:
>
>> This is a feature request.  Since there are various stability and
>> reliability issues with libgccjit, some Emacs Lisp files may need to
>> specify non-default values for some native-compilation options, such as
>> 'comp-speed' or 'comp-native-driver-options'.
>
> Hi Eli,
>
> if the interface we'd like to expose is the through file-local variables
> then this should work already for `comp-speed' and `comp-debug',
> I'extend it for `comp-native-driver-options'.

Okay dbdc44db15 should allow for `comp-native-driver-options' as
file-local to be captured correctly.

But...

I've only added 'gcc_jit_context_add_driver_option' to GCC 9 so we have
to decide what to do when this is not available on older GCC.

Till today we raised an error as the use of `comp-native-driver-options'
was a deliberate user choice and it's effectiveness was testable with
`comp-native-driver-options-effective-p', but if this becomes part of
source code we should probably transition to a warining? WDYT?

Thanks

  Andrea





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#46983: 28.0.50; [feature/native] Allow .el files to specify non-default values for native-compilation options
  2021-03-07 19:35   ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2021-03-07 20:18     ` Eli Zaretskii
  2021-03-07 20:28       ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
  0 siblings, 1 reply; 10+ messages in thread
From: Eli Zaretskii @ 2021-03-07 20:18 UTC (permalink / raw)
  To: Andrea Corallo; +Cc: 46983

> From: Andrea Corallo <akrl@sdf.org>
> Cc: Eli Zaretskii <eliz@gnu.org>, 46983@debbugs.gnu.org
> Date: Sun, 07 Mar 2021 19:35:01 +0000
> 
> Okay dbdc44db15 should allow for `comp-native-driver-options' as
> file-local to be captured correctly.

Thanks.

> I've only added 'gcc_jit_context_add_driver_option' to GCC 9 so we have
> to decide what to do when this is not available on older GCC.
> 
> Till today we raised an error as the use of `comp-native-driver-options'
> was a deliberate user choice and it's effectiveness was testable with
> `comp-native-driver-options-effective-p', but if this becomes part of
> source code we should probably transition to a warining? WDYT?

I'd say, if this is set in file-local variables, just ignore the
setting if it cannot be applied.  Is this possible to ignore it in
file-local vars, but still signal an error if customized?





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#46983: 28.0.50; [feature/native] Allow .el files to specify non-default values for native-compilation options
  2021-03-07 20:18     ` Eli Zaretskii
@ 2021-03-07 20:28       ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2021-03-07 21:21         ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
  0 siblings, 1 reply; 10+ messages in thread
From: Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2021-03-07 20:28 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 46983

Eli Zaretskii <eliz@gnu.org> writes:

>> From: Andrea Corallo <akrl@sdf.org>
>> Cc: Eli Zaretskii <eliz@gnu.org>, 46983@debbugs.gnu.org
>> Date: Sun, 07 Mar 2021 19:35:01 +0000
>> 
>> Okay dbdc44db15 should allow for `comp-native-driver-options' as
>> file-local to be captured correctly.
>
> Thanks.
>
>> I've only added 'gcc_jit_context_add_driver_option' to GCC 9 so we have
>> to decide what to do when this is not available on older GCC.
>> 
>> Till today we raised an error as the use of `comp-native-driver-options'
>> was a deliberate user choice and it's effectiveness was testable with
>> `comp-native-driver-options-effective-p', but if this becomes part of
>> source code we should probably transition to a warining? WDYT?
>
> I'd say, if this is set in file-local variables, just ignore the
> setting if it cannot be applied.  Is this possible to ignore it in
> file-local vars, but still signal an error if customized?

Right we can handle the two cases separately, doing it.

  Andrea





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#46983: 28.0.50; [feature/native] Allow .el files to specify non-default values for native-compilation options
  2021-03-07 20:28       ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2021-03-07 21:21         ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
  0 siblings, 0 replies; 10+ messages in thread
From: Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2021-03-07 21:21 UTC (permalink / raw)
  To: 46983; +Cc: eliz

Andrea Corallo via "Bug reports for GNU Emacs, the Swiss army knife of
text editors" <bug-gnu-emacs@gnu.org> writes:

> Eli Zaretskii <eliz@gnu.org> writes:
>
>>> From: Andrea Corallo <akrl@sdf.org>
>>> Cc: Eli Zaretskii <eliz@gnu.org>, 46983@debbugs.gnu.org
>>> Date: Sun, 07 Mar 2021 19:35:01 +0000
>>> 
>>> Okay dbdc44db15 should allow for `comp-native-driver-options' as
>>> file-local to be captured correctly.
>>
>> Thanks.
>>
>>> I've only added 'gcc_jit_context_add_driver_option' to GCC 9 so we have
>>> to decide what to do when this is not available on older GCC.
>>> 
>>> Till today we raised an error as the use of `comp-native-driver-options'
>>> was a deliberate user choice and it's effectiveness was testable with
>>> `comp-native-driver-options-effective-p', but if this becomes part of
>>> source code we should probably transition to a warining? WDYT?
>>
>> I'd say, if this is set in file-local variables, just ignore the
>> setting if it cannot be applied.  Is this possible to ignore it in
>> file-local vars, but still signal an error if customized?
>
> Right we can handle the two cases separately, doing it.

Okay 15aa239ba0 should do that.

Thanks

  Andrea





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#46983: 28.0.50; [feature/native] Allow .el files to specify non-default values for native-compilation options
  2021-03-07  7:23   ` Eli Zaretskii
@ 2021-03-12 12:25     ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2021-03-12 12:27       ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2021-03-12 16:08       ` Eli Zaretskii
  0 siblings, 2 replies; 10+ messages in thread
From: Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2021-03-12 12:25 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 46983

Eli Zaretskii <eliz@gnu.org> writes:

>> From: Andrea Corallo <akrl@sdf.org>
>> Cc: 46983@debbugs.gnu.org
>> Date: Sun, 07 Mar 2021 06:54:06 +0000
>> 
>> > Moreover, some files may
>> > need to prevent native-compilation entirely.
>> 
>> Setting comp-speed to -1 achieve something close but still producing a
>> .eln as output.  I guess we want also a way to prevent
>> native-compilation entirely correct?
>
> Yes.  Something similar to no-byte-compile, I think.

Hi Eli,

d9cd55a4f1 implements `no-byte-compile' behaving like `no-byte-compile'.

Have we consumed all feature requestes for this bug?

Thanks

  Andrea





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#46983: 28.0.50; [feature/native] Allow .el files to specify non-default values for native-compilation options
  2021-03-12 12:25     ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2021-03-12 12:27       ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2021-03-12 16:08       ` Eli Zaretskii
  1 sibling, 0 replies; 10+ messages in thread
From: Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2021-03-12 12:27 UTC (permalink / raw)
  To: 46983; +Cc: eliz

Andrea Corallo via "Bug reports for GNU Emacs, the Swiss army knife of
text editors" <bug-gnu-emacs@gnu.org> writes:

> Eli Zaretskii <eliz@gnu.org> writes:
>
>>> From: Andrea Corallo <akrl@sdf.org>
>>> Cc: 46983@debbugs.gnu.org
>>> Date: Sun, 07 Mar 2021 06:54:06 +0000
>>> 
>>> > Moreover, some files may
>>> > need to prevent native-compilation entirely.
>>> 
>>> Setting comp-speed to -1 achieve something close but still producing a
>>> .eln as output.  I guess we want also a way to prevent
>>> native-compilation entirely correct?
>>
>> Yes.  Something similar to no-byte-compile, I think.
>
> Hi Eli,
>
> d9cd55a4f1 implements `no-byte-compile' behaving like `no-byte-compile'.
                            ^^^
                        `no-native-compile'


  Andrea





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#46983: 28.0.50; [feature/native] Allow .el files to specify non-default values for native-compilation options
  2021-03-12 12:25     ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2021-03-12 12:27       ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2021-03-12 16:08       ` Eli Zaretskii
  1 sibling, 0 replies; 10+ messages in thread
From: Eli Zaretskii @ 2021-03-12 16:08 UTC (permalink / raw)
  To: Andrea Corallo; +Cc: 46983-done

> From: Andrea Corallo <akrl@sdf.org>
> Cc: 46983@debbugs.gnu.org
> Date: Fri, 12 Mar 2021 12:25:46 +0000
> 
> d9cd55a4f1 implements `no-byte-compile' behaving like `no-byte-compile'.
> 
> Have we consumed all feature requestes for this bug?

Thanks, closing.





^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2021-03-12 16:08 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-07  5:43 bug#46983: 28.0.50; [feature/native] Allow .el files to specify non-default values for native-compilation options Eli Zaretskii
2021-03-07  6:54 ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
2021-03-07  7:23   ` Eli Zaretskii
2021-03-12 12:25     ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
2021-03-12 12:27       ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
2021-03-12 16:08       ` Eli Zaretskii
2021-03-07 19:35   ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
2021-03-07 20:18     ` Eli Zaretskii
2021-03-07 20:28       ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors
2021-03-07 21:21         ` Andrea Corallo via Bug reports for GNU Emacs, the Swiss army knife of text editors

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).