platform/upstream/nasm.git
12 years agodoc: update documentation for pending 2.10 release
Keith Kanios [Sat, 30 Jul 2011 18:14:18 +0000 (13:14 -0500)]
doc: update documentation for pending 2.10 release

12 years agoNASM 2.10rc8
H. Peter Anvin [Wed, 27 Jul 2011 21:32:08 +0000 (14:32 -0700)]
NASM 2.10rc8

13 years agoImplement insns.dat in human readable form
Anonymous [Wed, 20 Jul 2011 17:41:49 +0000 (21:41 +0400)]
Implement insns.dat in human readable form

 I converted almost all instructions in insns.dat (version
 7a6f97869840fc0b1b8677bd77c74754c5f024aa) to the more
 readable format that insns.pl has supported for years.

 I also made some changes to insns.pl. You can verify that the
 new insns.dat and insns.pl produce byte-identical output to
 the old insns.dat and insns.pl, so I think that this change
 is safe to check in, even though it is a large change to
 insns.dat.

The changes to insns.pl are:

 * fixed a bug: ib,u was not recognized
 * added support for a second immediate argument called "j" for
   instructions like ENTER imm,imm
 * added a "+r" syntax for \10..\13

[gorcunov: insns files remains the same, great job anonymous!]

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoNASM 2.10.rc7
Cyrill Gorcunov [Tue, 19 Jul 2011 21:30:31 +0000 (01:30 +0400)]
NASM 2.10.rc7

Intel's AVX2 instructions should be covered now.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoinsns: A final pile of AVX2 instructions
Cyrill Gorcunov [Tue, 19 Jul 2011 21:16:11 +0000 (01:16 +0400)]
insns: A final pile of AVX2 instructions

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoinsns: A few additional AVX2 templates
Cyrill Gorcunov [Tue, 19 Jul 2011 13:01:35 +0000 (17:01 +0400)]
insns: A few additional AVX2 templates

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoinsns: One more small snippet of AVX2
Cyrill Gorcunov [Sun, 17 Jul 2011 21:15:25 +0000 (01:15 +0400)]
insns: One more small snippet of AVX2

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoinsns: One more slab of AVX2 instructions
Cyrill Gorcunov [Sun, 17 Jul 2011 20:57:35 +0000 (00:57 +0400)]
insns: One more slab of AVX2 instructions

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoinsns: Add a slab of AVX2 instructions
Cyrill Gorcunov [Sun, 17 Jul 2011 19:20:00 +0000 (23:20 +0400)]
insns: Add a slab of AVX2 instructions

Not all are covered yet, but still a step
forward I think.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoinsns.dat: Move exsiting AVX2 insns to a separate section
Cyrill Gorcunov [Sun, 17 Jul 2011 16:24:16 +0000 (20:24 +0400)]
insns.dat: Move exsiting AVX2 insns to a separate section

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc: Align members in structures
Cyrill Gorcunov [Sun, 17 Jul 2011 16:20:14 +0000 (20:20 +0400)]
preproc: Align members in structures

For easier reading

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc: Reorder ExpInv to drop padding
Cyrill Gorcunov [Sun, 17 Jul 2011 16:11:08 +0000 (20:11 +0400)]
preproc: Reorder ExpInv to drop padding

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc: Reorder SMacro members to eliminate padding
Cyrill Gorcunov [Sun, 17 Jul 2011 16:06:20 +0000 (20:06 +0400)]
preproc: Reorder SMacro members to eliminate padding

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agonasm.h: Reorder tokenval members to drop padding
Cyrill Gorcunov [Sun, 17 Jul 2011 16:00:30 +0000 (20:00 +0400)]
nasm.h: Reorder tokenval members to drop padding

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoSome cleanup on insns.h
Cyrill Gorcunov [Sun, 17 Jul 2011 13:52:03 +0000 (17:52 +0400)]
Some cleanup on insns.h

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoDrop unused 'opt' from nasm_opt_val
Cyrill Gorcunov [Sun, 17 Jul 2011 10:06:54 +0000 (14:06 +0400)]
Drop unused 'opt' from nasm_opt_val

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoelf64: Drop unused 'zero' variable
Cyrill Gorcunov [Sun, 17 Jul 2011 10:04:44 +0000 (14:04 +0400)]
elf64: Drop unused 'zero' variable

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoDrop unused 'type' from gencode
Cyrill Gorcunov [Sun, 17 Jul 2011 10:02:52 +0000 (14:02 +0400)]
Drop unused 'type' from gencode

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoFix saa_writeaddr for big-endian case
Cyrill Gorcunov [Sun, 17 Jul 2011 09:59:13 +0000 (13:59 +0400)]
Fix saa_writeaddr for big-endian case

saa_writeaddr on big-endian archs didn't write converted
argument, fix it.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoDrop unused 'arg' variable
Cyrill Gorcunov [Sun, 17 Jul 2011 09:55:25 +0000 (13:55 +0400)]
Drop unused 'arg' variable

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoMerge branch 'nasm-2.09.xx'
Cyrill Gorcunov [Fri, 15 Jul 2011 21:44:57 +0000 (01:44 +0400)]
Merge branch 'nasm-2.09.xx'

Conflicts:
version

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoNASM-2.09.10
Cyrill Gorcunov [Fri, 15 Jul 2011 21:41:28 +0000 (01:41 +0400)]
NASM-2.09.10

- Fix nasty problem with uninstaller in case of registry
  keys corruption, which might lead to arbitrary files
  removal.

  Just to be sure the proper files and directories are to
  be removed a few additional questions are brought into
  deinstallation procedure.

  The former issue reported here

http://forum.nasm.us/index.php?topic=1013.0

  Note: no functional changes are done inside nasm code,
  critical fixes will be ported to 2.09.xx branch, but
  mostly the (more or less) active development and various
  bug fixes are concentrated around 2.10 series.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agodoc: Describe changes for nasm-2.09.10
Cyrill Gorcunov [Fri, 15 Jul 2011 21:33:00 +0000 (01:33 +0400)]
doc: Describe changes for nasm-2.09.10

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agonsis: Remove desktop bat link as well
Cyrill Gorcunov [Fri, 15 Jul 2011 19:10:46 +0000 (23:10 +0400)]
nsis: Remove desktop bat link as well

In case of installation procedure being used in
a per-user fasion the display link to a bat file
remain untouched at uninstallation time. Fix it.

I hope this time all things go smooth.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agonsis: Inform a user about files being deleted
Cyrill Gorcunov [Fri, 15 Jul 2011 18:38:47 +0000 (22:38 +0400)]
nsis: Inform a user about files being deleted

Since a user might have some weird access rules on NTFS
such as allow to write files but not to delete them it
might happen that uninstallation procedure fails at
deleting files but deleting registry keys still success,
and in result a user might try to uninstall nasm for second
time with registry keys corrupted.

So prompt a user with files being deleted so he can double
check what is going on.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agonsis: Make sure the registry keys exist
Cyrill Gorcunov [Wed, 6 Jul 2011 20:56:35 +0000 (00:56 +0400)]
nsis: Make sure the registry keys exist

It was reported on nasm forum (http://forum.nasm.us/index.php?topic=1013.0)
that if uninstallation procedure get stopped (for any reason) in a middle
leading to read empty registry values an attempt to remove arbitrary
files might happen. So make sure there are some sane values in registry.

N.B: People, if you find some bug in nasm, don't write to forum, file
bug directly in bugzilla, if it's not a bug we simply close it, otherwise
we might miss serious problems like this one!

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agonsis: Remove desktop bat link as well
Cyrill Gorcunov [Fri, 15 Jul 2011 19:10:46 +0000 (23:10 +0400)]
nsis: Remove desktop bat link as well

In case of installation procedure being used in
a per-user fasion the display link to a bat file
remain untouched at uninstallation time. Fix it.

I hope this time all things go smooth.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agonsis: Inform a user about files being deleted
Cyrill Gorcunov [Fri, 15 Jul 2011 18:38:47 +0000 (22:38 +0400)]
nsis: Inform a user about files being deleted

Since a user might have some weird access rules on NTFS
such as allow to write files but not to delete them it
might happen that uninstallation procedure fails at
deleting files but deleting registry keys still success,
and in result a user might try to uninstall nasm for second
time with registry keys corrupted.

So prompt a user with files being deleted so he can double
check what is going on.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoA few more AVX2 spec instructions
H. Peter Anvin [Fri, 8 Jul 2011 23:08:34 +0000 (16:08 -0700)]
A few more AVX2 spec instructions

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
13 years agoUse a normal quad-case for valueless /is4
H. Peter Anvin [Fri, 8 Jul 2011 00:21:24 +0000 (17:21 -0700)]
Use a normal quad-case for valueless /is4

When we don't have an immediate for the i-field in /is4, then use a
normal quad-bytecode encoding for it to save some small amount of
space and re-use existing machinery.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
13 years agoRemove support for DREX encoding
H. Peter Anvin [Thu, 7 Jul 2011 23:58:22 +0000 (16:58 -0700)]
Remove support for DREX encoding

The DREX encoding never hit production silicon, and has been replaced
by VEX/XOP encoding, so remove support for it.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
13 years agoinsns.dat: Clean up and fix the BMI instruction patterns
H. Peter Anvin [Thu, 7 Jul 2011 22:29:14 +0000 (15:29 -0700)]
insns.dat: Clean up and fix the BMI instruction patterns

Clean up the formatting of the BMI instruction patterns, and fix:

a) X64,FUTURE is wrong - it needs to be LONG,FUTURE
b) Fix the BLSI, BLSMSK, BLSR instruction patterns
c) Use a bracket pattern for TZCNT

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
13 years agoinsns: Fix up RORX template
Jasper Neuman [Thu, 7 Jul 2011 07:02:11 +0000 (11:02 +0400)]
insns: Fix up RORX template

Missed 64 bit case.

Signed-off-by: Jasper Neuman <jasper.neumann@web.de>
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoinsns.dat: Add some BMI1 and BMI2 instructions
Jasper Neuman [Wed, 6 Jul 2011 21:08:51 +0000 (01:08 +0400)]
insns.dat: Add some BMI1 and BMI2 instructions

Signed-off-by: Jasper Neuman <jasper.neumann@web.de>
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agonsis: Make sure the registry keys exist
Cyrill Gorcunov [Wed, 6 Jul 2011 20:56:35 +0000 (00:56 +0400)]
nsis: Make sure the registry keys exist

