Skip to content
forked from rose-compiler/rose

Developed at Lawrence Livermore National Laboratory (LLNL), ROSE is an open source compiler infrastructure to build source-to-source program transformation and analysis tools for large-scale C (C89 and C98), C++ (C++98 and C++11), UPC, Fortran (77/95/2003), OpenMP, Java, Python and PHP applications.

License

Notifications You must be signed in to change notification settings

SNSerHello/rose

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

************************************************************************
                           ROSE Project Goal
************************************************************************

   The goal of ROSE is to provide the support required to easily build tools
that operate on source code (analyzing or optimizing). ROSE is a library that
makes it easy to build a wide range of tools from optimizing source-to-source 
compilers to special purpose analysis tools. ROSE supports, 
Fortran (66,77/95/2003), C89, C99, C++, OpenMP, UPC, and PHP.  ROSE is
part of ongoing collaborations with many external groups worldwide.



************************************************************************
                           Intended Audience
************************************************************************

Anyone building tools to operate on source code.  These can be source-to-source
optimization translators (optimizing compilers), debugging tools, software analysis
tools, etc.  ROSE is a library that can be used to build a wide range of tools
that operate on source code (either just reading it to do analysis, or reading
and writing it to do transformations, or just writing it to support code generation.



************************************************************************
                              Documentation
************************************************************************

   Documentation is located at http:https://www.roseCompiler.org. The ROSE 
distributions no longer (as of July 2008) contain a built copy of the ROSE 
documentation.



************************************************************************
                              Research Papers
************************************************************************

   Most of the research papers published on ROSE are contained in the 
ROSE/RESEARCH_PAPERS directory.  Also included is information about where 
they were published.


************************************************************************
                    Current Development and Examples
************************************************************************

   Although ROSE is a mechanism for building source-to-source translators, the
current development environment builds just one translator (ROSE/src/rose) and it is used to test the
functionality of the many subsystems being added to ROSE.  The goal of course is that the
user uses ROSE to build his/her own preprocessor and would use one or more of the subsystems
that are provided within ROSE.  The ROSE/ExamplePreprocessors directory contains several
example translators which demonstrate different features of ROSE.  Some represent
work in progress specific to collaborations with different outside projects.



************************************************************************
                             ROSE Directories
************************************************************************

The "src" directory contains all source code for ROSE (including optional parts of ROSE)

The "tests" directory contains several subdirectories of test codes which can be used to test
the current version of ROSE.

The developersScratchSpace is used for the development purposes of the principal authors.
It is not intended to be useful for any other purpose.  Tests that are useful
within the development directory are periodically placed into the appropriate "tests" directories
so that they can be used for to define an evolving test suite for ROSE.



************************************************************************
                            INSTALLATION INSTRUCTIONS
************************************************************************

See the "Installation Instructions" at the ROSE web site: http:https://www.roseCompiler.org.

About

Developed at Lawrence Livermore National Laboratory (LLNL), ROSE is an open source compiler infrastructure to build source-to-source program transformation and analysis tools for large-scale C (C89 and C98), C++ (C++98 and C++11), UPC, Fortran (77/95/2003), OpenMP, Java, Python and PHP applications.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages

  • C 70.7%
  • C++ 18.2%
  • Fortran 4.4%
  • Makefile 1.6%
  • Shell 1.2%
  • Perl 0.8%
  • Other 3.1%