This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: [PATCH] Attempt to fix execute/20000419-1 (sibcall related)


On Fri, Jul 07, 2000 at 07:00:19PM +0200, Jakub Jelinek wrote:
> I don't know though if check_sibcall_argument_overlap_1 will find all the
> problematic cases ...

I'd worry about aliasing here too.  Consider two mems, one for int
and one for float.  Their alias set differences could easily schedule
the store before the load despite your efforts here.

We could perhaps force all loads from the argument block to be the
same alias set during sibcalls.  We'll be asserting that no argument
gets its address taken, so there's no worry about that sort of alias
set descrepencies from normal usage.  The problem is that I'm not
certain how to accomplish this -- alias set assignment happens elsewhere,
and not anything that we can tweek differently between normal and
sibcall alternatives.

Well, perhaps immediately after we assert that there are no arguments
with their address taken, we rescan the function modifying the alias set
for each mem found that references the argument block.

> BTW: Was the sibcall bug you mentioned something else?

Yes.  I'll have to search for it.


r~

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]