FPC LLVM

Für sonstige Unterhaltungen, welche nicht direkt mit Lazarus zu tun haben

FPC LLVM

Beitragvon Warf » 1. Jun 2018, 11:15 FPC LLVM

Hey ho,

da der wiki artikel von vor 2 Jahren ist wollte ich hier mal fragen, weiß einer von euch über den Status vom LLVM target für den FPC? Ist das schon im trunk? Und falls ja, funktioniert es schon annehmbar? Und gibt es eventuell schon eine grobe vorstellung mit welcher stable version es geliefert werden soll?

Wollte mal ein paar experimente machen, dafür muss ich nur wissen ob der spaß schon benutzbar ist, finde allerdings nicht sonderlich viel Information dazu. Wäre schön wenn mir hier jemand mit Erfahrung damit sich melden könnte.
Warf
 
Beiträge: 961
Registriert: 23. Sep 2014, 16:46
Wohnort: Aachen
OS, Lazarus, FPC: Mac OSX 10.11 | Win 10 | FPC 3.0.0 | L trunk | 
CPU-Target: x86_64, i368, ARM
Nach oben

Beitragvon mischi » 1. Jun 2018, 23:08 Re: FPC LLVM

Warf hat geschrieben:Hey ho,

da der wiki artikel von vor 2 Jahren ist wollte ich hier mal fragen, weiß einer von euch über den Status vom LLVM target für den FPC? Ist das schon im trunk? Und falls ja, funktioniert es schon annehmbar? Und gibt es eventuell schon eine grobe vorstellung mit welcher stable version es geliefert werden soll?

Wollte mal ein paar experimente machen, dafür muss ich nur wissen ob der spaß schon benutzbar ist, finde allerdings nicht sonderlich viel Information dazu. Wäre schön wenn mir hier jemand mit Erfahrung damit sich melden könnte.

Den Compiler kann man in trunk mit folgendem Befehl erzeugen:

make -C compiler clean all LLVM=1

rtl und packages gehen noch nicht. Irgendwo kracht es noch, wenn man "make all LLVM=1" eingibt.
MiSchi macht die fink-Pakete
mischi
 
Beiträge: 204
Registriert: 10. Nov 2009, 18:49
OS, Lazarus, FPC: macOS, 10.13, lazarus 1.8.x, fpc 3.0.x | 
CPU-Target: 32Bit/64bit
Nach oben

Beitragvon Warf » 2. Jun 2018, 12:49 Re: FPC LLVM

Also alles in allem immer noch sehr unausgereift. Aber danke, auf make -C compiler clean all LLVM=1 wär ich nicht gekommen.
Weißt du zuvällig auch welche LLVM version getargetted wird (3.x, 4, 5 oder 6)
Warf
 
Beiträge: 961
Registriert: 23. Sep 2014, 16:46
Wohnort: Aachen
OS, Lazarus, FPC: Mac OSX 10.11 | Win 10 | FPC 3.0.0 | L trunk | 
CPU-Target: x86_64, i368, ARM
Nach oben

Beitragvon mischi » 3. Jun 2018, 09:03 Re: FPC LLVM

Warf hat geschrieben:Also alles in allem immer noch sehr unausgereift. Aber danke, auf make -C compiler clean all LLVM=1 wär ich nicht gekommen.
Weißt du zuvällig auch welche LLVM version getargetted wird (3.x, 4, 5 oder 6)

Nicht wirklich. Ich glaube, dass auf meinem Mac Version 4 läuft, kann mich aber auch täuschen.
MiSchi macht die fink-Pakete
mischi
 
Beiträge: 204
Registriert: 10. Nov 2009, 18:49
OS, Lazarus, FPC: macOS, 10.13, lazarus 1.8.x, fpc 3.0.x | 
CPU-Target: 32Bit/64bit
Nach oben

Beitragvon Warf » 3. Jun 2018, 18:19 Re: FPC LLVM

So ne ganz dumme frage, wenn ich den compiler mit LLVM=1 gebaut habe, und ein simples programm (ohne packages, etc.) kompilieren will:
Code: Alles auswählen
program test;
begin
  WriteLn('Hello World!');
end.


Wie kompiliere ich das zu LLVM? Ich habe es mit -Pllvm probiert, das hat aber nicht funktioniert. (Bytecode oder LLVM language ist mir egal). Bei fpc -h steht noch nichts von LLVM.

PS: so wie es ausschaut wird irgendwass zwichen LLVM 3.3 und 4.0 getargetted, zumindest von den commit messages zu schließen. Mit LLVM 4 kann man also nichts falsch machen
Warf
 
Beiträge: 961
Registriert: 23. Sep 2014, 16:46
Wohnort: Aachen
OS, Lazarus, FPC: Mac OSX 10.11 | Win 10 | FPC 3.0.0 | L trunk | 
CPU-Target: x86_64, i368, ARM
Nach oben

Beitragvon mischi » 3. Jun 2018, 21:45 Re: FPC LLVM

Warf hat geschrieben:So ne ganz dumme frage, wenn ich den compiler mit LLVM=1 gebaut habe, und ein simples programm (ohne packages, etc.) kompilieren will:
Code: Alles auswählen
program test;
begin
  WriteLn('Hello World!');
end.


Wie kompiliere ich das zu LLVM? Ich habe es mit -Pllvm probiert, das hat aber nicht funktioniert. (Bytecode oder LLVM language ist mir egal). Bei fpc -h steht noch nichts von LLVM.

Man kann zwar den Compiler bauen, aber hat damit noch keine rtl. Writeln kann deshalb schon mal nicht gehen. Ob überhaupt der Start- und Beenden-Code läuft, weiss ich nicht. Zum Setzen der Variablen llvm muss man beim Aufruf von fpc die Option -d verwenden, also "fpc -dllvm YourCode.pas". Eventuell braucht es noch die Option "-Fullvm". Da alles noch sehr neu und nicht komplett unterstützt ist, wird vermutlich vor allem an dem Feature gearbeitet und noch nicht an der Dokumentation.
MiSchi macht die fink-Pakete
mischi
 
Beiträge: 204
Registriert: 10. Nov 2009, 18:49
OS, Lazarus, FPC: macOS, 10.13, lazarus 1.8.x, fpc 3.0.x | 
CPU-Target: 32Bit/64bit
Nach oben

Beitragvon Warf » 4. Jun 2018, 00:27 Re: FPC LLVM

mischi hat geschrieben:Man kann zwar den Compiler bauen, aber hat damit noch keine rtl. Writeln kann deshalb schon mal nicht gehen. Ob überhaupt der Start- und Beenden-Code läuft, weiss ich nicht. Zum Setzen der Variablen llvm muss man beim Aufruf von fpc die Option -d verwenden, also "fpc -dllvm YourCode.pas". Eventuell braucht es noch die Option "-Fullvm". Da alles noch sehr neu und nicht komplett unterstützt ist, wird vermutlich vor allem an dem Feature gearbeitet und noch nicht an der Dokumentation.


Achse ich hatte gehofft das es wenigstens schon die System Unit gäb
Warf
 
Beiträge: 961
Registriert: 23. Sep 2014, 16:46
Wohnort: Aachen
OS, Lazarus, FPC: Mac OSX 10.11 | Win 10 | FPC 3.0.0 | L trunk | 
CPU-Target: x86_64, i368, ARM
Nach oben

• Themenende •

Zurück zu Dies und Das



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

porpoises-institution
accuracy-worried