Navigation
« 

Anonymous




Register
Login
« 
« 

Amiga Future

« 

Community

« 

Knowledge

« 

Last Magazine

The Amiga Future 167 was released on the March 5th.

The Amiga Future 167 was released on the March 5th.
The Amiga Future 167 was released on the March 5th.

The Amiga Future 167 was released on the March 5th.
More informations

« 

Service

« 

Search




Advanced search

Unanswered topics
Active topics
« 

Social Media

Twitter Amigafuture Facebook Amigafuture RSS-Feed [german] Amigafuture RSS-Feed [english] Instagram YouTube Patreon WhatsApp
« 

Advertisement

Amazon

Patreon

« 

Partnerlinks

Amiga Future News Portal

Choose the language for the News (current shown in english): Show news in german EN
Back to previous page


vasm 1.8a released

Published 14.08.2017 - 08:49 by AndreasM

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/

Back to previous page