Zweck
Definiert die beabsichtigte Zielumgebung
Syntax
Beschreibung
Die Pseudooperation .Maschine wählt die richtigen mnemonischen Anweisungsgruppen für die Zielmaschine aus. Sie enthält Symboltabelleninformationen, die für die Verwendung des Linkage-Editors erforderlich sind. Die Pseudooperation .Maschine überschreibt die Einstellung des Flags -m des Befehls als , das auch verwendet werden kann, um die mnemonischen Zeichen für Anweisungen anzugeben, die für die Zielmaschine festgelegt wurden.
Die Pseudooperation .Maschine kann im Quellenprogramm mehrfach auftreten. Der durch eine Pseudooperation .Maschine angegebene Wert überschreibt jeden Wert, der durch eine frühere Pseudooperation .Maschine angegeben wurde. Es ist nicht erforderlich, die erste Pseudooperation .Maschine am Anfang eines Quellenprogramms zu platzieren. Wenn am Anfang eines Quellenprogramms keine Pseudooperation .Maschine auftritt und das Flag -m nicht mit dem Befehl als verwendet wird, wird der Standardassemblierungsmodus verwendet. Der Standardassemblierungsmodus wird durch die erste Pseudooperation .Maschine überschrieben.
Wenn eine .Maschine -Pseudo-Operation einen ungültigen Wert angibt, wird ein Fehler gemeldet. Als Ergebnis wird der letzte gültige Wert, der durch den Standardmoduswert, das Flag -m oder eine vorherige Pseudooperation .Maschine angegeben wird, für den Rest der Anweisungsvalidierung im Assembler verwendet.
Parameter
| Element |
Beschreibung |
| StringConstant |
Gibt den Baugruppenmodus an Bei diesem Parameter muss die Groß-/Kleinschreibung nicht beachtet werden und er kann einen beliebigen Wert haben, der mit dem Flag -m in der Befehlszeile angegeben werden kann. Gültige Werte, eingeschlossen in Anführungszeichen, sind:
- Nullzeichenfolge ("") oder nichts
- Gibt den Standardbaugruppenmodus an. Ein Quellenprogramm kann nur Anweisungen enthalten, die sowohl für die POWER ® -Produktfamilie als auch für PowerPC®gelten. Jede andere Anweisung verursacht einen Fehler.
- Push
- Sichert den aktuellen Baugruppenmodus im Pushdown-Stapel im Baugruppenmodus.
- POP
- Entfernt einen zuvor gespeicherten Wert aus dem Pushdown-Stapel für den Assemblierungsmodus und stellt den Assemblierungsmodus auf diesen gespeicherten Wert zurück.
Anmerkung: Die beabsichtigte Verwendung von Push und Pop ist innerhalb von Include-Dateien, die den aktuellen Assemblierungsmodus ändern. .machine "push"in der eingeschlossenen Datei verwendet werden, bevor der aktuelle Baugruppenmodus durch einen anderen .Maschinegeändert wird. In ähnlicher Weise .machine "pop"am Ende der eingeschlossenen Datei verwendet werden, um den Eingabebaugruppenmodus wiederherzustellen. Der Versuch, mehr als 100 Werte im Pushdown-Stack im Assemblierungsmodus zu halten, führt zu einem Assemblierungsfehler. Die Pseudo-Ops.machine
"push"und.machine "pop"werden paarweise verwendet.
- Ppc
- Gibt die allgemeine PowerPC®, 32-Bit-Modus, an. Ein Quellenprogramm kann nur 32-Bit-Anweisungen für die allgemeine Architektur von PowerPC® enthalten. Jede andere Instruktion verursacht einen Fehler.
- ppc64
- Gibt den PowerPC® 64-Bit-Modus an. Ein Quellenprogramm kann nur PowerPC 64-Bit-Anweisungen enthalten. Jede andere Instruktion verursacht einen Fehler.
- COM
- Gibt den Schnittpunktmodus der POWER®-Familie und der PowerPC® an. Ein Quellenprogramm kann nur Anweisungen enthalten, die sowohl für die POWER ® -Produktfamilie als auch für PowerPC®gelten. Jede andere Anweisung verursacht einen Fehler.
- PWR
- Gibt die Architektur der POWER®-Familie und den Implementierungsmodus der POWER®-Familie an. Ein Quellprogramm kann nur Anweisungen für die POWER®-Familien-Implementierung der POWER®-Familienarchitektur enthalten. Jede andere Instruktion verursacht einen Fehler.
- pwr2 oder pwrx
- Architektur der POWER®-Familie, POWER2™. Ein Quellenprogramm kann nur Anweisungen für die POWER2™ -Implementierung der POWER ® -Architektur enthalten. Jede andere Instruktion verursacht einen Fehler.
- pwr4 oder 620
- Gibt den Modus POWER4 an. Ein Quellenprogramm kann nur Anweisungen enthalten, die mit dem POWER4 -Prozessor kompatibel sind.
- pwr5
- Für AIX® 5.3 und höher, POWER®-Familienarchitektur, POWER5™. Ein Quellenprogramm kann nur Anweisungen für die POWER5™ -Implementierung der POWER ® -Architektur enthalten. Jede andere Instruktion verursacht einen Fehler.
- pwr5x
- Gibt den Modus POWER5+™ an. Ein Quellenprogramm kann nur Anweisungen enthalten, die mit dem Prozessor POWER5+™ kompatibel sind.
|
| Element |
Beschreibung |
| |
- pwr6
- Gibt den POWER6® an. Ein Quellprogramm kann nur Anweisungen enthalten, die mit dem POWER6® kompatibel sind.
- pwr6e
- Gibt den Modus POWER6E an. Ein Quellenprogramm kann nur Anweisungen enthalten, die mit dem POWER6E -Prozessor kompatibel sind.
- pwr7
- Gibt den Modus POWER7 an. Ein Quellenprogramm kann nur Anweisungen enthalten, die mit dem POWER7 -Prozessor kompatibel sind.
- pwr8
- Gibt den Modus POWER8 an. Ein Quellprogramm kann nur Anweisungen enthalten, die mit dem POWER8 kompatibel sind
pwr9
Gibt den POWER9 an. Ein Quellprogramm kann nur Anweisungen enthalten, die mit dem POWER9 kompatibel sind.
pwr10
Gibt den Modus 'Power10' an. Ein Quellprogramm kann nur Anweisungen enthalten, die mit dem POWER10 kompatibel sind.
- any
- Jede unspezifische family/PowerPC® oder Implementierungsart. Dies schließt eine Mischung von Anweisungen aus allen gültigen Architekturen oder Implementierungen ein.
- 601
- Gibt die PowerPC® an, PowerPC® 601 RISC-Mikroprozessor-Modus. Ein Quellprogramm kann nur Anweisungen für die PowerPC®, den PowerPC® 601 RISC-Mikroprozessor, enthalten. Jede andere Instruktion verursacht einen Fehler.
Achtung! Es wird empfohlen, den 601-Assembler-Modus nicht für Anwendungen zu verwenden, die auf zukünftige PowerPC® portiert werden sollen. Für solche Anwendungen sollte der Assemblierungsmodus Kom. oder Ppc verwendet werden.
Der PowerPC® 601 RISC-Mikroprozessor implementiert die PowerPC® sowie einige Befehle der POWER®-Familie, die nicht in der PowerPC® enthalten sind. Dadurch können bestehende Anwendungen der POWER®-Familie mit akzeptabler Leistung auf PowerPC® ausgeführt werden. Zukünftige PowerPC® werden diese Funktion nicht mehr haben. Der 601-Assembler-Modus kann zu Anwendungen führen, die auf bestehenden Systemen der POWER®-Familie nicht laufen und auf zukünftigen PowerPC® möglicherweise keine akzeptable Leistung aufweisen, da der 601-Assembler-Modus die Verwendung aller vom PowerPC® 601 RISC-Mikroprozessor bereitgestellten Befehle erlaubt.
- 603
- Gibt die PowerPC® -Architektur an, PowerPC 603 RISC-Mikroprozessormodus. Ein Quellenprogramm kann nur Anweisungen für die PowerPC® -Architektur PowerPC 603 RISC Microprocessor enthalten. Jede andere Instruktion verursacht einen Fehler.
- 604
- Spezifiziert die PowerPC®, PowerPC 604 RISC-Mikroprozessor-Modus. Ein Quellprogramm kann nur Befehle für die PowerPC®, PowerPC 604 RISC Microprocessor, enthalten. Jede andere Instruktion verursacht einen Fehler.
- ppc970 oder 970
- Gibt den Modus PPC970 an. Ein Quellenprogramm kann nur Anweisungen enthalten, die mit dem PPC970 -Prozessor kompatibel sind.
- A35
- Gibt den A35-Modus an. Ein Quellenprogramm kann nur Anweisungen für A35enthalten. Jede andere Instruktion verursacht einen Fehler.
|
Beispiele
- Gehen Sie wie folgt vor, um die Zielumgebung auf die Architektur der POWER ® -Produktfamilie einzustellen:
.machine "pwr"
- Um die Zielumgebung auf eine nicht-spezifische family/PowerPC® oder einen Implementierungsmodus einzustellen:
.machine "any"
- Gehen Sie wie folgt vor, um den Standardbaugruppenmodus explizit auszuwählen:
.machine ""
- Das folgende Beispiel einer Assemblerausgabe für ein Codefragment zeigt die Verwendung von.machine "push"und.machine "pop":
push1.s V4.1 04/15/94
File# Line# Mode Name Loc Ctr Object Code Source
0 1 | .machine "pwr2"
0 2 | .csect longname1[PR]
0 3 | PWR2 longna 00000000 0000000a .long 10
0 4 | PWR2 longna 00000004 329e000a ai 20,30,10
0 5 | PWR2 longna 00000008 81540014 l 10, 20(20)
0 6 | .machine "push"
0 7 | .machine "ppc"
0 8 | .csect a2[PR]
0 9 | PPC a2 00000000 7d4c42e6 mftb 10
0 10 | .machine "pop"
0 11 | PWR2 a2 00000004 329e000a ai 20,30,10
0 12 |