Displaying 4 results from an estimated 4 matches for "srcint".
2007 Jul 17
2
[LLVMdev] [PATCH] Re: Pluggable Register Coalescers
...intervals and
remove copy instructions. This code updates a bunch of dataflow information
so it's important that other register coalescers can use it.
During the course of this work, I noticed something odd. In the current
coalescer, we have this sequence:
00298 if (JoinIntervals(DstInt, SrcInt)) {
[...]
00322 } else {
[...]
00332 }
Ok, at this point intervals were joined and in the process, DstInt and SrcInt
might have been swapped by LiveInterval::join.
00334 bool Swapped = repSrcReg == DstInt.reg;
00335 if (Swapped)
00336 std::swap(repSrcReg, repDstReg);
00337 assert(MR...
2007 Jul 16
0
[LLVMdev] [PATCH] Re: Pluggable Register Coalescers
On Jul 16, 2007, at 9:12 AM, David Greene wrote:
> On Friday 13 July 2007 13:32, David A. Greene wrote:
>> On Wednesday 11 July 2007 15:07, Christopher Lamb wrote:
>>> Could it be possible for there to be a harness type interface that
>>> would allow coalescers that support both modes to be hooked into the
>>> pass registration, and those that depend on the
2007 Jul 16
2
[LLVMdev] [PATCH] Re: Pluggable Register Coalescers
On Friday 13 July 2007 13:32, David A. Greene wrote:
> On Wednesday 11 July 2007 15:07, Christopher Lamb wrote:
> > Could it be possible for there to be a harness type interface that
> > would allow coalescers that support both modes to be hooked into the
> > pass registration, and those that depend on the allocator not be
> > registered as passes?
>
> I have a
2007 Jul 18
0
[LLVMdev] [PATCH] Re: Pluggable Register Coalescers
On Jul 17, 2007, at 9:28 AM, David Greene wrote:
>
> [...]
> 00369 // If the intervals were swapped by Join, swap them back so
> that the
> register
> 00370 // mapping (in the r2i map) is correct.
> 00371 if (Swapped) SrcInt.swap(DstInt);
>
> Whoops! At this point repSrcReg is not consistent with SrcInt and the
> same goes for repDstReg!
>
> 00372 li_->removeInterval(repSrcReg);
> 00373 r2rMap_[repSrcReg] = repDstReg;
>
> Does this code get us into trouble due to the inconsistency create...