| Index | index by Group | index by Distribution | index by Vendor | index by creation date | index by Name | Mirrors | Help | Search |
| Name: nasm | Distribution: openSUSE Tumbleweed |
| Version: 2.16.03 | Vendor: openSUSE |
| Release: 1.5 | Build date: Thu Apr 18 07:41:15 2024 |
| Group: Development/Languages/Other | Build host: reproducible |
| Size: 2641406 | Source RPM: nasm-2.16.03-1.5.src.rpm |
| Packager: http://bugs.opensuse.org | |
| Url: https://www.nasm.us/ | |
| Summary: Netwide Assembler (An x86 Assembler) | |
NASM is a prototype general-purpose x86 assembler. It can currently output several binary formats, including ELF, a.out, Win32, and OS/2.
BSD-2-Clause
* Thu Apr 18 2024 Michael Vetter <mvetter@suse.com>
- Update to 2.16.03:
* 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.
* Fri Apr 05 2024 Michael Vetter <mvetter@suse.com>
- 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.
See the = modifier in section 4.2.1.
* Update documentation: __USE_package__ is now __?USE_package?__.
* Documentation: correct a minor problem in the expression
grammar for Dx statements, see section 3.2.1.
* Preprocessor: correctly handle empty %rep blocks.
* Preprocessor: add options for a base prefix to %num(), see section 4.4.8.
* Preprocessor: add a %hex() function, equivalent to %eval()
except that it producess hexadecimal values that are nevertheless
valid NASM numeric constants, see section 4.4.5.
* Preprocessor: fix the parameter number in error messages (should be 1-based,
like %num references to multi-line macro arguments.)
* Documentation: be more clear than the bin format is simply a linker built
into NASM. See section 8.1.
* Adjust the LOCK prefix warning for XCHG.
LOCK XCHG reg,mem would issue a warning for being unlockable, which is
incorrect. In this case the reg,mem encoding is simply an alias for
the mem,reg encoding. However, XCHG is always locked, so create a new
warning (-w+prefix-lock-xchg) to explicitly flag a user-specified LOCK XCHG;
default off. Future versions of NASM may remove the LOCK prefix when
optimization is enabled.
* Fix broken dependency-list generation.
* Add optional warnings for specific relocation types (-w+reloc-*,
see appendix A), default off.
* Some target environments may have specific restrictions on what
kinds of relocations are possible or allowed.
* Error out on certain bad syntax in Dx statements, such as
db 1 2. See section 3.2.1.
* Thu Dec 22 2022 Michael Vetter <mvetter@suse.com>
- Update to 2.16.01:
* Fix the creation of the table of contents in the HTML version
of the documentation.
* Wed Dec 21 2022 Michael Vetter <mvetter@suse.com>
- 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.
* Instruction table updated per public information available as of
November 2022.
* All warnings in the preprocessor have now been assigned warning
classes. See warnings.
* Fix the invalid use of RELA-type relocations instead of
REL-type relocations when generating DWARF debug information for
the elf32 output format.
* Fix the handling at in istruc when the structure contains
local labels. See istruc.
* When assembling with --reproducible, don't encode the filename
in the COFF header for the coff}, win32 or win64 output
formats. The COFF header only has space for an 18-character filename,
which makes this field rather useless in the first place. Debug output
data, if enabled, is not affected.
* Fix incorrect size calculation when using MASM syntax for non-byte
reservations (e.g. dw ?.)
* Allow forcing an instruction in 64-bit mode to have a (possibly
redundant) REX prefix, using the syntax rex as a prefix.
* Add a vex prefix to enforce VEX (AVX) encoding of an
instruction, either using the 2- or 3-byte VEX prefixes.
* The CPU directive has been augmented to allow control of
generation of VEX (AVX) versus EVEX (AVX-512) instruction formats, see
CPU.
* Some recent instructions that previously have been only available
using EVEX encodings are now also encodable using VEX (AVX)
encodings. For backwards compatibility these encodings are not enabled
by default, but can be generated either via an explicit vex
prefix or by specifying either CPU LATEVEX or CPU NOEVEX; see
CPU.
* Document the already existing unimacro directive. See unmacro.
* Fix a code range generation bug in the DWARF debug format
(incorrect information in the DW_AT_high_pc field) for the ELF
output formats. This bug happened to cancel out with a bug in older
versions of the GNU binutils linker, but breaks with other linkers and
updated or other linkers that expect the spec to be followed.
* Fix segment symbols with addends, e.g. jmp _TEXT+10h:0 in
output formats that support segment relocations, e.g. the obj
format.
* Fix various crashes and hangs on invalid input
* Fri Dec 16 2022 Dirk Müller <dmueller@suse.com>
- add reproducible.patch to avoid use of __DATE__
* Wed Oct 21 2020 Dominique Leuenberger <dimstar@opensuse.org>
- Update to version 2.15.05:
+ Fix {%ifid $} and {%ifid $$} incorrectly being treated as true.
+ Add {--reproducible} option to suppress NASM version numbers
and timestamps in output files. See {opt-reproducible}.
* Mon Aug 24 2020 Dirk Mueller <dmueller@suse.com>
- 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}.
* Sat Jul 18 2020 Andreas Stieger <andreas.stieger@gmx.de>
- nasm 2.15.3:
* Add instructions from the Intel Instruction Set Extensions and
Future Features Programming Reference, June 2020. This includes
AVX5512 bfloat16, AVX512 mask intersect, and Intel Advanced
Matrix Extensions (AMX).
* Support for bfloat16 floating-point constants
* various bug fixes
* Sat Jul 04 2020 Andreas Stieger <andreas.stieger@gmx.de>
- update to 2.15.2:
* Fix the handling of macro parameter ranges (%{:}), including
with brace-enclosed original arguments
- includes changes from 2.15.01:
* Add instructions for Intel Control Flow Enforcement Technology
- includes changes from 2.15:
* The comparison and booleanizing operators can now be used in
any expression context, not just %if
* New operator ? ... :.
* Signed shift operators <<< and >>>
* The MASM DUP syntax for data definitions is now supported,
in a somewhat enhanced form
* Warn for strange legacy behavior regarding empty arguments in
multi-line macro expansion, but try to match legacy behavior in
most cases. Legacy behavior can be disabled with the directive
%pragma preproc sane_empty_expansion
* A much more sensible limit to expression evaluation depth.
The previously defined limit would rarely trigger before NASM
died with a stack overrun error on most systems
* The state of warnings can now be saved and restored via the
[WARNING PUSH] and [WARNING POP] directives
* The sectalign on|off switch does not affect an explicit directive
* Fixed 'mismatch in operand sizes' error in the MOVDDUP,
CMPXCHG8B and CMPXCHG16B instructions.
* Removed obsolete gnu-elf-extensions warning about 8- and 16-bit
relocation generation
* Added group aliases for all prefixed warnings
* Added implicitly sized versions of the K... instructions,
which allows the K... instructions to be specified without a
size suffix as long as the operands are sized
* Added -L option for additional listing information
* Added some warnings for obsolete instructions for a specified CPU.
* Deprecated -hf and -y options. Use -h instead
* Made DWARF as the default debug format for ELF
* Added %pragma list options... to set or clear listing options
* Allowed immediate syntax for LEA instruction (ignore operand
size completely)
* Added limited functionality MASM compatibility package
* Add single-line macros aliases using %defalias or %idefalias.
These behave like a kind of "symbolic links" for single-line
macros
* Added support for stringify, nostrip, evaluating, and greedy
single-line macro arguments
* Unused single-line macro arguments no longer need to have a
specified name
* Added conditional comma operator %,
* Changed private namespace from __foo__ to __?foo?__, so a user
namespace starting from underscore is now clean from symbols.
For backwards compatibility, the previous names are defined as
aliases
* Added support of ELF weak symbols and external references
* Changed the behavior of the EXTERN keyword and introduced
REQUIRED keyword
* Added %ifusable and %ifusing directives
* Made various performance improvements and stability fixes in
macro preprocessor engine
* Improved NASM error handling and cleaned up error messages
- includes changes from 2.14.03:
* Suppress nuisance "label changed during code generation"
messages after a real error
* Add support for the merge and strings attributes on ELF sections
* Add support for the note, preinit_array, init_array, and
fini_array sections type in ELF
* Handle more than 32,633 sections in ELF
* Sat Nov 30 2019 Dominique Leuenberger <dimstar@opensuse.org>
- Convert changes file to proper UTF-8 format: new
version of RPM are getting strict in interpreting files.
/usr/bin/nasm /usr/bin/ndisasm /usr/share/doc/packages/nasm /usr/share/doc/packages/nasm/AUTHORS /usr/share/doc/packages/nasm/CHANGES /usr/share/doc/packages/nasm/ChangeLog /usr/share/doc/packages/nasm/README.md /usr/share/licenses/nasm /usr/share/licenses/nasm/LICENSE /usr/share/man/man1/nasm.1.gz /usr/share/man/man1/ndisasm.1.gz
Generated by rpm2html 1.8.1
Fabrice Bellet, Thu Oct 23 22:58:29 2025