[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: MPS: nativecomp ABI
From: |
Andrea Corallo |
Subject: |
Re: MPS: nativecomp ABI |
Date: |
Sat, 06 Jul 2024 13:53:43 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
Pip Cet <pipcet@protonmail.com> writes:
> Hello,
>
> I'm working on scratch/igc. One thing I'd like to do is put the IGC header
> which all objects will require (for now) into these structs:
>
> struct Lisp_Cons
> struct Lisp_Symbol
> struct Lisp_String
> struct Lisp_Float
> union vectorlike_header
>
> IIUC, this means changing the nativecomp ABI hash (which means I'll
> have to rebuild the .eln files, I think) and adjusting any nativecomp
> code which knows about the structure layouts. However, I've only been
> able to find that for Lisp_Cons and struct Lisp_Symbol_With_Pos, which
> declares its header as ptrdiff_t. Are there more, or do the others all
> use C functions for access?
>
> Things appear to work, but I'd rather not miss anything and haven't looked at
> this code in years.
>
> Thanks!
> Pip
Hello,
I believe the easiest is that you compile a .eln with
native-comp-debug >= 2 and have a look to the generated pseudo C.
Indipendently to the code being compiled, on top you'll see all the
structures defined to libgccjit.
I'll not have access to a machine where I can do it before next week but
this is the easiest way to aswer your question.
Andrea