Documention Changes for Release 2.00

modified:   CHANGES
	modified:   ChangeLog
	modified:   doc/nasmdoc.src
This commit is contained in:
Charles Crayne 2007-11-25 14:25:13 -08:00
parent 21eed86871
commit f2098e9935
3 changed files with 2899 additions and 9 deletions

22
CHANGES
View file

@ -1,12 +1,24 @@
0.99.00
2.00
-------
* Added c99 data-type compliance.
* Added general x86-64 support.
* Added win64 (x86-64 COFF) output format.
* Added __BITS__ standard macro which returns current [BITS XX] mode.
* fix (???) bug in outobj.c - every 256th "extern" caused Nasm crash.
(is this during definition or use, I made over 260 externs with obj
and could not duplicate the gripe -Keith Kanios)
* Added __BITS__ standard macro.
* Added elf32 and elf64 output formats.
* Added Numeric constants in DQ directive.
* Added oword, do and reso pseudo operands.
* Added 8-bit floating-point format.
* Added Floating-point option control.
* Added Infinity and NaN floating point support.
* Added ELF Symbol Visibility support.
* Added Setting OSABI value in ELF header directive.
* Added Generate Makefile Dependencies option.
* Added Unlimited Optimization Passes option.
* Added %IFN and %ELIFN support.
* Added Logical Negation Operator.
* Enhanced Stack Relative Preprocessor Directives.
* Enhanced ELF Debug Formats.
* Enhanced Send Errors to a File option.
0.98.39
-------

2826
ChangeLog

File diff suppressed because it is too large Load diff

View file

@ -223,6 +223,56 @@ Object File Format
\C{intro} Introduction
\H{whatsnew} Documentation Changes for Version 2.0
\S{p64Bit} 64-Bit Support
\b Writing 64-bit Code \k{64bit}
\b elf32 and elf64 output formats \k{elffmt}
\b win64 output format \k{win64fmt}
\b Numeric constants in DQ directive \k{db}
\b oword, do and reso \k{db}
\b Stack Relative Preprocessor Directives \k{stackrel}
\S{fpenhance} Floating Point Enhancements
\b 8-bit floating-point format \k{fltconst}
\b Floating-point option control \k{FLOAT}
\b Infinity and NaN \k{fltconst}
\S{elfenhance} ELF Enhancements
\b Symbol Visibility \k{elfglob}
\b Setting OSABI value in ELF header \k{abisect}
\b Debug Formats \k{elfdbg}
\S{cmdenhance} Command Line Options
\b Generate Makefile Dependencies \k{opt-MG}
\b Send Errors to a File \k{opt-Z}
\b Unlimited Optimization Passes \k{opt-On}
\S{oenhance} Other Enhancements
\b %IFN and %ELIFN \k{condasm}
\b Logical Negation Operator \c{!} \k{expmul}
\b Current BITS Mode \k{bitsm}
\b Use of \c{%+} \k{concat%+}
\H{whatsnasm} What Is NASM?
The Netwide Assembler, NASM, is an 80x86 and x86-64 assembler designed for
@ -537,7 +587,7 @@ of this switch does \e{not} enable output of the selected debug info format.
Use \c{-g}, see \k{opt-g}, to enable output.
A complete list of the available debug file formats for an output format
can be seen by issuing the command \i\c{nasm -f <format> -y}. (As of 0.99.05,
can be seen by issuing the command \i\c{nasm -f <format> -y}. (As of 2.00,
only "-f elf32", "-f elf64", "-f ieee", and "-f obj" provide debug information.)
See: \k{opt-y}.
@ -846,7 +896,7 @@ You will need the version number if you report a bug.
Typing \c{nasm -f <option> -y} will display a list of the available
debug info formats for the given output format. The default format
is indicated by an asterisk. E.g. \c{nasm -f elf -y} yields \c{* stabs}.
(as of 0.99.05, the \e{only} debug info format implemented for this output format).
(as of 2.00, the \e{only} debug info format implemented for this output format).
\S{opt-pfix} The \i\c{--prefix} and \i\c{--postfix} Options.
@ -2475,6 +2525,8 @@ syntax of this feature looks like this:
\c ; this appears if neither <condition> nor <condition2> was met
\c %endif
The inverse forms \i\c{%ifn} and \i\c{%elifn} are also supported.
The \i\c{%else} clause is optional, as is the \i\c{%elif} clause.
You can have more than one \c{%elif} clause as well.
@ -4583,8 +4635,8 @@ these relocations is generated.
\I{ELF, Debug formats and}
\c{ELF32} and \c{ELF64} provide debug information in \c{STABS} format.
As of 0.99.05, this information is generated only for the ".text" section.
However, in more recent versions, all executable sections are included.
Prior to 2.00, this information was generated only for the ".text" section.
However, all executable sections are now included.
(Note that only the ".text" section is executable by default.)
\H{aoutfmt} \i\c{aout}: Linux \I{a.out, Linux version}\I{linux, a.out}\c{a.out} Object Files