Skip to content
  1. Jan 02, 2014
    • Arnold Schwaighofer's avatar
      BasicAA: Fix value equality and phi cycles · 0d10a9d5
      Arnold Schwaighofer authored
      When there are cycles in the value graph we have to be careful interpreting
      "Value*" identity as "value" equivalence. We interpret the value of a phi node
      as the value of its operands.
      When we check for value equivalence now we make sure that the "Value*" dominates
      all cycles (phis).
      
      %0 = phi [%noaliasval, %addr2]
      %l = load %ptr
      %addr1 = gep @a, 0, %l
      %addr2 = gep @a, 0, (%l + 1)
      store %ptr ...
      
      Before this patch we would return NoAlias for (%0, %addr1) which is wrong
      because the value of the load is from different iterations of the loop.
      
      Tested on x86_64 -mavx at O3 and O3 -flto with no performance or compile time
      regressions.
      
      PR18068
      radar://15653794
      
      llvm-svn: 198290
      0d10a9d5
    • Alp Toker's avatar
      Rename 'assert' to something less loaded in CompileAssertHasType · 18787628
      Alp Toker authored
      Suggested by Aaron Ballman.
      
      llvm-svn: 198288
      18787628
  2. Jan 01, 2014
  3. Dec 31, 2013
  4. Dec 30, 2013
Loading