./devel/nasm, General-purpose x86 assembler

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 2.11.08nb1, Package name: nasm-2.11.08nb1, Maintainer: pkgsrc-users

The Netwide Assembler, NASM, is an 80x86 assembler designed for portability
and modularity. It supports a range of object file formats, including Linux
a.out and ELF, NetBSD/FreeBSD, COFF, Microsoft 16-bit OBJ and Win32. It will
also output plain binary files. Its syntax is designed to be simple and easy
to understand, similar to Intel's but less complex.

Master sites:

SHA1: 6908296ac437b3ade79fadfaad0efcfd99582f70
RMD160: 896ecebe1d13b23e3a5d838b1546f37ea7014325
Filesize: 746.945 KB

Version history: (Expand)

CVS history: (Expand)

   2015-06-12 12:52:19 by Thomas Klausner | Files touched by this commit (3152)
Log message:
Recursive PKGREVISION bump for all packages mentioning 'perl',
having a PKGNAME of p5-*, or depending such a package,
for perl-5.22.0.
   2015-02-23 12:25:08 by Wen Heping | Files touched by this commit (2) | Package updated
Log message:
Update to 2.11.08

Upstream changes:
Version 2.11.08
Fix section length computation in bin backend which leaded in incorrect \ 
relocation records.
Add a warning for numeric preprocessor definitions passed via command line which \ 
might have unexpected results otherwise.
Add ability to specify a module name record in rdoff linker with -mn option.
Increase label length capacity up to 256 bytes in rdoff backend for FreePascal \ 
sake, which tends to generate very long labels for procedures.
Fix segmentation failure when rip addressing is used in macho64 backend.
Fix access on out of memory when handling strings with a single grave. We have \ 
sixed similar problem in previous release but not all cases were covered.
Fix NULL dereference in disassembled on BND instruction.

Version 2.11.07
Fix 256 bit VMOVNTPS instruction.
Fix -MD option handling, which was rather broken in previous release changing \ 
command line api.
Fix access to unitialized space when handling strings with a single grave.
Fix nil dereference in handling memory reference parsing.
   2014-10-29 09:10:03 by Wen Heping | Files touched by this commit (2) | Package updated
Log message:
Update to 2.11.06

Upstream changes:
C.1.1 Version 2.11.06

Update AVX512 instructions based on the Extension Reference (319433-021 Sept 2014).
Fix the behavior of -MF and -MD options (Bugzilla 3392280)
Updated Win32 Makefile to fix issue with build
C.1.2 Version 2.11.05

Add --v as an alias for -v (see section 2.1.25), for command-line compatibility \ 
with Yasm.
Fix a bug introduced in 2.11.03 whereby certain instructions would contain \ 
multiple REX prefixes, and thus be corrupt.
C.1.3 Version 2.11.04

Removed an invalid error checking code. Sometimes a memref only with a \ 
displacement can also set an evex flag. For example:
      vmovdqu32 [0xabcd]{k1}, zmm0
Fixed a bug in disassembler that EVEX.L'L vector length was not matched when \ 
EVEX.b was set because it was simply considered as EVEC.RC. Separated EVEX.L'L \ 
case from EVEX.RC which is ignored in matching.
C.1.4 Version 2.11.03

Fix a bug there REX prefixes were missing on instructions inside a TIMES statement.
   2014-10-09 16:07:17 by Thomas Klausner | Files touched by this commit (1163)
Log message:
Remove pkgviews: don't set PKG_INSTALLATION_TYPES in Makefiles.
   2014-05-30 01:38:20 by Thomas Klausner | Files touched by this commit (3049)
Log message:
Bump for perl-5.20.0.
Do it for all packages that
* mention perl, or
* have a directory name starting with p5-*, or
* depend on a package starting with p5-
like last time, for 5.18, where this didn't lead to complaints.
Let me know if you have any this time.
   2014-04-08 14:50:43 by Adam Ciarcinski | Files touched by this commit (4)
Log message:
Changes 2.11.02:
* Add the XSAVEC, XSAVES and XRSTORS family instructions.
* Add the CLFLUSHOPT instruction.
   2013-08-13 02:17:36 by Wen Heping | Files touched by this commit (3) | Package updated
Log message:
Update to 2.10.09

