LLVM Compiler Optimizations for RVV

RISC-V Software

This is a version of the LLVM compiler that fulfills the EPI requirements when it comes to vectorization for RISC-V Vector Extension. This compiler includes an implementation of the EPI-specific intrinsics and the vectorizer for the RISC-V Vector Extension. This compiler enables vectorization of applications using the RISC-V Vector Extension either using the mentioned intrinsics or the automatic vectorization mechanism. The vectorization mechanism can be triggered automatically or explicitly requested via pragma annotations such as #pragma clang loop or #pragma omp simd.

Software Author: 

Roger Ferrer Ibañez, Lorenzo Albano, Vineet Kumar, Ferran Pallares

License: 

Apache License (Version 2.0) with LLVM exceptions

Primary tabs

The compiler can be used for development of applications for EPAC so that they can take advantage of the system's functionalities. In particular, the compiler allows exploiting the vector capabilities of EPAC's VEC accelerator.