73 Commits (bd048ead19000fcb5e3fbf9fb3e327f13ad833cc)

Author SHA1 Message Date
Peter Johnson 1a86c34026 * On most files: re-enable $IdPath$ as $Id$, and enable Id keyword expansion. 20 years ago
Peter Johnson 62f3ab6e15 Hide details of yasm_arch_module structure, instead creating wrapper macro 21 years ago
Peter Johnson 742d8359be Fix expression handling of unary NOT (~ in nasm syntax) operator. 21 years ago
Peter Johnson 55438b7229 Massive libyasm / module interface update - Phase 1 21 years ago
Peter Johnson 616be0ba09 Add yasm_expr_extract_wrt() to separate portions of WRT expression. 22 years ago
Peter Johnson ccd17aa131 When changing a section start into a start-based expression, use the 22 years ago
Peter Johnson aba2804476 Fix bug in edge case of expr_level_op(): single intnum in expression with 22 years ago
Peter Johnson 13cbbfcb4a Add support for FAR call/jmp. Because of the jmp label, label equ seg:off 22 years ago
Peter Johnson 16c09e4b41 Add lindex parameter to yasm_intnum_calc(), and add error messages for SEG, 22 years ago
Peter Johnson cfc6bf0ded Clean up and simplify libyasm.h options and symbol visibility: 22 years ago
Peter Johnson a682e85bd3 Use yasm__mergesort() in expr.c and use correct xmalloc/xfree in mergesort.c. 22 years ago
Peter Johnson 0786a76895 Make libyasm a "real" library, including installing header files. 22 years ago
Peter Johnson 84ee559be7 The Great Renaming (prefixing with yasm_), Part 2: allocation functions. 22 years ago
Peter Johnson d9f68d6d4b Unmodularize errwarn, while making key errwarn functions replaceable. 22 years ago
Peter Johnson a2e07e1e10 The Great Renaming (prefixing with yasm_), Part 1. 22 years ago
Peter Johnson b1faf6329c Relicense under 2-clause BSD license. 22 years ago
Peter Johnson 9f6cb6783f Modularize errwarn. gettext()-ize in errwarn, not in every module, eliminating 22 years ago
Peter Johnson 2f19ce4ecd Delete last of global variables by making a line manager and passing around 22 years ago
Peter Johnson d6f22c3fce Dynamically load all modules (preloading some of the default ones). 22 years ago
Peter Johnson 4c3bb4a7cc Get rid of expr_xform_neg_tree(), integrating its functionality into 22 years ago
Peter Johnson fab557b414 Add expr_extract_symrec() to assist in performing relocation output. 22 years ago
Peter Johnson 4561686fda Comment spacing fix. 22 years ago
Peter Johnson 920f11a0e5 Add the ability to add an additional transformation function into the execution 22 years ago
Peter Johnson de3fb86f35 expr_level_op(): Pull up IDENT-EXPR as well as EXPR-IDENT subtrees. 22 years ago
Peter Johnson 6591a155d0 Check for circular equ references (Bug#8). 22 years ago
Peter Johnson a3a9fd2aa0 Completely revamp how label resolution is done (part of Bug#6). Now calculates 22 years ago
Peter Johnson 090a25b8d4 Rename intnum_new_int to intnum_new_uint, and add new signed version of 22 years ago
Peter Johnson c5ef1bf2dc Eliminate duplicate code for callbacks from expr_expand_labelequ() by moving 23 years ago
Peter Johnson 3320945f95 Massive restructuring of lexing and parsing (NASM-compatible parser). 23 years ago
Peter Johnson 0703225136 A number of fixes to float and integer handling on the output side: 23 years ago
Peter Johnson 0d91497dd1 Have symrec manage all symbols, not just the ones in the symbol table. 23 years ago
Peter Johnson f8bfa83597 Make expr_print() take a const expr. 23 years ago
Peter Johnson a6f0bff972 Splint cleanups: expr_copy_* don't take a NULL, so they can't return NULL. 23 years ago
Peter Johnson c738bd3f9d Recursively expand EQU's. 23 years ago
Peter Johnson adfc2e10c9 Add expr_get_floatnum(). 23 years ago
Peter Johnson d85e7014a8 Binary object format output! Lots of structural changes needed, particularly 23 years ago
Peter Johnson 4f7daa4d39 Fix issue with how symrec's are handled when an expression is copied: old code 23 years ago
Peter Johnson e23d88b957 Make resolve_label() take a symrec * instead of a section * and bytecode *. 23 years ago
Peter Johnson 3f2186c1bf Change from current file/line dual storage to a monotonically-increasing line 23 years ago
Peter Johnson 825eaa5823 Massive cleanup of debugging output (via _print() functions). All now take 23 years ago
Peter Johnson b1257a7992 Bugfix in expr_copy_except(): could allocate less than 2 terms of space (eg, 23 years ago
Peter Johnson 29f7d9a917 New function: expr_get_symrec(). 23 years ago
Peter Johnson d6d0cb8785 Add symrec_delete() for deleting non-table symbols. Use it from expr_delete(). 23 years ago
Peter Johnson 8178f883a5 Modify so that almost everything passes LCLint with the options in lclint.sh. 23 years ago
Peter Johnson d7fe402fb9 Split away x86-specific parts of expression handling (eg, effective address -> 23 years ago
Peter Johnson a7ac50c918 Add coretype.h, make util.h do a lot more, use util.h to simplify include 23 years ago
Peter Johnson 79e945c33c Optimize expression building a bit in expr_new() by eliminating IDENT's here. 23 years ago
Peter Johnson 00788fa80c Fix errors found in expr_level_op() and checkea_calc_displen() by new test 23 years ago
Peter Johnson 10fa8fadc1 Correctly process 32-bit memory expressions in expr_checkea(). 23 years ago
Peter Johnson 4d95de5161 Plug memory leaks, and enhance finding later ones with *_delete functions. 23 years ago