Sun Studio 11: C Compiler 5.8 Readme |
Contents
- Introduction
- About the C Compiler 5.8
- New and Changed Features
- Software Corrections, Patches, Problems and Workarounds
- Documentation Errors
A. Introduction
This document contains information about this release of the Sun[tm] Studio 11 C Compiler 5.8. This document describes the software corrections, known problems, limitations, and incompatibilities of this release.
Product DocumentationProduct documentation for this release of Sun Studio includes the following:
Note - If your compiler collection software has not been installed in the default /opt directory, ask your system administrator for the equivalent path on your system.
- Release Notes: Available on the Sun Developer Network (SDN) Sun Studio portal at http://developers.sun.com/sunstudio/documentation/ss11/release_notes.html. Information in the release notes updates and extends information in all readme files.
- Compilers and Tools Documentation: Product man pages, HTML versions of readmes, and manuals can be accessed from /installation_directory/SUNWspro/docs/index.html. The default installation directory for Solaris platforms is /opt. If your Sun Studio software is not installed in the default /opt directory, ask your system administrator for the equivalent path on your system. You can access the following documents from the index.html page:
- C User's Guide
- C++ User's Guide
- C++ FAQ
- Fortran User's Guide
- Fortran Programming Guide
- Debugging a Program With dbx
- Performance Analyzer
- Open MP API User's Guide
- Math Libraries Readme
- Numerical Computation Guide
- Sun Performance Library Readme
- Sun Performance Library Reference Manual
- Sun Performance Library User's Guide for Fortran and C
- IDE Documentation: Online help for all components of the Sun Studio IDE can be accessed from the Help menu and buttons in the IDE.
- Developer Resources Portal: For technical articles, code samples, documentation, and a knowledge base, see the SDN Sun Studio portal at http://developers.sun.com/prodtech/cc. For additional information, see the Support page on the portal.
B. About Sun Studio 11 C Compiler 5.8
This release of the C compiler is available on the Solaris[tm] Operating System: versions 8, 9, and 10.
This compiler is in full compliance with ISO/IEC 9899:1999, Programming Language - C and is available on Solaris 10 when you specify the -xc99 option. This compiler supports all C language features of ISO/IEC 9899:1999, Programming Language - C on all supported operating systems.
C. New and Changed Features
This section describes new and changed features for this release of the C compler 5.8. For details on any of the compiler options, see the C User's Guide or the cc(1) man page.
For information about new features in other Sun Studio components, see the What's New manual. You can find all the manuals, man pages, and readme files in the Sun Studio 11 collection on the SDN Sun Studio portal at http://developers.sun.com/sunstudio/documentation/ss11/index.html.
- New -xarch Flags For x64 Development
The -xarch option now supports the following new flags for development on the 64-bit x86 platform: amd64a, pentium_proa, ssea, sse2a. See the description of -xarch in the Sun Studio 11 cc(1) man page for more information.
- Support For x86 -xpagesize Options
The -xpagesize, -xpagesize_heap, -xpagesize_stack options are now enabled for x86 platforms as well as SPARC.
- A New -xmodel Option To Specify x64 Memory Models
The new -xmodel option lets you specify the kernel, small, or medium memory models on the 64-bit AMD architecture. If the size of your global and static variables exceeds two gigabytes, specify -xmodel=medium. Otherwise, use the default -xmodel=small setting.
- Support For SSE/SSE2 Integral Media Intrinsics
This release supports intrinsic functions for SSE2 128-bit XMM register integral media-instructions. Include the sunmedia_intrin.h header file in the source code and specify the -xbuiltin option to take advantage of these functions. Furthermore, these intrinsic functions require SSE2 support so specify options such as -xarch=sse2, -xarch=amd64, or -xtarget=opteron.
Essentially, the compiler generates inline code for these instrinsic functions. This is easier than manipulating the instructions through assembly language and it can be optimized by the compiler. For more information about intrinsics, explanations for the function prototypes contained in the header files, and the data types used by these functions, see the Intel C++ Intrinsics Reference section of the Intel(R) C++ Compiler for Linux Systems manual.
- New -xvector Flags for x64 SSE2 Platforms
The -xvector option enables automatic generation of calls to the vector library functions and/or the generation of the SIMD (Single Instruction Multiple Data) instructions.
- Binary Optimizer for SPARC
A new -xbinopt option allows the compiler to prepare the binary file for further optimization by the binopt(1) binary optimizer.
- New SPARC -xtarget and -xchip Values
The new -xtarget flags ultra3iplus, ultra4plus, and ultraT1 along with the new -xchip flags ultra3iplus, ultra4plus, and ultraT1 provide code generation for the UltraSPARC IIIiplus, UltraSPARC T1, and UltraSPARC IVplus processors.
- A New Default Format For Debugger Information
The C compiler now generates debugger information in the dwarf format by default. This change should be transparent, as the dbx and Performance Analyzer readily accept and prefer the dwarf format. You can generate debugger information in the stabs format by specifying -xdebugformat=stabs.
- Enhancements to the STACKSIZE Environment Variable
The syntax of the STACKSIZE environment variable has been enhanced to accept a units keyword for denoting the slave thread stacksize: B for Bytes, K for Kilobytes, M for Megabytes, G for Gigabytes.
For example, setenv STACKSIZE 8192 sets the slave thread stack size to 8 MB. 1235B sets the slave thread stack size for 1235 Bytes. 1235G sets it for 1235 Gigabytes. The default for an integer value without a suffix letter is still Kilobytes.
- OpenMP Autoscoping
Autoscoping is now available for C programs. This feature is described in chapter 3 of the Sun Studio 11 OpenMP API User's Guide.
You can find this manual in the Sun Studio 11 collection on the SDN Sun Studio portal at http://developers.sun.com/sunstudio/documentation/ss11/index.html.
- New Pragmas
There are two new pragmas in this release of the C compiler:
- # pragma c99
- # pragma [no_]warn_missing_parameter_info
Use the c99 (implicit | no%implicit) pragma to find implicit function declarations. Use the [no_]warn_missing_parameter_info pragma to find function declarations which contain no parameter-type information. See the C User's Guide for detailed descriptions of these new pragmas.
You can find this manual in the Sun Studio 11 collection on the SDN Sun Studio portal at http://developers.sun.com/sunstudio/documentation/ss11/index.html.
D. Software Corrections, Patches, Problems and Workarounds
There is no new information as of this publication date, however, check the Support page on the SDN Sun Studio portal, http://developers.sun.com/sunstudio/support/ for latest information.
G. Documentation Errors
The cc(1) man page for Sun Studio 11 incorrectly lists the pragma struct_align as a new feature. This is an unsupported feature and should not be specified.
Copyright © 2005 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.