search for: findlastusebefor

Displaying 9 results from an estimated 9 matches for "findlastusebefor".

Did you mean: findlastusebefore
2012 Sep 03
2
[LLVMdev] Assert in LiveInterval update
Hi Sergei, I just fixed the broken test case for PR13719 with r163107, but from the debugging output you've posted it suspect it won't fix your test case. Your analysis looks good - findLastUseBefore(..) doesn't appear to be handling physregs. I'm surprised that isn't causing more failures. I'll see if I can find a failing case in the LLVM test-suite (it's been a while since I ran live-interval-update over all of it) and try out your modifications to findLastUseBefore. Tha...
2012 Sep 04
0
[LLVMdev] Assert in LiveInterval update
On Sep 2, 2012, at 11:52 PM, Lang Hames <lhames at gmail.com> wrote: > Hi Sergei, > > I just fixed the broken test case for PR13719 with r163107, but from the debugging output you've posted it suspect it won't fix your test case. > > Your analysis looks good - findLastUseBefore(..) doesn't appear to be handling physregs. I'm surprised that isn't causing more failures. I'll see if I can find a failing case in the LLVM test-suite (it's been a while since I ran live-interval-update over all of it) and try out your modifications to findLastUseBefore. I t...
2012 Aug 31
0
[LLVMdev] Assert in LiveInterval update
Lang, I think I am getting closer to understanding this. The findLastUseBefore() should probably look something like this: // Return the last use of reg between NewIdx and OldIdx. SlotIndex findLastUseBefore(unsigned Reg, SlotIndex OldIdx) { SlotIndex LastUse = NewIdx; if (TargetRegisterInfo::isPhysicalRegister(Reg)) { for (MCRegUnitRootIterator Ro...
2012 Aug 31
2
[LLVMdev] Assert in LiveInterval update
Hi Lang, Just one more quick question. in LiveIntervalAnalysis.cpp In SlotIndex findLastUseBefore(unsigned Reg, SlotIndex OldIdx) Did you really mean to use for (MachineRegisterInfo::use_nodbg_iterator UI = MRI.use_nodbg_begin(Reg), UE = MRI.use_nodbg_end(); UI != UE; UI.skipInstruction()) {} Aren't we currently dealing with units, not regis...
2012 Sep 10
3
[LLVMdev] Assert in LiveInterval update
...PM, Lang Hames <lhames at gmail.com> wrote: > > > Hi Sergei, > > > > I just fixed the broken test case for PR13719 with r163107, but from the > debugging output you've posted it suspect it won't fix your test case. > > > > Your analysis looks good - findLastUseBefore(..) doesn't appear to be > handling physregs. I'm surprised that isn't causing more failures. I'll see > if I can find a failing case in the LLVM test-suite (it's been a while > since I ran live-interval-update over all of it) and try out your > modifications to fin...
2012 Aug 30
0
[LLVMdev] Assert in LiveInterval update
Hi Sergei, Andy, Sorry - I got distracted with some other work. I'm looking into this and PR13719 now. I'll let you know what I find out. Sergei - thanks very much for the investigation. That should help me pin this down. Cheers, Lang. On Tue, Aug 28, 2012 at 2:33 PM, Sergei Larin <slarin at codeaurora.org> wrote: > Andy, Lang, > > Thanks for the suggestion. >
2016 Oct 28
0
Understanding and Cleaning Up Machine Instruction Bundles
> On Oct 27, 2016, at 5:30 PM, Matthias Braun <mbraun at apple.com> wrote: > >> >> On Oct 27, 2016, at 5:05 PM, Andrew Trick <atrick at apple.com <mailto:atrick at apple.com>> wrote: >> >>> The system works because the default basic block iterator moves from bundle to >>> bundle skipping the instructions inside the bundle. Iterating
2012 Aug 28
5
[LLVMdev] Assert in LiveInterval update
Andy, Lang, Thanks for the suggestion. I have spent more time with it today, and I do see some strange things in liveness update. I am not at the actual cause yet, but here is what I got so far: I have the following live ranges when I start scheduling a region: R2 = [0B,48r:0)[352r,416r:5)... R3 = [0B,48r:0)[368r,416r:5)... R4 = [0B,32r:0)[384r,416r:4)... R5 = [0B,32r:0)[400r,416r:4)...
2016 Oct 28
2
Understanding and Cleaning Up Machine Instruction Bundles
> On Oct 27, 2016, at 5:05 PM, Andrew Trick <atrick at apple.com> wrote: > > >> On Oct 27, 2016, at 2:33 PM, Matthias Braun <mbraun at apple.com> wrote: >> >> == BUNDLE instruction / operands == >> For many backend passes a bundle can appear as a single unit. However one important tool >> here is having an iterator over all operands of this