bc233a7a | 22-Mar-2023 |
Callum Farmer <gmbr3@opensuse.org> |
Prevent deletion of .reloc by gc-sections
Add keyword KEEP to prevent .reloc being removed when using --gc-sections with GNU ld
Signed-off-by: Callum Farmer <gmbr3@opensuse.org> |
7ad75d91 | 09-Mar-2023 |
Callum Farmer <gmbr3@opensuse.org> |
Ensure objcopy sections are aligned
Ensure the main sections are page aligned: - .text - .reloc - .dynamic - .data - .rel - .rel.plt
Signed-off-by: Callum Farmer <gmbr3@opensuse.org> |
0f9c15fe | 08-Mar-2023 |
bmeng@tinylab.org <bmeng@tinylab.org> |
riscv: Update SPDX license identifiers
The whole gnu-efi project is licensed under BSD license, see [1]. However some of the RISC-V codes have conflict license identifiers:
- Some mention GPL-2.0+
riscv: Update SPDX license identifiers
The whole gnu-efi project is licensed under BSD license, see [1]. However some of the RISC-V codes have conflict license identifiers:
- Some mention GPL-2.0+ in the SPDX license part, but the long license header indicates it's actually BSD and GPL-2.0+ dual-licensed - Some mention GPL-2.0+ in the SPDX license part only - Some do not have any license indication
To have a matching license with the whole project, this commit updates all RISC-V codes to have the correct SPDX license identifiers (GPL-2.0+ or BSD dual-license).
Link: https://sourceforge.net/p/gnu-efi/ [1] Signed-off-by: Bin Meng <bmeng@tinylab.org> Acked-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
show more ...
|
1a10c661 | 07-Mar-2023 |
Callum Farmer <gmbr3@opensuse.org> |
Un-merge .rel.plt section
Merging this section causes an incorrect RELASZ value |
75e4ef25 | 07-Mar-2023 |
b'Nigel Croxon <allura@localhost> |
Merge /u/gmbr3/gnu-efi/ branch fix-apps into master
https://sourceforge.net/p/gnu-efi/code/merge-requests/39/ |
330c88aa | 07-Mar-2023 |
b'Nigel Croxon <allura@localhost> |
Merge /u/gmbr3/gnu-efi/ branch function-sections into master
https://sourceforge.net/p/gnu-efi/code/merge-requests/38/ |
3f9a6569 | 05-Mar-2023 |
Callum Farmer <gmbr3@opensuse.org> |
apps: Fix Makefile install and ordering
Create a new directory called $APPSDIR which is the default install location of these examples. apps must be ordered after gnuefi target.
Signed-off-by: Call
apps: Fix Makefile install and ordering
Create a new directory called $APPSDIR which is the default install location of these examples. apps must be ordered after gnuefi target.
Signed-off-by: Callum Farmer <gmbr3@opensuse.org>
show more ...
|
02f96e8a | 04-Mar-2023 |
Callum Farmer <gmbr3@opensuse.org> |
*.efi.lds: Add .rel.dyn section
LLVM LLD always calls it .rel[a].dyn no matter what so add this to the .rel[a] section
Signed-off-by: Callum Farmer <gmbr3@opensuse.org> |
15f10734 | 03-Mar-2023 |
Callum Farmer <gmbr3@opensuse.org> |
Add some COMDAT sections
When using function/data sections option from gcc, some additional un-packed sections get created move these to there correct placement if not already included
sections see
Add some COMDAT sections
When using function/data sections option from gcc, some additional un-packed sections get created move these to there correct placement if not already included
sections seen on x86/x86_64/aarch64: .gcc_except_table.efi_main .bss.debugging
.gcc_except_table.* only appears on objcopy archs
Signed-off-by: Callum Farmer <gmbr3@opensuse.org>
show more ...
|
d78b78cb | 22-Feb-2023 |
b'Nigel Croxon <allura@localhost> |
Merge /u/gmbr3/gnu-efi/ branch merge-rela2 into master
https://sourceforge.net/p/gnu-efi/code/merge-requests/37/ |
eea6d31a | 21-Feb-2023 |
Callum Farmer <gmbr3@opensuse.org> |
*.efi.lds: Merge all rela sections into one
Objcopy sometimes generates .rela.plt and .rela.data sections for which their names are longer than the 8 characters limit of PE32
Signed-off-by: Callum
*.efi.lds: Merge all rela sections into one
Objcopy sometimes generates .rela.plt and .rela.data sections for which their names are longer than the 8 characters limit of PE32
Signed-off-by: Callum Farmer <gmbr3@opensuse.org>
show more ...
|
637b3bdb | 08-Feb-2023 |
Nigel Croxon <ncroxon@redhat.com> |
Author: Callum Farmer <gmbr3@opensuse.org> Date: Tue Feb 7 21:48:27 2023 +0000
ARM32/x86_64 lds: Force data segment align to 4KiB
Some newer versions of binutils can set invalid COMMONPAG
Author: Callum Farmer <gmbr3@opensuse.org> Date: Tue Feb 7 21:48:27 2023 +0000
ARM32/x86_64 lds: Force data segment align to 4KiB
Some newer versions of binutils can set invalid COMMONPAGESIZE and MAXPAGESIZE values on these architectures
git fetch git.code.sf.net/u/gmbr3/gnu-efi arm-pagesize git merge 89d55b364d5f7fb7614e19646e06230ea90dc9c1
Signed-off-by: Callum Farmer <gmbr3@opensuse.org>
show more ...
|
89d55b36 | 07-Feb-2023 |
Callum Farmer <gmbr3@opensuse.org> |
ARM32/x86_64 lds: Force data segment align to 4KiB
Some newer versions of binutils can set invalid COMMONPAGESIZE and MAXPAGESIZE values on these architectures
Signed-off-by: Callum Farmer <gmbr3@o
ARM32/x86_64 lds: Force data segment align to 4KiB
Some newer versions of binutils can set invalid COMMONPAGESIZE and MAXPAGESIZE values on these architectures
Signed-off-by: Callum Farmer <gmbr3@opensuse.org>
show more ...
|
04e6df70 | 07-Feb-2023 |
Callum Farmer <gmbr3@opensuse.org> |
Make.defaults: Force 4K page size on ARM64
Signed-off-by: Callum Farmer <gmbr3@opensuse.org> |
1e005506 | 02-Feb-2023 |
Callum Farmer <gmbr3@opensuse.org> |
aarch64 lds: Force data segment align to 64KiB
Required by UEFI 2.10 AArch64 specification https://uefi.org/specs/UEFI/2.10/02_Overview.html#aarch64-platforms
Signed-off-by: Callum Farmer <gmbr3@op
aarch64 lds: Force data segment align to 64KiB
Required by UEFI 2.10 AArch64 specification https://uefi.org/specs/UEFI/2.10/02_Overview.html#aarch64-platforms
Signed-off-by: Callum Farmer <gmbr3@opensuse.org>
show more ...
|
a90c2f16 | 02-Feb-2023 |
Callum Farmer <gmbr3@opensuse.org> |
Make.defaults: Enable objcopy on aarch64
Signed-off-by: Callum Farmer <gmbr3@opensuse.org> |
f7b2e1ff | 20-Jan-2023 |
b'Nigel Croxon <allura@localhost> |
Merge /u/gmbr3/gnu-efi/ branch master into master
https://sourceforge.net/p/gnu-efi/code/merge-requests/34/ |
593e1393 | 31-Dec-2022 |
Callum Farmer <gmbr3@opensuse.org> |
Make aarch64 crt0/lds more like x86_64
Binutils 2.38 now supports efi-app-aarch64 so to use this we must add a dummy reloc section and remove the PE header definition from crt0 as this will conflict
Make aarch64 crt0/lds more like x86_64
Binutils 2.38 now supports efi-app-aarch64 so to use this we must add a dummy reloc section and remove the PE header definition from crt0 as this will conflict with the version added by objcopy
Signed-off-by: Callum Farmer <gmbr3@opensuse.org>
show more ...
|
231c7632 | 29-Dec-2022 |
Callum Farmer <gmbr3@opensuse.org> |
*.efi.lds: Use proper data segment placement
Use ld commands DATA_SEGMENT_ALIGN and DATA_SEGMENT_END
Fixes binutils 2.39 warning: /usr/bin/ld: warning: efi/fwup.so has a LOAD segment with RWX permi
*.efi.lds: Use proper data segment placement
Use ld commands DATA_SEGMENT_ALIGN and DATA_SEGMENT_END
Fixes binutils 2.39 warning: /usr/bin/ld: warning: efi/fwup.so has a LOAD segment with RWX permissions
Signed-off-by: Callum Farmer <gmbr3@opensuse.org>
show more ...
|
1ba13fdf | 04-Jan-2023 |
Xiaotian Wu <wuxiaotian@loongson.cn> |
Add PE machine type definitions for the LoongArch
See https://learn.microsoft.com/en-us/windows/win32/debug/pe-format#machine-types
Signed-off-by: Xiaotian Wu <wuxiaotian@loongson.cn> |
c2102ae0 | 16-Nov-2022 |
b'Nigel Croxon <allura@localhost> |
Merge /u/mingtaoxt/gnu-efi/ branch master into master
https://sourceforge.net/p/gnu-efi/code/merge-requests/29/ |
156d50d2 | 16-Nov-2022 |
b'Nigel Croxon <allura@localhost> |
Merge /u/fantasquex/gnu-efi/ branch makefile-1 into master
https://sourceforge.net/p/gnu-efi/code/merge-requests/30/ |
98f12507 | 10-Oct-2022 |
Letu Ren <fantasquex@gmail.com> |
riscv: Fix ld RWX warning
The current ld script places .dynamic section right after .text, which results in that one LOAD segment contains both data and code. Binutils 2.39 and later will throw a wa
riscv: Fix ld RWX warning
The current ld script places .dynamic section right after .text, which results in that one LOAD segment contains both data and code. Binutils 2.39 and later will throw a warning if RWX segments exist. Code and data should be placed in different LOAD segments with different permissions. This patch adds a gap between data and code sections which is taken from the default ld script in riscv64.
Co-developed-by: Moody Liu <mooodyhunter@outlook.com> Signed-off-by: Moody Liu <mooodyhunter@outlook.com> Signed-off-by: Letu Ren <fantasquex@gmail.com>
show more ...
|
c2627518 | 09-Oct-2022 |
Letu Ren <fantasquex@gmail.com> |
Makefile: Change default target to all
According to README.gnuefi,
To build the sample EFI applications provided in subdirectory "apps", simply invoke "make" in the toplevel directory (the director
Makefile: Change default target to all
According to README.gnuefi,
To build the sample EFI applications provided in subdirectory "apps", simply invoke "make" in the toplevel directory (the directory containing this README file). This should build lib/libefi.a and gnuefi/libgnuefi.a first and then all the EFI applications such as a apps/t6.efi.
The default target of top directory Makefile should be all instead of gnuefi.
Signed-off-by: Letu Ren <fantasquex@gmail.com>
show more ...
|
4a566dd7 | 03-Aug-2022 |
Dwight Engen <dwight.engen@gmail.com> |
aarch64: fix setjmp overrun
The assembly code uses fixed offsets into the jmp_buf and leaves an 8 byte gap between the GPRs and the FPRs, but the jmp_buf structure was not laid out to account for th
aarch64: fix setjmp overrun
The assembly code uses fixed offsets into the jmp_buf and leaves an 8 byte gap between the GPRs and the FPRs, but the jmp_buf structure was not laid out to account for this so the code would overrun the jmp_buf by 8 bytes.
Found-by: Oskar Engen <oskar.engen@gmail.com> Signed-off-by: Dwight Engen <dwight.engen@gmail.com>
show more ...
|