What cause holes in a LiveInterval?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

What cause holes in a LiveInterval?

Tzu-Chien Chiu
LiveInterval.cpp.

// that v is live at i'. In this implementation intervals can have holes,
// i.e. an interval might look like [1,20), [50,65), [1000,1001).  Each
// individual range is represented as an instance of LiveRange, and the whole
// interval is represented as an instance of LiveInterval.

What cause these holes?

--
Tzu-Chien Chiu - XGI Technology, Inc.
URL: http://www.csie.nctu.edu.tw/~jwchiu/

_______________________________________________
LLVM Developers mailing list
[hidden email]         http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Reply | Threaded
Open this post in threaded view
|

Re: What cause holes in a LiveInterval?

Chris Lattner
On Thu, 15 Dec 2005, Tzu-Chien Chiu wrote:
> LiveInterval.cpp.
>
> // that v is live at i'. In this implementation intervals can have holes,
> // i.e. an interval might look like [1,20), [50,65), [1000,1001).  Each
> // individual range is represented as an instance of LiveRange, and the whole
> // interval is represented as an instance of LiveInterval.
>
> What cause these holes?

One example is control flow.  Consider code like this:

bb1:
   X = ...
   br bb3

bb2:
   return

bb3:
   use (X)
   br bb2

X is live in BB1 and BB3, but not BB2.

-Chris

--
http://nondot.org/sabre/
http://llvm.org/

_______________________________________________
LLVM Developers mailing list
[hidden email]         http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev