[llvm-commits] [llvm] r40913 - in /llvm/trunk: include/llvm/CodeGen/LiveInterval.h lib/CodeGen/LiveInterval.cpp lib/CodeGen/LiveIntervalAnalysis.cpp lib/CodeGen/SimpleRegisterCoalescing.cpp
Chris Lattner
clattner at apple.com
Tue Aug 7 18:02:11 PDT 2007
On Aug 7, 2007, at 4:49 PM, Evan Cheng wrote:
> Author: evancheng
> Date: Tue Aug 7 18:49:57 2007
> New Revision: 40913
>
> URL: http://llvm.org/viewvc/llvm-project?rev=40913&view=rev
> Log:
> - LiveInterval value#'s now have 3 components: def instruction #,
> kill instruction #, and source register number (iff the value# is
> defined by a
> copy).
> - Now def instruction # is set for every value#, not just for copy
> defined ones.
> - Update some outdated code related inactive live ranges.
> - Kill info not yet set. That's next patch.
Nice
> + /// ValueNumberInfo - If the value number definition is
> undefined (e.g. phi
> + /// merge point), it contains ~0,x,x. If the value number is
> not in use, it
> + /// contains ~1,x,x to indicate that the value # is not used.
> The first
> + /// entry is the instruction # of the definition, the second
> is the kill #.
> + /// If the third value is non-zero, then the val# is defined
> by a copy and
> + /// it represents the register number it is copied from.
> + struct VNInfo {
> + unsigned def;
> + unsigned kill;
> + unsigned reg;
Yay for structs with actual names on the members :). With this you
can now move the "The first entry is the instruction #" comments down
to the members in the struct.
-Chris
More information about the llvm-commits
mailing list