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]
Other format: [Raw text]

Re: [PATCH] Fix tree-ssa-coalesce ICE on ASM_EXPR (PR tree-optimization/31866)


On 6/20/07, Jakub Jelinek <jakub@redhat.com> wrote:
Hi!

create_outofssa_var_map ICEs on the attached testcase, because
DECL_REGISTER VAR_DECL input isn't SSA_NAME (that's correct).
create_outofssa_var_map needs SSA_NAME_VERSION of both the input
and output to coalesce them, therefore trying to do anything to
coalesce a VAR_DECL with SSA_NAME wouldn't fit well into the
current coalescing framework.

Ok for trunk?

This is ok.


Thanks,
Richard.

BTW, the constraint analysis seems to be too simplistic to me,
although info gcc requests that if a number is together with some
other letters in one variant, it comes last (so "0rm" is invalid),
e.g. "0,1,2" or "0,rm" are valid constraints and I'm not sure if it
is a good idea to coalesce in that case.  My guess would be we want
to coalesce only if the constraint contains just a number (say "5"),
or if each variant contains the same number (say "1,1" or "5,5,5").

2007-06-20 Jakub Jelinek <jakub@redhat.com>

        PR tree-optimization/31866
        * tree-ssa-coalesce.c (create_outofssa_var_map): Do nothing
        if ASM_EXPR's input is not a SSA_NAME.

* gcc.dg/pr31866.c: New test.



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