compiler/ppc/subprim: Apply most of the same LENGTH/LIST changes as on SPARC.

  * Second verse, not quite same as the first, because PPC doesn't
have branch-delay slots.

  * Move the error-trap out-of-line, remove the second type test,
rotate and partially unroll the loop so that the nromal exit just
falls out the bottom but we still don't have to branch into the
middle.

  * Justification and explanation is the same as for the SPARC
versions, not too many commits ago.