The P router uses the ipv4 (or ipv6) info contained in the MPLS packet to do per-flow load-balancing. If no ipv4 info is present it uses the inner most label to perform the hashing algorithm.
Hope this helps,
Regards,
Harold Ritter, CCIE #4168 (EI, SP)