Upstream changes:
C.1.1 Version 2.10.09

Pregenerate man pages.
C.1.2 Version 2.10.08

Fix VMOVNTDQA, MOVNTDQA and MOVLPD instructions.
Fix collision for VGATHERQPS, VPGATHERQD instructions.
Add a bunch of AMD TBM instructions.
Fix potential stack overwrite in numbers conversion.
Allow byte size in PREFETCHTx instructions.
Make manual pages up to date.
Make F3 and F2 SSE prefixes to override 66.
Support of AMD SVM instructions in 32 bit mode.
Fix near offsets code generation for JMP, CALL instrictions in long mode.
Fix preprocessor parse regression when id is expanding to a whitespace.
C.1.3 Version 2.10.07

Fix line continuation parsing being broken in previous version.
C.1.4 Version 2.10.06

Always quote the dependency source names when using the automatic dependency \ 
generation options.
If no dependency target name is specified via the -MT or -MQ options, quote the \ 
default output name.
Fix assembly of shift operations in CPU 8086 mode.
Fix incorrect generation of explicit immediate byte for shift by 1 under certain \ 
Fix assembly of the VPCMPGTQ instruction.
Fix RIP-relative relocations in the macho64 backend.
C.1.5 Version 2.10.05

Add the CLAC and STAC instructions.
C.1.6 Version 2.10.04

Add back the inadvertently deleted 256-bit version of the VORPD instruction.
Correct disassembly of instructions starting with byte 82 hex.
Fix corner cases in token pasting, for example:
   %define N 1e%++%+ 5
           dd N, 1e+5
C.1.7 Version 2.10.03

Correct the assembly of the instruction:
XRELEASE MOV [absolute],AL
Previous versions would incorrectly generate F3 A2 for this instruction and \ 
issue a warning; correct behavior is to emit F3 88 05.

C.1.8 Version 2.10.02

Add the ifunc macro package with integer functions, currently only integer \ 
logarithms. See section 5.4.
Add the RDSEED, ADCX and ADOX instructions.
C.1.9 Version 2.10.01

Add missing VPMOVMSKB instruction with reg32, ymmreg operands.
C.1.10 Version 2.10

When optimization is enabled, mov r64,imm now optimizes to the shortest form \ 
possible between:
     mov r32,imm32                   ;  5 bytes
     mov r64,imm32                   ;  7 bytes
     mov r64,imm64                   ; 10 bytes
To force a specific form, use the STRICT keyword, see section 3.7.

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 (32-bit ELF with the CPU in 64-bit mode.) See section 7.9.
Add support for bigendian UTF-16 and UTF-32. See section 3.4.5.
C.1.11 Version 2.09.10

Fix up NSIS script to protect uninstaller against registry keys absence or \ 
corruption. It brings in a few additional questions to a user during \ 
deinstallation procedure but still it is better than unpredictable file removal.
C.1.12 Version 2.09.09

Fix initialization of section attributes of bin output format.
Fix mach64 output format bug that crashes NASM due to NULL symbols.
C.1.13 Version 2.09.08

Fix __OUTPUT_FORMAT__ assignment when output driver alias is used. For example \ 
when -f elf is used __OUTPUT_FORMAT__ must be set to elf, if -f elf32 is used \ 
__OUTPUT_FORMAT__ must be assigned accordingly, i.e. to elf32. The rule applies \ 
to all output driver aliases. See section 4.12.6.
C.1.14 Version 2.09.07

Fix attempts to close same file several times when -a option is used.
Fixes for VEXTRACTF128, VMASKMOVPS encoding.
C.1.15 Version 2.09.06

Fix missed section attribute initialization in bin output target.
C.1.16 Version 2.09.05

Fix arguments encoding for VPEXTRW instruction.
Remove invalid form of VPEXTRW instruction.
Add VLDDQU as alias for VLDQQU to match specification.
C.1.17 Version 2.09.04

Fix incorrect labels offset for VEX intructions.
Eliminate bogus warning on implicit operand size override.
%if term could not handle 64 bit numbers.
The COFF backend was limiting relocations number to 16 bits even if in real \ 
there were a way more relocations.
C.1.18 Version 2.09.03

