TriCore dialog box

Processor (drop-down list)

AUDO-lite

For use with AUDO-lite boards.

AUDO-1

For use with AUDO-1 boards.

Rider A

For use with the TriCore Rider A Evaluation Board.

Rider B

For use with the TriCore Rider B Evaluation Board.

Floating point processor (drop-down list)

Default

Generates code using the floating point capabilities of the selected processor.

None

Rejects any use of floating point variables or constants in C, C++, or Pascal. Equivalent to the -fnone build-time option.

The following describes the item boxes in the TriCore window.

Far Function Calls

Treats all function calls as far calls.

A function call is normally performed with a CALL instruction, which takes a 24-bit PC-relative displacement. In large programs with functions placed throughout memory, you can make functions unreachable with the CALL instruction. This will result in an error at link time.

To avoid this problem, the compiler provides support for Far Function Calls. In place of the CALL instruction, the compiler places the address of the called function into a register and uses a CALLI instruction to perform an indirect call. This method can reach a function anywhere in the address space of the processor, at the expense of slightly larger code.

Small Data or Zero Data Threshold

Specifies a size in bytes to determine which data objects appear in the Small or Zero Data Areas. By default, objects less that 8 bytes are placed in Small Data Area (i.e the default small data area threshold is 8), and no objects are placed in Zero Data Area (i.e the default zero data area threshold is 0). Equivalent to the -sda= and -zda= special data area options.

See the Development Guide for more information on the SDA and ZDA optimizations.

Put variables smaller than threshold size into (drop-down list)

Normal data

Puts variables smaller than threshold into the data area.

Small data

Allocates an area of memory to hold data objects smaller than the small data threshold and references objects in that area using r4 as the base pointer register. Equivalent to the -sda Small Data Area option.

Zero data

Allocates an area of memory to hold data objects smaller than the zero data threshold and references objects in that area using r0 as the base pointer register. This improves program size and speed because addressing an object via the Small/Zero Data Area base register uses fewer instructions. The total size of the Small/Zero Data Area is limited to 64k; large applications may not be able to take advantage of this feature. Equivalent to the -zda special data area option.


Previous

Next



Copyright © 1999, Green Hills Software. All rights reserved.