Skip to content
  • Jakob Stoklund Olesen's avatar
    Add SplitEditor::overlapIntv() to create small ranges where both registers are live. · 17499351
    Jakob Stoklund Olesen authored
    If a live range is used by a terminator instruction, and that live range needs
    to leave the block on the stack or in a different register, it can be necessary
    to have both sides of the split live at the terminator instruction.
    
    Example:
    
      %vreg2 = COPY %vreg1
      JMP %vreg1
    
    Becomes after spilling %vreg2:
    
      SPILL %vreg1
      JMP %vreg1
    
    The spill doesn't kill the register as is normally the case.
    
    llvm-svn: 125102
    17499351
Loading