Skip to content
  • Duncan Sands's avatar
    Have GVN simplify instructions as it goes. For example, consider · 246b71c5
    Duncan Sands authored
    "%z = %x and %y".  If GVN can prove that %y equals %x, then it turns
    this into "%z = %x and %x".  With the new code, %z will be replaced
    with %x everywhere (and then deleted).  Previously %z would be value
    numbered too, which is a waste of time.  Also, while a clever value
    numbering algorithm would give %z the same value number as %x, our
    current one doesn't do so (at least I don't think it does).  The new
    logic has an essentially equivalent effect to what you would get if
    %z was given the same value number as %x, i.e. it should make value
    numbering smarter.  While there, get hold of target data once at the
    start rather than a gazillion times all over the place.
    
    llvm-svn: 118923
    246b71c5
Loading