Use-and-clobber insns and some ancient combine.c code
Ulrich Weigand
weigand@i1.informatik.uni-erlangen.de
Fri Jun 18 14:56:00 GMT 2004
Richard Earnshaw wrote:
> Now in your case, we aren't talking about pseudos being allocated, we
> are talking about a hard register, so there is no constraint string.
> Since there isn't, combine has to act conservatively (it can't rely on
> the register allocator to fix things up) and must therefore assume that
> the value *might* be clobbered early.
OK, thanks for the explanation.
Unfortunately, this means there doesn't appear to be a way to specify
that a particular value is certainly *not* clobbered early ...
What about: If a hard reg is clobbered, but the same hard reg is also
used in the same insn, the clobber does *not* count as earlyclobber.
Do you think this would be feasible?
Bye,
Ulrich
--
Dr. Ulrich Weigand
weigand@informatik.uni-erlangen.de
More information about the Gcc
mailing list