XL CC++ Advanced Edition V6.0 for Mac OS X
Document Sample


Software Announcement
January 13, 2004
®
XL C/C++ Advanced Edition V6.0 for Mac OS X
— A new platform for the IBM family of C/C++
compilers
Overview • IBM iSeries ™ (OS/400®
and PASE) At a glance
XL C/C++ Advanced Edition for
Mac OS X is an optimizing, • Enterprise Linux on iSeries and Based on mature compiler
standards-based, command-line pSeries (SuSE Linux Enterprise technology from IBM, XL C/C++
compiler for the Mac OS X operating Server, Red Hat Enterprise Linux, Advanced Edition V6.0 for Mac OS
system, running on PowerPC® Turbolinux Enterprise Server X includes:
hardware with the PowerPC powered by UnitedLinux, and
Architecture ™ . Conectiva Linux Enterprise • Industry-leading optimization
Edition powered by UnitedLinux) technology
Based on mature compiler
With this release of XL C/C++ • Multiple levels of increasing
technology from IBM, XL C/C++
Advanced Edition V6.0 for Mac OS optimization to trade-off
Advanced Edition V6.0 for Mac OS X
X, programmers using Mac OS X by compile time with code
features:
Apple can now take advantage of execution speed
• Generation of highly optimized proven IBM compiler technology.
• Various compiler options and
code which exploits the IBM pragmas to tailor for the
PowerPC architecture within the Key prerequisites specific needs of a compilation
Power Mac G5
• Apple Power Mac G5 or Power • Partial GNU C/C++ portability
• C and C++ programming Mac G4 support to ease migration of
language standards conformance code from GNU C and C++
• Mac OS X 10.2 or Mac OS X 10.3
• Binary compatibility and running on the Power Mac G5 or For ordering, contact:
coexistence with gcc V3.3 Power Mac G4 Your IBM representative or the
Americas Call Centers at
• Support for the Velocity Engine • gcc V3.3 compiler 800-IBM-CALL Reference: YE001
through the AltiVec programming
interface Planned availability date
• GCC command line compatibility
January 16, 2004
• Documentation that supports the
Mac OS X help architecture. • Electronic software delivery
• Media and documentation
With XL C/C++ Advanced Edition
V6.0 for Mac OS X, IBM extends the
C/C++ family of compilers to the
Apple Mac OS X platform. The IBM
family of C and C++ compilers, now
supports C and C++ programming
on:
• Apple Power Mac G5 and Power
Mac G4 (Mac OS X)
• IBM zSeries® (z/OS®
and OS/390® )
• IBM pSeries® (AIX® )
This announcement is provided for your information only. For additional information, contact your IBM representative,
call 800-IBM-4YOU, or visit the IBM home page at: http://www.ibm.com.
IBM United States IBM is a registered trademark of International Business Machines Corporation. 204-005
support a number of the latest approved clarifications
Description from the standards committee bringing t h e C + +
compiler within XL C/C++ Advanced Edition for Mac OS
XL C/C++ Advanced Edition for Mac OS X is a powerful X to the latest level of the standard.
development environment for building highly optimized C
and C++ applications. Compiler optimization
C compiler XL C/C++ Advanced Edition V6.0 for Mac OS X includes
the benefits of IBM compiler optimization technology.
XL C/C++ Advanced Edition V6.0 for Mac OS X Through compiler options, directives, and pragmas,
introduces the IBM C compiler which includes the benefits programmers are offered a number of ways to optimize
of IBM compiler optimization technology. The C compiler their code. Using the -O2, -O3, -O4, and -O5 options, you
provides many compiler options and pragmas for can obtain optimization levels that run from
increased flexibility and efficiency while supporting the comprehensive low-level optimizations to more extensive
latest international standards. optimizations that include interprocedural analysis, loop
optimization, and automatic machine tuning. Other
1999 C standard options for optimization include:
XL C/C++ Advanced Edition for Mac OS X builds on • -qarch, -qtune, and -qcache that allow you to optimize
official industry standards, so your code can be ported your application to a number of architectures.
easily among a variety platforms and implementations.
The ISO/IEC 9899:1999 International Standard (also known • -qhot that allows for high-order transformations, which
as C99) specifies the form and establishes the are optimizations that specifically improve
interpretation of programs written in the C programming performance of loops through techniques such as
language. As the second edition of the standard, this interchange, fusion, and unrolling.
level enhances the capability of the C language, provides
clarifications, and incorporates technical corrections to • -qipa that invokes interprocedural analysis (IPA) that
the previous edition of the standard. The language enables the compiler to optimize across different files
features supported by the C compiler, within XL C/C++ (whole-program analysis), and can result in significant
Advanced Edition V6.0 for Mac OS X, is consistent with the performance improvements.
specification described in the ISO/IEC 9899:1999 • -qpdf (profile-directed feedback) that uses results from
International Standard. The compiler works with a sample program execution to fine tune optimizations
run-time environment supporting the standard to form a in conditional branches and frequently executed code
conforming implementation. Certain features specified in sections.
the C99 Standard require corresponding run-time library
support, which may not be available in the current Binary compatibility and coexistence
operating system release.
XL C/C++ Advanced Edition V6.0 for Mac OS X uses the
The C99 Standard offers a number of additional language GNU C and C++ header files and the run-time libraries
functions over the first edition (C89) of the standard and to produce code that is binary-compatible with that
include: produced with GNU compiler, gcc V3.3. Portions of an
application can be built with XL C/C++ Advanced Edition
• Complex data type for Mac OS X and combined with portions built with gcc
• Bool data type to produce an application that behaves as if it had been
built solely with gcc. To ensure that the proper versions
• Inline function specifier of headers and run-time libraries are present on the
system, the gcc V3.3 compilers must be installed before
• Variable length array installing XL C/C++ Advanced Edition for Mac OS X.
• Designated initializer to initialize specific structure
XL C/C++ Advanced Edition is able to coexist with
members
gcc-compiled code. The XL C/C++ Advanced Edition
• Mixing declaration and code to improve usability and compiler optimizes the program while maintaining binary
readability compatibility with objects produced by gcc V3.3.
The -qlanglvl compiler option allows you to choose from Additional coexistence features include:
the available language levels that you can use to compile
your code within XL C/C++ Advanced Edition for Mac • Built-in IBM functions for Power Mac G5 (Power Mac
OS X. Your code can conform to the latest C99 Standard, G4 also supported) and PowerPC 970 architectures
use language extensions to C99, or conform to the coexist with GNU C and GNU C++ built-ins.
previous C89 Standard. XL C/C++ Advanced Edition • Compilation uses the GNU C/C++ and Mac OS X
offers you the flexibility to compile your code to the header files.
language level that you require.
• Compilation uses the GNU assembler for assembler
C++ compiler input files.
1998 C++ standard • Linking uses the Mac OS X linker.
The C++ compiler, within XL C/C++ Advanced Edition • Compiled code is linked to the GNU C/C++ and Mac
for Mac OS X, supports the 1998 ISO/IEC Standard. The OS X run-time libraries.
ISO/IEC 14882:1998 International Standard (also known
• Debugging uses the GNU debugger, gdb.
as Standard C++) specifies the form and establishes the
interpretation of programs written in the C + + • Profiling uses the GNU profiler, gprof.
programming language. This International Standard is
designed to promote the portability of C + + p r o g r a m s Ease of porting
among a variety of implementations. ISO/IEC 14882:1998
is the first formal definition of the C++ language. In XL C/C++ Advanced Edition V6.0 for Mac OS X has
addition, XL C/C++ Advanced Edition for Mac OS X will features that help you port existing code from code
originally written for GNU C and C++. For example, by
204-005 -2-
compiling with the -qinfo=por option, you can filter the the Getting Started guide or Language Reference,
diagnostic messages emitted by the compiler to show Compiler Reference and Programming Tasks manuals.
only those that pertain to portability issues. Also, a
comprehensive subset of features related to GNU C and Technical preview — Selected functions
C++ are supported by XL C/C++ Advanced Edition
The following selected functions are offered in this initial
V6.0 for Mac OS X. Other GNU C and C++ features are
release of XL C/C++ Advanced Edition V6.0 for Mac OS
recognized (accepted and ignored). This helps you
X, as a “technical preview.” Technical Previews provide
minimize the number of changes that you are required to
insight into IBM plans and directions and information and
make to your GCC source code to ensure that it compiles
functions are provided “as-is” and without warranty or
successfully using XL C/C++ Advanced Edition for Mac
condition of any kind. Availability of the selected
OS X.
functions will be announced at a later date.
Additional features of XL C/C++ Advanced Edition for
• OpenMP
Mac OS X
− The OpenMP is an industry specification describing
• The -qarch=ppc970 or -qarch=g5 (also a common set of APIs that support multiplatform
-qtune=ppc970 or -qtune=g5) instructs the compiler symmetric multiprocessing (SMP) programming in
to optimize specifically to the PowerPC 970 chip C, C++, and Fortran on all architectures, including
contained in the Apple Power Mac G5 (Power Mac G4 UNIX® platforms. Jointly defined by a group of
is also supported). major computer hardware and software vendors,
• The -qaltivec option which supports the Power Mac G5 including IBM, OpenMP is a portable, scalable
Velocity Engine through the AltiVec programming programming model that provides SMP
interface. This interface provides for highly parallel programmers with a simple and flexible interface
operations for both integer and float point data. for developing shared-memory parallel applications
for platforms ranging from the desktop to the
• XL C/C++ Advanced Edition V6.0 for Mac OS X supercomputer.
supports interlanguage calls to and from XL Fortran
Advanced Edition so that you may include C and C++ XL C/C++ Advanced Edition V6.0 for Mac OS X
code segments within your Fortran programs. provides a technical preview of the OpenMP
Industry Specification V2.0 support. For more
• Support of Mac OS X Frameworks such as Carbon information about the OpenMP Specification, visit
ABIs. the OpenMP Web site at:
• The gxlc utility translates GNU C and C++ compiler http://www.openmp.org
options into comparable XL C/C++ options and
creates an xlc invocation command to invoke the C or
C++ compiler within the XL C/C++ compiler. This • Objective-C
utility is helpful for reusing make files created for
− XL C/C++ Advanced Edition compiler supports
applications previously developed with the GNU
Objective-C.
C/C++.
Objective-C is an object-oriented programming
Xcode support
language based on standard C and is popular in the
Xcode is Apple′s latest integrated development Mac OS X programming environment. The
environment for developing software on Mac OS X. Objective-C programming is a basis for writing to
Xcode supports a new and powerful user interface to a Cocoa frameworks.
number of application development tools providing for an
environment which allows for faster development of Mac Section 508 of the U.S. Rehabilitation Act
OS X applications. Xcode supports programming in C,
C++, Objective-C, Objective-C++ and Java ™ . XL C / C + + Advanced Edition for Mac OS X is capable as
of January 16, 2004, when used in accordance with IBM′s
XL C/C++ Advanced Edition for Mac OS X is enabled for associated documentation, of satisfying the applicable
the Xcode application development environment by requirements of Section 508 of the Rehabilitation Act,
allowing the IBM C/C++ compiler to be invoked from provided that any assistive technology used with the
within Xcode. product properly interoperates with it.
GNU debugger, gdb
XL C/C++ Advanced Edition V6.0 for Mac OS X supports Product positioning
debugging using the GNU debugger, gdb. This symbolic
debugger, which comes with the system, supports full XL C/C++ Advanced Edition V6.0 for Mac OS X is part
debugging capability for code without optimization and of the IBM family of C and C++ compilers that supports
partial debugging for code at the -O2 optimization level. all of the major platforms of IBM. It joins C for AIX on the
pSeries, VisualAge® C++ for AIX on the pSeries,
Comprehensive documentation and online Help VisualAge C++ for Linux on the pSeries, C/C++ for
z/OS on the zSeries, and ILE C/C++ for OS/400 on the
Compiler documentation for XL C/C++ Advanced Edition iSeries. The code base for all of these C compilers is the
V6.0 for Mac OS X is available in the following formats: same making source-level portability of your applications
among the various IBM C compilers easier than ever
• Readme files
before. In fact much of the back-end code is not only
• Man pages
common among the various C and C++ implementations
• HTML files
but also common between XL C/C++ for Mac OS X and
• PDF books
XL Fortran for Mac OS X. Mac OS X programmers who
Documentation can be viewed in the Apple Help Center, use XL C/C++ for Mac OS X will gain the benefit of the
with a traditional browser or using a PDF viewer. The continuous quality improvements provided through usage
Apple Help Viewer can perform generalized textual of the equivalent IBM compilers since their initial
searches and will find your search string (if it occurs) in introduction in 1989.
-3- 204-005
The C compiler supports the latest ISO C 1999
(International Standard ISO/IEC 9899:1999) standard.
With representation from IBM′s compiler development
team on the ISO/ANSI C committee, IBM is in a position
to understand the latest updates and clarifications to the
C standards. One of the benefits of conformance to
language standards is that it emphasizes the maximum
portability among a variety of compiler implementations
that also support the standard.
You can now take advantage of the IBM compiler
optimization technology that is contained in XL C/C++
Advanced Edition V6.0 for Mac OS X. You have the
flexibility to choose from various levels and types of
optimization to obtain moderate to significant
performance improvements with relatively little
development effort.
XL C/C++ Advanced Edition V6.0 for Mac OS X brings
with it IBM service and support. The IBM Service and
Support organization is made up of teams of individuals
working together to provide you with the responsive
platform and cross-platform software support that you
require. For complex or code-related problems, IBM has
specialized, skilled service teams with access to the
experts in our development laboratories, as required.
Therefore, you have access to the right level of IBM
expertise when you need it — no matter where they are
located. The vision of IBM Service and Support is to
achieve a level of support excellence that exceeds
customer expectations and differentiates IBM in the
marketplace.
Trademarks
PowerPC Architecture and iSeries are trademarks of
International Business Machines Corporation in the United
States or other countries or both.
The e-business logo, PowerPC, z/OS, zSeries, OS/390,
pSeries, AIX, OS/400, and VisualAge are registered
trademarks of International Business Machines Corporation
in the United States or other countries or both.
Java is a trademark of Sun Microsystems, Inc.
UNIX is a registered trademark of the Open Company in the
United States and other countries.
Other company, product, and service names may be
trademarks or service marks of others.
204-005 -4-
IBM US
Announcement
Supplemental Information
January 13, 2004
• Viewers to access and display the documentation such
Offering information as:
Product information is available through the Offering − Frames-capable browser to access HTML-format
Information Web site at: online help
− A Portable Document Format (PDF) viewer to view
http://www.ibm.com/common/ssi
PDF files
and through the Passport Advantage ® Web site at:
Planning information
http://www.ibm.com/software/passportadvantage
Web information
Publications The VisualAge® C++ home page:
No publications are shipped with this product. http://www.ibm.com/software/adwtools/vacpp
The IBM Publications Center: The IBM Application Development home page:
http://www.ibm.com/shop/publications/order http://www.ibm.com/software/adwtools/
The Publications Center is a worldwide central repository Customer responsibilities: Software Maintenance,
for IBM product publications and marketing material with previously referred to as Subscription and Technical
a catalog of 70,000 items. Extensive search facilities are Support, is now included in the Passport Advantage
provided. Payment options for orders are via credit card Agreement. Installation and technical support for the
(in the USA). or customer number for 50 countries. A products announced in this letter are provided by the
large number of publications are available online in Software Maintenance offering of the IBM International
various file formats, and they can all be downloaded by Passport Advantage Agreement. This fee service
all countries free of charge. enhances customer productivity by providing voice and/or
electronic access into the IBM support organizations.
The IBM Publications Notification System (PNS):
For additional information, contact your IBM
http://service5.boulder.ibm.com/pnsrege.nsf/ representative or IBM Business Partner, or refer to the
messages/welcome IBM software support Web site at:
The PNS enables subscribers to set up profiles of interest http://www.ibm.com/software/support/
by order number/product number. PNS subscribers
automatically receive notifications by e-mail of all new Packaging: XL C / C + + Advanced Edition V6.0 for Mac
publications defined in their profiles. These may then be OS X Media Package:
ordered/downloaded via the Publications Center. The site
is available in English and Canadian French. • One CD-ROM containing XL C/C++ Advanced Edition
V6.0 for Mac OS X
Technical information • Passport Advantage Customer Letter
• Passport Advantage Media Pack Pointer Sheet
Hardware requirements
• License Information Booklet
• Apple Power Mac G5 or Power Mac G4
• License Agreement Booklet
• Disk space, at least:
− 80 MB for product packages Security, auditability, and control
− 512 MB for paging and temporary files. High levels XL C/C++ Advanced Edition for Mac OS X uses the
of optimization may require more space for paging security and auditability features of the Mac OS X
and temporary files. operating system.
Software requirements The customer is responsible for evaluation, selection, and
implementation of security features, administrative
• Mac OS X 10.2 or Mac OS X 10.3 procedures, and appropriate controls in application
systems and communication facilities.
• The Mac OS X Developer Tools package, which
includes gcc V3.3
This announcement is provided for your information only. For additional information, contact your IBM representative,
call 800-IBM-4YOU, or visit the IBM home page at: http://www.ibm.com.
IBM United States IBM is a registered trademark of International Business Machines Corporation. 204-005
XL C/C++ Ad Ed for Mac OS X V6.0.0
Ordering information
Entitled maintenance Media packs Part
This product is only available via Passport Advantage. It offerings description description number
is not available as shrinkwrap.
XL C/C++ Advanced XL C/C++ Ad Ed BA0BQNA
Product information Edition for for Mac OS X
Mac OS X English U.S.
Licensed Apple Macintosh
function Product Product Operating System
title group category CD-ROM Digital
Disk — ISO 9660
IBM XL C/C++ App Integration App Integration Standard V6.0.0
Advanced Middleware Other Middleware Other
Edition
Terms and conditions
XL C/C++ Advanced Edition V6.0 is a server product that
has one charge unit: Authorized user.
Agreement: IBM International Program License
These are available in fixed order quantities of one user. Agreement. Proofs of Entitlement are required for all
authorized use.
Note: This product is licensed based on a charge unit of
one authorized user per operating system. Separate user Part number products only, offered outside of Passport
authorizations are required by individual users for each Advantage, where applicable, are license only and do not
operating system on which the program is used. For each include Software Maintenance.
user authorization on a given operating system, the
program may be stored on more than one machine, License information form number: CT2J1NA
provided that the program is not in active use by that
individual user on more than one machine at the same Limited warranty applies: Yes
time.
Warranty: This program has warranty for a minimum of
An authorized user is an individual or specific named user one year from acquisition from IBM or authorized
authorized to have access to the program or any portion Business Partner. The warranty provided to the
of the program on a single operating system. The Proof customer, for at least one year from acquisition, is access
of Entitlement for this program is evidence of your to data bases (read Web sites) for program information,
authorization. Each individual or specific named user FAQs, including any known fixes to defects, which the
must obtain a Proof of Entitlement for each operating customer can download or obtain otherwise and install
system on which the program is used. at their leisure.
Passport Advantage licensing
Money-back guarantee: If for any reason you are
IBM XL C/C++ Advanced Edition dissatisfied with the program, return it within 30 days
from the invoice date to the party (either IBM or its
Part reseller) from whom you acquired it for a refund. This
Program name/description number applies only to your first acquisition of the program.
XL C/C++ Ad Ed for Mac OS X E012BLL Copy and use on home/portable computer: Yes
Users SW Maintenance Annual
Renewal Volume orders (IVO): No
XL C/C++ Ad Ed for Mac OS X D5306LL
Users License & SW Maintenance Passport Advantage applies: Yes, and through the
12 Months Passport Advantage Web site at:
XL C/C++ Ad Ed for Mac OS X D5307LL
http://www.ibm.com/software/passportadvantage
Users SW Maintenance
Reinstatement 12 Months
Software maintenance applies: Yes
Passport Advantage supply Software Maintenance, previously referred to as
Subscription and Technical Support, is now included in the
XL C/C++ AD ED FOR Mac OS X V6.0.0 Passport Advantage agreement. Installation and
technical support for the products announced in this letter
Media Pack English U.S. Apple BA0BQNA are provided by the Software Maintenance offering of the
Macintosh Operating System IBM International Passport Advantage Agreement. This
CD-ROM Digital Disk — fee service enhances customer productivity by providing
ISO 9660 Standard V6.0.0 voice and/or electronic access into the IBM support
organizations.
Passport Advantage customer: Media pack
Entitlement details IBM includes one year of Software Maintenance with the
initial license acquisition of each program acquired. The
initial period of Software Maintenance can be extended
Customers with active maintenance or subscription for
by the purchase of a renewal option that is available.
the products listed below are entitled to receive the
corresponding media pack. While your Software Maintenance is in effect, IBM
provides you assistance for your routine, short duration
installation and usage (how-to) questions, and
code-related questions. IBM provides assistance via
telephone and, if available, electronic access, only to your
204-005 -2-
information systems (IS) technical support personnel hardware problems to IBM. Early knowledge about
during the normal business hours (published prime shift potential problems enables IBM to provide proactive
hours) of your IBM support center. (This assistance is not service that maintains higher system availability and
available to your end users.) IBM provides Severity 1 performance. In addition, information collected through
assistance 24 hours a day, every day of the year. For the Service Agent will be made available to IBM service
additional details, consult your IBM Software Support support representatives when they are helping answer
Guide at: your questions or diagnosing problems.
http://techsupport.services.ibm.com/ To learn how IBM Electronic Services can work for you,
guides/handbook.html visit:
Software Maintenance does not include assistance for the http://www.ibm.com/support/electronic
design and development of applications, your use of
programs in other than their specified operating
environment, or failures caused by products for which
IBM is not responsible under this agreement.
Order now
For more information about the Passport Advantage To order, contact the Americas Call Centers or your local
Agreement, refer to Software Announcement 201-202, IBM representative.
dated July 10, 2001, or visit the Passport Advantage Web
site at: To identify your local IBM representative, call
800-IBM-4YOU (426-4968).
http://www.ibm.com/software/passportadvantage
Phone: 800-IBM-CALL (426-2255)
IBM operational support services — support line: No Fax: 800-2IBM-FAX (242-6329)
Internet: ibm — direct@vnet.ibm.com
iSeries™ software subscription applies: No Mail: IBM Americas Call Centers
Dept: IBM CALL, 6th Floor
105 Moatfield Drive
Prices North York, Ontario
Canada M3B 3R1
Passport Advantage
Reference: YE001
For Passport Advantage information and charges, contact
your IBM representative or authorized IBM Business The Americas Call Centers, our national direct marketing
Partner. For additional information about the Passport organization, can add your name to the mailing list for
Advantage offering, visit the following Web site: catalogs of IBM products.
http://www.ibm.com/software/passportadvantage
Note: Shipments will begin after the planned availability
To order, contact the Americas Call Centers, your local date.
IBM representative, or your IBM Business Partner.
Trademarks
To identify your local IBM Business Partner or IBM
iSeries and Electronic Service Agent are trademarks of
representative, call 800-IBM-4YOU (426-4968). International Business Machines Corporation in the United
States or other countries or both.
Passport Advantage, VisualAge, and eServer are registered
IBM electronic services trademarks of International Business Machines Corporation
in the United States or other countries or both.
IBM Global Services has transformed its delivery of Other company, product, and service names may be
hardware and software support services to put you on the trademarks or service marks of others.
road to higher systems availability. IBM Electronic
Services is a Web-enabled solution that provides you with
an exclusive, no-additional-charge enhancement to the
service and support on the IBM eServer ® . You should
benefit from greater system availability due to faster
problem resolution and preemptive monitoring. IBM
Electronic Services is comprised of two separate but
complementary elements: IBM Electronic Services news
page and IBM Electronic Service Agent™ .
IBM Electronic Services news page provides you with a
single Internet entry point that replaces the multiple entry
points traditionally used by customers to access IBM
Internet services and support. By using the news page,
it enables you to gain easier access to IBM resources for
assistance in resolving technical problems.
The IBM Electronic Service Agent is no-additional charge
software that resides on your IBM eServer system. It is
designed to proactively monitor events and transmit
system inventory information to IBM on a periodic
customer-defined timetable. The IBM Electronic Service
Agent tracks system inventory, hardware error logs and
performance information. If the server is under a current
IBM maintenance service agreement or within the IBM
Warranty period, the Service Agent automatically reports
-3- 204-005
Get documents about "