mirror of
https://github.com/netwide-assembler/nasm.git
synced 2025-03-19 18:00:23 +08:00
Per SF bug report 1351586: The COFF spec suggests that the "Virtual Size" field (which immediately follows the name field inside a section header) be set to 0 for an object file. By contrast (as documented in comment #4 at the beginning of its outcoff.c file) NASM sets it to a particular non-0 value. MASM 6.15 matches NASM for both 16- and 32-bit object files, i.e. emits non-0 values. MASM 8 (from VS 2005 Beta) matches the COFF spec for 64-bit object files, i.e. emits 0. GAS matches the COFF spec for 32-bit object files (MinGW or Cygwin), i.e. also emits 0. Older versions of GNU ld seem to honor said "Virtual Size" field whereas newer versions do not. As a result those older versions generate "bloated" image files. Since the COFF spec and the real world seem to disagree for this case, it might make sense to add a method for selecting between the two to NASM. Date: 2005-11-28 15:39 Sender: nasm64developer Logged In: YES user_id=804543 MASM 8 (from VS 2005 Beta) also matches the COFF spec for 16- and 32-bit object files, i.e. emits 0. That said, NASM should always emit 0 too. Therefore I am turning this from a support request into a bug.
NASM, the Netwide Assembler. Many many developers all over the net respect NASM for what it is - a widespread (thus netwide), portable (thus netwide!), very flexible and mature assembler tool with support for many output formats (thus netwide!!). Now we have good news for you: NASM is licensed under LGPL. This means its development is open to even wider society of programmers wishing to improve their lovely assembler. The NASM project is now situated at SourceForge.net, the most popular Open Source development site on the Internet. Visit our website at http://nasm.sourceforge.net/ and our SourceForge project at http://sourceforge.net/projects/nasm/ See the file CHANGES for the description of changes between revisions. With best regards, NASM crew.
Description
Languages
Assembly
61.7%
C
31.7%
Perl
3.2%
Makefile
0.8%
M4
0.7%
Other
1.9%