SPRACZ7 January 2022 TMS320F28075 , TMS320F28075-Q1 , TMS320F28076 , TMS320F28232 , TMS320F28232-Q1 , TMS320F28234 , TMS320F28234-Q1 , TMS320F28235 , TMS320F28235-Q1 , TMS320F28332 , TMS320F28333 , TMS320F28334 , TMS320F28335 , TMS320F28335-Q1 , TMS320F28374D , TMS320F28374S , TMS320F28375D , TMS320F28375S , TMS320F28375S-Q1 , TMS320F28376D , TMS320F28376S , TMS320F28377D , TMS320F28377D-EP , TMS320F28377D-Q1 , TMS320F28377S , TMS320F28377S-Q1 , TMS320F28378D , TMS320F28378S , TMS320F28379D , TMS320F28379D-Q1 , TMS320F28379S
The F2837xD/S/07x devices are among the first C2000 device families to support both Common Object File Format (COFF) and Embedded Application Binary Interface (EABI). Refer https://software-dl.ti.com/C2000/docs/optimization_guide/phase1/index.html#application-binary-interface-abi for more information. EABI overcomes several limitations of COFF, which includes the symbolic debugging information not being capable of supporting C/C++, and the limit on the maximum number of sections and length of section names and source files. Note that EABI and COFF are not compatible and conversion between the two formats is not possible. The following is a brief summary of EABI differences compared to COFF.
Table 3-1 summarizes the compiler-generated section names used by COFF and EABI.
Description | COFF | EABI |
---|---|---|
Read-Only Sections | ||
Constdata | .econst | .const |
Constdata above 22-bits | .farconst | .farconst |
Code | .text | .text |
Pre-main constructors | .pinit | .init_array |
Exception handling | N/A | .c28xabi.exidx/.c28xabi.extab |
Read-Write Sections | ||
Uninitialized data | .ebss | .bss |
Initialized data | N/A | .data |
Uninitialized data above 22-bits | .farbss | .farbss |
Initialized data above 22-bits | N/A | .fardata |
Heap | .esysmem | .sysmem |
Stack | .stack | .stack |
CIO Buffer | .cio | .bss:cio |
For more information about EABI and the migration process, see the following reference guides: