Pat Haugen schrieb:
I'm seeing some odd behavior in ira for PowerPC, starting with the big
ira merge best I can tell (r171649).
void foo(float *f1, float*f2) {
*f1 = *f2;
}
If I compile with gcc -S -m64 -O3 -mcpu=power7 and look at the ira dump,
I see that the pseudo used to copy the data, r120, is spilled. Reload
comes along and fixes up this simple example so we end up with just a
load/store for the copy, but spilling when we have plenty of available
registers is obviously wrong.
Reminds me of PR48435 which Vladimir fixed in r172202.
Johann