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

Reply via email to