[RFC] Update NASM tool version to 2.15.05 for build image


Sheng Wei
 

Hi All,
This email is to collect feedback about update NASM version to 2.15.05 for build image.

NASM (https://nasm.us/) is an assembler for the x86 CPU architecture platform.
Current open CI is using NSAM version 2.14.02.
And we have below information in edk2 project.
# - NASM 2.10 or later for use with the GCC toolchain family
# - NASM 2.12.01 or later for use with all other toolchain families
The latest stable NASM version is 2.15.05.
The latest stable NASM version 2.15.05 is released at 2020-08-28.
The first 2.15.x NASM version is released at 2020-06-04.
The last 2.14.x NASM version is released at 2018-12-30.
From NASM 2.14.x to NASM 2.15.05, according to the release history (https://nasm.us/doc/nasmdocc.html), it fixes many bugs and add more new instructions support.
For example, it adds instructions for Intel Control Flow Enforcement Technology (CET) since NASM version 2.15.01.
Actually, we have met such unsupported instruction issue in the development.

There would be 2 possible options:

* Option 1: Update the NASM version to 2.15.05
* 2.15.05 is declared as a stable NASM version.
* New instructions will be supported automatically.
* But need effort to verify new NASM version on the project.
* Option 2: Keep stay at current NASM version
* we have to use hardcode binaries in the source code like "DB xx xx xx xx" for these new instructions.
* It would be not friendly to these new instructions and easy to make mistake in the new feature development.
I suppose option 1 will be better to us in the development.

I'd like to hear the community's feedback about which option is preferred, and let me know if you have any concerns with this change. Thanks!

Best Regards
Sheng Wei

Join rfc@edk2.groups.io to automatically receive all group messages.