asm void saveNonvolatileRegistersPPC(register unsigned long *saveBuffer)
{
xor r10, r10, r10
stwx r1, r3, r10
addi r10, r10, 4
stwx r13, r3, r10
addi r10, r10, 4
stwx r14, r3, r10
addi r10, r10, 4
stwx r15, r3, r10
addi r10, r10, 4
stwx r16, r3, r10
addi r10, r10, 4
stwx r17, r3, r10
addi r10, r10, 4
stwx r18, r3, r10
addi r10, r10, 4
stwx r19, r3, r10
addi r10, r10, 4
stwx r20, r3, r10
addi r10, r10, 4
stwx r21, r3, r10
addi r10, r10, 4
stwx r22, r3, r10
addi r10, r10, 4
stwx r23, r3, r10
addi r10, r10, 4
stwx r24, r3, r10
addi r10, r10, 4
stwx r25, r3, r10
addi r10, r10, 4
stwx r26, r3, r10
addi r10, r10, 4
stwx r27, r3, r10
addi r10, r10, 4
stwx r28, r3, r10
addi r10, r10, 4
stwx r29, r3, r10
addi r10, r10, 4
stwx r30, r3, r10
addi r10, r10, 4
stwx r31, r3, r10
addi r10, r10, 4
mfspr r11, 256
stwx r11, r3, r10
addi r10, r10, 4
stvx v20, r3, r10
addi r10, r10, 16
stvx v21, r3, r10
addi r10, r10, 16
stvx v22, r3, r10
addi r10, r10, 16
stvx v23, r3, r10
addi r10, r10, 16
stvx v24, r3, r10
addi r10, r10, 16
stvx v25, r3, r10
addi r10, r10, 16
stvx v26, r3, r10
addi r10, r10, 16
stvx v27, r3, r10
addi r10, r10, 16
stvx v28, r3, r10
addi r10, r10, 16
stvx v29, r3, r10
addi r10, r10, 16
stvx v30, r3, r10
addi r10, r10, 16
stvx v31, r3, r10
blr
}