Hopefully a lot! It's silly for things to not use these instructions and do other simple things to save power. Sadly, even today on platforms like Nintendo DS they're not used all the time.
I'd expect that most would. Traditionally console games render at a fixed frame rate, halting the CPU and waiting for the next vblank interrupt. Games on modern hardware are less likely to be designed this way, but it was still fairly common in the late 90s.
Not sure about the DS, but a lot of game engines nowadays are multi-threaded and output frames as fast as the GPU will do so. Goldeneye is one N64 game that was notable for doing this, but most games of that era used a fixed frame rate.
Okay, so 3 + 5 + 3 = 11 bus cycles = 22 + 3 = 25 CPU cycles. 19 to get the first word. A bunch of other stuff goes down if the cache is write back. Store queues help.
Er... 8 bus cycles to get the first word, and 1 bus cycle for each of the subsequent words.
The SH-4 manual states, "Data reading is performed, using the wraparound method, in order from the longword data corresponding to the effective address, and when the corresponding data arrives in the cache, the read data is returned to the CPU." (SH-4 Software Manual, REJ09B0318-0600)
The SH-4 apparently has store queues, although I'm not sure I understand the description in the manual.
The store queue getting full is a problem on the OMAP3530. I found that rearranging the instructions to put loads after stores often improved performance (apparently it can load from the L1 cache while a write back is in progress).
90% hit rate seems optimistic to me for direct mapped 16KB cache. The Dreamcast probably spends a lot of time preparing big chunks of data for the PowerVR chip, which would typically burn straight through cache. Unlike the N64 the Dreamcast CPU is performing T&L itself.
For sequential reads, the hit rate would be 87.5% (every eighth word would be a new cache line). If it's doing a lot of constant loads, it could be >90%. Random reads would of course have a low hit rate. I don't have any idea what the i-cache miss rate would be.
drk||Raziel refers to "static" and "inline" memory accesses. I'm not completely sure I understand what he is referring to, but since he refers only to reads, and not writes, being "static", I assume that these are PC-relative constant pool loads. As for "inline", the way I handle memory accesses normally is that there is a test of the address and a conditional branch, which either goes to a memory access or to a more complex handler. If the address can be pre-determined via constant propagation, then there is no branch, so these are inline.
If I'm understanding this correctly, 53.75% inline reads is absolutely huge. I just profiled some N64 games and found 15.6% in Mario 64 and 6.7% in Zelda OoT. Something very strange is going on with DC games if this is true.