[PATCH 00/17] Various toolchain compatibility fixes/improvements
Sam Edwards
cfsworks at gmail.com
Mon Feb 24 06:55:07 CET 2025
Long time no see, U-Boot folks!
This patchset consists of various bug fixes and correctness improvements that
I discovered while attempting to add first-class LLVM support to the build
system. These patches are NOT related to LLVM support directly; rather, they
address existing issues that should be resolved regardless of future changes.
For the most part, the patches are mutually independent and can be reviewed and
applied separately. If any patch is not suitable for merging now, feel free to
skip it: I will incorporate feedback and revisit those changes as part of the
upcoming LLVM support patchset. I'd like this patchset to be evaluated on its
own merits, based on the current state of the code, without consideration for
future LLVM support.
Note that the issues addressed in this patchset do not occur when U-Boot is
built using the GCC/GNU toolchain. These bugs seem to be specific to builds
using other toolchains, like LLVM, and do not appear to affect users relying on
GCC/GNU. Therefore, I see no need to rush these changes into the stable branch.
Again, these patches are mostly independent/reorderable...
...except that: "arm: Add aligned-memory aliases to eabi_compat"
...depends on: "arm: Add __aeabi_memclr in eabi_compat"
Warm regards,
Sam
Sam Edwards (17):
arm: Remove stray .mmutable reference in linker script
arm: Exclude eabi_compat from LTO
arm: Add __aeabi_memclr in eabi_compat
arm: Add aligned-memory aliases to eabi_compat
arm: Discard unwanted sections in linker script
arm: Use -mstrict-align when the MMU is off
arm: Replace 'adrl' in EFI crt0
x86: Fix call64's section flags
spl: riscv: opensbi: Error on misaligned FDT
spl: Align FDT load address
makefile: Fix symbol typo in binary_size_check
makefile: Avoid objcopy --gap-fill for .hex/.srec
makefile: Add `norelro` linker option
makefile: Add READELF command variable
efi_loader: Remove ENTRY(_start) from linker script
efi_loader: Move .dynamic out of .text in EFI
scripts/Makefile.lib: efi: Preserve the .dynstr section as well
Makefile | 16 +++++++++-------
arch/arm/config.mk | 4 ++++
arch/arm/cpu/u-boot.lds | 29 ++++++++++-------------------
arch/arm/lib/Makefile | 1 +
arch/arm/lib/crt0_arm_efi.S | 3 ++-
arch/arm/lib/eabi_compat.c | 17 +++++++++++++++++
arch/x86/cpu/i386/call64.S | 2 +-
common/spl/spl_fit.c | 2 +-
common/spl/spl_opensbi.c | 5 +++++
lib/efi_loader/elf_efi.ldsi | 7 +++----
scripts/Makefile.lib | 4 ++--
11 files changed, 55 insertions(+), 35 deletions(-)
--
2.45.2
More information about the U-Boot
mailing list