disassembler(3X)

disassembler - Disassembles a MIPS instruction and prints the results

As shipped in IRIX 6.5.19. Last changed in IRIX 6.5.19.

NAME
     disassembler - Disassembles a MIPS instruction and prints the results

SYNOPSIS
     int disassembler (iadr, regstyle, get_symname, get_regvalue,
     get_bytes, print_header)
     unsigned iadr;
     int regstyle;
     char *(*get_symname)();
     int (*get_regvalue)();
     long (*get_bytes)();
     void (*print_header)();

DESCRIPTION
     This routine is available for o32 ABI only.

     disassembler disassembles and prints a MIPS machine instruction on
     stdout. It accepts the following arguments:

     iadr      Specifies the instruction address to be disassembled.

     regstyle  Specifies how registers are named in the disassembly; if the
               value is 0, compiler names are used; otherwise, hardware
               names are used.

     The next arguments are function pointers, most of which give the
     caller some flexibility in the appearance of the disassembly.  The
     only function that must be provided is get_bytes.  All other functions
     are optional.

     get_bytes
          This function is called with no arguments and returns the next
          byte(s) to disassemble.

     get_symname
          This function is passed an address, which is the target of a jal
          instruction.  If NULL is returned or if get_symname is NULL, the
          disassembler prints the address; otherwise, the string name is
          printed as returned from get_symname.

     get_regvalue
          If get_regvalue is not NULL, it is passed a register number and
          returns the current contents of the specified register.
          disassembler prints this information along with the instruction
          disassembly.

     print_header
          If print_header is not NULL, it is passed the instruction address
          iadr and the current instruction to be disassembled, which is the
          return value from get_bytes.  print_header can use these
          parameters to print any desired information before the actual
          instruction disassembly is printed.

     If get_bytes is NULL, the disassembler returns -1 and errno is set to
     EINVAL; otherwise, the number of bytes that were disassembled is
     returned.  If the disassembled word is a jump or branch instruction,
     the instruction in the delay slot is also disassembled.

     The program must be loaded with the object file access routine library
     libelfutil.a.

SEE ALSO
     ldfcn(4)