$REVOLUTION_SDK_ROOT/build/demos/rsodemo/LinkList
This is an example of the basic use of the RSO.
The dynamic (relocatable) modules, module A (a.rso) and module B (b.rso), are linked together.
This demo program allows you to confirm the referencing of static module from dynamic module and referencing between dynamic modules.
An example is also shown for referencing the functions and variables of dynamic modules from static modules. (Example: RSOResolvedModuleA)
To reference dynamic module function from static module, the function address is acquired from the dynamic module information and the referenced function symbol using RSOFindExportSymbolAddr.
Note: When a dynamic module is unlinked, please set its pointers as unresolved. (Example: RSOUnresolvedModuleA)
Typically, prolog should be called for each module links. Since module A and module B reference each other in this example, it is called only after both sides are linked.
This is true for epilog as well and will unlink after epilog of both modules is completed.
Demo Program List
RSOListInit, RSOLinkList, RSOUnLinkList, RSOFindExportSymbolAddr, RSOIsImportSymbolResolvedAll
2006/06/14 Initial version.
CONFIDENTIAL