Assembly build issues for UEFI with nasm and RtlVirtualUnwind

Zurcher, Christopher J christopher.j.zurcher at
Wed Aug 19 23:26:12 UTC 2020

Within the TianoCore/EDK2 project for UEFI, the prescribed assembler is NASM. In order build the 64-bit assembly config of OpenSSL with .nasm files, it appears that the Windows API function RtlVirtualUnwind is required. For my current implementation I have provided a stub function to satisfy the build but I would like to remove this function altogether. Is there a config flag I am missing that would let me build with .nasm files and without RtlVirtualUnwind? As far as I can tell, I have to set perlasm_scheme to nasm to get the correct output format, but this also forces the win64 flag to be set, which always includes  __imp_RtlVirtualUnwind.

Additionally, I am avoiding AVX instructions in 64- and 32-bit configs by hiding the nasm executable from the perl assembly generators (to skip the version check), but it would be helpful to have some sort of flag to disable AVX.

Christopher Zurcher

More information about the openssl-users mailing list