Difference between revisions of "Overlay generator"

From esoterum.org
Jump to: navigation, search
Line 9: Line 9:
 
*<code>'''common_ancestors.common'''</code>: Generated by overlay_generator to record common ancestor information so that it need not be recalculated later
 
*<code>'''common_ancestors.common'''</code>: Generated by overlay_generator to record common ancestor information so that it need not be recalculated later
 
*<code>'''included_functions.funcs'''</code>: List of functions included in overlay, generated by overlay_generator
 
*<code>'''included_functions.funcs'''</code>: List of functions included in overlay, generated by overlay_generator
*<code>'''graph_[1-8].dot'''</code> and <code>'''graph_[1-8].ps'''</code>: dotty and postscript representations of GCCFG at various stages of construction, graphs follwing graph_4 each represent an overlay algorithm
+
*<code>'''graph_[1-8].dot'''</code> and <code>'''graph_[1-8].ps'''</code>: dotty and postscript representations of GCCFG at various stages of construction, graphs following graph_4 each represent an overlay algorithm
 +
 
 +
 
 +
=== Makefile settings ===
 +
*Auto overlay Makefile:
 +
:<code>'''MY_CFLAGS += -fdump-tree-cfg -ffunction-sections -Wl,--auto-overlay -Wl,--auto-overlay=linker.script'''</code> (note that the cfg switch is not required here)
 +
:<code>'''LDFLAGS += -Wl,-Map,spu.map -Wl,--auto-overlay -Wl,--gc-sections'''</code> (-Map,spu.map switch is not required, -gc-sections is used to dump unused .bss .txt and .data sections in spu.map)
 +
*Makefile with linker.script.ed ===
 +
:<code>'''LDFLAGS= -Wl,-T,linker.script -Wl,-Map,spu.map -Wl,--gc-sections (-gc-sections is used to dump unused .bss .txt and .data sections in spu.map)

Revision as of 01:43, 15 November 2009

List of support files

  • function_sizes.nm: Required by overlay_generator, generated from object files using the command line:
nm --size-sort *.o > function_sizes.nm
  • region_sizes_file.dat: Used by script to describe what sizes of scratchpad memory to use, the contents are three space delimited numbers given in bytes: start_size stop_size step_size
  • root_node.configure_overlay_generator: Used by script to describe the root function for the project folder
  • object_filename.cfg: Needed by overlay generator to determine GCCFG of project code, one file is generated for each object file by gcc when the -fdump-tree-cfg switch is given in CFLAGS

List of files generated by overlay_generator

  • common_ancestors.common: Generated by overlay_generator to record common ancestor information so that it need not be recalculated later
  • included_functions.funcs: List of functions included in overlay, generated by overlay_generator
  • graph_[1-8].dot and graph_[1-8].ps: dotty and postscript representations of GCCFG at various stages of construction, graphs following graph_4 each represent an overlay algorithm


Makefile settings

  • Auto overlay Makefile:
MY_CFLAGS += -fdump-tree-cfg -ffunction-sections -Wl,--auto-overlay -Wl,--auto-overlay=linker.script (note that the cfg switch is not required here)
LDFLAGS += -Wl,-Map,spu.map -Wl,--auto-overlay -Wl,--gc-sections (-Map,spu.map switch is not required, -gc-sections is used to dump unused .bss .txt and .data sections in spu.map)
  • Makefile with linker.script.ed ===
LDFLAGS= -Wl,-T,linker.script -Wl,-Map,spu.map -Wl,--gc-sections (-gc-sections is used to dump unused .bss .txt and .data sections in spu.map)