GNU Info

Info Node: (nasm.info)Section 3.7

(nasm.info)Section 3.7


Next: Section 3.8 Prev: Section 3.6 Up: Chapter 3
Enter node , (file) or (file)node

3.7. `STRICT': Inhibiting Optimization
======================================

   When assembling with the optimizer set to level 2 or higher (see
*Note Section 2.1.16::), NASM will use size specifiers (`BYTE', `WORD',
`DWORD', `QWORD', or `TWORD'), but will give them the smallest possible
size. The keyword `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 `BITS 16' mode,

             push dword 33

   is encoded in three bytes `66 6A 21', whereas

             push strict dword 33

   is encoded in six bytes, with a full dword immediate operand `66 68
21 00 00 00'.

   With the optimizer off, the same code (six bytes) is generated
whether the `STRICT' keyword was used or not.


automatically generated by info2www version 1.2.2.9