I sent a message to the bug-coreutils@gnu.org about the problem I had getting uname -p to work. Here's the reply I received (FWIW) Begin forwarded message:
Date: July 19, 2007 9:46:32 PM EDT Subject: Re: uname problem on Mac OS X
TjL wrote:
uname -p: i386 guname -p: unknown
The GNU uname program simply reports the result from the kernel system call uname(2).
man 2 uname
If the kernel does not report the processor type then GNU uname does not have any information to work with. Some vendors compile programs specifically for a single architecture and hard code in a value but this is not portable. The 'uname -p' option is not one of the standard options and I recommend that use of it is avoided.
http://www.opengroup.org/onlinepubs/009695399/utilities/uname.html
Actually use of uname for any purpose other than returning the system name is quite troublesome for portability. I would avoid it in all cases other than when you know that it is going to return meaningful data.