static INSTR_CLASS
ClassifyInstruction(
      PPC_INSTRUCTION *I,
      UNWIND_INTENT Intent,
      ifdef _IMAGEHLP_SOURCE_
                     HANDLE hProcess,
      PREAD_PROCESS_MEMORY_ROUTINE ReadMemory,
      PFUNCTION_TABLE_ACCESS_ROUTINE FunctionTableAccess,
      endif ULONG Pc,
      PMILLICODE_INFO Info
  );

Routine description:

    This function inspects the instruction identified by the "Pc"
    argument and determines what sort of processing is needed in order
    to simulate its execution.  Some instructions can be safely
    ignored altogether, in which case "InstrIgnore" is returned.  For
    others, a value is returned indicating what kind of instruction
    was found.  The interpreation depends on the value of "Intent".

Arguments:

    I - Address of a struct containing the instruction to be examined.
    Intent - Type of unwinding being performed.
    Pc - Address of the instruction, used for computing relative branch
        addresses.
    Info - Address to store a description of the register save/restore
        millicode.

Return value:

    One of the enum values defined above is returned.