>> What Should We Expect?
1. Other than what was discussed, if the application makes use of all the native datatypes for 64 bit systems, there could be a significant increase in memory footprint. However this can be optimized. While a 64bit integer should theoretically be default integer datatype, it isn't required for most uses, for which reason int32 should be used. Because 64bit compilers for the Unix, Windows and OSX worlds all make use of a data model that
retains int as a 32bit sized variable, this shouldn't be a problem at all.
There should be however still an increase in memory footprint (there not being one would be a sure sign Firefox wasn't true 64bit). This is because, other than datatypes, memory pointers are no longer 32bit in size, but 64bit. Pointers are very prevalent constructs since they hold the address of memory locations. They are however somewhat volatile, with many being constructed just to point to a memory location to help perform some operation, and then discarded. So, while this indicates an increase in memory consumption, it's not anything to be much concerned about.
2. There should be a somewhat recognizable performance increase. Particularly under load. Not really because 64bit is faster than 32bit (under no circumstance it is), but because 64bit applications perform better than 32bit application under a 64bit-ready operating system. This is so because there are no memory address translations, no operating system subsystem performing extra work, no unnecessary datatype castings, no nothing. A 64bit application is expected to perform under a 64bit operating system, as a 32bit application would on a 32bit system.
There are exceptions to this. Certain types of 64bit applications do perform better in 64bit OSes than 32bit ones on a 32bit OS. This is almost always true of any application that makes intensive use of the CPU because it can take advantage of the larger CPU registers. And even more if they also make use of multi-threading. They can just move more data to the CPU. Encryption and compression algorithms are an example. Performance critical applications like weather prediction, scientific simulators, distributed computing software, etc are another.
This shouldn't benefit much applications that make nominal use of the CPU though, as is the case with a browser. Think of it has having a 4 lane highway. If only 1,000 cars pass there in an hour, making it an 8 lane won't get anyone anywhere faster. But if 100,000 cars want to make that highway every hour, well then...
Another factor is the application usage pattern. Because a browser usage pattern is event-driven (users presses things, and things happen that take up to a couple seconds, after which things wait to be pressed again), performance benefits from larger CPU registers go unnoticed (except of course for anyone on a placebo diet). If however the operations took a lot longer to compute, or a browser wasn't an event-driven application but something that would perform continuously on its own, then those benefits would become visible.