diff options
author | Debbie Wiles <debs@dwiles.demon.co.uk> | 2002-05-24 19:10:40 +0000 |
---|---|---|
committer | Debbie Wiles <debs@dwiles.demon.co.uk> | 2002-05-24 19:10:40 +0000 |
commit | a77955580e30c824ead3713b449844a6c05d8c8e (patch) | |
tree | 3c7886be617bba0c9312250ee655f8ffc3fe37c4 /doc | |
parent | f128b4b16447c7149d75c293204cc3876d87dd6b (diff) | |
download | nasm-a77955580e30c824ead3713b449844a6c05d8c8e.tar.gz nasm-a77955580e30c824ead3713b449844a6c05d8c8e.tar.bz2 nasm-a77955580e30c824ead3713b449844a6c05d8c8e.zip |
Reversed a few changes erroneously removed in the last update
Diffstat (limited to 'doc')
-rw-r--r-- | doc/nasmdoc.src | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/doc/nasmdoc.src b/doc/nasmdoc.src index 4b1a9bd..87468f6 100644 --- a/doc/nasmdoc.src +++ b/doc/nasmdoc.src @@ -701,7 +701,8 @@ The syntax is: are optimised, unless the long form is specified. \b \c{-On} multi-pass optimization, minimize branch offsets; also will - minimize signed immediate bytes, overriding size specification. + minimize signed immediate bytes, overriding size specification + when the \c{strict} keyword hasn't been used (see \k{strict}). If 2 <= n <= 3, then there are 5 * n passes, otherwise there are n passes. @@ -1481,12 +1482,12 @@ invent one using the macro processor. \H{strict} \i\c{STRICT}: Inhibiting Optimization -When compiling with the optimizer set to level 2 or higher (see -\k{opt-On}), NASM will use size specifiers (\c{BYTE}, \c{WORD}, -\c{DWORD}, \c{QWORD}, or \c{TWORD}) strictly to choose the address- or -operand-size of the instruction. The keyword \c{STRICT} can be used -to inhibit optimization and force a particular operand to be emitted -in the specified size. For example, with the optimizer on, and in +When assembling with the optimizer set to level 2 or higher (see +\k{opt-On}), NASM will usee size specifiers (\c{BYTE}, \c{WORD}, +\c{DWORD}, \c{QWORD}, or \c{TWORD}), but will give them the smallest +possible size. The keyword \c{STRICT} can be used to inhibit +optimization and force a particular operand to be emitted in the +specified size. For example, with the optimizer on, and in \c{BITS 16} mode, \c push dword 33 @@ -1498,6 +1499,9 @@ is encoded in three bytes \c{66 6A 21}, whereas is encoded in six bytes, with a full dword immediate operand \c{66 68 21 00 00 00}. +With the optimizer off, the same code (six bytes) is generated whether +the \c{STRICT} keyword was used or not. + \H{crit} \i{Critical Expressions} @@ -3236,7 +3240,7 @@ which has no function other than to call the primitive form. \S{USE16 & USE32} \i\c{USE16} & \i\c{USE32}: Aliases for BITS The `\c{USE16}' and `\c{USE32}' directives can be used in place of -`\c{BIT 16}' and `\c{BITS 32}', for compatibility with other assemblers. +`\c{BITS 16}' and `\c{BITS 32}', for compatibility with other assemblers. \H{section} \i\c{SECTION} or \i\c{SEGMENT}: Changing and \i{Defining |