- LLVM ist eine Compiler-Infrastruktur, die Chris Lattner ins Leben rief, um Probleme bestehender Compiler und von GCC zu verbessern, und die 2003 veröffentlicht wurde.
- Zur Wiederverwendung der einzelnen Compiler-Komponenten wurde eine Intermediate Representation definiert.
- Wenn als Frontend eine neue Sprache hinzugefügt wird, können Optimizer und Backend unverändert wiederverwendet werden.
- Das Frontend kann auch separat genutzt werden, um Funktionen zur statischen Programmanalyse zu schreiben.
- Es wurde versucht, LLVM in GCC zu integrieren, was jedoch am Widerstand der Community scheiterte.
- Apple führte LLVM ein und nutzte das neu entwickelte Clang anstelle von GCC.
- Chris Lattner entwickelte bei Apple auch Swift, das anstelle von Objective-C als Standardsprache für Apples Plattformen verwendet wird.
3 Kommentare
Tatsächlich scheint der De-facto-Standard inzwischen eher
clangzu sein. Inzwischen wird es auch von vielen großen Projekten unterstützt.Haben clang und LLVM nicht unterschiedliche Einsatzzwecke?
Es ging darum, dass
clang, ein Frontend, dasllvmverwendet, inzwischen auch in mehreren Open-Source-Projekten anstelle vongcceingesetzt wird. Es ist kein Vergleich zwischen den beiden. Ich denke, es reicht, wenn Sie sich Teil 2 zu denclang-Releases ansehen: https://joone.net/2023/01/…