It was reported on nasm forum (http://forum.nasm.us/index.php?topic=1013.0)
that if uninstallation procedure get stopped (for any reason) in a middle
leading to read empty registry values an attempt to remove arbitrary
files might happen. So make sure there are some sane values in registry.

N.B: People, if you find some bug in nasm, don't write to forum, file
bug directly in bugzilla, if it's not a bug we simply close it, otherwise
we might miss serious problems like this one!

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoinsns.h: Add BMI1 and BMI2 flags for further usage
Jasper Neuman [Wed, 6 Jul 2011 20:03:49 +0000 (00:03 +0400)]
insns.h: Add BMI1 and BMI2 flags for further usage

Signed-off-by: Jasper Neuman <jasper.neumann@web.de>
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc: Drop useless assignments
Cyrill Gorcunov [Wed, 6 Jul 2011 19:12:55 +0000 (23:12 +0400)]
preproc: Drop useless assignments

new_ExpDef does zalloc'ate memory so no need
to assign zeros again.

Same time it should fix MSC complains on NULL assignment
on boolean variable.

Reported-by: Jasper Neuman <jasper.neumann@web.de>
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoMerge branch 'nasm-2.09.xx'
Cyrill Gorcunov [Sun, 3 Jul 2011 20:51:53 +0000 (00:51 +0400)]
Merge branch 'nasm-2.09.xx'

Conflicts:
version

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoNASM 2.09.09
Cyrill Gorcunov [Sun, 3 Jul 2011 20:49:03 +0000 (00:49 +0400)]
NASM 2.09.09

Just a few fixes only but serious enough to yield
new stable series

 - Unitialized memory parsing in bin format section attibutes.
 - MachO NULL dereference

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agodoc: Describe changes for stable version
Cyrill Gorcunov [Sun, 3 Jul 2011 20:47:08 +0000 (00:47 +0400)]
doc: Describe changes for stable version

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoBR3282788: Fix 64-bit Mach-O bug that crashes NASM due to NULL symbols
Keith Kanios [Tue, 12 Apr 2011 02:38:50 +0000 (21:38 -0500)]
BR3282788: Fix 64-bit Mach-O bug that crashes NASM due to NULL symbols

13 years agooutput/outbin.c: initialize section attribs upon creation
Cyrill Gorcunov [Sun, 3 Jul 2011 20:33:24 +0000 (00:33 +0400)]
output/outbin.c: initialize section attribs upon creation

Basically it's backport of commits

11db774a151e9d895fa05f980563a5cafb0f306a
3bc3ff2fb685a645698f9db9cfc903df30e4e555
c13deef255b621ace2130adf55530f3364a40458
e3f47806658de042af0eaccb1cc7896be388b397

They were missed to back-merge in a first place.

Reported-by: Keith Kanios <keith@kanios.net>
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc: Move Preproc type to preproc_ops structure
Cyrill Gorcunov [Fri, 1 Jul 2011 06:38:25 +0000 (10:38 +0400)]
preproc: Move Preproc type to preproc_ops structure

There is no need to hide this structure into a type.
The former preproc_ops is a way more descriptive.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc: Refactor smacro paramters expansion
Cyrill Gorcunov [Wed, 29 Jun 2011 21:36:45 +0000 (01:36 +0400)]
preproc: Refactor smacro paramters expansion

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc: Add smacro paramter helpers
Cyrill Gorcunov [Wed, 29 Jun 2011 21:16:35 +0000 (01:16 +0400)]
preproc: Add smacro paramter helpers

I belive this should simply code a bit.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc: Alignment in loop
Cyrill Gorcunov [Wed, 29 Jun 2011 20:22:53 +0000 (00:22 +0400)]
preproc: Alignment in loop

Just for easier reading

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoinsns: Mark AVX2 instructions as FUTURE
Cyrill Gorcunov [Wed, 29 Jun 2011 19:35:53 +0000 (23:35 +0400)]
insns: Mark AVX2 instructions as FUTURE

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc: Finally drop context-through search
Cyrill Gorcunov [Mon, 27 Jun 2011 21:59:05 +0000 (01:59 +0400)]
preproc: Finally drop context-through search

2.09 series was the last one we support context-thru search
(and we were issuing a warning about that) so drop all-context
from get_ctx() routine.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc: nasm_free is safe against NULL argument
Cyrill Gorcunov [Mon, 27 Jun 2011 21:33:02 +0000 (01:33 +0400)]
preproc: nasm_free is safe against NULL argument

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoRevert "BR3288901: Relax concat rules in preprocessor code"
Cyrill Gorcunov [Sun, 26 Jun 2011 21:23:09 +0000 (01:23 +0400)]
Revert "BR3288901: Relax concat rules in preprocessor code"

This reverts commit cb00cd1ba7f07f60f0a94c43cfc4fa7b01e2ff95.

As Victor pointed out some tests do not pass with this commit
so revert it until things get fixed.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc: Add trace point into paste_tokens
Cyrill Gorcunov [Sun, 26 Jun 2011 21:22:27 +0000 (01:22 +0400)]
preproc: Add trace point into paste_tokens

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc: Some more tracing calls
Cyrill Gorcunov [Sun, 26 Jun 2011 19:33:56 +0000 (23:33 +0400)]
preproc: Some more tracing calls

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc: Missed double charp in nasm_trace
Cyrill Gorcunov [Sun, 26 Jun 2011 19:07:35 +0000 (23:07 +0400)]
preproc: Missed double charp in nasm_trace

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoinsns: A few more AVX2 instructions
Cyrill Gorcunov [Sun, 26 Jun 2011 06:45:10 +0000 (10:45 +0400)]
insns: A few more AVX2 instructions

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoinsns: Add VPERMD instruction
Cyrill Gorcunov [Sat, 25 Jun 2011 22:07:22 +0000 (02:07 +0400)]
insns: Add VPERMD instruction

We somehow missed it.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agotest: Add movd.asm
Cyrill Gorcunov [Sat, 25 Jun 2011 21:53:38 +0000 (01:53 +0400)]
test: Add movd.asm

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoinsns: Allow MOVD xmmreg,rm32 to be used in 32bit mode
Cyrill Gorcunov [Sat, 25 Jun 2011 21:49:29 +0000 (01:49 +0400)]
insns: Allow MOVD xmmreg,rm32 to be used in 32bit mode

Reported-by: Keith Kanios <keith@kanios.net>
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc: Add tokenization tracing
Cyrill Gorcunov [Sat, 25 Jun 2011 15:51:44 +0000 (19:51 +0400)]
preproc: Add tokenization tracing

It's a bit more than that, also TRACE=1 make
flag added to run this facility on and off
at compiling time.

Debug feature only, doesn't affect regular users.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc.c: Get rid of a few tabs and update year
Cyrill Gorcunov [Sat, 25 Jun 2011 15:34:19 +0000 (19:34 +0400)]
preproc.c: Get rid of a few tabs and update year

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc.c: Use list_reverse helper
Cyrill Gorcunov [Wed, 13 Apr 2011 09:15:02 +0000 (13:15 +0400)]
preproc.c: Use list_reverse helper

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agonasmlib: Add list_reverse helper
Cyrill Gorcunov [Wed, 13 Apr 2011 07:25:49 +0000 (11:25 +0400)]
nasmlib: Add list_reverse helper

There is no way to make it as a helper function
for a while, we need to unify list processing
in general (ie to use abstract list type).

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agonasmlib: Add list_last helper
Cyrill Gorcunov [Wed, 13 Apr 2011 06:19:30 +0000 (10:19 +0400)]
nasmlib: Add list_last helper

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoMove numvalue herleper into nasmlib.h
Cyrill Gorcunov [Wed, 13 Apr 2011 10:11:15 +0000 (14:11 +0400)]
Move numvalue herleper into nasmlib.h

No need to duplicate implementation.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc: Drop unused 'mtok' variable
Cyrill Gorcunov [Sat, 25 Jun 2011 08:08:30 +0000 (12:08 +0400)]
preproc: Drop unused 'mtok' variable

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agonassm.c: Use evaluate for section alignment
Cyrill Gorcunov [Mon, 23 May 2011 19:50:03 +0000 (23:50 +0400)]
nassm.c: Use evaluate for section alignment

This allow us to write the whole expressions
on section alignments, such as

align 0xa+6

or whatever math. Should be a way more convenient
than hardnumbers scheme we had.

Reported-by: Frank Kotler <fbkotler@zytor.com>
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoBR3288901: Relax concat rules in preprocessor code
Cyrill Gorcunov [Mon, 13 Jun 2011 17:25:10 +0000 (21:25 +0400)]
BR3288901: Relax concat rules in preprocessor code

We simply allow the following terminals to be concat'ed
if they are written without space or any other separator
inbetween.

        a := id | preproc-id | number | float | other
        b := id | preproc-id | number | float | other

        if match(a,b):
                s := concat(a,b)
                re-tokenize(s)

Basically it means it's up to code author to write
preproc code a way the sane production appears.

Some notes.

1) We don't concat strings.

