LLVM Apple M4 enablement patch

Apple M4 Support Added To The LLVM Compiler, Confirming Its ISA Capabilities – Phoronix

Apple tarafından derlenen programları ve makineleri kullananlar buraya geçin! Son zamanlarda Apple mühendisleri, Apple M4 işlemci desteğini üstün akış LLVM/Clang derleyicisine -mcpu=apple-m4 hedefi üzerinden ekledi. Ilginç olan şey ise Apple M4’ün ARMv8.7 türetilmiş bir tasarım olarak ortaya çıkması.
Son haftalarda M4’ün ISA yetenekleri etrafında çok spekülasyon yapıldı ve bunun Apple’ın ARMv9 mimarisine dayanan ilk SoC’u olabileceği düşünülüyordu, hatta bazıları ARMv9.4 bile öne sürdüler. Bu yüzden Apple tarafından katkılanmış LLVM derleyici desteğinde M4’ün “ARMv8.7” tabanlı tasarım olarak eklenmesi bir sürpriz olarak geldi. Ancak patika boyunca kazı yaparken, durumu açıklayan bu kod yorumu var: “Teknik olarak apple-m4 ARMv9.2a’dır, ama LLVM’nin tuhaflığı, Arm ARM’ye göre isteğe bağlı olan SVE’yi gerektiren 9.0’ı tanımlar. SVE, çekirdek tarafından desteklenmediğinden ARMv8.7a, diğer en yakın seçenektir.”

Yani işte Apple’dan düz bir şekilde… Apple M4, ARMv9.2a tabanlı bir tasarımdır. Ancak, SVE (ve SVE2) desteği yok. Apple M4’ün Scalable Vector Extensions’ı desteklediği söylentileri vardı, ancak tekrar bu Apple kod yorumu ve LLVM derleyicisi tarafından ortaya çıkarılan ilgili ISA ile, SVE/SVE2 Apple M4 için mevcut değil.

Açığa çıkarılan ARMv8.7a’nın üzerindeki uzantılar AES, SHA2, SHA3, FP16, FP16FML, SME, SME2, SMEF64F64 ve AEK_SMEI16I64’tür. Apple M4 desteği -mcpu=apple-m4 ile, Cuma gecesi LLVM Clang 19 kod tabanının bir parçası olarak birleştirildi. Apple M4, Mayıs ayında duyuruldu ve başlangıçta Apple’ın yeni iPad Pro donanımında bulundu, ancak zamanla daha fazla cihazda bulunacak. Artık Apple’ın neyin peşinde olduğunu daha iyi anlıyorsunuz, öyle değil mi? Bu gelişmelerin ardından neler hissediyorsunuz? Yorumlarda bizimle paylaşabilirsiniz!