Package ghidra.app.util.bin.format.macho.threadcommand

# Class ThreadStatePPC

java.lang.Object
ghidra.app.util.bin.format.macho.threadcommand.ThreadState
ghidra.app.util.bin.format.macho.threadcommand.ThreadStatePPC

All Implemented Interfaces:
  `StructConverter`

public class ThreadStatePPC extends ThreadState

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `int`
  `cr`
  Condition register
  `long`
  `ctr`
  Count register
  `long`
  `lr`
  Link register
  `long`
  `mq`
  MQ register (601 only)
  `static final int`
  `PPC_EXCEPTION_STATE`
  `static final int`
  `PPC_EXCEPTION_STATE64`
  `static final int`
  `PPC_FLOAT_STATE`
  `static final int`
  `PPC_THREAD_STATE`
  `static final int`
  `PPC_THREAD_STATE64`
  `static final int`
  `PPC_VECTOR_STATE`
  `long`
  `r0`
  `long`
  `r1`
  `long`
  `r10`
  `long`
  `r11`
  `long`
  `r12`
  `long`
  `r13`
  `long`
  `r14`
  `long`
  `r15`
  `long`
  `r16`
  `long`
  `r17`
  `long`
  `r18`
  `long`
  `r19`
  `long`
  `r2`
  `long`
  `r20`
  `long`
  `r21`
  `long`
  `r22`
  `long`
  `r23`
  `long`
  `r24`
  `long`
  `r25`
  `long`
  `r26`
  `long`
  `r27`
  `long`
  `r28`
  `long`
  `r29`
  `long`
  `r3`
  `long`
  `r30`
  `long`
  `r31`
  `long`
  `r4`
  `long`
  `r5`
  `long`
  `r6`
  `long`
  `r7`
  `long`
  `r8`
  `long`
  `r9`
  `long`
  `srr0`
  Instruction address register (PC)
  `long`
  `srr1`
  Machine state register (supervisor)
  `static final int`
  `THREAD_STATE_NONE`
  `long`
  `vrsave`
  Vector Save Register
  `long`
  `xer`
  User's integer exception register

  ### Fields inherited from interface ghidra.app.util.bin.StructConverter

  `ASCII, BYTE, DWORD, IBO32, IBO64, POINTER, QWORD, SLEB128, STRING, ULEB128, UTF16, UTF8, VOID, WORD`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `long`
  `getInstructionPointer()`
  `DataType`
  `toDataType()`
  Returns a structure datatype representing the contents of the implementor of this interface.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### PPC_THREAD_STATE

    public static final int PPC_THREAD_STATE
    See Also:
      - Constant Field Values

  - ### PPC_FLOAT_STATE

    public static final int PPC_FLOAT_STATE
    See Also:
      - Constant Field Values

  - ### PPC_EXCEPTION_STATE

    public static final int PPC_EXCEPTION_STATE
    See Also:
      - Constant Field Values

  - ### PPC_VECTOR_STATE

    public static final int PPC_VECTOR_STATE
    See Also:
      - Constant Field Values

  - ### PPC_THREAD_STATE64

    public static final int PPC_THREAD_STATE64
    See Also:
      - Constant Field Values

  - ### PPC_EXCEPTION_STATE64

    public static final int PPC_EXCEPTION_STATE64
    See Also:
      - Constant Field Values

  - ### THREAD_STATE_NONE

    public static final int THREAD_STATE_NONE
    See Also:
      - Constant Field Values

  - ### srr0

    public long srr0
    Instruction address register (PC)

  - ### srr1

    public long srr1
    Machine state register (supervisor)

  - ### r0

    public long r0

  - ### r1

    public long r1

  - ### r2

    public long r2

  - ### r3

    public long r3

  - ### r4

    public long r4

  - ### r5

    public long r5

  - ### r6

    public long r6

  - ### r7

    public long r7

  - ### r8

    public long r8

  - ### r9

    public long r9

  - ### r10

    public long r10

  - ### r11

    public long r11

  - ### r12

    public long r12

  - ### r13

    public long r13

  - ### r14

    public long r14

  - ### r15

    public long r15

  - ### r16

    public long r16

  - ### r17

    public long r17

  - ### r18

    public long r18

  - ### r19

    public long r19

  - ### r20

    public long r20

  - ### r21

    public long r21

  - ### r22

    public long r22

  - ### r23

    public long r23

  - ### r24

    public long r24

  - ### r25

    public long r25

  - ### r26

    public long r26

  - ### r27

    public long r27

  - ### r28

    public long r28

  - ### r29

    public long r29

  - ### r30

    public long r30

  - ### r31

    public long r31

  - ### cr

    public int cr
    Condition register

  - ### xer

    public long xer
    User's integer exception register

  - ### lr

    public long lr
    Link register

  - ### ctr

    public long ctr
    Count register

  - ### mq

    public long mq
    MQ register (601 only)

  - ### vrsave

    public long vrsave
    Vector Save Register

- ## Method Details

  - ### getInstructionPointer

    public long getInstructionPointer()
    Specified by:
      `getInstructionPointer` in class `ThreadState`

  - ### toDataType

    public DataType toDataType() throws DuplicateNameException, IOException
    Description copied from interface: `StructConverter`
    Returns a structure datatype representing the contents of the implementor of this interface.

    For example, given:

         class A {
             int foo;
             double bar;
         }

    The return value should be a structure data type with two data type components; an INT and a DOUBLE. The structure should contain field names and, if possible, field comments.

    Returns:
      returns a structure datatype representing the implementor of this interface
    Throws:
      `DuplicateNameException` - when a datatype of the same name already exists
      `IOException` - if an IO-related error occurs
    See Also:
      - `StructureDataType`