Cyrill Gorcunov aa29b1d93f assemble.c: Don't drop rex prefix from instruction itself
emit_rex is supposed to write REX prefix into output stream
if needed, but we happen to drop it off on a first write
which breaks REX required instructions if TIMES directive
is used.

For example the code like

	| times 4		movq	xmm11, xmm11

compiles into

	| 0000000000000000 <.text>:
	|   0:	f3 45 0f 7e db       	movq   %xmm11,%xmm11
	|   5:	f3 0f 7e db          	movq   %xmm3,%xmm3
	|   9:	f3 0f 7e db          	movq   %xmm3,%xmm3
	|   d:	f3 0f 7e db          	movq   %xmm3,%xmm3

instead of proper

	| 0000000000000000 <.text>:
	|   0:	f3 45 0f 7e db       	movq   %xmm11,%xmm11
	|   5:	f3 45 0f 7e db       	movq   %xmm11,%xmm11
	|   a:	f3 45 0f 7e db       	movq   %xmm11,%xmm11
	|   f:	f3 45 0f 7e db       	movq   %xmm11,%xmm11

http://bugzilla.nasm.us/show_bug.cgi?id=3392278

Reported-by: Javier <elpochodelagente@gmail.com>
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2014-05-05 11:20:17 -07:00
2014-02-19 15:40:53 -08:00
2010-04-25 12:02:38 +04:00
2010-04-01 01:17:00 +04:00
2013-12-11 12:10:27 -08:00
2013-11-24 11:18:50 -08:00
2009-09-14 23:17:03 +04:00
2010-11-07 17:31:27 +01:00
2009-11-30 12:07:31 -08:00
2008-04-10 14:54:02 -07:00
2007-11-25 14:25:13 -08:00
2009-08-10 15:59:34 -07:00
2010-06-15 10:47:16 -07:00
2013-06-30 01:31:15 +04:00
2009-10-13 19:41:37 +04:00
2010-04-22 11:02:56 -07:00
2014-02-19 15:40:53 -08:00
2002-04-30 21:09:12 +00:00
2010-07-28 18:00:18 +04:00
2010-07-28 18:00:18 +04:00
2010-08-12 20:15:27 -07:00
2010-05-06 15:33:24 -07:00
2013-11-24 11:18:50 -08:00
2013-12-04 20:10:08 -08:00
2011-07-15 23:13:26 +04:00
2013-04-20 20:24:01 +04:00
2013-12-04 20:10:08 -08:00
2010-11-07 17:20:23 +01:00
2013-06-30 01:31:15 +04:00
2011-06-25 12:10:40 +04:00
2011-07-17 13:59:13 +04:00
2013-12-04 20:10:08 -08:00
2013-09-21 13:14:15 +04:00
2010-10-03 21:02:08 +04:00
2009-12-22 23:42:03 +03:00
2013-12-04 20:10:08 -08:00
2014-02-19 15:50:26 -08:00

              NASM, the Netwide Assembler.

Many many developers all over the net respect NASM for what it is
- a widespread (thus netwide), portable (thus netwide!), very
flexible and mature assembler tool with support for many output
formats (thus netwide!!).

Now we have good news for you: NASM is licensed under the "simplified"
(2-clause) BSD license.  This means its development is open to even
wider society of programmers wishing to improve their lovely
assembler.

The NASM project is now situated at SourceForge.net, the most
popular Open Source development site on the Internet.

Visit our website at http://nasm.sourceforge.net/ and our
SourceForge project at http://sourceforge.net/projects/nasm/

See the file CHANGES for the description of changes between revisions,
and the file AUTHORS for a list of contributors.

                                                   With best regards,
                                                           NASM crew.
Description
No description provided
Readme BSD-2-Clause 10 MiB
Languages
Assembly 61.7%
C 31.7%
Perl 3.2%
Makefile 0.8%
M4 0.7%
Other 1.9%