Skip to content
  • Ahmed Bougacha's avatar
    [CodeGen] Remove dead FastISel code after SDAG emitted a tailcall. · 20b3e9a8
    Ahmed Bougacha authored
    When SDAGISel (top-down) selects a tail-call, it skips the remainder
    of the block.
    
    If, before that, FastISel (bottom-up) selected some of the (no-op) next
    few instructions, we can end up with dead instructions following the
    terminator (selected by SDAGISel).
    
    We need to erase them, as we know they aren't necessary (in addition to
    being incorrect).
    
    We already do this when FastISel falls back on the tail-call itself.
    Also remove the FastISel-emitted code if we fallback on the
    instructions between the tail-call and the return.
    
    llvm-svn: 296552
    20b3e9a8
Loading