Dave,
Well, I have firefox-45.9.0-2.oc00.i686.rpm, which is targeted at the i686. Unluckily it is not yet ready for wide deployment for a couple of reasons...
Yup, I got that now as well, and I'm also following the updates on the FF dev email list.
...About architectures, or at least my understanding. There's two parameters that can be passed to GCC to control what CPU we target.
-march, which controls the actual instruction set. Targeting the Pentium 4 gives various extra instructions over the i686 such as MMX, SSE and SSE2 and perhaps others. Should benefit all modern CPU's but will sigill (unsupported instruction) on older CPU's
-mtune, which controls the instruction ordering. Most CPU's are fairly happy with the i686 ordering as even on your Phenom II, it should be close to optimum or at least good enough. Then there's the Pentium 4, which liked completely different ordering, ordering that are not optimum for most CPU's due to the P4 using such a different architecture. I'd guess if you look, your Firefox uses something like -mtune=pentium4.
Regarding the Pentium4 and extra instructions, is that really what you meant to say? It is the newer CPUs that introduce additional functionality (SSE2 maybe, etc?) and therefore the Pentium4 would default to a smaller sub-set of instructions, whereas the i686 would be the super-set. So my thinking is that the i686 target is the "desired" code for the newer CPUs...if not, then my thinking is reversed...LOL!
So here is the summary of build setups across the three different working FF 45.9 install I have:
1) === FF 45.9 GA official build 7z file ===
Compiler Version Compiler flags
gcc.exe 4.9.2 -Wall -Wempty-body -Wpointer-to-int-cast -Wsign-compare -Wtype-limits -Wno-unused -Wcast-align -O2 -g -march=pentium4 -std=gnu99 -fgnu89-inline -fno-strict-aliasing -Zomf -fno-math-errno -pthread
c++ 4.9.2 -idirafter /@unixroot/usr/include/os2tk45 -Wall -Wempty-body -Woverloaded-virtual -Wsign-compare -Wwrite-strings -Wno-invalid-offsetof -Wcast-align -O2 -g -march=pentium4 -fno-exceptions -fno-strict-aliasing -Zomf -fno-rtti -fno-exceptions -fno-math-errno -std=gnu++0x -pthread -DNDEBUG -DTRIMMED -g -O2 -fomit-frame-pointer -idirafter /@unixroot/usr/include/os2tk45
2) === FF 45.9 last daily build ===
Compiler Version Compiler flags
gcc.exe 4.9.2 -Wall -Wempty-body -Wpointer-to-int-cast -Wsign-compare -Wtype-limits -Wno-unused -Wcast-align -march=i686 -mtune=i686 -std=gnu99 -fgnu89-inline -fno-strict-aliasing -Zomf -fno-math-errno -pthread
c++ 4.9.2 -idirafter /@unixroot/usr/include/os2tk45 -Wall -Wempty-body -Woverloaded-virtual -Wsign-compare -Wwrite-strings -Wno-invalid-offsetof -Wcast-align -march=i686 -mtune=i686 -fno-exceptions -fno-strict-aliasing -Zomf -fno-rtti -fno-exceptions -fno-math-errno -std=gnu++0x -pthread -DNDEBUG -DTRIMMED -g -O3 -fomit-frame-pointer
3) === FF 45.9 RPM EXP build ===
Compiler Version Compiler flags
gcc.exe 4.9.2 -Wall -Wempty-body -Wpointer-to-int-cast -Wsign-compare -Wtype-limits -Wno-unused -Wcast-align -O2 -g -march=i686 -std=gnu99 -fgnu89-inline -fno-strict-aliasing -Zomf -fno-math-errno -pthread
c++ 4.9.2 -idirafter /@unixroot/usr/include/os2tk45 -Wall -Wempty-body -Woverloaded-virtual -Wsign-compare -Wwrite-strings -Wno-invalid-offsetof -Wcast-align -O2 -g -march=i686 -fno-exceptions -fno-strict-aliasing -Zomf -fno-rtti -fno-exceptions -fno-math-errno -std=gnu++0x -pthread -DNDEBUG -DTRIMMED -g -O2 -fomit-frame-pointer -idirafter /@unixroot/usr/include/os2tk45
Regarding the -mtune option, only the last 45.9 test build shows the -mtune=i686 config, the other two, the GA 7z and RPM releases do not show the matching Pentium4 nor i686 flags.