Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
LLVM und amiblitz
#1
Ich wollte ja schon länger auch mal nen crosscompiler von dem 68k output machen zu LLVM. vielleicht gibt es da auch sowas und andre 68k nutzer(vieleicht aus dem embedded markt) haben daran auch interesse. so muss ich nicht alles alleine machen. aber um den von AB erzeugten code zu übersetzen wäre nicht viel arbeit. nur für die libs übersetzen, wäre mehr arbeit.

<!-- m --><a class="postlink" href="http://de.wikipedia.org/wiki/LLVM">http://de.wikipedia.org/wiki/LLVM</a><!-- m -->

blos wie sieht es da aus, bei blackbirds geliebten OS4. Und bei AROS ?. Haben die inzwischen eine unterstützung dafür, so dass man mal probieren kann ?. bei aros habe ich noch gesehen, dass es ein bounty für LLVM gibt. aber ob da was
Zitieren
#2
Für AROS ABI V1 wurde der Port-LLVM-Phase1-Bounty vollendet.

Hier steht noch einiges (nicht nur AROS-spezifisches) dazu:
<!-- m --><a class="postlink" href="http://en.wikibooks.org/wiki/Aros/Developer/LLVM">http://en.wikibooks.org/wiki/Aros/Developer/LLVM</a><!-- m -->
Zitieren
#3
interessant scheint also unter AROS zu laufen. Ich habe mal geschaut, was genau gebraucht wird ist auch nur der LLVM IR Teil. Dass sind die asm ähnlichen Befehle

Hier habe ich mal beispielvergleiche von LLVM IR Code zu X86 asm code gefunden. Da kann man mal sehen, wie umständlich RISC Instruction set ist.

<!-- m --><a class="postlink" href="http://llvm.org/devmtg/2013-04/bougacha-slides.pdf">http://llvm.org/devmtg/2013-04/bougacha-slides.pdf</a><!-- m -->

jetzt muss man eben mit einem text parser aus den 68k Befehlen, die LLVM IR Befehle erzeugen. Das reassemblieren dann wieder als 68k assemblieren hat ja schon funktioniert. Nur leider ist das alte Forum weg, ich weis jetzt auch nicht mehr welche Befehlsoptionen ich genommen habe. ALs reassembler war es glaube ich ira. da amiblitz keine jsr (a0) Sprünge macht, hat es auch gut funktioniert. kann natürlich sein, dass es da irgendwelche blitzlibs gibt, die Probleme machen. aber durch thilos includes braucht man nicht mehr so viele blitzlibs, daher kann man auch leicht darauf verzichten, oder die blitzlib notfalls auch ändern.
Zitieren
#4
Bernd,
Das alte Forum ist nicht weg...
Amiforce ist seit geraumer Zeit wieder aktiv, Franz hat sich allerdings dazu entschieden alte Inhalte die AmiBlitz3 betreffen nur noch "lesbar" anzubieten weil es seit dem damaligen Desasters wegen der Ereichbarkeit eben dieses neue Forum gibt....

Die Inhalte sind somit weiterhin lesbar, du müßtest somit einfach nur mal "suchen" Wink
Zitieren
#5
@Bernd

wenn du einen sehr guten disassembler für 68k haben willst verwende ADis http://www.heywheel.com/matthey/Amiga/ADis.lha und/oder auch D68k http://denisy.dyndns.org/d68k/ dies werden momentan wieder bzw noch gepflegt.

Sehe gerade die URL von D68k funktioniert nicht mehr Sad, ich habe die letzte Version V2.11.1 aber gesichtert die kann ich dir zumailen wenn du sie brauchst.
Zitieren
#6
@Bernd

Ich habe jetzt noch die Forum-Seite zum LLVM-Port-Phase1-Bounty gefunden, auf der der Status dieses Ports etwas besser ersichtlich ist:
<!-- m --><a class="postlink" href="http://aros-exec.org/modules/newbb/viewtopic.php?start=30&topic_id=5194&viewmode=flat&order=ASC&type=&mode=0">http://aros-exec.org/modules/newbb/view ... pe=&mode=0</a><!-- m -->

Als Ergänzung bei Interesse...
Zitieren
#7
danke für den link, ich habe da mal gefragt ob es geht und wie man da OS calls aufrufen kann

@Thomas
Ich habe den thread nun gefunden. Ich hatte damals den adis benutzt, dazu gibts nen source, hat gut funktioniert, den kann man dann auch h ändern, damit LLVM IR Code rauskommt.

<!-- m --><a class="postlink" href="http://www.amiforce.de/thread.php?threadid=1702&boardid=4&sid=9qrepd8p6sps1jhcecd0peg121&page=1">http://www.amiforce.de/thread.php?threa ... 121&page=1</a><!-- m -->
Zitieren
#8
@Bernd

Das wäre wirklich genial, wenn da etwas produktives herauskommen würde. Danke für Deine Bemühungen auf alle Fälle!
Zitieren
#9
Es gibt sogar schon so ein ähnliches Projekt zur Emulation. nennt sich libcpu. ist für Emulatoren und CPU emulation gedacht, über LLVM.

<!-- m --><a class="postlink" href="http://www.golem.de/0912/72116.html">http://www.golem.de/0912/72116.html</a><!-- m -->

Hier der source.

<!-- m --><a class="postlink" href="https://www.openhub.net/p/libcpu/commits?page=23&sort=oldest">https://www.openhub.net/p/libcpu/commit ... ort=oldest</a><!-- m -->
Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste