llvm-project
6e000952 - [AArch64] Use the Microsoft COFF MCAsmInfo for UEFI targets (#232699)

Commit
18 hours ago
[AArch64] Use the Microsoft COFF MCAsmInfo for UEFI targets (#232699) This is the first in a series of patches adding aarch64-unknown-uefi support to the AArch64 backend and clang. UEFI follows the MSVC toolchain conventions and lld-link is used to produce the PE/COFF images, so aarch64-unknown-uefi should use the Microsoft COFF MCAsmInfo like the X86 backend already does for x86_64-unknown-uefi, rather than the GNU (MinGW) flavour it currently gets by virtue of being a non-MSVC COFF triple. This enables associative COMDATs and COMDAT constant pool entries (which AsmPrinter already expects for UEFI, see GetCPISymbol). Also relax the AArch64MCInstLower assertion that only Windows COFF targets exist. Tested with the full `check-llvm` / `check-clang` suites and by building Fuchsia's arm64 EFI binaries (physboot EFI shim, boot tests, gigaboot) with a toolchain built from this series. Assisted-by: Claude
Author
Parents
Loading