Oracle Developer Studio
This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
No issues specified. Please specify issues, or remove this template. |
Developer(s) | Oracle Corporation |
---|---|
Stable release | Solaris Studio 12.3
/ December 14, 2011 |
Operating system | Solaris, OpenSolaris, RHEL & Oracle Linux [1] |
Available in | English Japanese Simplified Chinese |
Type | Compiler, Debugger, Software build, Integrated Development Environment |
License | Free for download and use as described in the Sun Studio product license. |
Website | developers.sun.com/sunstudio |
The Oracle Solaris Studio compiler suite is Oracle's flagship software development product for Solaris and Linux. It was formerly known as Sun Studio. The Oracle Solaris Studio software delivers optimizing C, C++, and Fortran compilers, libraries, and performance analysis, and debugging tools for the Solaris OS on SPARC, and both Solaris and Linux on x86/x64 platforms, including multi-core systems.
The Solaris Studio software suite is downloadable at no charge from the Solaris Studio download website.
Previous names of this product include Sun Studio, Sun WorkShop, Forte Developer, and SunPro Compilers.
Languages
Supported architectures
Components
Oracle Solaris Studio is a suite of software products that includes:
- C, C++, and Fortran compilers and support libraries;
- DBX and frontends;
- lint;
- IDE based on NetBeans;
- Performance analyzer;[2]
- Thread analyzer;
- Sun performance library;
- Distributed make.[3]
Compiler optimizations
A common optimizing backend is used for code generation.
A high-level intermediate representation called Sun IR is used, and high-level optimizations done in the iropt (intermediate representation optimizer) component are operated at the Sun IR level. Major optimizations include:
- Copy propagation
- Constant folding and constant propagation
- Dead code elimination
- Interprocedural analysis
- Loop optimizations
- Parallelization
- Profile-guided optimization
- Scalar replacement
- Strength reduction
- vectorization (with
-xvector=simd
)
OpenMP
The OpenMP shared memory parallelization API is native to all three Solaris Studio compilers.
Code Coverage
Tcov, a source code coverage analysis and statement-by-statement profiling tool, comes as a standard utility with Sun Studio suite. Tcov generates exact counts of the number of times each statement in a program is executed and annotates source code to add instrumentation.
The tcov utility gives information on how often a program executes segments of code. It produces a copy of the source file, annotated with execution frequencies. The code can be annotated at the basic block level or the source line level. As the statements in a basic block are executed the same number of times, a count of basic block executions equals number of times each statement in the block is executed.[4] The tcov utility does not produce any time-based data.
gccfss
The gccfss (GCC for SPARC Systems) compiler uses gcc's front end and the Sun Studio compiler's code-generating back end. Thus, gccfss is able to handle gcc-specific compiler directives, while it is also able to take advantage of the compiler optimizations in the Sun Studio compiler's back end. This greatly facilitates the porting of GCC-based applications to SPARC systems.
gccfss 4.2 adds a new functionality as a cross compiler; SPARC binaries can be generated on an x86 (or x64) machine running Solaris.[5]
Research platform
Before its cancellation, the Rock processor would have been the first general-purpose processor to support hardware transactional memory (HTM), the Sun Studio compiler is used by a number of research projects, including Hybrid Transactional Memory (HyTM) [6] and Phased Transactional Memory (PhTM),[7] to investigate support and possible HTM optimizations.
References
- ^ Oracle gooses Studio compilers for Solaris, Linux
- ^ "Oracle Solaris Studio 12.2: Performance Analyzer". Oracle Corporation. Retrieved 2010-09-11.
- ^ "Sun Studio 12: Distributed Make (dmake)". Oracle Corporation. Retrieved 2010-09-11.
- ^ "Definition of basic block of code states that basic block has only one entry and only one exit point, essentially implying the statement". Retrieved 6Feb2012.
{{cite web}}
: Check date values in:|accessdate=
(help) - ^ "Cool Tools - GCC for Sun Systems 4.2.0 as a Cross Compiler". Sun Microsystems. Retrieved 2008-07-31.
- ^ "Hybrid Transactional Memory" (PDF). Sun Microsystems. Retrieved 2007-11-10.
- ^ "PhTM: Phased Transactional Memory" (PDF). Sun Microsystems. Retrieved 2007-11-10.
External links
- Sun Studio home page on Sun Developer Network
- Cool Tools - GCC for SPARC Systems
- Sun Studio Forums
- Application Performance Tuning on Sun Platform
- Developer Support Services from Sun Microsystems
- Sun Studio Wiki Pages
- Sun Studio Release History
- downloads/index-jsp-141149.html Download Sun Studio