Guide to Cell/B.E. Programming Documentation
© 2008 Sony Computer Entertainment Inc. All Rights Reserved. Version 1.0, August 2008
Page 13 of 16
The PowerPC™ Compiler Writer’s Guide
Cell Broadband Engine Public Information and Downloads
http://cell.scei.co.jp/e_download.html
Length
264 pages.
Audience
Although the title indicates an audience of compiler writers, the document is useful to all assembly-language
programmers who wish to optimize performance of application or system programs for the PPE.
Content
This guide describes, mainly by coding examples from IBM’s most experienced compiler developers, the code patterns
that perform well on PowerPC processors. It will be particularly helpful to compiler developers and application-code
specialists who are already familiar with optimizing compiler technology and are looking for ways to exploit the
PowerPC architecture. It will also be helpful to application programmers who need to understand and tune the output
of PowerPC compilers. The guide focuses only on a complier’s generation of efficient PowerPC back-end code; it does
not attempt to teach how to write an entire compiler or the accompanying library routines.
Recommended Use
Browse after browsing the PowerPC Microprocessor Family: The Programming Environments Manual for 64-Bit
Microprocessors and refer to it thereafter as needed during coding of PPE software.
Document Sections
The document has the following sections:
1. Introduction: Summarizes RISC architectures, optimizing compilers, and assumptions.
2. Overview of the PowerPC Architecture: Summarizes the PowerPC application environment and instruction set.
3. Code Selection: How to choose optimal code for control-flow, integer and string operations, and floating-point
operations.
4. Implementation Issues: Hardware implementations, hazards, scheduling, and alignment.
5. Clever Examples: A collection of common algorithms implemented in efficient assembly code.
There are also appendices describing application binary interface (ABI) considerations, early PowerPC 6xx hardware
implementations, PowerPC instruction-usage statistics, and optimal code sequences.
Recommended Prerequisites
Read or browse:
CBE Programming Handbook
PowerPC Microprocessor Family: The Programming Environments Manual for 64-Bit Microprocessors
PowerPC™ Microprocessor Family: Vector/SIMD Multimedia Extension Technology Programming
Environments Manual
Further Details
See:
PowerPC Architecture Books I, II, and III