| Processor |
Lists the processor families supported by the Power Architecture compiler. When you select a processor from this list, the compiler generates code that makes use of any of its hardware features or special instructions. For more detailed information on the features of each processor, refer to its reference manual document. |
| Floating Point |
Define how the compiler handles floating-point operations it encounters in the source code. - Software - Select to have the compiler emulate floating-point operations by calling functions that perform floating-point math. The C runtime library contains the functions the compiler invokes.
If you use software floating-point emulation, you must include the appropriate C runtime library in your project. Enabling this option without including the appropriate C runtime library causes link errors.
- Hardware - Select to have the compiler handle floating-point operations by generating instructions for the hardware floating-point unit.
Do not select this option if your target processor does not have a hardware floating-point unit.
- None - Select to disable floating-point support.
- SPFP - Select to have the compiler handle single-precision floating-point operations by generating instructions for the e500-EFPU floating point unit, and perform double-precision floating-point operations by calling functions that perform double-precision floating-point math.
Do not select this option if your target processor does not have a e500-EFPU floating-point unit.
- SPFP_Only - Select to have the compiler handle single-precision floating-point operations by generating instructions for the e500-EFPU floating point unit.
- DPFP - Select to have the compiler handle both single- and double-precision floating-point operations by generating instructions for the e500 DPFP APU (Double-Precision Floating-Point Auxiliary Processing Unit).
Do not select this option if your target processor does not have a DPFPunit.
Default : Software If the selected processor does not handle a floating-point exception, you should select None or Software floating-point support. |
| Byte Ordering |
Enables you to select big-endian or little-endian byte ordering. - Big Endian - Select to generate object code and links an executable image that uses big-endian byte ordering. This is the default setting for the compiler and linker. If you choose big-endian byte ordering, within a given multi-byte numeric representation, the most significant byte has the lowest address; the word is stored big-end-first.
- Small Endian - Select to generates object code and links an executable image that uses little-endian byte ordering. If you choose little endian byte ordering, within a given multi-byte numeric representation, bytes at lower addresses have lower significance; the word is stored little-end-first.
|
| Code Model |
Enables you to select the addressing mode for the binary generated by the current build target. - Absolute Addressing - Select to instruct the build tools to generate a non-relocatable binary.
- SDA Based PIC/PID Addressing - Select to instruct the build tools to generate a relocatable binary that uses position independent-code (PIC)/position-independent-data (PID) addressing. The resulting binary can be loaded at any address.
|
| ABI |
Enables you to select the Application Binary Interface (ABI) the compiler and assembler use for function calls and structure layout. - EABI - Converts a 14-bit branch relocation to a 24-bit branch relocation only if the 14-bit relocation cannot reach the calling site from the original relocation.
- System V ABI - Changes the absolute addressed references of data from code to use a small data register (such as r13) instead of r0; absolute code is changed to code references to use the PC relative relocations.
- SuSE - Use the SuSE� Linux ABI with GNU extensions.
- YellowDog - Use the YellowDog™ Linux ABI with GNU extensions.
- SDA PIC/PID - Use position-independent addressing executable code and data.
|
| Tune Relocations |
Pertains to object relocation and is available for just the above mentioned application binary interfaces. |
| Compress for PowerPC VLE (Zen) |
Generate VLE instructions. This option sets the processor to Zen. |
| Small Data |
Specify the threshold size (in bytes) for an item to be considered small data by the linker. The linker stores small data items in the Small Data address space. Data in the Small Data address space can be accessed more quickly than data in the normal address space. |
| Small Data2 |
Specify the threshold size (in bytes) for an item to be considered small data by the linker. The linker stores read-only small data items in the Small Data2 address space. Constant data in the Small Data2 address space can be accessed more quickly than data in the normal address space. |