vasm ist ein RTG Assembler um Verknüpfungen in verschiedenen Formaten oder absoluten Code zu erstellen. Mehrere CPU-, Syntax-und Ausgabe-Module können ausgewählt werden.
Viele gemeinsame Direktiven/Pseudo-Opcodes werden unterstützt (in Abhängigkeit von der Syntax-Modul) sowie ascpu-spezifische Erweiterungen.
Der Assembler unterstützt Optimierungen (zB die Wahl der kürzesten Sprungbefehls oder Adressiermodus) und Erleichterungen (zB Umwandlung eines Abzweigs zu einem absoluten Sprung wenn nötig).
Die meisten Syntax-Module unterstützen Makros, inklusive Direktiven, Wiederholungen, bedingte Assemblierung und lokale Symbole.
Änderungen:
* Neues CPU-Backend für 6809, 6309 und 68HC12.
* Neues Ausgabemodul "cdef" zum Schreiben aller absoluten Symbole als eine Reihe von # define-Anweisungen zur Aufnahme in eine C-Quelle.
* Liest keine gleichnamige Quelldatei aus dem CWD, wenn sich die eigentliche Quelle tatsächlich in einem Unterverzeichnis befindet!
* Zeigt einen Fehler an, wenn kein numerischer Begriff auf ein Basispräfix folgt.
* Zeigt vor dem letzten Durchgang keine Expressionsbewertungsfehler an (z. B. Division durch Null).
* Neue Option -nomsg= zum Deaktivieren bestimmter Informationsnachrichten.
* Definiert ein internes Symbol in Abhängigkeit vom verwendeten Host-Dateisystem (__UNIXFS, __AMIGAFS, __MSDOSFS).
* Absturz bei der Ausgabe von Fehlern aus Dateien mit einem absoluten Pfad behoben.
* m68k: Neue Option -extsd, erlaubt kleine Daten mit 020 erweiterten Adressierungsmodi zuzulassen.
* m68k: Die meisten neuen MOVE.L#x,Dn deaktiviert, Optimierungen von V1.8h für ColdFire, die keine .W- und .B-Operationen unterstützen.
* m68k: Codierung von ([...], ZRn, ...) korrigiert.
* m68k: PFLUSHR-Sofortadressierungsmodus korrigiert.
* m68k: Einige PMOVE reg,<ea> ermöglichten fälschlicherweise sofortige und PC-relative Adressierungsmodi als Ziel zugelassen.
* m68k: Erlaubt A0 und A1 als kleine Datenbankregister (nahe, -sdreg).
* m68k: Externe small-data Symbolreferenzen haben möglicherweise ein signiertes Addend.
* jagrisc: Fügt weitere vordefinierte Bedingungscodes hinzu. Jetzt unterstützt vasm dieselben Bedingungscodes wie der SMAC-Assembler.
* 6502: Verzweigungen zu externen Labels wurden korrigiert.
* 6502: Neue Richtlinie EZP. Wie EQU, bei Verwendung wird jedoch empfohlen, keine Zeropages zu adressieren.
* 6502: -opt-branch kann jetzt auch zwischen BRA und JMP übersetzen / optimieren.
* ARM: Es wurden Probleme bei automatisch gedrehten Sofortwerten behoben. Nun sollten alle möglichen Lösungen gefunden werden.
* ARM: Schwankende Optimierung für ADR / ADRL (-opt-adr) behoben.
* ARM: Der Umgang mit Zeichenfolgen- / Datenanweisungen mit einem einzelnen Zeichen wurde korrigiert.
* ARM: MSR-Statusregister-Bitmaske korrigiert. (Patch von Luna).
* mot-syntax: Der -devpac-Kompatibilitätsmodus erlaubt Punkte ('.') in Labels (-ldots).
* mot-syntax: Absturz beim Lesen eines Label-Ffeldes mit '\' und gefolgt von einem ungültigen Zeichen behoben.
* oldstyle-syntax: -ast ermöglicht * das Starten von Kommentaren in der ersten Spalte.
* oldstyle-syntax: -i funktioniert jetzt auch für Anweisungen ohne Operanden.
* oldstyle-syntax: -ldots erlaubt '.' innerhalb von Bezeichnern.
* oldstyle-syntax: inline- und einline-Direktiven aus der Mot-Syntax hinzugefügt.
* oldstyle-syntax: FCS-Direktive hinzugefügt, die der FCC ähnelt, aber das MSB des letzten Zeichens festlegt.
* madmac-syntax: Fehlende .offset- und .abs-Direktiven hinzugefügt, um einen Offset-Abschnitt zu starten.
* std-syntax: Die Anweisungen .pushsection und .popsection wurden hinzugefügt.
* bin-output: Unterstützung für Apple DOS-Binärdateien, Dragon DOS-Binärdateien und Maschinensprachendateien von Tandy Color Computer hinzugefügt.
* vobj-output: Einige Backends unterstützen größere Abschnittsgrößen, als es ihre Zieladresse zulässt.
http://sun.hasenbraten.de/vasm/
Navigation
«
«
«
Amiga Future
«
Community
«
Knowledge
«
Last Magazine
«
Service
«
Search
«
Social Media
«
Advertisement
«
Partnerlinks
Amiga Future Nachrichten Portal
Back to previous pagevasm 1.8i veröffentlicht
Published 02.10.2020 - 21:35 by AndreasM
Back to previous page