Skip to content
  • Lang Hames's avatar
    Refactor AnalyzeBranch on ARM. The previous version did not always analyze · 24864fe1
    Lang Hames authored
    indirect branches correctly. Under some circumstances, this led to the deletion
    of basic blocks that were the destination of indirect branches. In that case it
    left indirect branches to nowhere in the code.
    
    This patch replaces, and is more general than either of the previous fixes for
    indirect-branch-analysis issues, r181161 and r186461.
    
    For other branches (not indirect) this refactor should have *almost* identical
    behavior to the previous version. There are some corner cases where this
    refactor is able to analyze blocks that the previous version could not (e.g.
    this necessitated the update to thumb2-ifcvt2.ll). 
    
    <rdar://problem/14464830>
    
    llvm-svn: 186735
    24864fe1
Loading