LLVM 3.3 i Clang 3.3 ze wsparciem AArch64 oraz nowym wektoryzatorem SLP

LLVM 3.3 i Clang 3.3 ze wsparciem AArch64 oraz nowym wektoryzatorem SLP

    przez -
    6 370
    LLVM
    Chris Lattner ogłosił wydanie LLVM 3.3 razem z front-end kompilatora dla języków C, C++ oraz Objective-C Clang 3.3. Projekt LLVM obejmuje narzędzia takie jak kompilator języków C/C++/Objective-C – Clang, bibliotekę compiler-rt (“compiler-rt” Runtime Library), niskopoziomowy debugger LLDB, biblioteka standardowa libc++ dla C++ i VMKit JVM używająca LLVM dla kompilacji statycznej i JIT. Celem projektu jest stworzenie alternatywy dla kompilatora z projektu GCC. Prace nad projektami sponsorowane są przez Apple, a wszystko wydawane jest na licencji BSD.

    Zmiany, jakie zaszły:

    • Pojawił się backend procesora graficznego AMD R600
    • Dodano wsparcie dla AArch64
    • Dodano nowy wektoryzator (Vectorizer): Superword-Level Parallelism
    • Udoskonalono wektoryzer pętli (Loop Vectorizer), czyli zamiana operacji w pętli na operacje wektorowe (wiele na raz), który został wprowadzony w LLVM 3.2 i Clang 3.2
    • Kompilator Clang C/C++ jest zgodny ze standardem C++11
    • Udoskonalono mikroarchitekturę x86, np. dodano obsługę AVX2