Llvm

Robustes System zur Entwicklung neuer mittlerer sprachunabhängiger Analyse und Optimierungen aller Art
Jetzt downloaden

Llvm Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • Freeware
  • Preis:
  • FREE
  • Name des Herausgebers:
  • LLVM Team
  • Website des Verlags:
  • http://llvm.org/
  • Betriebssysteme:
  • Mac OS X
  • Dateigröße:
  • 33.8 MB

Llvm Stichworte


Llvm Beschreibung

Robustes System zur Entwicklung neuer mittelständischer Sprachunabhängigkeit und Optimierungen aller Art LLVM (virtuelles Machine mit niedrigem Niveau) ist ein robustes System, das besonders gut geeignet ist, um neue mittelständische Sprachunabhängige Analysen und Optimierungen aller Art zu entwickeln, einschließlich derjenigen, die umfangreiche interprozedelle Analysen erfordern. LLVM ist auch ein großartiges Ziel für die Entwicklung der Front-End-Entwicklung für herkömmliche oder Forschungsprogrammiersprachen, einschließlich derjenigen, die Kompilität, Verbindungszeit oder Laufzeitoptimierung für eine effektive Implementierung, ordnungsgemäße Tail-Anrufe oder Müllsammlung erfordern. Virtuelles Machine mit niedrigem Niveau (LLVM) ist: · Eine Kompilierungsstrategie, die entwickelt wurde, um eine effektive Programmoptimierung in der gesamten Lebensdauer eines Programms zu ermöglichen. LLVM unterstützt eine effektive Optimierung bei der Kompilierzeit, Verknüpfungszeit (insbesondere interprocedural), Laufzeit und Offline (dh nach der Installation von Software), während er installiert ist, während Sie mit den Entwicklern transparent und die Kompatibilität mit vorhandenen Build-Skripts aufrechterhalten. · Eine virtuelle Anweisungsset - LLVM ist eine Low-Level-Objektcode-Darstellung, die einfache RISC-ähnliche Anweisungen verwendet, bietet jedoch umfangreiche, sprachunabhängige Informationsinformationen und DataFlow (SSA) Informationen über Operanden. Diese Kombination ermöglicht anspruchsvolle Umwandlungen im Objektcode, während er ausreichend leicht genug ist, um an der ausführbaren Datei angeschlossen zu werden. Diese Kombination ist der Schlüssel, um Verknüpfungszeit, Laufzeit- und Offline-Transformationen zu ermöglichen. · Eine Compiler-Infrastruktur - LLVM ist auch eine Sammlung von Quellcode, die die Sprache und die Kompilierungsstrategie implementiert. Die Primärkomponenten der LLVM-Infrastruktur sind ein GCC-basierter C- und C ++-Frontend, ein Link-Time-Optimierungsrahmen mit einem wachsenden Satz globaler und interprozingender Analysen und Transformationen, statische Back-Enden für X86, Arm, Daumen, IA -64, Alpha, SPARC, X86-64, PowerPC 32/64, MIPS- und CELLSPU-Architekturen, ein Back-Ende, das einen tragbaren C-Code ausgibt, und ein Just-in-Time-Compiler für X86, X86-64, PowerPC 32/64 Prozessoren und ein Emitter für MSIL. · LLVM impliziert nicht Dinge, die Sie von einer virtuellen Hochstufe erwarten würden. Es erfordert keine Garbage-Sammlung oder Run-Time-Code-Generierung (in der Tat, LLVM ist ein großartiger statischer Compiler!). HINWEIS Hier sind einige wichtige Funktionen von "llvm": · Frontende für C, C ++, FORTRAN und ADA basierend auf den Parsern der GCC 4.2.1. Sie unterstützen die Ansi-Standard-C- und C ++ - Sprachen-Sprachen in demselben Grad, in dem GCC sie unterstützt. Zusätzlich werden viele GCC-Erweiterungen unterstützt. · Eine stabile Implementierung des LLVM-Anweisungssatzes, der sowohl die Online- als auch die Offline-Code-Darstellung zusammen mit Montage (ASCII) und Bytecode (binäre) Lesegeräte und -schreiber sowie einem Prüfer dient. · Ein leistungsstarkes Pass-Management-System, das automatisch (einschließlich Analyse, Transformation und Code-Generation Pässe), basierend auf ihren Abhängigkeiten und Pipelines für Effizienz. · Eine große Auswahl an globalen Skalaroptimierungen. · Ein Verbindungszeit-Interprocedural-Optimierungsrahmen mit einem reichen Satz von Analysen und Transformationen, einschließlich anspruchsvoller Ganzprogrammzeigeranalyse, Anrufdiagrammkonstruktion und Unterstützung für profilgeführte Optimierungen. · Ein leicht zurückhaltender Codegenerator, der derzeit X86, X86-64, PowerPC, PowerPC-64, Arm, Daumen, Sparc, Alpha und IA-64 unterstützt. · Ein Just-In-Time-Code-Generierungssystem (JIT), das derzeit X86, X86-64, PowerPC und PowerPC-64 unterstützt. · Unterstützung für das Erzeugen von Dwarf-Debugging-Informationen. · Ein C-Back-Ende nützlich zum Testen und zum Erzeugen von nativem Code auf anderen Zielen als den oben aufgelisteten Zielen. · Ein Profilsystem ähnlich der Gprof. · Ein Testrahmen mit einer Reihe von Benchmark-Codes und Anwendungen. · APIs- und Debugging-Tools, um die schnelle Entwicklung von LLVM-Komponenten zu vereinfachen.


Llvm Zugehörige Software

Fudge

Ersetzen Sie echte Objekte durch Fakes (Mocks, Stubs usw.) beim Testen ...

150 76 KB

Herunterladen