memrefs_conflict_p omission?
John Carr
jfc@mit.edu
Mon Oct 6 06:44:00 GMT 1997
> Something that came to mind a bit ago while fixing AND nonsense,
> was that perhaps this was an omission?
That code came from sched.c and I don't think I changed it (at least
not in the final version -- I remember working on that code but I
later decided the base-address aliasing was better done elsewhere). I
suspect that the block controlled by the condition you changed in the
second part of your patch is no longer needed with the new base
address alias code.
The change is at least half correct: the argument pointer itself can
never alias a global symbol. One thing to check is whether in any of
the targets the argument pointer can be variable. If so your change
might not be safe. The scheduler would not realize that the two
memory references in
[arg pointer + 4] = x
arg pointer += 4
[arg pointer] = y
are to the same address.
More information about the Gcc
mailing list