2) The 'weirdpaste' test fails now because with relaxed
   rules it works as needed and was borken before.

   The lacmus snippet is

        %define N 1e%++%+ 5
        dd N, 1e+5

Previously the output was

        dd 1e+%+ 5, 1e+5

which is wrong since we have explicit concat here
with %+ operator. The new code production is correct
and looks like

        dd 1e+5, 1e+5

as expected.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoinsns: Mark VGATHERDPD as AVX2 instructions
Cyrill Gorcunov [Thu, 23 Jun 2011 06:26:39 +0000 (10:26 +0400)]
insns: Mark VGATHERDPD as AVX2 instructions

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoAdd IF_AVX2 flag
Cyrill Gorcunov [Fri, 24 Jun 2011 12:04:34 +0000 (16:04 +0400)]
Add IF_AVX2 flag

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoMerge branch 'nasm-2.09.xx'
H. Peter Anvin [Thu, 23 Jun 2011 20:41:01 +0000 (13:41 -0700)]
Merge branch 'nasm-2.09.xx'

13 years agordoff: add missing dependency in Makefile
H. Peter Anvin [Thu, 23 Jun 2011 20:40:06 +0000 (13:40 -0700)]
rdoff: add missing dependency in Makefile

Add back a dependency which was accidentally dropped for the previous
build bug fix.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
13 years agoMerge branch 'nasm-2.09.xx'
H. Peter Anvin [Thu, 23 Jun 2011 20:27:43 +0000 (13:27 -0700)]
Merge branch 'nasm-2.09.xx'

13 years agoMakefile: hopefully fix rdoff parallel build problems
H. Peter Anvin [Thu, 23 Jun 2011 20:26:59 +0000 (13:26 -0700)]
Makefile: hopefully fix rdoff parallel build problems

The strange dependency on nasmlib.o causes serious issues in parallel
build; hopefully fix it.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
13 years agoImplement the VGATHERP instruction
H. Peter Anvin [Thu, 23 Jun 2011 01:20:28 +0000 (18:20 -0700)]
Implement the VGATHERP instruction

As an initial test of the VSIB handling, implement the VGATHERP
instruction.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
13 years agoAdd support for VSIB instructions
H. Peter Anvin [Thu, 23 Jun 2011 01:19:28 +0000 (18:19 -0700)]
Add support for VSIB instructions

Add support for VSIB instructions, which use vector registers as the
index registers in an EA.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
13 years agoNASM 2.10rc6
H. Peter Anvin [Mon, 6 Jun 2011 21:55:59 +0000 (14:55 -0700)]
NASM 2.10rc6

13 years agospec: update to match requirements of Fedora 14+
H. Peter Anvin [Mon, 6 Jun 2011 21:53:22 +0000 (14:53 -0700)]
spec: update to match requirements of Fedora 14+

"PreReq" is no longer accepted as an alias for "Requires".  Sigh.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
13 years agoNASM 2.10rc5
H. Peter Anvin [Sat, 4 Jun 2011 01:15:25 +0000 (18:15 -0700)]
NASM 2.10rc5

13 years agoBR3282788: Fix 64-bit Mach-O bug that crashes NASM due to NULL symbols
Keith Kanios [Tue, 12 Apr 2011 02:38:50 +0000 (21:38 -0500)]
BR3282788: Fix 64-bit Mach-O bug that crashes NASM due to NULL symbols

13 years agoRevert "nasmlib: added string replace (strrep) utility function"
Keith Kanios [Sat, 9 Apr 2011 15:33:06 +0000 (10:33 -0500)]
Revert "nasmlib: added string replace (strrep) utility function"

This reverts commit dd9c9752ead3a39fec6f050bfe3ac8768defc02f.

13 years agoRevert "nasmlib.c: fix issues with strrep utility function"
Keith Kanios [Sat, 9 Apr 2011 15:30:20 +0000 (10:30 -0500)]
Revert "nasmlib.c: fix issues with strrep utility function"

This reverts commit f16401f9aabb550a556d3a462f428a3b52f6f9c3.

13 years agonasmlib.c: fix issues with strrep utility function
Keith Kanios [Fri, 8 Apr 2011 06:20:09 +0000 (01:20 -0500)]
nasmlib.c: fix issues with strrep utility function

13 years agonasmlib: added string replace (strrep) utility function
Keith Kanios [Fri, 8 Apr 2011 05:23:21 +0000 (00:23 -0500)]
nasmlib: added string replace (strrep) utility function

13 years agoMerge branch 'nasm-2.09.xx'
Cyrill Gorcunov [Wed, 6 Apr 2011 15:12:17 +0000 (19:12 +0400)]
Merge branch 'nasm-2.09.xx'

Conflicts:
nasm.h
version

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoNASM 2.09.08
Cyrill Gorcunov [Wed, 6 Apr 2011 15:10:24 +0000 (19:10 +0400)]
NASM 2.09.08

13 years agodoc: Updates for stable branch fix
Cyrill Gorcunov [Wed, 6 Apr 2011 15:08:34 +0000 (19:08 +0400)]
doc: Updates for stable branch fix

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoofmt: Alias shortname must be used for __OUTPUT_FORMAT__ macro
Cyrill Gorcunov [Wed, 6 Apr 2011 14:32:15 +0000 (18:32 +0400)]
ofmt: Alias shortname must be used for __OUTPUT_FORMAT__ macro

__OUTPUT_FORMAT__ must consist of shortname of output format
or its alias, otherwise userspace ABI gets broken.

For example source code still can refer to __OUTPUT_FORMAT__=elf,
instead of __OUTPUT_FORMAT__=elf32.

BR3246990

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoMerge branch 'nasm-2.09.xx'
H. Peter Anvin [Tue, 15 Mar 2011 22:41:54 +0000 (15:41 -0700)]
Merge branch 'nasm-2.09.xx'

13 years agoopenwcom.mak: Update to use features from newer WMAKE
Jiri Malak [Tue, 15 Mar 2011 22:37:30 +0000 (15:37 -0700)]
openwcom.mak: Update to use features from newer WMAKE

Change the OpenWatcom WMAKE Makefile to use the facilities available
in WMAKE to support cross-compilation properly.

See BR 3079573.

13 years agoMerge branch 'nasm-2.09.xx'
Cyrill Gorcunov [Sat, 12 Mar 2011 19:35:42 +0000 (22:35 +0300)]
Merge branch 'nasm-2.09.xx'

Conflicts:
doc/changes.src
version

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoNASM 2.09.07
Cyrill Gorcunov [Sat, 12 Mar 2011 19:31:15 +0000 (22:31 +0300)]
NASM 2.09.07

 - Fix crash for -a option
 - Fix VEXTRACTF128, VMASKMOVPS instructions

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agodoc: Update changes
Cyrill Gorcunov [Mon, 7 Mar 2011 09:44:43 +0000 (12:44 +0300)]
doc: Update changes

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agotest: Add br3189064
Cyrill Gorcunov [Mon, 7 Mar 2011 09:42:46 +0000 (12:42 +0300)]
test: Add br3189064

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoBR3189064: Fixes for VEXTRACTF128, VMASKMOVPS
Cyrill Gorcunov [Mon, 7 Mar 2011 09:40:22 +0000 (12:40 +0300)]
BR3189064: Fixes for VEXTRACTF128, VMASKMOVPS

These AVX instructions should use YMM register

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agodoc: Update changes
Cyrill Gorcunov [Mon, 7 Mar 2011 08:35:18 +0000 (11:35 +0300)]
doc: Update changes

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agotest: Add br3200749
Cyrill Gorcunov [Mon, 7 Mar 2011 08:29:56 +0000 (11:29 +0300)]
test: Add br3200749

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc.c: Don't forget to dup filename before free
Cyrill Gorcunov [Mon, 7 Mar 2011 08:23:08 +0000 (11:23 +0300)]
preproc.c: Don't forget to dup filename before free

src_set_fname simply gets copy of pointer (ideally
we need refcounting here) so don't pass the name
which will be freed soon but rather pass a copy.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoBR3200749: Fix "use after close" file pointer
Cyrill Gorcunov [Mon, 7 Mar 2011 08:18:50 +0000 (11:18 +0300)]
BR3200749: Fix "use after close" file pointer

Cleanup routine might be called several times
so be ready for that.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agopreproc.c: Fix use-after-free bug
Cyrill Gorcunov [Thu, 3 Mar 2011 06:18:56 +0000 (09:18 +0300)]
preproc.c: Fix use-after-free bug

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
13 years agoNASM 2.10rc4
Cyrill Gorcunov [Mon, 28 Feb 2011 07:05:15 +0000 (10:05 +0300)]
NASM 2.10rc4

13 years agoMerge branch 'nasm-2.09.xx'
Cyrill Gorcunov [Mon, 28 Feb 2011 07:03:53 +0000 (10:03 +0300)]
Merge branch 'nasm-2.09.xx'

Conflicts:
doc/changes.src
output/outbin.c
version

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>