summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2008-11-03Prevent erroneous extra "final" passCharles Crayne1-1/+1
Specifically check for end of final pass.
2008-11-02doc/changes.src: document ELF TLSH. Peter Anvin1-0/+2
Add ELF TLS to the release notes. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-11-02doc: minor edit to the TLS documentation examples.H. Peter Anvin1-2/+2
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-01Document differences between TLS coding in ELF32 and ELF64Charles Crayne1-2/+10
Absolute relocation wrt ..tlsie for ELF32 Relative relocation wrt ..gottpoff for ELF64
2008-11-01ELF32 support for offset to IE GOT entryCharles Crayne1-4/+13
Add new WRT type ..tlsie. Generate R_386_TLS_IE relocation entries for references to thread local variables.
2008-11-01version.pl: snapshot releases *only* have digits in the tailH. Peter Anvin1-1/+1
Snapshot releases have *only* digits in the tail. "git describe" produces tails that have digits in them, but aren't numeric. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-31Move all version strings to a single compilation unit (ver.c)H. Peter Anvin13-218/+237
Move all the version strings to a single compilation unit, ver.c; this does not include the version macros, which are fed into macros.c. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-30ELF32 bit support of .tdata and .tbss sectionsCharles Crayne1-0/+17
Set default attributes for .tdata and .tbss sections Implement new attribute 'tls' for arbitrary section names Flag variables in sections with tls attribute with STT_TLS
2008-10-30rbtree: drop the data pointer; instead rely on being embeddedH. Peter Anvin7-29/+16
Drop the data pointer, and instead assume the struct rbtree will be embedded in a bigger data structure (to be extracted via container_of()). Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-30compiler.h: add offsetof() and container_of()H. Peter Anvin1-1/+14
offsetof() is a C99 construct; provided here as an ersatz for older systems. container_of() is a nonstandard but highly useful construct, which allows data structure control items like tree structures to be embedded in larger data structures without the penalty of extra pointers and allocations. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-29Left-leaning red-black tree data structureH. Peter Anvin7-5/+128
Implement library functions for "left-leaning red-black trees" with uint64_t keys. This is meant for looking up symbols by address in the backends that need to do so, e.g. ELF. A good question is if there is a better way to do this, that recovers the original symbol, but that's a future issue. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-29Fix header guards for outlib.hH. Peter Anvin1-2/+2
Fix typo in header guards for outlib.h Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-29make alldepsH. Peter Anvin5-33/+34
Run "make alldeps" Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-29doc: cross-reference macro parameter concatenation with %[...]H. Peter Anvin1-5/+12
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-29Merge branch 'nasm-2.05.xx'H. Peter Anvin0-0/+0
2008-10-29doc: fix typo in the description of %unmacroH. Peter Anvin1-1/+1
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-29doc: fix capitalizationH. Peter Anvin1-1/+1
Make the capitalization of "The -t Option" consistent with the other options. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-29doc: remove duplicate entry for the "error" warning classH. Peter Anvin1-3/+0
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-29doc: retroactively document updates to the warning optionsH. Peter Anvin2-1/+20
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-29doc: fix typo in the description of %unmacroH. Peter Anvin1-1/+1
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-29doc: fix capitalizationH. Peter Anvin1-1/+1
Make the capitalization of "The -t Option" consistent with the other options. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-29doc: remove duplicate entry for the "error" warning classH. Peter Anvin1-3/+0
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-29doc: retroactively document updates to the warning optionsH. Peter Anvin2-1/+20
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-29Merge commit 'nasm-2.05.01'H. Peter Anvin2-1/+6
Conflicts: doc/changes.src
2008-10-29NASM 2.05.01H. Peter Anvin1-1/+1
2008-10-29doc/changes.src: document -W/-w fix as a NASM 2.05.01 feature.H. Peter Anvin1-0/+5
Make -W/-w fix a release note for NASM 2.05.01. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-27Merge branch 'master' of git+ssh://ccrayne@repo.or.cz/srv/git/nasmCharles Crayne15-76/+67
2008-10-27Initial documentation for ELF64 TLSCharles Crayne1-4/+26
More to come.
2008-10-27output: add common file outlib.c for common functions; realsize()H. Peter Anvin15-76/+67
Add a common file, outlib.c, for output formats. Add the function realsize() instead of open-coded variants in almost every backend. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-26preproc: merge expand_mmac_params() and expand_indirect()H. Peter Anvin1-101/+30
These two really need to be done together, in order for constructs such as %[%1] to work properly. Furthermore, fix a token-pasting bug in expand_mmac_params(). Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-26Merge branch 'master' of git+ssh://ccrayne@repo.or.cz/srv/git/nasmCharles Crayne1-4/+4
2008-10-26ELF64 support for PC relative offset to IE GOT entryCharles Crayne1-4/+14
Add new WRT type ..gottpoff. Generate R_X86_64_GOTTPOFF relocation entries for references to thread local variables.
2008-10-26Merge branch 'nasm-2.05.xx'H. Peter Anvin1-4/+4
2008-10-26Better description of the number-overflow warningH. Peter Anvin1-1/+1
Better grammar and fix incorrect description of the number-overflow warning (it is not just limited to 64-bit arithmetic overflow, it also triggers when trying to squeeze in a value which is too large into an immediate.) Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-26BR: 2196966: make the -w/-W options work againH. Peter Anvin1-3/+3
The code to parse the -w/-W options was updating warning_on[], not warning_on_global[], but warning_on[] is reset at the beginning of each pass (to let the warning directive work); as a result the -w/-W options don't actually do anything at all. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-25Merge branch 'master' of git+ssh://ccrayne@repo.or.cz/srv/git/nasmCharles Crayne1-64/+13
2008-10-25Flag thread local symbols in symbol tableCharles Crayne1-0/+8
Set STT_TLS in symbol table for symbols declared in thread local storage sections. Note that, for now at least, such symbols must also be declared as GLOBAL.
2008-10-25smartalign: clean up unnecessary duplication; tweak dependenciesH. Peter Anvin1-64/+13
Remove unnecessary duplicated patterns; with indirection we can handle lists of any length. For 16-bit generic padding, alternate between SI and DI dependencies. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-25ELF64 segment definitions for TLSCharles Crayne1-0/+10
Add default definitions for .tdata & .tbss sections Add definition for SHF_TLS section header flag Add support for "tls" keyword on section statement
2008-10-25For snapshot releases, expand out the mangled version numbers.H. Peter Anvin1-2/+6
For snapshot releases, expand out the mangled version number, e.g. 2.05.00.0.20081025. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-25disasm: introduce opyH. Peter Anvin1-3/+4
Introduce the opy pointer into the disassembler, and use it where appropriate. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-25assemble: use opx and opy in a few more placesH. Peter Anvin1-4/+6
Use opx and opy in a few more places where we can do so. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-24doc/changes.src: retroactively document anonymous %pushH. Peter Anvin1-0/+3
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-24preproc: don't macro-expand the argument to %useH. Peter Anvin3-13/+17
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-24doc: document %pop with argumentH. Peter Anvin2-2/+5
Document that %pop can now take an argument, and what it does. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-24preproc: allow %pop to take an identifier, unify %push/%repl/%popH. Peter Anvin1-44/+32
Allow the %pop directive to take an identifier (an assert on the context name); unify the parsing parts of %push, %repl, and %pop. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-24doc: document anonymous %pushH. Peter Anvin1-4/+6
The anonymous %push was never documented, document it now. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-24doc/changes.src: begin the release notes for 2.06H. Peter Anvin1-0/+5
The next version will presumably be called 2.06; begin collecting release notes. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-24doc: fix awkward word orderH. Peter Anvin1-1/+1
"the exactly same" -> "exactly the same" Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-10-24version.pl: don't add an extra .00 for subminor if we don't need itH. Peter Anvin1-1/+2
When producing the mangled version number, don't add a subminor if there isn't a patch level or release candidate number. Thus, 2.05p1 is 2.05.00.01, but 2.05 can just be 2.05. Signed-off-by: H. Peter Anvin <hpa@zytor.com>