-typedef struct ppc_thread_state {
- unsigned int srr0; /* Instruction address register (PC) */
- unsigned int srr1; /* Machine state register (supervisor) */
- unsigned int r0;
- unsigned int r1;
- unsigned int r2;
- unsigned int r3;
- unsigned int r4;
- unsigned int r5;
- unsigned int r6;
- unsigned int r7;
- unsigned int r8;
- unsigned int r9;
- unsigned int r10;
- unsigned int r11;
- unsigned int r12;
- unsigned int r13;
- unsigned int r14;
- unsigned int r15;
- unsigned int r16;
- unsigned int r17;
- unsigned int r18;
- unsigned int r19;
- unsigned int r20;
- unsigned int r21;
- unsigned int r22;
- unsigned int r23;
- unsigned int r24;
- unsigned int r25;
- unsigned int r26;
- unsigned int r27;
- unsigned int r28;
- unsigned int r29;
- unsigned int r30;
- unsigned int r31;
-
- unsigned int cr; /* Condition register */
- unsigned int xer; /* User's integer exception register */
- unsigned int lr; /* Link register */
- unsigned int ctr; /* Count register */
- unsigned int mq; /* MQ register (601 only) */
-
- unsigned int vrsave; /* Vector Save Register */
-} ppc_thread_state_t;
-
-/* This structure should be double-word aligned for performance */
-
-typedef struct ppc_float_state {
- double fpregs[32];
-
- unsigned int fpscr_pad; /* fpscr is 64 bits, 32 bits of rubbish */
- unsigned int fpscr; /* floating point status register */
-} ppc_float_state_t;
-
-typedef struct ppc_vector_state {
- unsigned long save_vr[32][4];
- unsigned long save_vscr[4];
- unsigned int save_pad5[4];
- unsigned int save_vrvalid; /* VRs that have been saved */
- unsigned int save_pad6[7];
-} ppc_vector_state_t;
+#ifndef _POSIX_C_SOURCE
+typedef struct ppc_thread_state ppc_thread_state_t;
+#else /* _POSIX_C_SOURCE */
+typedef struct __darwin_ppc_thread_state ppc_thread_state_t;
+#endif /* _POSIX_C_SOURCE */
+
+#ifndef _POSIX_C_SOURCE
+typedef struct ppc_thread_state64 ppc_thread_state64_t;
+#endif /* _POSIX_C_SOURCE */
+
+#ifndef _POSIX_C_SOURCE
+typedef struct ppc_float_state ppc_float_state_t;
+#else /* _POSIX_C_SOURCE */
+typedef struct __darwin_ppc_float_state ppc_float_state_t;
+#endif /* _POSIX_C_SOURCE */
+
+#ifndef _POSIX_C_SOURCE
+typedef struct ppc_vector_state ppc_vector_state_t;
+#else /* _POSIX_C_SOURCE */
+typedef struct __darwin_ppc_vector_state ppc_vector_state_t;
+#endif /* _POSIX_C_SOURCE */