[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: scratch/comp-static-data 5aa3db2f11: comp: Add support for compiling
From: |
Andrea Corallo |
Subject: |
Re: scratch/comp-static-data 5aa3db2f11: comp: Add support for compiling elisp constants into static data. |
Date: |
Thu, 17 Nov 2022 19:59:39 +0000 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) |
Vibhav Pant <vibhavp@gmail.com> writes:
[...]
> Hi Andrea,
>
> This branch was mostly inspired by your comment in `emit_static_object'
> that mentioned how libgccjit didn't support static initializers
> (presumably back then). Now that there is some support for initializing
> static globals with constant expressions, I have been working on this
> patch for the last few weeks with the aim of trying to reduce the use
> of `read' for initializing constants referenced by elisp code
> (therefore drastically reducing the amount of heap allocations and
> improving eln load times), by compiling them into the eln as static
> (optionally const) data. Think of it as every eln module having its own
> pure storage.
>
> There are still a bunch of TODOs, the first one being reducing the size
> of the generated binaries (which is mostly due to how `comp_init_obj'
> works right now). Nonetheless, I decided to make this code public once
> it was passing basic sanity tests (including the comp-tests.el suite)
> and was in a more or less working condition as a daily driver. As a
> result, the branch is still a WIP, but I will try to document more of
> the code moving forward.
>
> Best,
> Vibhav
Hi Vibhav,
as usual when you are ready I suggest you to show the pseudo C generated
with native-comp-debug >= 2 for the stock system and for the one with
your patch. This for a _minimal_ example.
Thanks for working on this.
Andrea
- Re: scratch/comp-static-data 5aa3db2f11: comp: Add support for compiling elisp constants into static data., Po Lu, 2022/11/14
- Re: scratch/comp-static-data 5aa3db2f11: comp: Add support for compiling elisp constants into static data., Andrea Corallo, 2022/11/15
- Re: scratch/comp-static-data 5aa3db2f11: comp: Add support for compiling elisp constants into static data., Vibhav Pant, 2022/11/16
- Re: scratch/comp-static-data 5aa3db2f11: comp: Add support for compiling elisp constants into static data.,
Andrea Corallo <=
- Re: scratch/comp-static-data 5aa3db2f11: comp: Add support for compiling elisp constants into static data., Richard Stallman, 2022/11/16
- Re: scratch/comp-static-data 5aa3db2f11: comp: Add support for compiling elisp constants into static data., Vibhav Pant, 2022/11/17
- Re: scratch/comp-static-data 5aa3db2f11: comp: Add support for compiling elisp constants into static data., Richard Stallman, 2022/11/18
- Re: scratch/comp-static-data 5aa3db2f11: comp: Add support for compiling elisp constants into static data., Eli Zaretskii, 2022/11/18
- Re: scratch/comp-static-data 5aa3db2f11: comp: Add support for compiling elisp constants into static data., Richard Stallman, 2022/11/19
- Re: scratch/comp-static-data 5aa3db2f11: comp: Add support for compiling elisp constants into static data., Eli Zaretskii, 2022/11/20
- Re: scratch/comp-static-data 5aa3db2f11: comp: Add support for compiling elisp constants into static data., vibhavp, 2022/11/20
- Re: scratch/comp-static-data 5aa3db2f11: comp: Add support for compiling elisp constants into static data., Eli Zaretskii, 2022/11/20
- Re: scratch/comp-static-data 5aa3db2f11: comp: Add support for compiling elisp constants into static data., Stefan Monnier, 2022/11/20
- Re: scratch/comp-static-data 5aa3db2f11: comp: Add support for compiling elisp constants into static data., vibhavp, 2022/11/21