This series: * Adds support for creating object files from .nasm source files to allow NASM source files to be linked into libraries and images * Adds NASM source files for Thunk16 on IA32 and X64 * Convert BaseLib to use NASM Source Files for Thunk16 rather than GNU Assembler (.S) files - This will make NASM a build requirement for MdePkg with IA32 & X64 on all toolchains except MSVC and ICC.
Thanks for Liming Gao for the tools_def changes for MSVC. (But, these have not been tested very well yet.) This series is available in this git branch: https://github.com/jljusten/edk2.git nasm-v1 Jordan Justen (8): BaseTools/tools_def: Add NASM_FLAGS BaseTools/build_rule: Add .nasm => .obj build rule MdePkg/Base.h: Always define ASM_PFX MdePkg/BaseLib Thunk16: Replace IA32 GAS Thunk16 with NASM version MdePkg/BaseLib Thunk16: Replace X64 GAS Thunk16 with NASM version MdePkg/BaseLib NASM Thunk16: Use NASM local labels MdePkg/BaseLib NASM Thunk16: Use bits 16 for 16-bit code MdePkg/BaseLib NASM Thunk16: Remove remaining 'DB' code BaseTools/Conf/build_rule.template | 15 ++ BaseTools/Conf/tools_def.template | 287 ++++++++++++++++++++++++++- MdePkg/Include/AArch64/ProcessorBind.h | 4 + MdePkg/Include/Arm/ProcessorBind.h | 4 + MdePkg/Include/Base.h | 25 ++- MdePkg/Include/Ebc/ProcessorBind.h | 4 + MdePkg/Include/Ia32/ProcessorBind.h | 4 + MdePkg/Include/Ipf/ProcessorBind.h | 4 + MdePkg/Include/X64/ProcessorBind.h | 4 + MdePkg/Library/BaseLib/BaseLib.inf | 4 +- MdePkg/Library/BaseLib/Ia32/Thunk16.nasm | 260 +++++++++++++++++++++++++ MdePkg/Library/BaseLib/X64/Thunk16.nasm | 321 +++++++++++++++++++++++++++++++ 12 files changed, 914 insertions(+), 22 deletions(-) create mode 100644 MdePkg/Library/BaseLib/Ia32/Thunk16.nasm create mode 100644 MdePkg/Library/BaseLib/X64/Thunk16.nasm -- 2.1.0 ------------------------------------------------------------------------------ Slashdot TV. Video for Nerds. Stuff that matters. http://tv.slashdot.org/ _______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel