llvm -march target für Apple A12 A14 und M1

Piktogramm

Admiral
Registriert
Okt. 2008
Beiträge
8.895
Moin,
ich suche mir gerade ein Ast in Apples Developer Dokumentation, aber ich finde keine Bezeichnung für die llvm -march targets für Apples A bzw. M Prozessoren. Alles was ich finde sind Anleitungen wie "da kannst du das in X-Code klicken". Könnte mir da bitte jemand aushelfen?
 
Eine Mail / Supportanfrage an Apple schicken.

Per Kommandozeile die möglichen Argumente für den Compiler durch --help oder ähnliche Mechanismen herausfinden (--march list ? , --print-supported-cpus )

Lt. "google-fu" liefert Apple einen eigenen Compiler in XCode aus, der sich vom "Upstream" / Hauptprojekt LLVM und Clang unterscheidet.
Apple verwendet meist BSD ähnliche Lizenzen und muss ihre eigenen Änderungen im Quellcode dadurch nicht veröffentlichen und dem Hauptprojekt übermitteln.

Q: zB llvm-dev Mailingliste (hier v. 2013)

Ansonsten sollten die "Basis" - Programming-Guides der Hersteller bzw. von ARM selbst eventuell auch funktionieren.
zB Apple M = "NXP LPC18A1" = Cortex-M3 = -march=thumb

Bei Apple habe ich für deren Hardware noch keine öffentlichen "Entwickler"-PDFs für ihre CPUs / Komponenten gefunden - also welche Befehle ihre Chips können usw. - was wichtig für LLVM / Compilerentwickler ist.
 
Danke für die Antwort!

Die normalen Architekturtargets für ARM bringen mir nichts, da ich mal schauen wollte wo der Unterschied zwischen standard ARM 8.2 und Apple ISA Anpassungen ausschaut. Wenn aber Apple die interessanten Teile im Zweifelsfall eh nicht im öffentlichem llvm Zweig pflegt hat sich das sowieso.
 
aarch64?
Ergänzung ()

Edit:
Piktogramm schrieb:
Die normalen Architekturtargets für ARM bringen mir nichts, da ich mal schauen wollte wo der Unterschied zwischen standard ARM 8.2 und Apple ISA Anpassungen ausschaut.
Sorry, hatte ich überlesen. Keine Ahnung, ob es da was Apple-spezifisches gibt.
 
Zuletzt bearbeitet:
@Piktogramm
Es gab (oder gibt noch) ein Projekt, das im LLVM die Erkennung der Apple-SoCs bis hin zum A13 bewerkstelligen sollte. Ich habe aber nicht verfolgt, ob das inzwischen inkorporiert wurde.

Dann gibt es noch arm64e, falls Du noch nicht selber drüber gestopert bist...
 
@smalM
Danke für den Hinweis, ich habe es mir nicht weiter angeschaut. Die eigene Neugier nimmt ab, wenn ich für Informationsfetzen Stunden investieren muss.

ARM64e ist aber ein guter Hinweis. Gerade die Erweiterung für Javascript könnte eine der Komponenten sein, wieso Apples Geräte auf Webbenchmarks derart gut reagieren.
 
Zurück
Oben