82 Commits (0ea57bf7bfbb841025673398501bb5201c6f9c07)

Author SHA1 Message Date
Peter Johnson aa3e6ff9b9 Change some optimization settings so that imm8 optimizations actually get 19 years ago
Peter Johnson 4024e3b87e Support standalone, segment, and REX prefixes in GAS mode. 19 years ago
Peter Johnson c5a6599d88 * x86bc.c (x86_bc_insn_resolve): Fix loss of precision on yasm_intnum_get_int 19 years ago
Peter Johnson be801e73db * x86arch.h (x86_insn): Combine shift_op, signext_imm8_op, shortmov_op, and 19 years ago
Peter Johnson de5c41dec2 * x86bc.c (yasm_x86__ea_create_expr, yasm_x86__ea_create_imm): Initialize 19 years ago
Peter Johnson 68f8b061c3 * x86expr.c (yasm_x86__expr_checkea): Add address16_op parameter to avoid 19 years ago
Peter Johnson aa2571e22b Preliminary GAS parser. Only a few instructions are supported at present. 19 years ago
Peter Johnson b66cb8d4d4 * x86bc.c (x86_bc_insn_resolve): When handling shift_op, change immlen 19 years ago
Peter Johnson 164f5994a5 * x86bc.c (x86_bc_insn_resolve): Actually support the flag to allow 19 years ago
Peter Johnson b6e591a09d Fix ENTER in BITS 32 mode: it was generating a bogus A16 override. 20 years ago
Peter Johnson 7c23a1e805 Fix free-before-use case in x86 finalize code. Bytecode transformation 20 years ago
Peter Johnson 35304f5427 Refactor some the x86 bytecode handling now that we parse the entire file 20 years ago
Peter Johnson a44fb7746c Move generation of arch instruction bytecodes from on-the-fly during the 20 years ago
Peter Johnson 23e53d41ce Fix #44 by adding support for WRT special symbols (e.g. [sym WRT ..plt] and 20 years ago
Peter Johnson 0bca1b1b91 Make manual size overrides on effective addresses only work if legal; 20 years ago
Peter Johnson cf8c4b16d5 Add relocation information to nasm list format by establishing a common 20 years ago
Peter Johnson 2ac9e732f2 * expr.c (yasm_expr_extract_symrec): Add "relocate" parameter. Use it to 20 years ago
Peter Johnson 1a86c34026 * On most files: re-enable $IdPath$ as $Id$, and enable Id keyword expansion. 20 years ago
Peter Johnson 7e64aca4cd * x86id.re (yasm_x86__parse_insn): Add checking of effective address size. 20 years ago
Peter Johnson 9c5385da27 Correct ordering of legacy prefix and REX prefix for SSE/SSE2 instructions 21 years ago
Peter Johnson 55438b7229 Massive libyasm / module interface update - Phase 1 21 years ago
Peter Johnson 96f8f800b3 Fix support for o64. AMD64 isn't always 32-bit default operand size, so 21 years ago
Peter Johnson 654455dcef Add support for the AMD64 syntax [symbol wrt rip]. This is distinct from 22 years ago
Peter Johnson bfb1ee5b0c Fixed some conversion warnings caused by intnum commit. Missed these due to 22 years ago
Peter Johnson d151392af8 Big output_expr(), intnum_tobytes(), and floatnum_tobytes() changes: 22 years ago
Peter Johnson 93c63b23ec Enhance return values for yasm_x86__expr_checkea() to fully represent the 22 years ago
Peter Johnson 918a2b1857 Fix bad assumption in x86_expr_checkea_getregusage() that was causing bad code, 22 years ago
Peter Johnson 3d04baf33c Bring yasm_x86__bc_print() up-to-date with x86_jmp[rel] changes. 22 years ago
Peter Johnson 8422252781 Rename jmprel->jmp, JMPREL->JMP, JR->JMP, and others, as FAR jumps are not 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 cfc6bf0ded Clean up and simplify libyasm.h options and symbol visibility: 22 years ago
Peter Johnson ddc08a6994 Use system includes instead of local includes. This allows replacement of 22 years ago
Peter Johnson dd1d356936 De-constify yasm_bytecode parameter to yasm_output_expr_func. 22 years ago
Peter Johnson 0caa11ff3b Enable more warnings and perform code cleanups to avoid them. 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 af56335ec8 Add x86-64 effective address support, as well as a couple of tests for it. 22 years ago
Peter Johnson fdb4997a00 Add basic x86-64 support (memory references are not properly handled yet). 22 years ago
Peter Johnson da2a49113a x86_bc_resolve_jmprel(): Plug memory leak. 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 caf89035f8 Remove indent_level global by passing it as a parameter. 22 years ago
Peter Johnson d6f22c3fce Dynamically load all modules (preloading some of the default ones). 22 years ago
Peter Johnson 9d9618eeba Add offset parameter to output_expr functions (needed for relocation support). 22 years ago
Peter Johnson c5bfd97db6 Make bytecode and effaddr "data" extensions more portable by including the 22 years ago
Peter Johnson 9b6b24c054 Add a rex field in x86_insn (and some default initialization/output handling) 22 years ago
Peter Johnson 494ed1738d Make output endian-tolerant by making intnum and floatnum output functions for 22 years ago