Commit Graph

368 Commits

Author SHA1 Message Date
H. Peter Anvin
a6e25b5356 Document macho64 output format
At least mention the 64-bit macho format in the documentation.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-07-08 21:42:18 -07:00
H. Peter Anvin
a7a14b2fcb changes: document listing fix
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-07-07 16:08:56 -07:00
H. Peter Anvin
e227fe6f80 changes: add Mach-O alignment issue fix
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-07-06 19:27:33 -07:00
H. Peter Anvin
83b942d3e1 changes: document %+ behavior revert
Revert to original %+ behavior.  This is what we really wanted in the
first place, except this time we have fixed some bugs.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-07-06 19:00:08 -07:00
H. Peter Anvin
fba06d2719 changes.src: document user-visible changes
Update user-visible changes so far.  Since I consider the license
change alone to be big enough of a deal to justify a "real" version
number, make this version 2.07.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-07-06 11:28:12 -07:00
H. Peter Anvin
ecfba9d6ab doc: update license and contact information
Update license information to 2-BSD; update contact information.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-07-06 11:22:58 -07:00
H. Peter Anvin
7ae512b5a8 More "make install" fixes... 2009-07-05 18:48:50 -07:00
H. Peter Anvin
224c9ac063 doc: S-records seems to usually be pluralized
Call it "S-records" not "S-record".

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-07-05 15:46:42 -07:00
H. Peter Anvin
d78fc550b8 doc: srec produces S-records, not Intel hex...
Copy and paste accident...

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-07-05 15:45:45 -07:00
H. Peter Anvin
fc87e65aec doc: use the term "extensions" to mean of-specific anything
We seem to use the term "extensions" to mean anything that is specific
to an object format, so continue to do so.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-07-05 15:44:38 -07:00
H. Peter Anvin
8a3686287d doc: fix capitalization
Consistently capitalize NASM.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-07-05 15:43:23 -07:00
H. Peter Anvin
4660a2b4a0 outbin: add support for Intel hex and Motorola S-records
Add support for directly generating Intel hex or Motorola S-records.
These formats are commonly used with ROM burners.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-07-05 15:29:55 -07:00
H. Peter Anvin
c940afc103 In memory of Chuck...
Let the 2.06 release be in memory of Chuck.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-06-28 17:12:37 -07:00
H. Peter Anvin
8e471da71d Add copyright header to nasmdoc.src
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-06-28 17:00:48 -07:00
H. Peter Anvin
e6ee1a859b Add copyright verbiage to Perl scripts; update LICENSE
This adds copyright verbiage to the Perl scripts.  Scripts that are
known to be clean w.r.t. the 2-clause BSD license are given that
license; unclear ones are given the "LGPL for now".

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-06-28 16:54:44 -07:00
H. Peter Anvin
31b707bef0 Move backend-specific code to output/; break out null debug stuff
Move backend-specific code into the output/ directory, and make the
null debugging backend a separate file (it certainly isn't needed for
ndisasm...)

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-06-27 22:07:33 -07:00
H. Peter Anvin
c4471462dc ELF: eliminate hard-coded section numbers
Eliminiate hard-coded section numbers, at least to the best of our
ability.  There is still a very odd piece of computation in
elf_build_reltab() which I can't really figure out...

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-06-25 14:54:44 -07:00
H. Peter Anvin
d219a3e46f ELF: add header files, begin merging common code, drop .comment
Add something approaching real ELF header files.

Begin merging the common ELF code, beginning with the section name
detection.

Drop automatic generation of .comment section, and in particular the
treatment of .common as a special section (if we decide generating
.comment is still a good idea, we should just do it as a macro.)

