How do I interpret the reports the compiler generates?


eTPU_C generates some reports in the listing file that describe variables and ETPU_functions.

00F8 clocal                           signed int16        0200  0203

This type of report appears in the RAM usage map. It reports on the location that a variable occupies in RAM (some values also represent registers or parameter offsets) and its type.

It describes the range of instructions in the program for which this declaration is in scope and valid. Local variables allocated to the same locations are not overlapping so long as their scope ranges are different.

  0           one  0200  0210  (4 words)  SRAM =  0  Local RAM =  8

Each ETPU_function has an entry in the eTPU Function Summary. The function number at left describes its entries' position in the entry table. The record describes the function's lowest and highest ROM bytes and the number of 32-bit instruction words it uses.

Its parameter RAM and local RAM usage is also reported. Local RAM usage is for the entire function execution: memory allocated to local storage needs to equal the largest local RAM specification given here. The amount of parameter RAM needed can be used in host interface programs by expanding the host information macro ::ETPUfunctionframeram(x), where x is either the function number or name given in these reports.