Commit Graph

2537 Commits

Author SHA1 Message Date
H. Peter Anvin
c5473121af tag-release: actually push data out unless --no-push is given
Rather than just printing a list of commands, do them, unless
--no-push is given...

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-25 22:02:08 -08:00
H. Peter Anvin
75fa99713c NASM 2.10rc10 2012-02-25 21:59:36 -08:00
H. Peter Anvin
74d23af7b8 release: create .xz files; remove empty subdirectories
Create .xz files as well as .gz and .bz2; remove empty subdirectories
from the xdoc archives.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-25 21:30:33 -08:00
H. Peter Anvin
38e57c5084 doc: Remove some ugliness from the win64 section
Clean up the formatting of the Win64 examples.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-25 15:50:32 -08:00
H. Peter Anvin
c65035ecdb psfonts.ph: increase leading to font size+20%
Increase the leading from +10% to +20%, (12 pt leading for the 10 pt
bulk text.)

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-25 15:46:38 -08:00
H. Peter Anvin
6b8cc128f3 changes: document bigendian UTF-16/UTF-32 support
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-25 15:34:14 -08:00
H. Peter Anvin
9fa2e72997 Add support for UTF-16BE and UTF-32BE
Add support for bigendian UTF-16 and UTF-32, and (for symmetry) add
explicitly littleendian operators.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-25 15:29:37 -08:00
H. Peter Anvin
5a24fdd547 Make the LOCK and HLE warnings suppressable.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-25 15:11:11 -08:00
H. Peter Anvin
c92aaa1d49 doc: Document elfx32 support
Document the new elfx32 backend.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-25 15:05:45 -08:00
H. Peter Anvin
80fd1a5f0d doc: Move the EPS logo down by 1"
The default page-centered position doesn't work too well with the
title and the new logo, so move the new logo down the page a bit.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-25 14:55:12 -08:00
Cyrill Gorcunov
2a50c9128f doc: New NASM logo
Update to a new NASM logo.
2012-02-25 14:53:34 -08:00
H. Peter Anvin
13ac842709 doc: Allow repositioning the EPS logo
Allow specifying an offset from the computed position of the EPS logo:

\M{logoxadj}{adjustment}
\M{logoyadj}{adjustment}

The adjustment is given in Postscript points (1/72" = 0.352778 mm) and
using the Postscript coordinate system, with the origin in the lower
left.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-25 14:51:01 -08:00
H. Peter Anvin
8aa01db9b4 Update copyright year to 2012 2012-02-25 14:45:44 -08:00
H. Peter Anvin
0ab83c9e9c NASM 2.10rc9 2012-02-25 13:31:16 -08:00
H. Peter Anvin
8a44aa49c8 doc: Document AVX2, BMI1, BMI2 and TSX support.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-25 13:30:41 -08:00
H. Peter Anvin
7687dded2d Assume the undocumented CMPXCHG486 opcode was lockable
Someone who actually knows about this opcode and has a 486 to test on
may want to verify this.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-25 12:35:33 -08:00
Cyrill Gorcunov
a94601f83c insns.dat: Add IF_LOCK flag on appropriate instructions
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-26 00:25:37 +04:00
H. Peter Anvin
c3bfc7f643 Clean up JMP/CALL patterns, especially for 64 bits
Clean up JMP/CALL patterns so they don't disassemble quite so uglily.
Fix a CALL pattern which would have incorrectly generated a (harmless)
REX.W prefix.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-25 12:13:50 -08:00
Cyrill Gorcunov
b496c68f91 insns.dat: Add nohle for MOV in case of moffset destination
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-26 00:07:27 +04:00
Cyrill Gorcunov
922f5e2dac insns.dat: Add hlexr flag for MOV instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:53:09 +04:00
Cyrill Gorcunov
ab6057926b insns.dat: Add hlenl flag for XCHG instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:53:09 +04:00
Cyrill Gorcunov
93e170f585 insns.dat: Add hle flag for XADD instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:53:09 +04:00
Cyrill Gorcunov
5c4d23a039 insns.dat: Add hle flag for XOR instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:53:09 +04:00
Cyrill Gorcunov
3403477b96 insns.dat: Add hle flag for SUB instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:53:09 +04:00
Cyrill Gorcunov
b556a03847 insns.dat: Add hle flag for SBB instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:53:09 +04:00
Cyrill Gorcunov
0626db9eb9 insns.dat: Add hle flag for OR instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:53:09 +04:00
Cyrill Gorcunov
7d072f0ca9 insns.dat: Add hle flag for NOT instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:53:09 +04:00
Cyrill Gorcunov
7aec2435f6 insns.dat: Add hle flag for NEG instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:53:08 +04:00
Cyrill Gorcunov
94a7645ec9 insns.dat: Add hle flag for INC instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:51:45 +04:00
Cyrill Gorcunov
47fe219004 insns.dat: Add hle flag for DEC instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:51:44 +04:00
Cyrill Gorcunov
e520db7f49 insns.dat: Add hle flag for CMPXCHG16B instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:51:44 +04:00
Cyrill Gorcunov
aea6453c8b insns.dat: Add hle flag for CMPXCHG8B instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:51:44 +04:00
Cyrill Gorcunov
08a291d0da insns.dat: Add hle flag for CMPXCHG instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:51:44 +04:00
Cyrill Gorcunov
6763e28b68 insns.dat: Add hle flag for BTS instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:51:44 +04:00
Cyrill Gorcunov
e7a9ec3676 insns.dat: Add hle flag for BTR instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:51:44 +04:00
Cyrill Gorcunov
75150e2df4 insns.dat: Add hle flag for BTC instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:51:44 +04:00
Cyrill Gorcunov
e844844321 insns.dat: Add hle flag for AND instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:51:44 +04:00
Cyrill Gorcunov
e30aef38da insns.dat: Add hle flag for ADC instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:51:44 +04:00
Cyrill Gorcunov
dec6037fa7 insns.dat: Add hle flag for ADD instruction
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2012-02-25 23:51:44 +04:00
H. Peter Anvin
9898c80cb1 disasm: ignore opcodes 370 and 371 2012-02-25 11:46:56 -08:00
H. Peter Anvin
755f5214b7 Remove all remaining explicit bytecodes from insns.dat
Get rid of the last vestiges of the explicit byte codes in insns.dat.
The only files that now depend on actual byte code numbers are
insns.pl, assemble.c and disasm.c.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-25 11:41:34 -08:00
H. Peter Anvin
8cc8a1d836 Add support for warning on invalid LOCK prefixes
Add an LOCK flag to the instruction template, and make the presence of
a LOCK prefix trigger a warning if it is not set.  Simplify the LOCK
and HLE logic by hard-coding the knowledge that operand 0 has to be
memory.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-25 11:11:42 -08:00
H. Peter Anvin
8ea2200415 Move HLE byte codes to \264..\267
Move the HLE byte codes to \264..\267 so as not to break up an unused
group of 8 (\240..\247).

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-25 10:24:24 -08:00
H. Peter Anvin
7849dd07b9 Add a "nohle" byte code to skip an instruction pattern
The a2/a3 mem_offs MOV opcodes are invalid with XRELEASE; those
instructions instead have to use a modrm form.  Therefore give a way
to annotate those instruction patters so the pattern matcher will move
on to the next pattern, rather than selecting them and then issue a
warning.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-25 10:19:56 -08:00
H. Peter Anvin
b9bc63c757 insns.pl: Bundle all "plain bytecodes" into a hash
Instead of a long string of ifs, put all the plain opcodes which just
turn into single bytecodes with no other effect into a hash.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-24 22:06:39 -08:00
H. Peter Anvin
4ecd5d79fc HLE: Implement the basic mechanism for XACQUIRE/XRELEASE
This implements the mechanism for XACQUIRE/XRELEASE.  It does not
include the necessary annotations in insns.dat.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-24 21:57:17 -08:00
H. Peter Anvin
442a05a897 nasm.c: Fix is_suppressed_warning()
The logic in is_suppressed_warning() was severely wrong, which would
cause a lot of legitimate warnings to be suppressed while some
warnings would be duplicated.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-24 21:50:53 -08:00
H. Peter Anvin
10da41e328 HLE: Split the LOCK and REP prefix slots
With HLE, the sequence REP LOCK actually makes sense, so support it.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-24 20:57:04 -08:00
H. Peter Anvin
44454be952 insns: create a symbolic "wait" token for the \341 byte code
Create a symbolic name "wait" for the \341 byte code, so we don't have
to open-code it.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-10 11:11:08 -08:00
H. Peter Anvin
b17da041cb insns: fix IMUL patterns to get rid of open-coded \100 bytecodes
There already is a standard encoding for "use this operand in multiple
slots"; no need to open-code it.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2012-02-10 11:08:09 -08:00