Sun Studio 12 Update 1: C Compiler 5.10 Readme |
Updated 2009/06/25
This document contains information about this release of the
Sun[tm] Studio 12 Update 1 C Compiler 5.10. This document describes
the software corrections, known problems, limitations, and
incompatibilities of this release.
Product Documentation
Product documentation for this release of Sun Studio including man pages, readmes, technical articles, and manuals can be accessed from the Sun Studio documentation page on the Sun Developer Network portal, http://developers.sun.com/sunstudio/documentation/ss12u1
This compiler is in full compliance with ISO/IEC 9899:1999,
Programming Language - C and is available on Solaris platforms when you
compile with the -xc99 option. This compiler supports all C
language features of ISO/IEC 9899:1999, Programming Language - C on
all supported operating systems.
This section describes new and changed features for this release of the C compiler 5.10. For additional information regarding new features in other Sun Studio 12 Update 1 components, see the SDN Sun Studio portal at http://developers.sun.com/sunstudio/documentation/ss12u1/.
_m128/_m64 data types.
Users with .il inline function files, assembler code, or
asm inline statements calling these functions also need to
be aware of this incompatibility.
-xtarget=woodcrest
option expands to -xarch=ssse3 -xchip=core2
-xcache=32/64/8:4096/64/16.
-xtarget=sparc64vii option expands to
-xarch=sparcima -xchip=sparc=sparc64vii
-xcache=64/64/2:5120/256/10.
-xtarget=penryn option expands to -xarch=sse4_1
-xchip=penryn -xcache=32/64/8:6144/64/24.
-xtarget=nehalem option expands to -xarch=sse4_2
-xchip=nehalem -xcache=32/64/8:256/64/8:8192/64/16.
-xtarget=ultraT2plus option expands to
-xarch=sparcvis2 -xcache=8/16/4:4096/64/16 -xchip=ultraT2plus.
-xarch=ssse3 option adds the SSSE3 instruction set
to the SSE3 instruction set.
-xarch=sse4_1 option compiles for the SSE4.1 ISA.
-xarch=sse4_2 option compiles for the SSE4.2 ISA.
-xarch=sparcima option compiles for the sparcima
version of the SPARC-V9 instruction set, plus the UltraSPARC
extensions.
-xchip=core2 option optimizes for the core2
processor.
-xchip=sparc64vii option optimizes for the Fujitsu
SPARC64 VII processor.
-xchip=penryn option optimizes for the IntelĀ®
Penryn processor.
-xchip=nehalem option optimizes for the IntelĀ®
CoreTM (Nehalem) processor.
-xchip=ultraT2plus option optimizes for the
UltraSPARC T2 Plus processor.
-xcrossfile=1 option becomes an alias of the
-xipo=1 option. The -xcrossfile=0 option no longer
has any effect. Specifically, -xcrossfile=1 and
-xcrossfile=0 are equivalent to -xipo=1.
-xpec[=yes|no] option
generates a PEC binary that is recompilable for use with the
Automatic Tuning System (ATS).
-Y option does not accept i as an
argument.
-xdepend option is now
implicitly enabled for optimization levels -x03 or higher,
and is no longer included in the expansion of the -fast
option.
-xannotate[=yes|no] (Solaris platforms only) instructs
the compiler to create binaries that can be transformed later by
binary modification tools like binopt(1).
The -xprofile=collect and -xprofile=use options provide improved support including profiling multi-threaded, dynamically linked applications.
Details are in the manual pages for cc(1), CC(1), f90(1), xprof_btoa(1), and xprof_atob(1).
On all systems, new shared libraries libxprof.so.1 and
libtdf.so.1 are required for compiling programs using -xprofile=collect, -xprofile=use,
or -xprofile=tcov;
running programs compiled using -xprofile=collect or -xprofile=tcov;
using xprof_btoa and xprof_atob to convert binary profile data to ascii text and back again.
These libraries are installed as follows:
Note that these libraries should be installed on machines used for running profiled programs as well as on machines used for compilation.
-Wi option is no longer accepted for passing
arguments to the interprocedural optimizer.The -xsb and
-xsbfast options are obsolete and have been removed.
[no%]init_local.
switch statement can
have only one associated value. The Sun Studio C compiler allows an
extension found in some compilers known as case ranges.
-features=[no%]conststrings option, which
enables and disables string literal placement in read-only memory,
the default is -features=conststrings, which replaces the
deprecated -xstrconst option.
-include filename option for specifying
preprocessor include files has been added.
Global asm Statements
A basic asm
statement is expressed as asm(assembly code);
It
emits the given assembler text directly into the assembly file. A
basic asm statement declared at file scope, rather than function
scope, is referred to as a "global asm statement". Other
compilers refer to this as a "toplevel" asm
statement.
Global asm statements are emitted in the order they
are specified, that is, they retain their order relative to each
other and maintain their position relative to surrounding
functions.
At higher optimization levels, the compiler may remove
functions that it believes are not referenced. Since the compiler
will not know which functions are referenced from within global
asms, it is possible that they may be removed inadvertently.
Note that extended
asm statements, those which provide a template and operand
specifications, are not allowed to be global.
"__asm"
and "__asm__" are synonyms for the "asm" keyword
and can be used interchangeably.
Global asm statements are implemented only for SPARC processors in this
release.
SSSE3, SSE4a, SSE4.1 SSE4.2 intrinsics are now supported. See Special Intrinsics Wiki Page
For a list of new and changed features introduced in the previous release, see the Sun Studio 12 C Readme.
% setenv PAGER more
Check the Support page on the SDN Sun Studio portal, http://developers.sun.com/sunstudio/ for latest information.
There is no new information.
Copyright © 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.