I have been trying to compile an operational version of an example project.
But there is a problem...
The compiler appears to "compiles" NOP instructions into "--HOLE--" locations that are created when the linker fails to find the source code from the library.
> I expected that the compiler would stop and that the code composer would show an error for the missing link.
map file output - extract:
SECTION ALLOCATION MAP
output attributes/
section page origin length input sections
-------- ---- ---------- ---------- ----------------
.pinit 0 003f4000 00000000 UNINITIALIZED
phyRamFuncs
* 0 003e8000 000013c5 RUN ADDR = 00008c00
003e8000 00000900 phy_lin_afe031_f2806x.lib : phy_cfft16i_vcu.obj (phyRamFuncs)
003e8900 000001d3 : phy_cfft16c_256p_vcu.obj (phyRamFuncs)
003e8ad3 00000001 --HOLE-- [fill = 0]
003e8ad4 0000018f : phy_cfft16c_128p_vcu.obj (phyRamFuncs)
003e8c63 00000001 --HOLE-- [fill = 0]
003e8c64 00000185 : phy_eqz.obj (phyRamFuncs)
When I look at the disassembler and step my way through the code, I find a link to the missing file
T:/csa_group_emeter/dspsrdc_csa/emeter/dsp_c28x/src/fft/phy_cfft16i_vcu.asm:49:66
Disassembly extract:
0x3EF729: 8F4096D4 MOVL XAR5, #0x0096d4
0x3EF72B: A094 MOVL *+XAR4[AR0], XAR5
0x3EF72C: 76408C00 LCR $T:/csa_group_emeter/dspsrdc_csa/emeter/dsp_c28x/src/fft/phy_cfft16i_vcu.asm:49:66$
0x3EF72E: 0006 LRETR
InitPeripheralClocks:
0x3EF72F: 7622 EALLOW
> Is this normal behaviour?