L'équipe LLVM a annoncé la publication de la version stable de LLVM 9; bien que LLVM 9.0 ait manqué sa date de sortie prévue, le 28 août. LLVM 9.0 RC3 est disponible plus tôt ce mois-ci. Avec LLVM 9, la cible RISC-V est maintenant hors du mode expérimental et activée par défaut. Parmi les autres modifications, citons l'amélioration de la prise en charge d'asm goto dans la cible MIPS, la prise en charge au niveau assembleur ajoutée à l'architecture Armv8.1-M, le nouvel attribut de paramètre immarg ajouté à LLVM IR, etc. LLVM 9 explore également de nombreuses corrections de bogues, optimisations et améliorations des diagnostics. LLVM 9 présente également un support expérimental pour C ++ dans Clang 9.
LLVM 9.0 has finally made the “experimental” RISC-V LLVM backend “official” and will be enabled by default. This means that it no longer needs to be enabled by LLVM_EXPERIMENTAL_TARGETS_TO_BUILD. The RISC-V Target has full codegen support for the RV32I and RV64I based RISC-V instruction set variants, along with the MAFDC standard extensions.
Explaining the reason behind this update, Alex Bradbury, CTO and Co-Founder of the lowRISC said, “As well as being more convenient for end users, this also makes it significantly easier for e.g. Rust/Julia/ Swift and other languages using LLVM for code generation to do so using the system-provided LLVM libraries. This will make life easier for those working on RISC-V ports of Linux distros encountering issues with Rust dependencies.”