Peter Johnson
217b33802c
Make data.insn.imm within bytecode a pointer. This prevents leakage in calls to
...
bytecode_new_insn().
svn path=/trunk/yasm/; revision=266
23 years ago
Peter Johnson
fef39125bc
Use xmalloc() instead of malloc().
...
svn path=/trunk/yasm/; revision=265
23 years ago
Peter Johnson
c49daeab12
Move SymStatus and SymType to symrec.c from symrec.h. They're only used
...
internally.
svn path=/trunk/yasm/; revision=264
23 years ago
Peter Johnson
677d561c21
Fix SHR operation, and do some reindentation.
...
svn path=/trunk/yasm/; revision=263
23 years ago
Peter Johnson
eec0574a16
Use wordptr and charptr when appropriate for data when using BitVector functions.
...
Make some minor comment corrections.
svn path=/trunk/yasm/; revision=262
23 years ago
Peter Johnson
48a36cdf22
Make most data structures opaque, keeping internals truly internal and making the
...
overall structure much more modular.
The test files, which need access to the internals of the structures being
tested, now include the source file instead of the header file to gain access
to all internal formats and functions.
svn path=/trunk/yasm/; revision=261
23 years ago
Peter Johnson
ebc6a12111
Test floatnum_new().
...
svn path=/trunk/yasm/; revision=260
23 years ago
Peter Johnson
fb89878708
Const'ify floatnum_new() input string.
...
svn path=/trunk/yasm/; revision=259
23 years ago
Peter Johnson
55c7822fa5
Add floatnum_delete().
...
svn path=/trunk/yasm/; revision=258
23 years ago
Peter Johnson
17a9427734
Fix mantissa rounding overflow issue: 0xff -> 0x100, and shift right -> 0x80 is
...
not correct except when the 1 bit is explicit.
svn path=/trunk/yasm/; revision=257
23 years ago
Peter Johnson
8ce112a3fa
Completely revamp format and extensiveness of testing.
...
Currently two tests fail (the approx 1.e-38 in single and double precision).
Need still to add tests for ASCII->internal conversion.
svn path=/trunk/yasm/; revision=256
23 years ago
Peter Johnson
d312212211
Implement floatnum_print() (for debugging purposes only).
...
svn path=/trunk/yasm/; revision=255
23 years ago
Peter Johnson
055e7e2a30
Add copyright and GPL comments.
...
svn path=/trunk/yasm/; revision=254
23 years ago
Peter Johnson
b13f4e4f87
malloc->xmalloc, strdup->xstrdup, and calloc->xcalloc. The x* family performs
...
error checking. Remove check for strdup() from configure, as we don't need it.
svn path=/trunk/yasm/; revision=253
23 years ago
Peter Johnson
98e25fc1f6
Add some (optional through configure) additional warning flags. Add options
...
to configure to enable profiling and enable -Werror. Make changes to ensure
everything builds with all additional warnings and -Werror enabled. Most of
these changes consist of adding "const" modifiers for functions that get
constant literal strings.
svn path=/trunk/yasm/; revision=252
23 years ago
Peter Johnson
1377150f6e
Finish ASCII->internal FP conversion and clean up single/double/extended
...
conversion functions. For accuracy, change from 64-bit to 80-bit internal
mantissa. Modify tests to match new internal format.
TODO: Denormalized numbers, and write more tests!
svn path=/trunk/yasm/; revision=251
23 years ago
Peter Johnson
a46ed054f7
Check for NULL datavals to avoid crashes.
...
svn path=/trunk/yasm/; revision=250
23 years ago
Stanislav Karchebny
68de928435
Added command line parsing
...
svn path=/trunk/yasm/; revision=249
23 years ago
Peter Johnson
fb48401cc0
Add *Now and *At error and warning functions. *At functions still need to
...
be implemented. Consider a rename of these functions at some point?
svn path=/trunk/yasm/; revision=248
23 years ago
Peter Johnson
279abb1b37
Implement floating point size conversions (with help from BitVector).
...
Interface changed slightly (only affects symrec.c right now). Tests committed
to check a single case (pi) with all three size conversion functions.
Still need to write to/from ASCII string functions (the hard part).
svn path=/trunk/yasm/; revision=247
23 years ago
Peter Johnson
0baab0debd
Initialize BitVector framework.
...
svn path=/trunk/yasm/; revision=246
23 years ago
Peter Johnson
f991869d50
Made gmon and core files globally ignored.
...
svn path=/trunk/yasm/; revision=245
23 years ago
Peter Johnson
200727aebb
Ignore all test executables as well as gmon and core files.
...
svn path=/trunk/yasm/; revision=243
23 years ago
Peter Johnson
d1d847d5bd
Add BitVector documentation. These docs are really for the Perl side, but
...
are certainly better than nothing.
svn path=/trunk/yasm/; revision=242
23 years ago
Peter Johnson
3e6451edd8
Integrate 6.0 changes.
...
svn path=/trunk/yasm/; revision=241
23 years ago
Peter Johnson
bf0c30d322
Add RCSID().
...
svn path=/trunk/yasm/; revision=238
23 years ago
Peter Johnson
38391f7c8a
Add GNU Library General Public License (version 2) to CVS and distribution
...
because that's the license bitvect is under.
svn path=/trunk/yasm/; revision=237
23 years ago
Peter Johnson
cef84720b6
Fix gcc -Wall warnings.
...
svn path=/trunk/yasm/; revision=236
23 years ago
Peter Johnson
c8bb9411d0
Add bitvect to build framework. C file still produces some warnings; these
...
will be fixed in the next commit.
svn path=/trunk/yasm/; revision=235
23 years ago
Peter Johnson
35fc4ec95b
Initial revision
...
svn path=/trunk/yasm/; revision=231
23 years ago
Peter Johnson
fa1654f7b9
Add SAVE_*, READ_*, and LOAD_* families of little-endian macros.
...
svn path=/trunk/yasm/; revision=230
23 years ago
Peter Johnson
1abd74ba04
Fix large parts of expression and symbol handling. Actually link in labels
...
properly (bug #8 ). Framework added for portable floating point support (bug
#7 ). Lots of functions still not finished in this commit.
svn path=/trunk/yasm/; revision=229
23 years ago
Peter Johnson
a45b6d6c71
Const-ize string input parameters.
...
svn path=/trunk/yasm/; revision=228
23 years ago
Peter Johnson
902d974288
Save filename as well as line number for each symbol.
...
svn path=/trunk/yasm/; revision=224
23 years ago
Peter Johnson
197f8857e4
Change error/warning framework to store a list of errors and warnings instead
...
of just one at a time. This is the groundwork for printing undefined symbol
messages, which can't be determined until after parsing has been completed
(and should be in the same line order with the other errors).
svn path=/trunk/yasm/; revision=223
23 years ago
Peter Johnson
8e53900160
First version of HACKING, only for Unix and not nearly complete.
...
Also makes reference to incomplete (and not in CVS) design document.
svn path=/trunk/yasm/; revision=222
23 years ago
Peter Johnson
5d71f1f737
Fixed nasty bug in error handling. It should have been setting the return
...
bytecode value to NULL on error, but wasn't (random return value is bad!).
svn path=/trunk/yasm/; revision=221
23 years ago
Peter Johnson
f9209d5200
Used ternary search tree instead of linked list to store symbol table.
...
Cleaned up function naming too.
Removed locallabel_base from global.h, moving it into the parser-specific code.
Made sym_table private to symrec.c.
svn path=/trunk/yasm/; revision=220
23 years ago
Peter Johnson
2f6a19295d
Remove redundant check for features.h, and cache GNU C Library test.
...
svn path=/trunk/yasm/; revision=219
23 years ago
Peter Johnson
df62b73779
Add check and BSD replacement for strsep(3).
...
svn path=/trunk/yasm/; revision=218
23 years ago
Peter Johnson
ecf19c6170
Delete ancient symrec cruft.
...
svn path=/trunk/yasm/; revision=217
23 years ago
Peter Johnson
b253f75170
Integrate ternary search trees into build.
...
svn path=/trunk/yasm/; revision=216
23 years ago
Peter Johnson
58365ef593
Initial revision
...
svn path=/trunk/yasm/; revision=212
23 years ago
Peter Johnson
b3f0a1c6b8
Make name and keyword const.
...
svn path=/trunk/yasm/; revision=211
23 years ago
Peter Johnson
ac22f77d42
Get initial bits setting from object format. Change the initial section name
...
from a function to a constant string. Make mode_bits uniformily an unsigned
char instead of an int.
svn path=/trunk/yasm/; revision=210
23 years ago
Peter Johnson
63d8a451b7
Define YY_NEVER_INTERACTIVE, because we never are :).
...
svn path=/trunk/yasm/; revision=209
23 years ago
Peter Johnson
a002baa1df
Check for snprintf (used in Check suite). Also define _GNU_SOURCE for Check
...
to stop warnings on Linux.
svn path=/trunk/yasm/; revision=208
23 years ago
Peter Johnson
6b4d5d7d73
Remove error message for check when check is disabled. It breaks check (and
...
distcheck) on linux.
svn path=/trunk/yasm/; revision=207
23 years ago
Peter Johnson
f173e9e042
Include stddef.h for size_t.
...
svn path=/trunk/yasm/; revision=206
23 years ago
Peter Johnson
5bed5011d0
Make sure | and == done in right order.
...
svn path=/trunk/yasm/; revision=205
23 years ago