H. Peter Anvin
d2456590fc
preproc: add support for builtin include modules (%use)
...
Add a builtin equivalent to the %include directive called %use.
%use includes a standard macro file compiled into the binary; these
come from the macros/ directory in the source code.
The idea here is to be able to provide optional macro packages with
the distribution, without adding complex host filesystem dependencies.
2008-06-19 15:04:18 -07:00
H. Peter Anvin
c0d6066d99
syncfiles: use #-- ... --# for consistency with mkdep.pl
...
mkdep.pl already used #-- ... --# (two dashes) whereas syncfiles.pl
was using #--- ... ---# (three dashes). Change syncfiles.pl to match
mkdep.pl.
2008-06-15 23:50:50 -07:00
H. Peter Anvin
19b741835f
syncfiles: handle the case of the null path separator
...
Correctly handle the null path separator (meaning remove the directory
portion entirely.)
2008-06-15 18:33:03 -07:00
H. Peter Anvin
7806e96508
Script to automagically synchronize the object file lists
...
Add a script to automagically synchronize the list of object files
between the various Makefiles.
2008-06-15 16:54:29 -07:00
H. Peter Anvin
eb96812e9f
Update Mkfiles/*.mak
...
Sync the file list in Mkfiles/*.mak
2008-06-15 16:18:43 -07:00
H. Peter Anvin
518df30308
Implement __utf16__() and __utf32__() for the DB family
...
Implement __utf16__() and __utf32__() for the DB family of
pseudo-instructions. Not yet implemented for evaluation context.
2008-06-14 16:53:48 -07:00
H. Peter Anvin
fcb8909749
Move all the RAA code out of nasmlib
...
The RAA code doesn't have to be in nasmlib; it is only used by nasm
itself, and is better handled in a separate module.
2008-06-09 17:40:16 -07:00
H. Peter Anvin
1803dedae8
Move all the SAA code out of nasmlib
...
Move all the SAA code out of nasmlib; it's not used by anything than
nasm itself. Cleaning out the kitchen sink known as nasmlib is a good
thing, too.
2008-06-09 17:32:43 -07:00
H. Peter Anvin
c735d1a6b2
Replace the WSAA macros with functions
...
Change the WSAA macros into functions; reducing the icache footprint.
2008-06-08 21:15:01 -07:00
H. Peter Anvin
0eebf799db
Update .gitignore, remove bogus dependency
2008-06-04 08:58:53 -07:00
H. Peter Anvin
3bc3c934d9
Makefile/dependency updates
...
Add quote.c to all the auxiliary Makefiles, and run "make alldeps".
2008-06-04 08:49:10 -07:00
H. Peter Anvin
ad42e0d1fb
make alldeps
2008-05-27 14:34:53 -07:00
H. Peter Anvin
0c648204e2
openwcom.mak: wmake uses & for continuation, not \ (sigh)
...
wmake uses & for continuation, since \ is used for pathname
separators.
2008-05-20 14:42:53 -07:00
H. Peter Anvin
f176537c1b
netware.mak: correct dependencies
...
The Makefile uses VPATH and stripped directory names for files, so
generate the dependencies accordingly.
2008-05-20 14:35:34 -07:00
H. Peter Anvin
a4835d466c
Avoid #including .c files; instead compile as separate units
...
Don't #include .c files, even if they are auto-generated; instead
compile them as separate compilation units and let the linker do its
job.
2008-05-20 14:21:29 -07:00
H. Peter Anvin
2c94c44f35
Make insnsb.c an actual compilation unit
...
"make alldeps" doesn't really like it when included files end in *.c.
Instead of renaming insnsb.c to insnsb.h, make it an actual
compilation unit, since there really isn't any reason for it not to
be.
2008-05-13 14:29:47 -07:00
H. Peter Anvin
3720f7beae
Generate a byte array instead of using strings for the byte codes
...
Generate a byte array instead of using C compiler strings for the byte
codes. This has a few advantages:
- No need to special-case zero due to broken C compilers.
- Only insns.pl only ever reads the string, so we can invent our own
syntax.
- Compaction.
- We can give it the proper, unsigned type.
2008-05-12 11:00:50 -07:00
H. Peter Anvin
72ec0e4144
Temporaries in macros need a unique prefix; WSAA*() macros to header
...
When using temporaries in macros, given them a unique prefix to avoid
namespace collisions when using one macro inside another.
Move the WSAA*() macros from outelf32/outelf64 to a separate header
file.
2008-04-10 14:56:09 -07:00
H. Peter Anvin
88ab419cc6
OpenWatcom: optimize for 686
...
Apparently -6 compiles are defined to run on anything 386 or newer,
and just use different instruction timings.
2008-02-16 15:44:24 -08:00
H. Peter Anvin
5de0c0b9f1
Mkfiles/README: document the Netware Makefile.
2008-02-05 21:35:08 -08:00
H. Peter Anvin
197a5a240b
Add Makefile for Netware
...
Add Makefile for Netware, using the GNU toolchain.
2008-02-05 21:30:16 -08:00
H. Peter Anvin
73398c5012
OpenWatcom makefiles: add DEBUG option
...
Add a Makefile variable, DEBUG, which can be used to set debug options
(-d2, -DLOGALLOC, etc.)
2008-01-21 16:18:44 -08:00
H. Peter Anvin
9964558613
Fix the options when compiling under OpenWatcom
...
OpenWatcom needs different strings for compile and link target, so
using -bcl which uses the same string for both is just plain wrong.
This fixes that bit, but running nasm on test/floatx.asm (at least as
a DOS or a Win32 binary) crashes with a NULL pointer reference inside
the C library free() function.
2008-01-21 11:50:31 -08:00
H. Peter Anvin
23f1644ba9
Run "make alldeps"
2007-10-30 01:13:27 -07:00
H. Peter Anvin
be1b83d24a
owlinux.mak: don't clean things we won't be able to
...
There won't be a Makefile in rdoff in particular, so trying to run
"make clean" there is pointless.
2007-10-10 14:55:14 -07:00
H. Peter Anvin
4d13bdc72f
make alldeps
2007-10-02 21:57:27 -07:00
H. Peter Anvin
4a8daf0607
Run "make alldeps".
...
Run "make alldeps". This stuff probably shouldn't be checked in...
2007-10-02 21:13:18 -07:00
H. Peter Anvin
304b605563
Add substitutes for snprintf() and vsnprintf()
...
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-28 10:50:20 -07:00
H. Peter Anvin
ab8447ed99
Exclude config.h from the dependency list for the canned makefiles
...
For the canned makefiles, we almost certainly don't have config.h, and
shouldn't include it in the list of dependencies.
2007-09-27 21:35:04 -07:00
H. Peter Anvin
ede337ca51
Add Makefile for Linux -> DOS, Win32, OS/2 using OpenWatcom
...
Add a Makefile (for GNU Make, not wmake) to cross-compile NASM for
DOS, OS/2 or Win32 using OpenWatcom.
2007-09-27 19:46:55 -07:00
H. Peter Anvin
c38c117188
Add Makefile for OpenWatcom (DOS, OS/2 or Win32 output)
...
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-26 19:57:07 -07:00
H. Peter Anvin
dc467ba8af
Support __float*__ for floating-point numbers in expressions
...
Add special operators to allow the use of floating-point constants in
contexts other than DW/DD/DQ/DT/DO.
As part of this checkin, make MAX_KEYWORD generated by tokhash.pl,
since it knows what all the keywords are so it can tell which one is
the longest.
2007-09-24 12:30:54 -07:00
H. Peter Anvin
87f252aaa5
Make nasm_malloc() et al available from inside ndisasm
...
Clean up nasmlib to remove functions irrelevant for ndisasm; make
nasm_malloc() etc usable inside ndisasm.
2007-09-19 21:40:37 -07:00
H. Peter Anvin
3a7edd73a3
Sort dependency lists
...
Sort the dependency lists generated by "mkdep.pl", to make sure that
re-running "make alldeps" doesn't change anything unless there has
been real dependency changes. The previous version could produce
different output between runs and across platforms.
2007-09-17 13:56:26 -07:00
H. Peter Anvin
b8af9aa522
Cleaner way to handle MSVC's _snprintf() underscore damage
...
Some versions of MSVC have snprintf() and vsnprintf() only with a
leading underscore. Handle that a bit more cleanly.
2007-09-17 13:53:14 -07:00
H. Peter Anvin
e8bfecf275
Fix Makefile for MSVC++ 2005, delete obsolete Makefiles
...
New Makefile for MSVC++ 2005, delete old unmaintained Makefiles.
2007-09-16 22:16:24 -07:00
H. Peter Anvin
9e8e948f86
Run "make alldeps"
2007-09-16 18:35:02 -07:00
H. Peter Anvin
6244f4b5b9
Use the new hash table function library to store labels
...
Use the new hash table function library to store labels. When
compiling on my 64-bit system, it reduces the assembly time for the
output of test/perf/label.pl from 73 to 7 seconds.
2007-09-14 18:03:29 -07:00
H. Peter Anvin
d105682096
Remove $Id$ tags (useless with git)
...
Remove CVS $Id$ tags, since git doesn't use them.
2007-09-12 21:05:06 -07:00
H. Peter Anvin
16b0a33cea
Use enumerations where practical to ease debugging
...
We have a lot of enumerations; by declaring fields as such, we make it
easier when debugging, since the debugger can display the enumerations
in cleartext. However, make sure exceptional values (like -1) are
included in the enumeration, since the compiler otherwise may not
include it in the valid range of the enumeration.
2007-09-12 20:27:41 -07:00
H. Peter Anvin
9e1c202b69
Run "make alldeps"; add dependencies missing from the previous checkin
...
It helps to run "make alldeps" when the changes are actually complete...
2007-09-12 01:34:19 +00:00
H. Peter Anvin
4169a47bd9
Use a perfect hash to look up preprocessor directives
...
Use a perfect hash to look up preprocessor directives, and generate
the preprocessor directive list automatically.
2007-09-12 01:29:43 +00:00
H. Peter Anvin
74cc5e569c
Finishing touches on perfect hash tokenizer; actually turn the thing on
...
Finish the perfect hash tokenizer, and actually enable it.
Move stdscan() et al to a separate file, since it's not needed in any
of the clients of nasmlib other than nasm itself.
Run make alldeps.
2007-08-30 22:35:34 +00:00
Frank Kotler
352170d5eb
attempt to make static makefiles aware of outelf32/outelf64
2007-08-26 05:51:39 +00:00
H. Peter Anvin
ff69805feb
Update dependencies.
2007-05-30 18:30:18 +00:00
H. Peter Anvin
7a83374a9c
Run "make alldeps"
2007-05-29 21:44:55 +00:00
Keith Kanios
0899e21289
Added outmacho.* to static makefile.
2007-04-13 23:09:18 +00:00
Keith Kanios
ea13537d83
Added Dev-Cpp Makefile
2007-04-13 00:43:50 +00:00
Keith Kanios
b7a89544d0
General push for x86-64 support, dubbed 0.99.00.
2007-04-12 02:40:54 +00:00
H. Peter Anvin
5180bc8a59
Update dependencies
2005-01-14 23:05:31 +00:00
H. Peter Anvin
cefdfbc070
Support building 16-bit DOS binaries using OpenWatcom
2003-08-30 03:49:30 +00:00
H. Peter Anvin
68f2ac1158
Update status
2003-08-29 19:01:46 +00:00
H. Peter Anvin
3f62008ec2
Handle subdirectories
2003-08-29 18:57:50 +00:00
H. Peter Anvin
6ca1f9e21c
Remove obsolete comment
2003-08-29 18:55:22 +00:00
Frank Kotler
3ab698a81e
Touch up Makefile.b32
2003-08-29 05:15:35 +00:00
Nickolay Yurchenko
3f7cddc770
Added -d key (merge duplicate strings) to to compiler keys string.
2003-07-25 21:55:35 +00:00
H. Peter Anvin
33e007a6b6
Remove redundant define that generates too long command lines
2002-09-13 00:43:28 +00:00
H. Peter Anvin
24cfef4f8f
Clean up unnecessary dependencies.
2002-09-12 16:34:06 +00:00
H. Peter Anvin
628168c502
Fix Borland C++ optimization bug; add test for bad DOS binaries.
2002-09-12 04:33:58 +00:00
H. Peter Anvin
6d4680a68d
Update Makefile.bc3 so that it actually works again.
2002-06-06 03:33:38 +00:00
H. Peter Anvin
232badbbbc
This is the "megapatch":
...
a) Automatically generate dependencies for all Makefiles;
b) Move register definitions to a separate .dat file;
c) Add support for "unimplemented but there in theory" registers.
2002-06-06 02:41:20 +00:00
H. Peter Anvin
372aad9547
Clean up Makefile.unx and document it better
2002-05-26 22:43:16 +00:00
John Coffman
460764e07f
Account for ./output directory
2002-05-26 19:43:26 +00:00
H. Peter Anvin
d8aadba81c
Update from John Coffman
2002-05-25 02:22:02 +00:00
Debbie Wiles
157635509a
Added make rules for files generated from perl scripts
2002-05-20 02:26:35 +00:00
Debbie Wiles
43f14033c9
*** empty log message ***
2002-05-12 10:31:05 +00:00
Debbie Wiles
10dde88103
*** empty log message ***
2002-05-12 10:30:15 +00:00
Debbie Wiles
593231169e
*** empty log message ***
2002-05-12 10:22:25 +00:00
H. Peter Anvin
22e5dda13d
Change "working" to "OK"
2002-05-10 19:52:08 +00:00
H. Peter Anvin
918af68255
Handle the "output" directory correctly (patch from John Coffman.)
2002-05-10 19:51:48 +00:00
H. Peter Anvin
effc271151
Fix comment.
2002-05-10 00:35:37 +00:00
H. Peter Anvin
7f588e0e4c
Makefile work: Add working 16-bit DOS variants (Borland C++ 3.1, MSC 7),
...
remove a file that seems to be beyond rescue, update the README file
to be a bit more informative.
2002-05-10 00:29:32 +00:00
H. Peter Anvin
e87613b14e
Make all version information come from the single file "version".
...
Introduce new standard __NASM_SUBMINOR__ and __NASM_VER__ macros.
2002-05-04 03:57:52 +00:00
H. Peter Anvin
8ac364139a
NASM 0.98.30
2002-04-30 21:09:12 +00:00
H. Peter Anvin
005b39c856
NASM 0.98.26
2002-04-30 21:08:42 +00:00
H. Peter Anvin
9a633fa3b9
NASM 0.98.25alt
2002-04-30 21:08:11 +00:00
H. Peter Anvin
dce1e2f795
NASM 0.98.23
2002-04-30 21:06:37 +00:00
H. Peter Anvin
734b188090
NASM 0.98.09
2002-04-30 21:01:08 +00:00
H. Peter Anvin
1cd0e2d5bf
NASM 0.98.08
2002-04-30 21:00:33 +00:00
H. Peter Anvin
af535c16cf
NASM 0.98.03
2002-04-30 20:59:21 +00:00
H. Peter Anvin
41bf8002b2
NASM 0.98
2002-04-30 20:58:18 +00:00
H. Peter Anvin
620515ab4e
NASM 0.98p6
2002-04-30 20:57:38 +00:00
H. Peter Anvin
cd08b15c28
NASM 0.98p3.7
2002-04-30 20:57:19 +00:00
H. Peter Anvin
4342239f77
NASM 0.98p3.4
2002-04-30 20:56:19 +00:00
H. Peter Anvin
ce14ce6fc4
NASM 0.98p3.2
2002-04-30 20:54:58 +00:00