SPRU514Z July 2001 – October 2023 SM320F28335-EP
The ANSI/ISO C standard specifies that global (extern) and static variables without explicit initializations must be initialized to 0 before the program begins running. This task is typically done when the program is loaded. Because the loading process is heavily dependent on the specific environment of the target application system, in COFF ABI mode the compiler itself makes no provision for initializing to 0 otherwise uninitialized static storage class variables at run time. It is up to your application to fulfill this requirement.
You should explicitly initialize all global objects which you expected the compiler would set to zero by default.
In EABI mode the uninitialized variables are zero initialized automatically.