Augment the list of known sections, and make it table-driven.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-06-25 12:30:50 -07:00
H. Peter Anvin
883735f4c3 changes.src: update 2009-06-25 11:23:37 -07:00
H. Peter Anvin
a5e0279cbd changes.src: fix some odd spacing 2009-06-24 16:50:54 -07:00
H. Peter Anvin
b9cc7f1449 doc: use NASM syntax for x87 registers
The x87 registers are called ST0 and ST1 in NASM syntax, not ST(0) and
ST(1).

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-05-23 16:25:14 -07:00
H. Peter Anvin
03b9f94133 doc: remove insref.src
Remove the old, obsolete insref.src.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-05-08 17:56:59 -07:00
H. Peter Anvin
6ca419e7c5 doc: slightly tidy the copyright page of the manual. 2009-04-19 17:26:09 -07:00
H. Peter Anvin
9c7f3f5608 Document preprocessor token concatenation fix. 2009-04-07 22:09:05 -07:00
Victor van den Elzen
b32536cc53 Add STRUC change to changes.src 2009-03-29 03:09:13 +02:00
Victor van den Elzen
56b820355c FR 2499968: structures with non-zero base offset
Add an optional second argument to struc, document it and test it.
Also removed trailing whitespace in nasmdoc.src in the process.
2009-03-27 03:53:59 +01:00
H. Peter Anvin
875138830b changes.src: document WAIT and %$$ fixes 2009-02-21 18:26:20 -08:00
H. Peter Anvin
e8a3e6278a changes.src: document updated AVX specification 2009-02-18 14:13:25 -08:00
Soronel Haetir
e5fdc60c2b Document the as86 ..start label
I realized that a documentation change is required to inform users about the
addition of entry point support for the as86 format.  The following produces
reasonable output for .txt output, but I am blind and so can't check the
other formats as readily.
2009-01-21 15:30:27 -08:00
H. Peter Anvin
3e8ac5366f doc: clean up the "String Manipulation in Macros" section
Minor cleanups to the "String Manipulation in Macros" section.
2009-01-18 23:04:45 -08:00
H. Peter Anvin
33a5ad1f8e doc: indent the time macro example
Indent the time macro example for ease of reading.
2009-01-18 22:59:13 -08:00
H. Peter Anvin
bed44b3889 doc: fix typo
verson -> version
2009-01-18 22:55:53 -08:00
H. Peter Anvin
55a9c08dac doc: update the section on numeric constants
Update the section on numeric constants, and add a few more examples.
2009-01-18 22:51:46 -08:00
H. Peter Anvin
fd925d9512 changes.src: document Mach-O alignment fix. 2008-12-22 16:37:59 -08:00
H. Peter Anvin
674788166f changes.src: document POPCNT fix.
Add POPCNT fix to release notes.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-11-06 09:42:11 -08:00
H. Peter Anvin
da05001506 doc: better description of %line
The implication that %line allows NASM to digest cpp output is just
plain wrong, at least without additional intermediate processing.  Be
a little more circumspect.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-11-05 15:55:40 -08:00
H. Peter Anvin
67a405e2f4 changes.src: document if for %ifmacro.
Document fixed %ifmacro.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-11-04 14:26:32 -08:00
H. Peter Anvin
e263d04544 doc/changes.src: document ELF TLS
Add ELF TLS to the release notes.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-11-02 20:41:29 -08:00
H. Peter Anvin
76fab7ab17 doc: minor edit to the TLS documentation examples.
Minimize the TLS documentation examples (we don't need "dword" in a
mov from ebx, for example.)  This is just to avoid user confusion.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-11-02 20:40:16 -08:00
Charles Crayne
81afb49809 Document differences between TLS coding in ELF32 and ELF64
Absolute relocation wrt ..tlsie for ELF32
Relative relocation wrt ..gottpoff for ELF64
2008-11-01 17:09:36 -07:00
H. Peter Anvin
8321866bb5 doc: cross-reference macro parameter concatenation with %[...]
Explicitly document that %[...] and macro parameters concatenate the
same way, and cross-reference the two.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-29 21:02:30 -07:00
H. Peter Anvin
6c9f6f8e3d doc: fix typo in the description of %unmacro
The description of %unmacro used %unmacro in a place which should
obviously have been %macro.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-29 20:46:30 -07:00
H. Peter Anvin
2d9ceaa3ee doc: fix capitalization
Make the capitalization of "The -t Option" consistent with the other
options.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-29 18:17:59 -07:00
H. Peter Anvin
b7aaf0b9e5 doc: remove duplicate entry for the "error" warning class
Remove duplicate entry for the "error" warning class; leave at the end
with "all", as being another meta-warning class.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-29 18:16:31 -07:00
H. Peter Anvin
8a2f145260 doc: retroactively document updates to the warning options
Retroactively document the following changes to the warning options:

  - gcc-like syntax (-Wfoo, -Wno-foo)
  - "all" alias
  - "error" metawarning

Added in 2.00rc1 but never documented.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-29 18:14:03 -07:00
H. Peter Anvin
fd366a9db4 Merge commit 'nasm-2.05.01'
Conflicts:
	doc/changes.src
2008-10-29 10:53:37 -07:00
H. Peter Anvin
7714ced1d9 doc/changes.src: document -W/-w fix as a NASM 2.05.01 feature.
Make -W/-w fix a release note for NASM 2.05.01.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-29 10:51:51 -07:00
Charles Crayne
ee5245a9f2 Initial documentation for ELF64 TLS
More to come.
2008-10-27 22:53:40 -07:00
H. Peter Anvin
c83f9de3b4 doc/changes.src: retroactively document anonymous %push
Retroactively document the anonymous %push, which was added in version
2.04 but not documented.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-24 16:53:53 -07:00
H. Peter Anvin
264b7b982c preproc: don't macro-expand the argument to %use
Use expand_id() for the argument to %use, instead of expand_smacro().
This really makes more sense for a "naked" argument.  This is a
semantic change, but is unlikely to break any real code.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-24 16:38:17 -07:00
H. Peter Anvin
0b7d903ec8 doc: document %pop with argument
Document that %pop can now take an argument, and what it does.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-24 16:27:11 -07:00
H. Peter Anvin
59c2e54f25 doc: document anonymous %push
The anonymous %push was never documented, document it now.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-24 16:19:03 -07:00
H. Peter Anvin
b34fce7111 doc/changes.src: begin the release notes for 2.06
The next version will presumably be called 2.06; begin collecting
release notes.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-24 16:05:19 -07:00
H. Peter Anvin
df7d3e22fc doc: fix awkward word order
"the exactly same" -> "exactly the same"

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-24 10:15:46 -07:00
H. Peter Anvin
912595dfc0 Merge branch 'indirect' 2008-10-23 23:13:44 -07:00
H. Peter Anvin
7766ab0e0b doc/changes.src: update release notes
Update the release notes in preparation for NASM 2.05.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-23 19:29:28 -07:00
H. Peter Anvin
0ca00860df doc: document the %[...] construct.
Add documentation for the %[...] construct.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-19 17:00:52 -07:00
H. Peter Anvin
3ffd0fc157 doc/changes.src: document massive changes to ELF64 backend
We didn't just fix the GOT stuff, but also now properly use RELA and
so forth.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-17 23:36:45 -07:00
H. Peter Anvin
44d3552ab9 Add reference to %+ from macro parameter concatenation
Add a reference to the %+ operator from the section on macro parameter
concatenation.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-15 16:18:17 -07:00
H. Peter Anvin
850ba56f1d doc: minor editorial change
Use the terms "defined" and "expanded" for single-line macros more
consistently.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-15 16:14:39 -07:00
H. Peter Anvin
a3e57106fa doc: add link to the macro packages when talking about them
When discussing the standard macro packages in the context of
__USE_*__ macros, link to them as well as to the %use directive.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-15 11:15:48 -07:00
H. Peter Anvin
d5118f2009 BR 2164053: --prefix _ not --prefix_
The --prefix option takes a separate argument, not an attached
argument.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-13 10:17:27 -07:00
H. Peter Anvin
8cd1df87e5 Document RIP-relative GOT fixes in ELF64 2008-10-12 21:17:04 -07:00
H. Peter Anvin
68b41d3d47 changes: document immediate fix 2008-10-06 19:15:42 -07:00
H. Peter Anvin
04c6052670 changes: document CVT fixes.
Document fixes to the CVT instructions.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-06 18:00:13 -07:00
H. Peter Anvin
6c80ab6f7f assemble.c: do not warn on valid SBYTE optimizations
Do not warn on valid SBYTE optimizations.  If we are optimizing and
match one of the SBYTE conditions, do not error out.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-04 18:50:47 -07:00
H. Peter Anvin
a3a60e95a0 doc/changes.src: update
Add information about the recent bug fixes.
2008-10-01 10:02:44 -07:00
H. Peter Anvin
1abb9e5370 changes.src: document JMP reg64 fix.
Document the fixed JMP reg64.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-09-30 17:14:54 -07:00
H. Peter Anvin
2aa72b64a6 rdsrc.pl: handle tabs in the input
It is just to painful to keep the source files tab-free.  Handle tabs
in the input as required.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-09-30 17:12:19 -07:00
H. Peter Anvin
e232d9a6bf doc: remove tab
The documentation processor doesn't like tabs.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-09-30 17:07:14 -07:00
H. Peter Anvin
2f16043879 Allow %warning output to be suppressed
Allow the user to suppress user-specified warnings.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-09-30 16:39:17 -07:00
H. Peter Anvin
dc0bf47feb Document the -O0 and -O1 behaviors.
Document the way the -O0 and -O1 options actually behave.  -O0, in
particular, is NASM 0.98 compatibility mode.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-09-30 16:24:47 -07:00
Charles Crayne
3cc2459944 Document a64 and o64 qualifiers
Add references and index entries for a64 and o64.
2008-09-26 17:13:09 -07:00
H. Peter Anvin
61f130f4e9 Set __PASS__ to 3 for preprocess only
When running the preprocessor only, set __PASS__ to 3.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-09-25 15:45:06 -07:00
H. Peter Anvin
010aee270f Document __PASS__
Document __PASS__, but discourage users from using it.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-09-24 17:34:37 -07:00
H. Peter Anvin
13f1f3eed6 doc/changes.src: something closer to final release notes for 2.04
doc/changes.src should contain the user-visible changes in human
comprehensible form (release notes, not a changelog.)  Get something
closer to what it should look like for 2.04.
2008-09-24 08:59:29 -07:00
H. Peter Anvin
314b5f9a12 nasmdoc.src: more consistent indentation in %error section
We had different indentation levels only two paragraphs apart.
Overall, the document is horribly inconsistent about indentation,
which should be fixed.
2008-09-24 08:46:50 -07:00
H. Peter Anvin
8e3f75ea6e %error, %warning out on the final pass, add %fatal
Only process %error or %warning directives on the final pass.  Add a
new %fatal directive which terminates assembly immediately.
2008-09-24 00:21:58 -07:00
H. Peter Anvin
233c4945b1 doc: document the use of macros in %error
Document the use of macros in %error and %warning, valid since 2.03.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-09-10 23:34:39 -07:00
H. Peter Anvin
1dc23a1b39 doc: Call %xdefine a "resolving define" instead of "enhancing define"
%xdefine is an early-binding %define (%define being late-binding.)
There is nothing "enhanced" about it, it just specifies a different
policy.  Call it a "resolving define" instead.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-09-10 23:29:45 -07:00
H. Peter Anvin
3f85cfc766 doc: clean up formatting around -O option
Clean up the formatting in descriptions of the -O option.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-09-10 23:27:10 -07:00
H. Peter Anvin
a2d542ccaa changes: document optimizer change 2008-09-10 23:04:56 -07:00
Charles Crayne
2581c869b1 Decouple forward references from optimization
Users who wish to control the level of optimization can
continue to specify -O0, -O1, or -Ox,
where x can be the letter itself, or any number > 1.

