Repository navigation
Bugfixes:
- bin format, absolute segments: if segment wasn't referenced directly,
but by the SEG operator, invalid code was generated; see absseg4.asm. - macro arguments: curly braces now handled Masm-compatible; see
macro25.asm. - operator MOD returned wrong results for negative operands; see mod1.asm,
mod2.asm. - operator '/': 64-bit division generally assumed signed operands, hence
results were wrong if dividend was unsigned with bit 63 set. - elf format: in symbol table, size wasn't set for data publics.
- error "initializer magnitude too large" occured if the negative offset
of a struct member was referenced as 8-bit value; see struct44.asm &
struct45.asm. - option -elf64: addends calculation wrong if explicitely defined; see
elf2.asm. - model TINY, predefined symbol @code: changed from _TEXT to DGROUP; see
tinycode.asm. - TYPE operator: returned values != 0 for certain constants defined with
EQU; see types18.asm. - ALIAS directive: alias name wasn't decorated reliably; see alias3.asm.
- non-OMF formats: code buffer was allocated in each pass, causing memory
leaks. - fixed GPF in jwasm: assembling MOV instruction with destination of type
prototype, but without pointer type definition; see pproc.asm. - fixed buffer overflow in listing if EQU defined an alias in 32/64-bit.
Other changes:
- format elf: cmdline option -Zd (dwarf line numbers) supported (limited
to one file). - format elf: added cmdline option -pic{0|1|2}; position-independent code
generation (-pic1) is now the default for elf. - format elf: EXTERNDEF accepts optional EXPORT qualifier; this qualifier
modifies visibility for -pic2. - format elf32: qualifier SECTIONREL redefined for this format; will
return offset relative to GOT. - format elf32: special handling of symbol GLOBAL_OFFSET_TABLE.
- option -pe: .stack directive will set reserved stack space in PE header.
- option -?: exit with errorcode 0 instead of 1.
- format coff: in listing, COMDAT attr. (segments and symbols) is rendered.
- listing: don't print language for non-public items in symbol table.
- extension ASSUME USExx added to (temporarily) switch bitness inside a
segment; see assumex1.asm.