The first patch adds a script to assist in MASM => NASM conversions. Yeah, it is pretty ugly. :) Sorry about that.
It does seem to have been able to convert most assembly code in OvmfPkg, PcAtChipsetPkg, MdeModulePkg and MdePkg. (But, this has not been validated. Essentially, OVMF IA32 and X64, built with GCC49 and VS2012 still appear to be functional...) The remaining 6 patches are the result of running: python BaseTools/Scripts/ConvertMasmToNasm.py --git OvmfPkg/ These patches are available in git: git://github.com/jljusten/edk2 nasm-ovmf-v1 or https://github.com/jljusten/edk2.git nasm-ovmf-v1 Or, view the branch in a web browser: https://github.com/jljusten/edk2/tree/nasm-ovmf-v1 I have another branch, nasm-mde, with the script output for all of the packages listed above. Jordan Justen (7): BaseTools: Add ConvertMasmToNasm.py script OvmfPkg Sec: Convert Ia32/SecEntry.asm to NASM OvmfPkg Sec: Convert X64/SecEntry.asm to NASM OvmfPkg LoadLinuxLib: Convert Ia32/JumpToKernel.asm to NASM OvmfPkg LoadLinuxLib: Convert X64/JumpToKernel.asm to NASM OvmfPkg QemuFwCfgLib: Convert Ia32/IoLibExAsm.asm to NASM OvmfPkg QemuFwCfgLib: Convert X64/IoLibExAsm.asm to NASM BaseTools/Scripts/ConvertMasmToNasm.py | 962 +++++++++++++++++++++ OvmfPkg/Library/LoadLinuxLib/Ia32/JumpToKernel.S | 46 - .../Ia32/{JumpToKernel.asm => JumpToKernel.nasm} | 19 +- OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf | 6 +- OvmfPkg/Library/LoadLinuxLib/X64/JumpToKernel.S | 91 -- .../X64/{JumpToKernel.asm => JumpToKernel.nasm} | 66 +- OvmfPkg/Library/QemuFwCfgLib/Ia32/IoLibExAsm.S | 52 -- .../Ia32/{IoLibExAsm.asm => IoLibExAsm.nasm} | 17 +- OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgLib.inf | 6 +- OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgSecLib.inf | 6 +- OvmfPkg/Library/QemuFwCfgLib/X64/IoLibExAsm.S | 47 - .../X64/{IoLibExAsm.asm => IoLibExAsm.nasm} | 16 +- OvmfPkg/Sec/Ia32/SecEntry.S | 59 -- OvmfPkg/Sec/Ia32/{SecEntry.asm => SecEntry.nasm} | 17 +- OvmfPkg/Sec/SecMain.inf | 12 +- OvmfPkg/Sec/X64/SecEntry.S | 56 -- OvmfPkg/Sec/X64/{SecEntry.asm => SecEntry.nasm} | 18 +- 17 files changed, 1038 insertions(+), 458 deletions(-) create mode 100755 BaseTools/Scripts/ConvertMasmToNasm.py delete mode 100644 OvmfPkg/Library/LoadLinuxLib/Ia32/JumpToKernel.S rename OvmfPkg/Library/LoadLinuxLib/Ia32/{JumpToKernel.asm => JumpToKernel.nasm} (85%) delete mode 100644 OvmfPkg/Library/LoadLinuxLib/X64/JumpToKernel.S rename OvmfPkg/Library/LoadLinuxLib/X64/{JumpToKernel.asm => JumpToKernel.nasm} (54%) delete mode 100644 OvmfPkg/Library/QemuFwCfgLib/Ia32/IoLibExAsm.S rename OvmfPkg/Library/QemuFwCfgLib/Ia32/{IoLibExAsm.asm => IoLibExAsm.nasm} (89%) delete mode 100644 OvmfPkg/Library/QemuFwCfgLib/X64/IoLibExAsm.S rename OvmfPkg/Library/QemuFwCfgLib/X64/{IoLibExAsm.asm => IoLibExAsm.nasm} (90%) delete mode 100644 OvmfPkg/Sec/Ia32/SecEntry.S rename OvmfPkg/Sec/Ia32/{SecEntry.asm => SecEntry.nasm} (82%) delete mode 100644 OvmfPkg/Sec/X64/SecEntry.S rename OvmfPkg/Sec/X64/{SecEntry.asm => SecEntry.nasm} (81%) -- 2.1.1 ------------------------------------------------------------------------------ Comprehensive Server Monitoring with Site24x7. Monitor 10 servers for $9/Month. Get alerted through email, SMS, voice calls or mobile push notifications. Take corrective actions from your mobile device. http://p.sf.net/sfu/Zoho _______________________________________________ edk2-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/edk2-devel