However, even with optimization turned off,
NASM will always make enough passes to resolve
forward references. As a result, INCBIN is now the only
item left in the critical expressions list, although TIMES
still has its own constant value check.
2008-09-10 19:21:52 -07:00
H. Peter Anvin
df73e0b63a Update doc/changes.src 2008-09-03 15:16:44 -07:00
H. Peter Anvin
39e9a5f72f Document %use smartalign 2008-09-03 15:03:20 -07:00
H. Peter Anvin
4a532bc707 Document %unmacro 2008-09-03 14:31:20 -07:00
Victor van den Elzen
22343c2c72 Add macro-defaults warning class and documentation. 2008-08-06 14:48:55 +02:00
Victor van den Elzen
0e857f1fe5 Improve checking and documentation for %ifctx 2008-07-23 13:21:29 +02:00
Victor van den Elzen
819703afce Fix multipass inline warning (dis/en)abling
Also add a new form: resetting warnings to their original value.
2008-07-16 15:20:56 +02:00
H. Peter Anvin
5506e1fdef changes.src: put \c{...} around macro directives
Put \c{...} around macro directives.  Not the only ones that should
have that, of course, but they were easy to do with search and replace.
2008-07-14 02:54:00 -04:00
H. Peter Anvin
6477f3d315 changes.src: remove double entry for %warning 2008-07-14 02:49:52 -04:00
H. Peter Anvin
04156cd099 Move the revision history into the documentation
Clumsily convert the revision history to nasmdoc format, so it can be
included in the documentation as Appendix C.
2008-07-14 02:45:57 -04:00
H. Peter Anvin
cf6b43476e doc: document packed BCD constants 2008-07-13 15:55:55 -07:00
H. Peter Anvin
bbf769df01 doc: update NASM Version Macros
Clean up and slightly update the section on NASM version macros.
2008-07-13 15:44:25 -07:00
H. Peter Anvin
6621073059 doc: move %error/%warning to a separate section
They don't really belong in the section on conditional assembly.
2008-07-13 15:41:36 -07:00
H. Peter Anvin
31b98f5431 doc: Document %strcat 2008-07-13 15:35:07 -07:00
H. Peter Anvin
f4ae5ad11b Protect %use from multi-inclusion and provide a test macro
Automatically provide an include guard for %use packages; the macro
__USE_package__ is automatically defined, and inclusion is suppressed
if it is already defined.
2008-06-19 18:39:24 -07:00
H. Peter Anvin
5f9f4007ff doc: framework for documenting standard macro packages
Add a framework for documenting the standard macro packages.  Also
move the standard macros to the end of the preprocessor section,
instead of having them in the middle of the directives list.
2008-06-19 16:58:05 -07:00
H. Peter Anvin
9dee352dee doc: macroize texi2ipf and ipfc
Macroize the texi2ipf and ipfc commands (used for OS/2).
2008-06-19 11:47:13 -07:00
H. Peter Anvin
eec3b52505 doc: for ps to pdf conversion, use "acrodist", "ps2pdf" or "pstopdf"
For PostScript to PDF conversion, use whichever of "acrodist",
"ps2pdf", or "pstopdf" which we can find on the system.  I haven't
tried either acrodist or pstopdf myself, only going my the
documentation, but prefer acrodist since it is claimed to produce
smaller output files than ps2pdf.
2008-06-19 11:39:23 -07:00