Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ xlate_pro_add_info(3E) — IRIX 6.5.3f

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

libelfutil(5)

open(2)

xlate(4)

xlate_init_fd(3)

xlate_finish(3)

xlate_get_info(3)

xlate_pro_init(3)

xlate_pro_finish(3)



XLATEPROADDINFO(3E)                                  XLATEPROADDINFO(3E)



NAME
     xlateproaddinfo - set recorded overall info

SYNOPSIS
     #include <elf.h>
     #include <libelf.h>
     #include <dwarf.h>
     #include <libdwarf.h>
     #include <cmplrs/xlate.h>
     #include <libXlate.h>

int xlateproaddinfo(xlatetablepro protableptr,
Elf64Sxword datamoved,
Elf64Addr startupfwa,
Elf64Addr startuplwa,
Elf32Word oldtextexists,
Elf32Word oldtextalloc
);
DESCRIPTION
xlate_pro_add_info is used to set values into the xlate data stream.
pro_table_ptr must be a valid open producer translate table handle.
These values cannot be calculated by the library but must be supplied by
the application. If xlate_pro_add_info is not called, 0 will be used as
a default value for the corresponding fields of the xlate header in the
created byte stream.
data_moved
Pass in the number of bytes the data section was moved (normally
only pixie(1) moves data sections). The value is not the amount
the text was moved but the amount that the data had moved above
and beyond text movement. The movement is important because
rld(1) relies on the distance between text and data being fixed.
The movement is an important fact in the translation process but
the fact is not ordinarily needed by consuming tools or
applications.
startup_fwa
Pass in the pc address (First Word Address) (in the translated
text) of special startup code introduced by a translation tool.
pixie is currently the only tool creating such special startup
code. Other tools should pass in 0 for a value.
startup_lwa
Pass in the pc address (Last Word Address) (in the translated
text) of the end (actually one past the last address) of the
startup code introduced by a translation tool. pixie is
currently the only tool creating such special startup code.
Other tools should pass in 0 for a value.
Page 1


XLATEPROADDINFO(3E)                                  XLATEPROADDINFO(3E)



     old_text_exists
             Pass in is 1 if the original (untranslated) text is present in
             the executable or DSO.  Pass in 0 if the original text is not
             present.  cord(1)ed DSOs often do not have the original text
             present.  pixied applications and DSOs usually do have the
             original text present.

     old_text_alloc
             Pass in 1 if the original text is present and is marked to be
             brought into memory automatically on program startup.  Otherwise
             old_text_alloc pass in 0.  This lets a consuming application
             (such as a debugger) know what it has to do to find the relevant
             original text image.

FILES
     /usr/include/libXlate.h
     /usr/include/cmplrs/xlate.h
     /usr/include/elf.h
     /usr/include/dwarf.h
     /usr/include/libdwarf.h
     /usr/lib/libelfutil.a

DIAGNOSTICS
     Returns XLATE_TB_STATUS_NO_ERROR (0) on success.  In case of error, a
     negative number is returned indicating the error.  In case of error,
     nothing is returned thru the pointer arguments which would return values
     on successful call (values might have been changed thru these pointers
     but any such changes are not meaningful).

     Error returns possible are:

     XLATE_TB_STATUS_INVALID_TABLE
             means that the pro_table_ptr is not a valid open producer handle.

     XLATE_TB_STATUS_ADD_TOO_LATE
             means that the call has occurred after a call to
             xlate_pro_disk_header which is not allowed. call
             xlate_pro_add_info before calling xlate_pro_disk_header.

SEE ALSO
     libelfutil(5), open(2), xlate(4), xlate_init_fd(3), xlate_finish(3),
     xlate_get_info(3), xlate_pro_init(3), xlate_pro_finish(3)













                                                                        Page 2



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026