summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10Use the compiler-provided booleans if available, otherwise emulateH. Peter Anvin25-410/+403
Both C and C++ have "bool", "true" and "false" in lower case; C requires <stdbool.h> for this, in C++ it is an inherent type built into the compiler. Use those instead of the old macros; emulate with a simple typedef enum if unavailable.
2007-10-10owlinux.mak: don't clean things we won't be able toH. Peter Anvin1-4/+5
There won't be a Makefile in rdoff in particular, so trying to run "make clean" there is pointless.
2007-10-10configure.in: looks like we need autoconf 2.61 :(H. Peter Anvin1-2/+2
AC_USE_SYSTEM_EXTENSIONS is really, *really* useful, but apparently requires autoconf 2.61...
2007-10-10Create option -Ox to tell NASM to do unlimited passesH. Peter Anvin2-29/+46
Add option -Ox to tell NASM to do as many passes as it needs, instead of imposing a fixed number.
2007-10-08Revert "floatb.asm: fix broken testcase"H. Peter Anvin1-1/+1
This reverts commit d9e3116be19165325ee9457bc207d47300075739. 0x513c1704 is 50.49e9, not 50.40e9
2007-10-08floatb.asm: fix broken testcaseH. Peter Anvin1-1/+1
50.40e9 as a 32-bit float is 0x513c1704
2007-10-08saa_rstruct: fix overrun checkH. Peter Anvin1-1/+1
The direction of the overrun test in saa_rstruct was backwards.
2007-10-08Add Frank's floattest.asm test fileH. Peter Anvin1-0/+26
2007-10-07saa_fpwrite: initializing "len" should be part of the loopH. Peter Anvin1-2/+1
"len" should properly be initialized on every turn of the loop. It can be initialized to any value >= blk_len that fits in a size_t. (size_t)~0 would work except for any possible noncompliant C compilers that have a signed size_t (illegal per C99 7.17.2).
2007-10-07Fix infinite loop in function saa_fpwriteCharles Crayne1-0/+1
2007-10-05zerobyte.asm: use a real instruction to avoid confusing ndisasmH. Peter Anvin1-1/+1
It's useful to be able to disassemble a test case, so avoid mixing data bytes and code.
2007-10-05zerobyte.asm: add test cases for non-initial \170 usesH. Peter Anvin1-0/+17
Add test cases for noninitial uses of \170, in order to test for accidental duplication of REX prefixes.
2007-10-05Check in the proper zerobyte testH. Peter Anvin2-0/+7
The previous checkin checked in zerobyte.bin, not zerobyte.asm
2007-10-05Emit REX prefix before literal zero (\170)H. Peter Anvin2-0/+1
2007-10-05LICENSE: Break long lineH. Peter Anvin1-1/+2
2007-10-05Add test for problematic floatsH. Peter Anvin1-0/+22
2007-10-04floatx.asm: add Inf and NaN to the boundary condition testsH. Peter Anvin1-2/+14
2007-10-04floatx.asm: add specific tests for exponent boundary conditionsH. Peter Anvin1-0/+26
Add tests for the exponent boundaries (underflow, denorm, normal).
2007-10-04float.c: correct the exponentH. Peter Anvin1-1/+1
We would accidentally produce an exponent which was exactly +1 from the correct one.
2007-10-04Additional rules in test/MakefileH. Peter Anvin1-1/+5
Add rules for .pl -> .asm
2007-10-04Rewrite the handling of SAA's to allow random accessH. Peter Anvin3-146/+188
SAA's were never intended to allow random access, but several backends do random or semirandom access via saa_fread() and saa_fwrite() anyway. Rewrite the SAA system to allow for efficient random access. On "label.pl 10000000" this improves performance by a factor of 12.
2007-10-03Change cloc_t to struct location, and reorder the membersH. Peter Anvin6-10/+10
Change cloc_t to struct location, and reorder the members so that it should fit in 16 bytes instead of needing 8 bytes of extra padding on 64-bit machines.
2007-10-03BR 1352920: change loc_t -> cloc_tH. Peter Anvin6-8/+8
Change loc_t to cloc_t to avoid AIX conflict. We really shouldn't use _t names at all; they are usually considered platform types, but worry about that later.
2007-10-03BR 1352920: Handle upper case %lineH. Peter Anvin1-1/+1
2007-10-03Use autoconf to request feature macrosH. Peter Anvin2-10/+4
2007-10-02preproc.c: constipationH. Peter Anvin1-5/+6
Add "const" in suitable places
2007-10-02make alldepsH. Peter Anvin4-16/+16
2007-10-02Portability fixesH. Peter Anvin52-24/+133
Concentrate compiler dependencies to compiler.h; make sure compiler.h is included first in every .c file (since some prototypes may depend on the presence of feature request macros.) Actually use the conditional inclusion of various functions (totally broken in previous releases.)
2007-10-02Run "make alldeps".H. Peter Anvin4-12/+13
Run "make alldeps". This stuff probably shouldn't be checked in...
2007-10-02Use the crc64 we already use as the perfect hash function prehashH. Peter Anvin9-190/+465
Use the same crc64 that we already use for the symbol table hash as the perfect hash function prehash. We appear to get radically faster convergence this way, and the crc64 is probably *faster*, since the table likely to be resident in memory.
2007-10-02insns.dat: add systematic names for the hinting NOPs (0F18-0F1F)H. Peter Anvin1-0/+194
0F 18-1F are reserved for hinting NOPs; they all take a single memory operand which may be sized. Allow the use of systematic names; this also makes sure they get sensibly disassembled.
2007-10-01Unspecified files are null strings, not null pointersH. Peter Anvin1-4/+2
We use empty strings, not null pointers, for unspecified files, so there is no need to compare them for nullness.
2007-10-01Check for the most basic filename overlapsH. Peter Anvin1-10/+19
Check for the most basic filename overlaps, in case we have the opportunity to save the user from himself.
2007-09-30modified: nasm.1 to add newer command line optionsCharles Crayne2-85/+109
modified: nasm.c to fully parse command line before redirecting stderr.
2007-09-28Merge branch 'master' of git+ssh://ccrayne@repo.or.cz/srv/git/nasmCharles Crayne4-12/+1201
2007-09-28configure.in: AC_SUBST_FILE should have been AC_SUBSTH. Peter Anvin1-1/+1
AC_SUBST_FILE happened to work in autoconf 2.59, but is broken in autoconf 2.61.
2007-09-28Unbreak relative references to immediate addressesH. Peter Anvin3-11/+1200
Remove bogus "treat labels different from immediates" code, which would result in generating of a relative mod/rm but without adjusting the address accordingly. Update addressing mode test.
2007-09-28Merge branch 'master' of git+ssh://ccrayne@repo.or.cz/srv/git/nasmCharles Crayne22-236/+1511
2007-09-28lib/vsnprintf.c: correct boundary conditionsH. Peter Anvin1-6/+6
Correct the boundary conditions in lib/vsnprintf.c; as it was we could have an undetected one-byte overwrite.
2007-09-28Add substitutes for snprintf() and vsnprintf()H. Peter Anvin9-17/+112
To deal with fools^Wpeople trying to keep really old systems alive, create a proper framework for substitution functions, and make it possible to deal with the lack of snprintf/vsnprintf in particular.
2007-09-28Merge branch 'master' of git+ssh://fbkotler@repo.or.cz/srv/git/nasmFrank Kotler10-195/+1280
2007-09-27Exclude config.h from the dependency list for the canned makefilesH. Peter Anvin4-191/+198
For the canned makefiles, we almost certainly don't have config.h, and shouldn't include it in the list of dependencies.
2007-09-27version.pl: Add support for daily snapshot releasesH. Peter Anvin1-1/+19
Add support for daily snapshot releases of the form <ordinary version number>-<datecode>. These are exported to programs as the new macro __NASM_SNAPSHOT__ (only present in snapshot releases.)
2007-09-27Add Makefile for Linux -> DOS, Win32, OS/2 using OpenWatcomH. Peter Anvin2-1/+280
Add a Makefile (for GNU Make, not wmake) to cross-compile NASM for DOS, OS/2 or Win32 using OpenWatcom.
2007-09-26Add Makefile for OpenWatcom (DOS, OS/2 or Win32 output)H. Peter Anvin3-35/+284
Add a Makefile for OpenWatcom using WMAKE. This is a horrible version of Make, but since it's bundled with OpenWatcom it is probably better to stick to it. It has the nice property that it can produce DOS, Win32 or OS/2 binaries. This Makefile currently assumes that it is hosted on a system where pathname separators are backslashes. For cross-compiling using OpenWatcom on a Linux system it is probably better to write a separate Makefile using GNU make to invoke Watcom.
2007-09-26Test for various addressing modes in 64-bit modeH. Peter Anvin2-74/+601
Test of various addressing modes in 64-bit mode. Relative addresses specified as numbers are currently broken!!
2007-09-26nasm option reshuffling, -E -> -ZH. Peter Anvin2-15/+20
Old -E becomes -Z New -E is alias for -e Remove the obsolete -r option
2007-09-25Version 0.99.04Frank Kotler1-1/+1
2007-09-25nasmdoc: corrections on 64-bit immediates/displacementsH. Peter Anvin1-9/+17
Corrections the section on 64-bit immediates and displacements. In particular, immediates are sign-extended the same way displacements are (and the same way 8-bit immediates are), so there is some use for the 7-byte mov eax,dword imm form :(
2007-09-25nasmdoc: shorten lines which are too longH. Peter Anvin1-6/+6