The xobjdump tool is used to examine and manipulate the contents of XMOS Executable (XE) files.
Display a summary of the available options.
Display the build version information.
Lists the contents or ‘sectors’ of the .xe file.
Creates a new XE file with suffix .xb in which the ELF sectors containing ELF files have been replaced with BINARY sectors containing flat binary images and a ‘load address’ at which to place them.
Also removes the SYSCONFIG sector.
XE files generated by this option retain the same format and can therefore be further manipulated by xobjdump.
- --split, -s#
Extracts ELF, BINARY, SYSCONFIG, XN, PROGINFO and XSCOPE sectors from the XE package and writes them as files in the current directory. Specifically:
Default generated filename
Where a sector exists with duplicate <node> and <core> value to a sector previously extracted (which will often be the case), the extracted filename will have an incrementing id added. For instance, the first ELF sector on node 0, tile 0 will be extracted as
image_n0c0.elf. The second ELF sector on node 0, tile 0 will be extracted as
--splitis set, then extracts sectors into the directory <dir>. The directory must already exist.
- -o <file>#
When used with
--split, causes ELF sectors to be extracted to
When used with
--strip, new XE file is given name
- --disassemble, -d#
Disassembles contents of all executable sectors in XE file
- --source, -S#
- --disassemble-all, -D#
--disassemble, but also provides binary contents of non-executable data sections.
The following options all have more powerful alternatives that rely on the generally available readelf tool.
- --syms, -t#
Provides the symbol table for every ELF sector in the XE file.
More powerful example: Use
xobjdump --splitto obtain all the ELF files, then issue readelf --syms *.elf.