[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] x86_64: generate position independent binaries.
From: |
Janneke Nieuwenhuizen |
Subject: |
Re: [PATCH] x86_64: generate position independent binaries. |
Date: |
Sun, 21 Jan 2024 13:13:44 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
Andrius tikonas writes:
Hi Andrius,
Wonderful patch, thank you!
> * lib/x86_64-mes/x86_64.M1: add new M1 defines.
> * module/mescc/x86_64/as.scm: use offsets instead of absolute addresses.
> * module/mescc/M1.scm: add additional matches for #:offset
I nitpicked the commit message a bit
x86_64: Generate position independent binaries.
The UEFI bootstrap does not provide memory management, so position
independent code is very helpful there.
* lib/x86_64-mes/x86_64.M1 (lea____$i32(%rip),%rax,
lea____$i32(%rip),%rdi, lea____$i32(%rip),%r10, mov____%ax,(%r10),
mov____%eax,(%r10), mov____%rax,(%r10), mov____(%r10),%rax,
mov____(%r10),%rdi, push___%r10): Add new M1 defines.
(mov____%rax,0x32, movl___%eax,0x32, movl___%edi,0x32, movw___%ax,0x32,
movw___%di,0x32 push___$i32): Remove.
* module/mescc/x86_64/as.scm (x86_64:label->arg, x86_64:label->r,
x86_64:label-mem->r, x86_64:label-mem-add, x86_64:r->label,
x86_64:r->byte-label, x86_64:r->word-label, x86_64:r->long-label): : Use
offsets instead of absolute addresses.
* module/mescc/M1.scm (info->M1): Add additional matches for #:offset
and added your copyright.
Pushed to `wip' to be released as 0.26.1 as soon as we got the arm/riscv
problems
https://lists.gnu.org/archive/html/bug-mes/2024-01/msg00008.html
sorted out, as far as I'm concerned.
Greetings,
Janneke
--
Janneke Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com