Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the board
Thread view  Mix view  Order

Homepage E-mail

Berlin, Germany,
28.04.2019, 13:23

NASM 2.14.02 (Announce)

On 26 December 2018 the NASM development team released version 2.14.02.

Home page:

Changes since last announcement (version 2.13.02):
Version 2.14.02

(*) Fix crash due to multiple errors or warnings during the code
    generation pass if a list file is specified.

Version 2.14.01

(*) Create all system-defined macros defore processing command-line
    given preprocessing directives (`-p', `-d', `-u', `--pragma',

(*) If debugging is enabled, define a `__DEBUG_FORMAT__' predefined
    macro. See section 4.11.7.

(*) Fix an assert for the case in the `obj' format when a `SEG'
    operator refers to an `EXTERN' symbol declared further down in
    the code.

(*) Fix a corner case in the floating-point code where a binary,
    octal or hexadecimal floating-point having at least 32, 11, or 8
    mantissa digits could produce slightly incorrect results under
    very specific conditions.

(*) Support `-MD' without a filename, for `gcc' compatibility. `-MF'
    can be used to set the dependencies output filename. See section

(*) Fix `-E' in combination with `-MD'. See section 2.1.21.

(*) Fix missing errors on redefined labels; would cause convergence
    failure instead which is very slow and not easy to debug.

(*) Duplicate definitions of the same label _with the same value_ is
    now explicitly permitted (2.14 would allow it in some

(*) Add the option `--no-line' to ignore `%line' directives in the
    source. See section 2.1.33 and section 4.10.1.

Version 2.14

(*) Changed `-I' option semantics by adding a trailing path
    separator unconditionally.

(*) Fixed null dereference in corrupted invalid single line macros.

(*) Fixed division by zero which may happen if source code is

(*) Fixed out of bound access in processing of malformed segment

(*) Fixed out of bound access in certain `EQU' parsing.

(*) Fixed buffer underflow in float parsing.

(*) Added `SGX' (Intel Software Guard Extensions) instructions.

(*) Added `+n' syntax for multiple contiguous registers.

(*) Fixed `subsections_via_symbols' for `macho' object format.

(*) Added the `--gprefix', `--gpostfix', `--lprefix', and
    `--lpostfix' command line options, to allow command line base
    symbol renaming. See section 2.1.28.

(*) Allow label renaming to be specified by `%pragma' in addition to
    from the command line. See section 6.9.

(*) Supported generic `%pragma' namespaces, `output' and `debug'.
    See section 6.10.

(*) Added the `--pragma' command line option to inject a `%pragma'
    directive. See section 2.1.29.

(*) Added the `--before' command line option to accept preprocess
    statement before input. See section 2.1.30.

(*) Added `AVX512' `VBMI2' (Additional Bit Manipulation), `VNNI'
    (Vector Neural Network), `BITALG' (Bit Algorithm), and `GFNI'
    (Galois Field New Instruction) instructions.

(*) Added the `STATIC' directive for local symbols that should be
    renamed using global-symbol rules. See section 6.8.

(*) Allow a symbol to be defined as `EXTERN' and then later
    overridden as `GLOBAL' or `COMMON'. Furthermore, a symbol
    declared `EXTERN' and then defined will be treated as `GLOBAL'.
    See section 6.5.

(*) The `GLOBAL' directive no longer is required to precede the
    definition of the symbol.

(*) Support `private_extern' as `macho' specific extension to the
    `GLOBAL' directive. See section 7.8.5.

(*) Updated `UD0' encoding to match with the specification

(*) Added the `--limit-X' command line option to set execution
    limits. See section 2.1.31.

(*) Updated the `Codeview' version number to be aligned with `MASM'.

(*) Added the `--keep-all' command line option to preserve output
    files. See section 2.1.32.

(*) Added the `--include' command line option, an alias to `-P'
    (section 2.1.18).

(*) Added the `--help' command line option as an alias to `-h'
    (section 3.1).

(*) Added `-W', `-D', and `-Q' suffix aliases for `RET' instructions
    so the operand sizes of these instructions can be encoded
    without using `o16', `o32' or `o64'.

Version 2.13.03

(*) Added AVX and AVX512 `VAES*' and `VPCLMULQDQ' instructions.

(*) Fixed missing dwarf record in x32 ELF output format.

Back to the board
Thread view  Mix view  Order
15951 Postings in 1475 Threads, 271 registered users, 95 users online (1 registered, 94 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum