Commit Graph

494 Commits

Author SHA1 Message Date
H. Peter Anvin
3d74b091e9 doc: update location of insns.dat
insns.dat is now in the x86 directory.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2016-07-06 11:02:14 -07:00
H. Peter Anvin
794688c21c Merge remote-tracking branch 'origin/nasm-2.12.xx'
Resolved Conflicts:
	version

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2016-05-24 23:48:38 -07:00
H. Peter Anvin
aa958b1ab6 ifunc.mac: the ilog2 warning may want to be both ceil and floor
There is no reason why the warning-generating ilog2 has to be only the
floor variant.  However, I am pretty sure we can simply implement the
ilog2cw() as a macro only; we can always fix that if that turns out to
be incorrect.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2016-05-24 23:03:17 -07:00
H. Peter Anvin
5e43bfef24 doc: include kerning tables in the metrics headers
Output the kerning tables in the metrics headers.  This will hopefully
make it possible to support kerning later (e.g. using the PostScript kshow
operator with some kind of kerning function.)

Note: the previous ordering of the metrics output was sensitive to the
particular hashing algorithm used in that version of Perl.  This
version sorts them in order to keep them stable, but which obviously
completely changes the (otherwise unmodified) widths part of the output.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2016-05-18 01:58:58 -07:00
H. Peter Anvin
acbf8f0e19 doc: remove obsolete references
We don't use comp.lang.asm.x86 or freshmeat for announements anymore.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2016-05-16 20:39:04 -07:00
H. Peter Anvin
407166001c Fix building in a separate directory from the source code
The code to handle building in a separate directory had seriously
bitrotted.  This contains a number of fixes to make it possible,
including bits like the documentation which never worked in the past.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2016-05-16 20:30:09 -07:00
H. Peter Anvin
77511e32a7 doc: document warning improvements
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2016-05-09 14:36:59 -07:00
H. Peter Anvin
19bc9de9d0 doc/changes.src: document PTR warning
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2016-05-09 12:09:04 -07:00
H. Peter Anvin
ff7ff12b1c changes.src: update as of the current time
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2016-05-09 11:19:58 -07:00
H. Peter Anvin
8494cc82c5 changes.src: document %if error fix
Document the fix for errors inside live %if branches.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2016-04-05 13:06:14 -07:00
H. Peter Anvin
d2238e2286 changes.src: fix old typo
arror -> error

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2016-04-05 12:49:07 -07:00
H. Peter Anvin
134874848c nasmdoc.src: remove unimplemented %comment directive
%comment..%endcomment were never implemented, remove from the
documentation.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2016-03-07 23:58:11 -08:00
H. Peter Anvin
2a74d84d1c doc: document fix to the codeview output format
Document the label fix; although a global error, it was user-visible
in the Codeview backend so document it as such.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Cc: Jim Kukunas <james.t.kukunas@linux.intel.com>
2016-03-07 22:17:10 -08:00
Cyrill Gorcunov
6832acb6e3 doc: changes -- Don't forget to mention MONITORX and MWAITX
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2016-03-07 22:36:18 +03:00
Cyrill Gorcunov
f34cf39459 doc: changes -- Add CLZERO into the list
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2016-03-07 22:32:31 +03:00
H. Peter Anvin
c073fc095f changes.src: document fix for the no list file error
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2016-03-04 10:58:03 -08:00
H. Peter Anvin
c5b95dd5d4 changes.src: begin documentation for 2.12.01
We probably ought to release 2.12.01 in the short term.  So far the
changes that have accumulated have all been build fixes.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2016-03-03 12:43:02 -08:00
H. Peter Anvin
a85060520a changes.src: document Win64 build
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2016-02-26 20:47:45 -08:00
H. Peter Anvin
277308f1f3 doc: update documentation for a version 2.12 release
Add documentation updates for version 2.12.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2016-02-18 11:49:33 -08:00
H. Peter Anvin
5f0e601f98 doc/rdsrc.pl: escape braces in regular expression to support newer Perl
Newer versions of Perl require literal braces in regular expressions
to be escaped.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2016-02-18 11:48:12 -08:00
H. Peter Anvin
d2ea49b326 listing: change the line numbers to match the source code
Instead of completely useless sequential line numbers, emit line
numbers corresponding to the line numbers in the source code.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2016-02-17 15:38:51 -08:00
H. Peter Anvin
9f7c68a519 changes.src: more updates for 2.12
More updates in preparation for NASM 2.12.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2016-02-17 13:44:51 -08:00
Cyrill Gorcunov
1452990979 docs: Fix typo in previous commit
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2016-02-17 17:02:34 +03:00
Cyrill Gorcunov
2338613e6b docs: changes -- Prepare for 2.12
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2016-02-17 17:00:06 +03:00
H. Peter Anvin
1c10ad65fe nasmdoc.src: update copyright date 2016-02-08 10:34:09 -08:00
H. Peter Anvin
d24dd5fecc Remove the --allow-64-bits option and make it a warning
Remove the --allow-64-bits relocation, and instead make it a
suppressible warning in the case of a zero-extended relocation, and an
error in the case of a sign-extended relocation.

Relocations which can be losslessly represented in the output format
do not issue any diagnostic at all, as there is no problem in that
case.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2016-02-08 10:32:13 -08:00
Knut St. Osmundsen
3c72a1b3b3 Add option to allow 64-bit code in any output format
Add the option --allow-64-bit to permit the generation of 64-bit code
even for a 16/32-bit output format.

Using NASM to do some boot strapping code and ran into trouble when
trying to emit a few 64-bit instructions in the OMF object file doing
the mode switching.  While I can see how the "error: obj output format
does not support 64-bit code" message can be a useful reality check
for application programmers, it prevents low-level programmers from
doing what they want.  It if was just a harmless warning, it wouldn't
be so bad, but it turns BITS 64 into BITS 16. The main trick to mixing
64-bit code into OMF and other 32-bit output formats is to avoid
64-bit sized fixups, which normally isn't too hard.

[hpa: shortened the option name to --allow-64-bit, minor code cleanups]

Signed-off-by: Knut St. Osmundsen <bird-nasm@anduin.net>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2016-01-26 12:34:41 -08:00
Cyrill Gorcunov
8b4ef2d1d6 doc: Update changes list
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2015-07-26 14:42:30 +03:00
Ciro Santilli
668e58dc69 doc: typo occationally
Signed-off-by: Ciro Santilli <ciro.santilli@gmail.com>
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2015-05-24 12:59:11 +03:00
Cyrill Gorcunov
399d29c0a5 doc: changes -- Prepare for 2.11.08
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2015-02-21 22:19:19 +03:00
Yuri Zaporozhets
7a33af2904 Correct name spelling and email address
Signed-off-by: Yuri Zaporozhets <r_tty@yahoo.co.uk>
2015-01-18 20:21:14 +02:00
Cyrill Gorcunov
85ec505d05 doc: Add missing closing brace
http://bugzilla.nasm.us/show_bug.cgi?id=3392284

Reported-by: Nick Rowan <nnrowan@gmail.com>
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2014-12-20 14:25:58 +03:00
Cyrill Gorcunov
e3131143fa doc: Update changes for 2.11.07
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
2014-12-09 21:47:23 +03:00
Jim Kukunas
e3e4f7c8fb doc: Document -MF/-MD and updated AVX512 instructions
Document changes for 2.11.06

Signed-off-by: Jim Kukunas <james.t.kukunas@linux.intel.com>
2014-10-17 15:07:41 -07:00
H. Peter Anvin
febd5afc6d doc: Make it clear that --v is only in 2.11.05 and newer
... otherwise people might think it is preferred and use it
unnecessarily.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2014-05-21 23:00:12 -07:00
H. Peter Anvin
4ac3b025be doc: Document --v and duplicate REX prefix fix
Document changes for 2.11.05.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2014-05-21 08:28:21 -07:00
Jin Kyu Song
3a105c3c0e changes: Document bug fixes
- Removed an error checking code for setting evex flags
- Fixed vector length matching bug

