* Fix building from git in a separate directory from the source.
* Remove some irrelevant files from the source distribution.
* Make the documentation stronger that -O0 or -O1 are probably
not what the user wants. See section 2.1.24.
* Fix configure --enable-lto build option.
* Update the included RPM .spec file.
OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/nasm?expand=0&rev=58
- Update to 2.16.02:
* Fix building from the source distribution in a separate directory
from the source.
* Fix a number of issues when building from source, mostly
involving configure or dependency generation.
In particular, more aggressively avoid cross-compilation problems
on Unix/Linux systems automatically invoking WINE. We could end
up invoking WINE even when we didn't want to, making configure
think it was running native when in fact cross-compiling.
* Hopefully fix compiling with the latest versions of MSVC/nmake.
* Windows host: add embedded manifest file. Without a manifest,
Windows applications force a fixed PATH_MAX limit to any
pathname; this is unnecessary.
* Add support VEX-encoded SM4-NI instructions.
* Add support for VEX-encoded SM3-NI instructions.
* Add support for VEX-encoded SHA512-NI instructions.
* PTWRITE opcode corrected (F3 prefix required.)
* Disassembler: the SMAP instructions are NP; notably the prefixed
versions of CLAC are ERETU/ERETS.
* Add support for Flexible Return and Exception Delivery (FRED):
the LKGS, ERETS and ERETU instructions.
* Fix external references to segments in the obj (OMF) and
possibly other output formats.
* Always support up to 8 characters, i.e. 64 bits, in a
string-to-numeric conversion.
* Preprocessor: add %map() function to expand a macro from
a list of arguments, see section 4.4.7.
* Preprocessor: allow the user to specify the desired radix
for an evaluated parameter. It doesn't make any direct difference,
but can be nice for debugging or turning into strings.
OBS-URL: https://build.opensuse.org/request/show/1165391
OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/nasm?expand=0&rev=56
- Update to 2.16.01:
* Fix the creation of the table of contents in the HTML version
of the documentation.
- Update to 2.16:
* Support for the rdf format has been discontinued and all the
RDOFF utilities has been removed.
* The --reproducible option now leaves the filename field in the
COFF object format blank. This was always rather useless since it is
only 18 characters long; as such debug formats have to carry their own
filename information anyway.
* Fix handling of MASM-syntax reserved memory (e.g. dw ?) when
used in structure definitions.
* The preprocessor now supports functions, which can be less verbose
and more convenient than the equivalent code implemented using
directives. See ppfunc.
* Fix the handling of %00 in the preprocessor.
* Fix incorrect handling of path names affecting error messages,
dependency generation, and debug format output.
* Support for the RDOFF output format and the RDOFF tools have been
removed. The RDOFF tools had already been broken since at least NASM
2.14. For flat code the ELF output format recommended; for segmented
code the obj (OMF) output format.
* New facility: preprocessor functions. Preprocessor functions, which
are expanded similarly to single-line macros, can greatly simplify
code that in the past would have required a lengthy list of directives
and intermediate macros. See ppfunc.
* Single-line macros can now declare parameters (using a &&
prefix) that creates a quoted string, but does not requote an
already quoted string. See define.
OBS-URL: https://build.opensuse.org/request/show/1044181
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/nasm?expand=0&rev=44
* Support for the rdf format has been discontinued and all the
RDOFF utilities has been removed.
* The --reproducible option now leaves the filename field in the
COFF object format blank. This was always rather useless since it is
only 18 characters long; as such debug formats have to carry their own
filename information anyway.
* Fix handling of MASM-syntax reserved memory (e.g. dw ?) when
used in structure definitions.
* The preprocessor now supports functions, which can be less verbose
and more convenient than the equivalent code implemented using
directives. See ppfunc.
* Fix the handling of %00 in the preprocessor.
* Fix incorrect handling of path names affecting error messages,
dependency generation, and debug format output.
* Support for the RDOFF output format and the RDOFF tools have been
removed. The RDOFF tools had already been broken since at least NASM
2.14. For flat code the ELF output format recommended; for segmented
code the obj (OMF) output format.
* New facility: preprocessor functions. Preprocessor functions, which
are expanded similarly to single-line macros, can greatly simplify
code that in the past would have required a lengthy list of directives
and intermediate macros. See ppfunc.
* Single-line macros can now declare parameters (using a &&
prefix) that creates a quoted string, but does not requote an
already quoted string. See define.
* Instruction table updated per public information available as of
November 2022.
* All warnings in the preprocessor have now been assigned warning
classes. See warnings.
OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/nasm?expand=0&rev=53
- update to 2.15.4:
* More sensible handling of the case where one single-line macro
definition will shadow another.
* Add special preprocessor tokens \c{%*?} and \c{%*??} that expand
like \c{%?} and \c{%??} in single-line macros only. See
\k{selfref%*?}.
* Fix SSE instructions not being recognized with an explicit memory
operation size (e.g. \c{movsd qword [eax],xmm0}).
* The \c{-L+} option no longer enables \c{-Lw}, which is mainly
useful to debug NASM crashes. See \k{opt-L}.
* The NASM-only RDOFF output format backend, which has been broken
since at least NASM 2.14, has been disabled. The RDOFF tools are
scheduled to be removed from the NASM distribution in NASM 2.16. If
you have a concrete use case for RDOFF, please file a NASM bug report
at \W{https://bugs.nasm.us/}\c{https://bugs.nasm.us/} as soon as
possible. See \k{rdffmt}.
OBS-URL: https://build.opensuse.org/request/show/829042
OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/nasm?expand=0&rev=48
- New upstream version 2.13.02:
* Fix generation of PEXTRW instruction.
* Fix smartalign package which could trigger an error during
optimization if the alignment code expanded too much due to
optimization of the previous code.
* Fix a case where negative value in TIMES directive causes
panic instead of an error.
* Fix the incorrect generation of VEX-encoded instruction
when static mode decorators are specified on scalar instructions,
losing the decorators as they require EVEX encoding.
* Fix generation of dependency lists.
* Fixes macro calls that have the wrong number of arguments
(bsc#1073796, CVE-2017-17810)
* Fixes Heap-based buffer overflow allows related to a strcpy
in paste_tokens (bsc#1073798, CVE-2017-17811)
* Fixes Heap-based buffer over-read in the function detoken()
(bsc#1073799, CVE-2017-17812)
* Fixes Use-after-free in the pp_list_one_macro function
(bsc#1073803, CVE-2017-17813)
* Fixes Use-after-free in do_directive
(bsc#1073808, CVE-2017-17814)
* Fixes Illegal address access in is_mmacro()
(bsc#1073818, CVE-2017-17815)
* Fixes Use-after-free in pp_getline
(bsc#1073823, CVE-2017-17816)
* Fixes Use-after-free in pp_verror
(bsc#1073829, CVE-2017-17817)
* Fixes Heap-based buffer over-read related to a while loop in
paste_tokens (bsc#1073830, CVE-2017-17818)
* Fixes Illegal address access in the function find_cc
(bsc#1073832, CVE-2017-17819)
* Fixes Use-after-free in pp_list_one_macro
(bsc#1073846, CVE-2017-17820)
* Fixes illegal address access in thefunction paste_tokens()
(bsc#1058013, CVE-2017-14228)
- memory_fixes.patch: changes upstreamed and removed.
OBS-URL: https://build.opensuse.org/request/show/569247
OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/nasm?expand=0&rev=34
- version 2.10.09
* Add support for the Intel AVX2 instruction set.
* Add support for Bit Manipulation Instructions 1 and 2.
* Add support for Intel Transactional Synchronization Extensions (TSX).
* Add support for x32 ELF
* Add the ifunc macro package with integer functions,
currently only integer logarithms.
* Add support for RDSEED
* Support of AMD SVM instructions in 32 bit mode
* Add a bunch of AMD TBM instructions.
* 2 years of bugfixes (forwarded request 184378 from elvigia)
OBS-URL: https://build.opensuse.org/request/show/184400
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/nasm?expand=0&rev=28
- version 2.10.09
* Add support for the Intel AVX2 instruction set.
* Add support for Bit Manipulation Instructions 1 and 2.
* Add support for Intel Transactional Synchronization Extensions (TSX).
* Add support for x32 ELF
* Add the ifunc macro package with integer functions,
currently only integer logarithms.
* Add support for RDSEED
* Support of AMD SVM instructions in 32 bit mode
* Add a bunch of AMD TBM instructions.
* 2 years of bugfixes
OBS-URL: https://build.opensuse.org/request/show/184378
OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/nasm?expand=0&rev=19