Documentation for load_bps.pl |
load_bps.pl
Generate load address breakpoints
load_bps.pl [options] xml file *.gel file sym1 sym2 ...
... OR ...
ofdXX -x out file | perl load_bps.pl [options] *.gel file sym1 sym2 ...
-h : Output usage and quit
--cg_xml_version : Print out the version of the cg_xml package in use
What follows is mostly accurate. Needs some work ...
The symbols must be global and defined in the file (storage class C_EXT). Such symbols are associated with actual code or variable storage in the file. Global symbols only referenced in a file (storage class C_EXTREF) are NOT supported. Similarly, static symbols that are only defined and used in a single file are NOT supported. The scoping mechanism required to support such static symbols is not easy to build.
OFD stands for Object File Display utility. Examples include ofd6x for C6000 and ofd55 for C5500.
Use the -x option of OFD to create the XML file. Example ...
ofd6x -x -o=file.xml file.out
You can avoid creating the XML file by piping the output from OFD into the script ...
ofd6x -x file.out | perl load_bps.pl [options] I<sym1 sym2 ...>
Recent releases of OFD support options for filtering the XML output down to what is strictly of interest. The best options to use in combination with this script are:
-x --xml_indent=0 --obj_display=none,sections,symbols
Filtering the XML in this way reduces the amount of data processed by this script, thus making it run faster.
However, as of this writing, there is a bug in OFD which means, for ELF files, the above options do not work. Eventually, this bug will be fixed. In the mean time use these options:
-x --xml_indent=0 --obj_display=norawdata,nosymbols
These options are less than ideal, but still effective.
This script was written using Perl version 5.8.3. It may not work with earlier revisions of Perl.
Documentation for load_bps.pl |