Why does ELF file have so many blank spaces?

171 Views Asked by At

I'm sorry about the weird snippets. I won't be able to paste the exact code.

The following list from an ELF file shows addresses and commands at them.

    0x4000XXXX:     [someInstr] [someReg], [someReg2], [someReg3]
    0x4000XXXY:     [someInstr] [someRegValue], [somereg3]
    0x4000XXXZ:     [jumpInstruction] [someReg3] + 0xXXX, [someReg4]
    0x4000XXXA:     [someInstr]
    0x4000XXXB:     [someInstr]
    0x4000XXXC:     [someInstr]
    0x4000XXXD:         

The third instruction adds 0xXXX [which is some address value] to value in someReg3 register. Going there,

    0x4000YYYY:     [someInstruction]
    0x4000YYYZ:     [someInstruction]
    0x4000YYYX:     [someInstruction]
    0x4000YYYA:     

we see that the execution will stop once 0x4000YYYA address comes up as it is blank. [The instructions above it are all linear ones like OR, AND etc.]

My question is, why are the blanks even there?

In the example I gave above, I have no idea where the exact "ending" instruction resides, but using nm -S [filename] and readelf -l [filename] I was able to estimate 2 end points. Unfortunately, those addresses have unimplemented instructions and it causes interruptions in the program. The file has quite a lot of blank spaces but I've only included 2 for an example. These blanks are interrupting the program I'm running. Even if I skip the execution at these addresses, I have no idea where to stop.

0

There are 0 best solutions below