Signed-off-by: Jin Kyu Song <jin.kyu.song@intel.com>
2014-05-07 13:56:04 -07:00
H. Peter Anvin
1a03281365 changes: Document TIMES bug
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2014-05-05 11:21:17 -07:00
H. Peter Anvin
727eb3f8f6 Add CLFLUSHOPT instruction
Add the CLFLUSHOPT instruction from the Intel Instruction Set
Architecture Extensions document version 319433-018 (Feb 2014).

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2014-02-19 15:40:53 -08:00
H. Peter Anvin
0b7db57deb insns: add XSAVEC, XSAVES and XRSTORS instructions
Add the XSAVEC, XSAVES, and XRSTORS instructions from the Intel SDM
release 253665-050US (Feb 2014).

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2014-02-19 14:58:42 -08:00
H. Peter Anvin
f2d2569bb6 changes.src: changelog for 2.11.01
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2014-02-18 14:05:14 -08:00
H. Peter Anvin
b2fcac9a1d doc: Document DEFAULT BND/NOBND in changes, add use case
Add DEFAULT BND/NOBND to the change history, and explain the use case.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2013-12-31 10:38:51 -08:00
H. Peter Anvin
be1d052fff changes: Document change in [nosplit reg]
Document that [nosplit reg] as opposed to [nosplit reg*1] will no
longer force an index register.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2013-12-31 10:35:12 -08:00
Jin Kyu Song
26ddad67ca nosplit: Generate index-only EA only when a multiplier is used.
[nosplit eax] has been encoded as [eax*1+0] since 0.98.34.
But this seems like unexpected behavior.
So only when a register is multiplied, that will be treated
as an index. ([nosplit eax*1] -> [eax*1+0])
Document is updated accordingly.

Signed-off-by: Jin Kyu Song <jin.kyu.song@intel.com>
2013-12-18 22:38:44 -08:00
Jin Kyu Song
3d06af2bd9 nosplit: Limit the effect of NOSPLIT
[nosplit eax+eax] was encoded [eax*2] previously but
this seems against the user's intention.
So in this case, nosplit is ignored now and [eax+eax] will be
generated.
Document is also updated accordingly.

Signed-off-by: Jin Kyu Song <jin.kyu.song@intel.com>
2013-12-18 22:37:30 -08:00
Jin Kyu Song
009e54e0a1 doc: Update nasmdoc
Added bnd warning and nobnd prefix. DEFAULT directive section
has got more description about BND-related settings.

Signed-off-by: Jin Kyu Song <jin.kyu.song@intel.com>
2013-12-04 20:51:13 -08:00
H. Peter Anvin
50137b8274 doc: Make the bit about mib operands a bit clearer
Clean up the text about what a mib is.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2013-11-28 21:26:26 -08:00
H. Peter Anvin
ebfa6a6452 doc: Clean up changelog for 2.11
- We don't need to list internal infrastructure improvements.
- We don't list rc releases separately.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2013-11-28 21:24:09 -08:00
H. Peter Anvin
621a69ac5c Add {vex3} and {vex2} prefixes by analogy with {evex}
Allow specifying {vex3} or {vex2} (the latter is currently always
redundant, unless we end up with instructions at some point can be
specified with legacy prefixes or VEX) to select a specific encoding
of VEX-encoded instructions.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2013-11-28 12:21:11 -08:00
Jin Kyu Song
1ab16e4673 doc: Update the change history and nasmdoc
Added the list of features added since 2.10 release.
Nasmdoc is also updated with those new features.

Signed-off-by: Jin Kyu Song <jin.kyu.song@intel.com>
2013-11-27 15:43:32 -08:00