vasm released in the 1.8a.
vasm is a portable and retargetable assembler to create linkable objects in various formats or absolute code. Multiple CPU-, syntax and output-modules can be selected.
Many common directives/pseudo-opcodes are supported (depending on the syntax module) as well as CPU-specific extensions.
The assembler supports optimizations (e.g. choosing the shortest possible branch instruction or addressing mode) and relaxations (e.g. converting a branch to an absolute jump when necessary).
Most syntax modules support macros, include directives, repetitions, conditional assembly and local symbols.
Changes:
* Increased number of fast-optimization passes from 50 to 200, as very large sources (> 60000 lines), with lots of branches to optimize, may still have optimization possibilities left after 50 passes.
* Repeat loops with an iterator symbol over an arbitrary sequence of values.
* m68k: New option -sd and directive OPT ON to enable optimizations of absolute references to the small data section into a base register relative addressing mode.
* m68k: New option -opt-jbra and directive OPT OB to convert all absolute jumps to external labels into 32-bit PC-relative branches (68020 and up).
* m68k: OPT O+ in Devpac compatibilty mode does not enable PC-relative optimizations (an explicit OPT A+ is needed).
* m68k: New Apollo Core instructions: PMULA, PMULH, STOREC, UNPACK1632.
* m68k: -m68020up option no longer includes Apollo Core.
* m68k: Devpac OPT Ln (with n=0,1,2,etc. for Atari) is recognized, although it has no effect at the moment.
* m68k: Suppressed index registers ZRn, which are explicitely written in the source, are no longer optimized away.
* PPC: -m option to select the CPU model starts working. By default the instruction set of a 32-bit PPC (G2, G3, G4) with AltiVec is supported.
* x86: Floating point constants (.float, .double) are supported.
* mot-syntax: Optional offset and length arguments for INCBIN (contributed by Andreas Larsson).
* std-syntax: New directives for gas compatibility: .irp and .irpc.
* bin-output: Fixed another sign-problem while padding between sections.
* hunk-output: Print source line for undefined symbols, when generating an executable.
* vobj-output: Ignore all internal/local symbols, except "*tmpNNNNNNNN*", which is required for certain relocations.
http://sun.hasenbraten.de/vasm/
Navigation
«
«
«
Amiga Future
«
Community
«
Knowledge
«
Last Magazine
«
Service
«
Search
«
Social Media
«
Advertisement
«
Partnerlinks
Amiga Future News Portal
Back to previous pagevasm 1.8a released
Published 14.08.2017 - 08:49 by AndreasM
Back to previous page