Solution
There is a known issue in the XMD related to ELF parsing. This ELF verify error could be because of the ELF parsing issue.
You have some alternative solutions for this.
Solution 1:
Use [Debug As] > [Launch on Hardware] so that the XMD is not directly used to download the ELF.
In "Debug As", GDB is used to load the ELF file rather than the XMD.
Solution 2:
Check your linker script. If the memory sections are not defined in your script, add the memory definitions and map all sections into the memory.
Example)
MEMORY
{
ilmb_cntlr_dlmb_cntlr : ORIGIN = 0x00000050, LENGTH = 0x00001FB0
FLASH_MEM0_BASEADDR : ORIGIN = 0x86000000, LENGTH = 0x02000000
DDR3_SDRAM_MPMC_BASEADDR : ORIGIN = 0x50000000, LENGTH = 0x10000000
}
.<section name> : {
...
} > DDR3_SDRAM_MPMC_BASEADDR
Solution 3:
Check the address mapping of .vector and .text section. If they are mapped into the same memory and there is some gap between the start address of .text and the end of .vector, you should assign the start address of .text right after .vector.