Print %macro name inside %rep blocks on error.
Fix preprocessor expansion behaviour. It happened sometime too early and \ 
sometime simply wrong. Move behaviour back to the origins (down to NASM \ 
Fix unitialized data dereference on OMF output format.
Issue warning on unterminated %{ construct.
Fix for documentation typo.
C.1.19 Version 2.09.02

Fix reversed tokens when %deftok produces more than one output token.
Fix segmentation fault on disassembling some VEX instructions.
Missing %endif did not always cause error.
Fix typo in documentation.
Compound context local preprocessor single line macro identifiers were not \ 
expanded early enough and as result lead to unresolved symbols.
C.1.20 Version 2.09.01

Fix NULL dereference on missed %deftok second parameter.
Fix NULL dereference on invalid %substr parameters.
C.1.21 Version 2.09

Fixed assignment the magnitude of %rep counter. It is limited to 62 bits now.
Fixed NULL dereference if argument of %strlen resolves to whitespace. For \ 
example if nonexistent macro parameter is used.
%ifenv, %elifenv, %ifnenv, and %elifnenv directives introduced. See section 4.4.9.
Fixed NULL dereference if environment variable is missed.
Updates of new AVX v7 Intel instructions.
PUSH imm32 is now officially documented.
Fix for encoding the LFS, LGS and LSS in 64-bit mode.
Fixes for compatibility with OpenWatcom compiler and DOS 8.3 file format limitation.
Macros parameters range expansion introduced. See section 4.3.4.
Backward compatibility on expanging of local sigle macros restored.
8 bit relocations for elf and bin output formats are introduced.
Short intersegment jumps are permitted now.
An alignment more than 64 bytes are allowed for win32, win64 output formats.
SECTALIGN directive introduced. See section 4.12.13.
nojmp option introduced in smartalign package. See section 5.2.
Short aliases win, elf and macho for output formats are introduced. Each stands \ 
for win32, elf32 and macho32 accordingly.
Faster handling of missing directives implemented.
Various small improvements in documentation.
No hang anymore if unable to open malloc.log file.
The environments without vsnprintf function are able to build nasm again.
AMD LWP instructions updated.
Tighten EA checks. We warn a user if there overflow in EA addressing.
Make -Ox the default optimization level. For the legacy behavior, specify -O0 \ 
explicitly. See section 2.1.22.
Environment variables read with %! or tested with %ifenv can now contain \ 
non-identifier characters if surrounded by quotes. See section 4.10.2.
Add a new standard macro package %use fp for floating-point convenience macros. \ 
See section 5.3.
C.1.22 Version 2.08.02

Fix crash under certain circumstances when using the %+ operator.
C.1.23 Version 2.08.01

Fix the %use statement, which was broken in 2.08.
C.1.24 Version 2.08

A number of enhancements/fixes in macros area.
Support for converting strings to tokens. See section 4.1.9.
Fuzzy operand size logic introduced.
Fix COFF stack overrun on too long export identifiers.
Fix Macho-O alignment bug.
Fix crashes with -fwin32 on file with many exports.
Fix stack overrun for too long [DEBUG id].
Fix incorrect sbyte usage in IMUL (hit only if optimization flag passed).
Append ending token for .stabs records in the ELF output format.
New NSIS script which uses ModernUI and MultiUser approach.
Visual Studio 2008 NASM integration (rules file).
Warn a user if a constant is too long (and as result will be stripped).
The obsoleted pre-XOP AMD SSE5 instruction set which was never actualized was \ 
Fix stack overrun on too long error file name passed from the command line.
Bind symbols to the .text section by default (ie in case if SECTION directive \ 
was omitted) in the ELF output format.
Fix sync points array index wrapping.
A few fixes for FMA4 and XOP instruction templates.
Add AMD Lightweight Profiling (LWP) instructions.
Fix the offset for %arg in 64-bit mode.
An undefined local macro (%$) no longer matches a global macro with the same name.
Fix NULL dereference on too long local labels.
   2013-05-31 14:42:58 by Thomas Klausner | Files touched by this commit (2880)
Log message:
Bump all packages for perl-5.18, that
a) refer 'perl' in their Makefile, or
b) have a directory name of p5-*, or
c) have any dependency on any p5-* package

Like last time, where this caused no complaints.