alpha haifa regression
Jeffrey A Law
law@cygnus.com
Mon Sep 29 13:30:00 GMT 1997
In message < 199709292023.NAA04543@cygnus.com >you write:
> I think the correct fix here is to set the MEM_IN_STRUCT_P bit on the
> MEM rtx created by SETUP_INCOMING_VARARGS. This should make the sched
> blockage insn unnecessary.
>
> The MEM_IN_STRUCT_P bit should be set because these are not scalar stores.
You're probably right. However the blockage will still be needed.
If you set MEM_IN_STRUCT_P, then the alias code will assume that
the flushback can't alias scalars. This loses when you extract
scalars off a varargs list.
If you don't set MEM_IN_STRUCT_P, then the alias code will assume
that the flushback can't alias structs. THis loses when you
extract structs off a varargs list.
Basically you can't win. The way we do flushbacks creates an
aliasing situation that's going to cause problems somewhere.
Thus the easiest solution is a blockage insn.
jeff
More information about the Gcc
mailing list