LLVM 10.0

llvm – alusta kääntäjien ja työkaluketjujen kehittämiseen lisenssillä Apache 2.0 poikkeuksin.


Muutamia muutoksia kalahtaa:

  • Nyt oletusarvoisesti käännös ei ala uudessa prosessissa kuten ennen.

  • Tuettu C++20 käsitteet.

  • Osoittimen aritmetiikka C:ssä ja C++:ssa on sallittu vain taulukoissa standardien mukaan. Lisätty asianmukaiset tarkistukset Undefined Behaviour Sanitizeriin.

  • Parannettu tuki OpenCL:lle ja OpemMP 5.0:lle.

  • Joissakin tapauksissa käyttäytyminen on lähellä GCC:n käyttäytymistä.

Muutamia yleisiä muutoksia llvm:

  • Uusia ominaisuuksia optimoitujen vektorikäskyjen luomiseen.

  • Proseduurien välisen optimoinnin mahdollisuuksia kokeellisessa Attractor-kehyksessä on laajennettu merkittävästi.

  • Useita parannuksia eri arkkitehtuurien tukemiseen (AArch64, ARM, MIPS, PowerPC, SystemZ, X86, WebAssembly, RISC-V).

Sekä erilaisia ​​parannuksia libclang-, clangd-, clang-format-, clang-tidy-, Static Analyzer- ja LLDB-sovelluksiin.

Lähde: linux.org.ru

Lisää kommentti