This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PR 13722 candidate fix
On Fri, 2004-01-23 at 00:47, Zack Weinberg wrote:
> Re-revised patch.
On the REG/SUBREG issue, I was looking at your latest patch. In the
full context of the previous patch, I see you already handle most of
these issues by having a default switch case that aborts. The only real
issue I see here is in the POST_MODIFY code where you have
+ if (GET_CODE (XEXP (offset, 1)) == REG)
...
+ else if (INTVAL (XEXP (offset, 1)) < -256 + 8)
which assumes without checking that the offset is a CONST_INT if it
isn't a REG. I put in an abort to see if this ever happens, but I doubt
that it does.
There is also a possible issue where you call reg_overlap_mentioned_p,
and then assume that we have registers without checking. However, since
we are already calling ia64_split_tmode, and that aborts for subregs, I
think this is actually safe optimization wise. I think this can only
fail if you have rtl checking enabled, and we have a subreg, in which we
get the abort before calling ia64_split_tmode instead of inside
ia64_split_tmode which isn't a serious problem.
I see you have another modified patch. I can try this when my current
build finishes.
--
Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com