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