[AMD Official Use Only - AMD Internal Distribution Only]
Hi Boyan,
Applied the patch shared by you,and the -flto-partition error is now resolved. However, this exposes a new set of issues during the link stage related to assembly function call
Trimmed out the linker error log : (.text.asm.bl31_entrypoint+0x144): undefined reference to `bl31_main' (.text.asm.el3_exit+0x30): undefined reference to `per_world_context' (.text.asm.sync_exception_handler+0x68): undefined reference to `rt_svc_descs_indices'
Additionally, when we are passing the armclang assembler as part of build command,running into below errors:
Error log :
Makefile:970: Makefile:970: The configured AArch64 assembler could not be identified: Makefile:970: Makefile:970: '/tools/installs/arm/safety/armcc/6.16.2/bin/armasm' (via `AS` parameter) Makefile:970: Makefile:970: The following tools are supported: Makefile:970: Makefile:970: - Arm(r) Compiler for Embedded `armclang` Makefile:970: - LLVM Clang (`clang`) Makefile:970: - GNU GCC (`gcc`) Makefile:970: Makefile:970: The build system will treat this assembler as GNU GCC (`gcc`).
Please let me know if this configuration is expected to work with ENABLE_LTO=1, or if additional changes (e.g., toolchain selection or linker/assembler handling) are required.
Thanks for your guidance.
Best regards, Venkata Sai .T .
Hi Venkata,
TF-A does not support AS=armasm. You should avoid setting AS (in which case it will default to CC) or, if you must set it explicitly, use AS=armclang.
Regards, Chris
From: Taticharla, Venkata Sai via TF-A tf-a@lists.trustedfirmware.org Date: Wednesday, 4 February 2026 at 09:16 To: tf-a@lists.trustedfirmware.org tf-a@lists.trustedfirmware.org Cc: Belsare, Akshay akshay.belsare@amd.com, Bollapalli, Maheedhar Sai MaheedharSai.Bollapalli@amd.com, Gudipalli, Sugadeesh sugadeesh.gudipalli@amd.com Subject: [TF-A] Re: Unable to build the ZynqMP platform with armclang when ENABLE_LTO=1.
[AMD Official Use Only - AMD Internal Distribution Only]
Hi Boyan,
Applied the patch shared by you,and the -flto-partition error is now resolved. However, this exposes a new set of issues during the link stage related to assembly function call
Trimmed out the linker error log : (.text.asm.bl31_entrypoint+0x144): undefined reference to `bl31_main' (.text.asm.el3_exit+0x30): undefined reference to `per_world_context' (.text.asm.sync_exception_handler+0x68): undefined reference to `rt_svc_descs_indices'
Additionally, when we are passing the armclang assembler as part of build command,running into below errors:
Error log :
Makefile:970: Makefile:970: The configured AArch64 assembler could not be identified: Makefile:970: Makefile:970: '/tools/installs/arm/safety/armcc/6.16.2/bin/armasm' (via `AS` parameter) Makefile:970: Makefile:970: The following tools are supported: Makefile:970: Makefile:970: - Arm(r) Compiler for Embedded `armclang` Makefile:970: - LLVM Clang (`clang`) Makefile:970: - GNU GCC (`gcc`) Makefile:970: Makefile:970: The build system will treat this assembler as GNU GCC (`gcc`).
Please let me know if this configuration is expected to work with ENABLE_LTO=1, or if additional changes (e.g., toolchain selection or linker/assembler handling) are required.
Thanks for your guidance.
Best regards, Venkata Sai .T . -- TF-A mailing list -- tf-a@lists.trustedfirmware.org To unsubscribe send an email to tf-a-leave@lists.trustedfirmware.org
Hi Venkata,
Further to what Chris said, I don't think LTO will work with armclang. From what I can gather, you'd need to link with armlink which we don't really support. I did try this on v2.13 and it didn't work either - it built just fine but without LTO despite the flag.
Thanks, Boyan ________________________________ From: Chris Kay via TF-A tf-a@lists.trustedfirmware.org Sent: 04 February 2026 10:30 AM To: Taticharla, Venkata Sai VenkataSai.Taticharla@amd.com; tf-a@lists.trustedfirmware.org tf-a@lists.trustedfirmware.org Cc: Belsare, Akshay akshay.belsare@amd.com; Bollapalli, Maheedhar Sai MaheedharSai.Bollapalli@amd.com; Gudipalli, Sugadeesh sugadeesh.gudipalli@amd.com Subject: [TF-A] Re: Unable to build the ZynqMP platform with armclang when ENABLE_LTO=1.
Hi Venkata,
TF-A does not support AS=armasm. You should avoid setting AS (in which case it will default to CC) or, if you must set it explicitly, use AS=armclang.
Regards, Chris
From: Taticharla, Venkata Sai via TF-A tf-a@lists.trustedfirmware.org Date: Wednesday, 4 February 2026 at 09:16 To: tf-a@lists.trustedfirmware.org tf-a@lists.trustedfirmware.org Cc: Belsare, Akshay akshay.belsare@amd.com, Bollapalli, Maheedhar Sai MaheedharSai.Bollapalli@amd.com, Gudipalli, Sugadeesh sugadeesh.gudipalli@amd.com Subject: [TF-A] Re: Unable to build the ZynqMP platform with armclang when ENABLE_LTO=1.
[AMD Official Use Only - AMD Internal Distribution Only]
Hi Boyan,
Applied the patch shared by you,and the -flto-partition error is now resolved. However, this exposes a new set of issues during the link stage related to assembly function call
Trimmed out the linker error log : (.text.asm.bl31_entrypoint+0x144): undefined reference to `bl31_main' (.text.asm.el3_exit+0x30): undefined reference to `per_world_context' (.text.asm.sync_exception_handler+0x68): undefined reference to `rt_svc_descs_indices'
Additionally, when we are passing the armclang assembler as part of build command,running into below errors:
Error log :
Makefile:970: Makefile:970: The configured AArch64 assembler could not be identified: Makefile:970: Makefile:970: '/tools/installs/arm/safety/armcc/6.16.2/bin/armasm' (via `AS` parameter) Makefile:970: Makefile:970: The following tools are supported: Makefile:970: Makefile:970: - Arm(r) Compiler for Embedded `armclang` Makefile:970: - LLVM Clang (`clang`) Makefile:970: - GNU GCC (`gcc`) Makefile:970: Makefile:970: The build system will treat this assembler as GNU GCC (`gcc`).
Please let me know if this configuration is expected to work with ENABLE_LTO=1, or if additional changes (e.g., toolchain selection or linker/assembler handling) are required.
Thanks for your guidance.
Best regards, Venkata Sai .T . -- TF-A mailing list -- tf-a@lists.trustedfirmware.org To unsubscribe send an email to tf-a-leave@lists.trustedfirmware.org
tf-a@lists.trustedfirmware.org