Os desenvolvedores da LLVM lançaram a versão 3.1 do seu compilador após um atraso em seus planos. O projeto LLVM criou e desenvolveu um conjunto completo de ferramentas compiladoras e toolchains e incorpora muitos sub-projetos, como o Clang, o compilador C/C++/Objective C, LLDB (menor nível de debugação) e VMKit, um JVM que usa LLVM para compilação de JIT e estatísticas.
O LLVM 3.1 agora incorpora o AdressSanitizer, um detector de erro de memória para C e C++ que pode encontrar erros na memória, logo que ela seja ocupada. Outra novidade é um assembler ARM completo com suporte para Thumb1, Thumb2 e modos ARM. Os desenvolvedores também melhoraram o código IR que o LLVM usa, o otimizador e o subsistema de código de máquina.
O Clang 3.1, lançado ao mesmo tempo que o LLVM 3.1, também veio co um algumas mudanças. O suporte para C11 foi melhorado com suporte para estruturas anônimas do novo padrão ISO e o compilador agora só aceita bandeiras para C11, como c11 ao invés de c1x. O Clang agora suporta a maioria dos recursos de linguagem do C++11. Muitos dos recursos que foram introduzidos no Clang 3.0 doram declarados “qualidade de produção”, na verão 3.1.
A toolchain do LLVM está sendo usada por um grande número de empresas e projetos, incluindo a Apple e o FreeBSD. A coleção é licenciada sob a BSD, da Universidade de Illinois/NCAS Open Source Licence, que permite a comercialização de produtos derivados pro projeto LLVM.
Com informações de The H


