asm-Code wird nicht übersetzt

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
lzuser
Beiträge: 97
Registriert: Sa 20. Jun 2009, 16:00
OS, Lazarus, FPC: Win10 20H2, Laz 2.0.8 auch Linux Mint Mate 20, Laz 2.0.6
CPU-Target: 64Bit

asm-Code wird nicht übersetzt

Beitrag von lzuser »

Win10, Laz1.6
Ich übertrage einen Funktionen-Compiler von Del6 nach Laz1.6.
Eine Funktion mit asm wird nicht übersetzt: Fatal: Selected assembler reader not supported

Code: Alles auswählen

 
function ArcTan2(Y, X: Extended): Extended;
asm
        FLD     Y
        FLD     X
        FPATAN
        FWAIT
end;
 

Mit der Fehlermeldung zu "asm" kann ich nichts anfangen.
Muss ich irgendwas zusätzlich unter uses einbinden?
Kann man das evtl. anders realisieren?
Danke für eure Hilfe.

Horst_h
Beiträge: 72
Registriert: Mi 20. Mär 2013, 08:57

Re: asm-Code wird nicht übersetzt

Beitrag von Horst_h »

Hallo,

Hast DU auf Intel Syntax umgestellt?
http://www.freepascal.org/docs-html/3.0 ... ogsu3.html
sollte nicht eine assembler; noch dahinter?

Code: Alles auswählen

 
//Ganz am Anfang
{$ASMMODE INTEL}
 
uses .....
//und dann
function ArcTan2(Y, X: Extended): Extended;assembler;


Gruß Horst

Mathias
Beiträge: 6194
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: asm-Code wird nicht übersetzt

Beitrag von Mathias »

Hast DU auf Intel Syntax umgestellt?

Sein Code wird auch im att-Modus übersetzt.
Anscheinend sind im Intel und att - Modus die Mathe-Coprocessor-Befehle die selben.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

lzuser
Beiträge: 97
Registriert: Sa 20. Jun 2009, 16:00
OS, Lazarus, FPC: Win10 20H2, Laz 2.0.8 auch Linux Mint Mate 20, Laz 2.0.6
CPU-Target: 64Bit

Re: asm-Code wird nicht übersetzt

Beitrag von lzuser »

Code: Alles auswählen

Hast DU auf Intel Syntax umgestellt?
sollte nicht eine assembler; noch dahinter?


Beides war nötig. Jetzt wird übersetzt.
Vielen Dank.

Antworten