AMD64 Flash Instability
Wow. I can't believe the problem's finally been solved.
Ever since the x86_64 version of the Adobe Flash Player came out, I've been using it. However, at some point this year it became rather unstable. I assumed it was related to the Ubuntu 9.04 release. With the 9.10 release of Ubuntu, the Flash was completely unusable; even YouTube would crash it. The strange thing was that my AMD64 Debian Unstable system at work didn't have this issue.
All sorts of possibilities existed. In the end, I finally found the solution in a forum thread. Apparently, early AMD64 chips (including my fx-51), do not implement the "lahf" instruction. Also, Adobe apparently calls it in their plugin.
The solution is quite ingenious. A man named Maks Verver came up with a thirty line C program that gets compiled as a library and loaded by Firefox on startup along with the other plugins. It simply implements a signal handler for SIGILL (illegal instruction), checks for the instruction in question, implements its functionality in software, and resumes. Brilliant.
I can now laugh at lahf.