ColdFire Compiler > Processor

Use this panel to specify processor behavior. You can specify the file paths and define macros.

The following figure shows the Processor panel.

Figure 1. Tool Settings - ColdFire Compiler > Processor
Tool Settings - ColdFire Compiler > Processor

The following table lists and defines each option of the Processor panel.

Table 1. Tool Settings - ColdFire Compiler > Processor Options
Option Description
Struct Align ( -align) Specifies record and structure alignment in memory:
  • byte - Aligns all fields on 1 byte boundaries
  • 68k (word) - Aligns all fields on word boundaries
  • coldfire (long) - Aligns all fields on long word boundaries
Default: coldfire (long) This panel element corresponds to the options align pragma. NOTE: When you compile and link, ensure that alignment is the same for all files and libraries.
Code Model Specifies access addressing for data and instructions in the object code:
  • Smart (16/32 bit) - Relative (16-bit) for function calls in the same segment; otherwise absolute (32-bit)
  • Far (32 bit) - Absolute for all function calls. Generates a 32-bit absolute references to the code and data.
  • Near (16 bit) - Generates a 16-bit references to the code and data.
  • Near Relative (pc16) - Generates a 16-bits relative references to code.
Default: Near Relative (pc16)
Data Model Specifies global-data storage and reference:
  • Far (32 bit) - Storage in far data space; available memory is the only size limit
  • Near (16 bit) - Storage in near data space; size limit is 64K
Default: Far (32 bit) This panel element corresponds the far_data pragma
Floating Point Specifies handling method for floating point operations:
  • Software - C runtime library code emulates floating-point operations.
  • Hardware - Processor hardware performs floating point operations; only appropriate for processors that have floating-point units.
Default: Software For software selection, your project must include the appropriate FP_ColdFire C runtime library file. Grayed out if your target processor lacks an FPU.
A6 Stack Frames ( -a6) Clear to disable call-stack tracing; generates faster and smaller code. By default, the option is checked.
Pool Sections ( -pool) Check to collect all string constants into a single data object so your program needs one data section for all of them.
Generate Code for Profiling ( -profile) Check to enable the processor generate code for use with a profiling tool. Checking this box corresponds to using the command-line option -profile. Clearing this checkbox is equivalent to using the command-line option -noprofile
Position-Independent Code ( -pic) Check to generate position independent code (PIC) that is non relocatable.
Position-Independent Data ( -pid) Check to generate non-relocatable position-independent data (PID). PID is available with 16- and 32-bit addressing.
Register Coloring ( -coloring) Clear to enable the Compiler force all local variables to be stack-based except for compiler generated temporaries.
Instruction Scheduling ( -scheduling) Clear to prevent from scheduling instructions. Only applied at optimization levels 2 and 3.
Peephole ( -peephole) Clear to prevent the compiler from compiling long instruction sequences into compact ones. When ON it does not affect debugging unless the resulting instruction is a memory-to-memory operation which might make a variable used as temporary disappear.
Use .sdata/.sbiss for (byte in integer between -1..32K) The options are:
  • All data - Select this option button to store all data items in the small data address space
  • All data smaller than - Select this option button to specify the maximum size for items stored in the small data address space; enter the maximum size in the text box. Using the small data area speeds data access, but has ramifications for the hardware memory map. The default settings specify not using the small data area.
By default, all data smaller than is checked.