diff options
| -rw-r--r-- | llvm/include/llvm/CodeGen/LiveInterval.h | 6 | 
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/include/llvm/CodeGen/LiveInterval.h b/llvm/include/llvm/CodeGen/LiveInterval.h index d7b8f44e07b..3bce496b2b5 100644 --- a/llvm/include/llvm/CodeGen/LiveInterval.h +++ b/llvm/include/llvm/CodeGen/LiveInterval.h @@ -508,6 +508,12 @@ namespace llvm {            if (++I == E)              return;          } +        // Special case: A PHIDef value can have its def in the middle of a +        // segment if the value happens to be live out of the layout +        // predecessor. +        // Such a value is not live-in. +        if (EarlyVal->def == Idx.getBaseIndex()) +          EarlyVal = 0;        }        // I now points to the segment that may be live-through, or defined by        // this instr. Ignore segments starting after the current instr.  | 

