ROSE is a robust, open source, compiler-based infrastructure for building source to source program transformation and analysis tools. Developed at Lawrence Livermore National Laboratory. ROSE Tools can process large C, C++, Fortran, OpenMP, and UPC source codes, as well as binary executables.
ROSE is particularly well suited for building custom tools for static analysis, program optimization, arbitrary program transformation, domain-specific optimizations, complex loop optimizations, performance analysis, and cyber-security analysis.
ROSE users include experienced compiler researchers as well as tool users and developers with minimal compiler experience.
ROSE users fall into one or more of the following categories, depending on what they want to accomplish. Choose the starting point that is right for you: