This is the mail archive of the 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: [lno, ?tree-ssa] Fix coalesce_tpa_members

On Thu, 2004-03-04 at 07:06, Zdenek Dvorak wrote:
> Hello,
> I have encountered the following problem during lno-branch testing, very
> probably it also applies to tree-ssa branch (although I do not have a
> testcase for it):
> Suppose you have a function with parameter s and the following partitions
> s
> s_1
> s_2
> in coalesce_tpa_members, suppose p_1 is the partition s_1.  In the first
> iteration, it is coalesced with partition s, and s is made the root
> variable of the partition; var however still is s_1.  In the second
> iteration it is coalesced with s_2, and since s_1 is an ordinary ssa
> name, the root variable of the created partition is s_2 (i.e. it is not
> replaced by s).
> As a result, s is replaced with a temporary variable everywhere, thus
> making the parameter unused and causing misscompilation.  This patch
> fixes it by setting the var to point always to the root of the first
> partition.

I believe you are correct, and I suspect it is finally showing up
because of the addition of the coalesce list, which changes some of the
numerical orderings we'd see. Funny how something like that can go on

Can you send me a .optimized detail dump?



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