+#if defined(_STRUCT_PPC_EXCEPTION_STATE)
+ lo = (void*)(info.__r1 - PPC_RED_ZONE_SIZE);
+ hi = (ptr_t)FindTopOfStack(info.__r1);
+
+ GC_push_one(info.__r0);
+ GC_push_one(info.__r2);
+ GC_push_one(info.__r3);
+ GC_push_one(info.__r4);
+ GC_push_one(info.__r5);
+ GC_push_one(info.__r6);
+ GC_push_one(info.__r7);
+ GC_push_one(info.__r8);
+ GC_push_one(info.__r9);
+ GC_push_one(info.__r10);
+ GC_push_one(info.__r11);
+ GC_push_one(info.__r12);
+ GC_push_one(info.__r13);
+ GC_push_one(info.__r14);
+ GC_push_one(info.__r15);
+ GC_push_one(info.__r16);
+ GC_push_one(info.__r17);
+ GC_push_one(info.__r18);
+ GC_push_one(info.__r19);
+ GC_push_one(info.__r20);
+ GC_push_one(info.__r21);
+ GC_push_one(info.__r22);
+ GC_push_one(info.__r23);
+ GC_push_one(info.__r24);
+ GC_push_one(info.__r25);
+ GC_push_one(info.__r26);
+ GC_push_one(info.__r27);
+ GC_push_one(info.__r28);
+ GC_push_one(info.__r29);
+ GC_push_one(info.__r30);
+ GC_push_one(info.__r31);
+#else