Why is mainstream Ubuntu still i386-compiled?
During the 10.10 development cycle the decision was made to drop support for i386 and i486 entirely. You can see the original specification here: https://blueprints.launchpad.net/ubuntu/+spec/foundations-m-686-compile. I believe support may have been dropped for i586 as well, although that was a bit more controversial.
Importantly, this wasn't just kernel optimizations (686-compiled kernels had been available long before), but every package in the archive.
However, the name i386 for the 32-bit version of Ubuntu still lingers around in a few places, such as in package description fields (which are built for arches "i386" and "amd64" rather than "32bit" and "64bit"). These are just cosmetic issues in technical parts of the distro, however, and for a whole host of reasons aren't worth updating.
New releases of Ubuntu(10.10 and above) won't work on anything older than i686. http://princessleia.com/journal/?p=2989