AbortedChanges

Summary

  1. [Attributor][NFC] Improve time trace output (details)
  2. [Attributor][FIX] Properly check uses in the call not uses of the call (details)
  3. [Attributor][NFC] Hoist call out of a lambda (details)
  4. [Attributor][NFC] Clang-format (details)
  5. [Attributor][FIX] Do not attach range metadata to the wrong Instruction (details)
  6. [Attributor][FIX] Delete all unreachable static functions (details)
  7. [Attributor][NFC] Print the right value in debug output (details)
  8. [Attributor][NFC] Introduce a debug counter for `AA::manifest` (details)
  9. [Attributor] Finalize the CGUpdater after each SCC (details)
  10. [AMDGPU] Fix insert of SIPreAllocateWWMRegs in FastRegAlloc (details)
  11. [NFC] [LLParser] Renaming LLParser routines to comply LLVM coding style (details)
  12. Revert "[ADT] Fix for ImmutableMapRef" (details)
  13. Revert "[DebugInfo] Expose Fortran array debug info attributes through DIBuilder." (details)
  14. [JumpThreading] Remove extraneous calls to setEdgeProbability (details)
  15. [JumpThreading] Rename thread-prob-3.ll to thread-prob-1.ll (NFC) (details)
  16. [OpenMP][CUDA][FIX] Use the new `remquo` overload only for OpenMP (details)
  17. [SCEV] Re-enable "Use nw flag and symbolic iteration count to sharpen ranges of AddRecs", attempt 3 (details)
Commit cb813ab66a174396e90f92b65d74b4d813dd9c8d by johannes
[Attributor][NFC] Improve time trace output
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit 30e5a1f0be027b981e415e00691883bc52957976 by johannes
[Attributor][FIX] Properly check uses in the call not uses of the call

In the AANoAlias logic we determine if a pointer may have been captured
before a call. We need to look at other uses in the call not uses of the
call.

The new code is not perfect as it does not allow trivial cases where the
call has multiple arguments but it is at least not unsound and a TODO
was added.
The file was modifiedllvm/test/Transforms/Attributor/memory_locations.ll
The file was modifiedllvm/lib/Transforms/IPO/AttributorAttributes.cpp
The file was modifiedllvm/test/Transforms/Attributor/noalias.ll
Commit d504f7b91a937ba10e0b549ab8f1f5bb6c5c9a07 by johannes
[Attributor][NFC] Hoist call out of a lambda

The call is not free, unsure if  this is needed but it does not make it
worse either.
The file was modifiedllvm/lib/Transforms/IPO/AttributorAttributes.cpp
Commit 724fcce1092da409fe4ea63fb27d23637d472680 by johannes
[Attributor][NFC] Clang-format
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit bfe05b1aff1b8e5dd625f905879d7425c8460989 by johannes
[Attributor][FIX] Do not attach range metadata to the wrong Instruction

If we are looking at a call site argument it might be a load or call
which is in a different context than the call site argument. We cannot
simply use the call site argument range for the call or load.

Bug reported and reduced by Whitney Tsang <whitneyt@ca.ibm.com>.
The file was modifiedllvm/lib/Transforms/IPO/AttributorAttributes.cpp
The file was modifiedllvm/test/Transforms/Attributor/range.ll
Commit 1c2531c9e16412ba2bb2f8e594d7effa48e9d22e by johannes
[Attributor][FIX] Delete all unreachable static functions

Before we used to only mark unreachable static functions as dead if all
uses were known dead. Now we optimistically assume uses to be dead until
proven otherwise.
The file was modifiedllvm/test/Transforms/Attributor/liveness.ll
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
The file was modifiedllvm/test/Transforms/Attributor/IPConstantProp/deadarg.ll
The file was modifiedllvm/test/Transforms/Attributor/ArgumentPromotion/2008-09-08-CGUpdateSelfEdge.ll
Commit 1d57b7f5039a8b30fa6f1a448d1417c8a7783470 by johannes
[Attributor][NFC] Print the right value in debug output
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit 50d34958df7b7a335ce4ddc0258ed28273430399 by johannes
[Attributor][NFC] Introduce a debug counter for `AA::manifest`

This will simplify debugging and tracking down problems.
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit d13daa4018faf6a3427d80ed17e10f5913fee1b5 by johannes
[Attributor] Finalize the CGUpdater after each SCC

This matches the new PM model.
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit 057934a6d7faa5b91f016a5245c16adbde4d42ff by carl.ritson
[AMDGPU] Fix insert of SIPreAllocateWWMRegs in FastRegAlloc

SIPreAllocateWWMRegs was being inserted after RegisterCoalescer
but this pass does not exist during FastAlloc so pre-allocation
pass was never being run.
Insert pre-allocation after TwoAddressInstructionPass instead.

Reviewed By: rampitec

Differential Revision: https://reviews.llvm.org/D90236
The file was modifiedllvm/test/CodeGen/AMDGPU/wwm-reserved.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
Commit 467db11ccb1c4441eea4a520cf6574bad1872965 by AlokKumar.Sharma
[NFC] [LLParser] Renaming LLParser routines to comply LLVM coding style

For any newly added parse function, clang-tidy complains. New parse
functions are implicitly defined by a macro "Parse##CLASS(N, IsDistinct)".
Now this macro and exising function definitions are corrected (lower case
first character). Some other variable/function names are also corrected
to comply LLVM coding style.

Reviewed By: djtodoro

Differential Revision: https://reviews.llvm.org/D90243
The file was modifiedllvm/lib/AsmParser/LLParser.cpp
The file was modifiedllvm/lib/AsmParser/LLParser.h
Commit 481e0025840ee9f058fa72e8ad441257a4e41ea2 by 31459023+hctim
Revert "[ADT] Fix for ImmutableMapRef"

This reverts commit a6336eab0c507b665dda63fa9db1292a2cdee409.

This commit broke check-llvm under ASan:

See http://lab.llvm.org:8011/#/builders/5/builds/446 for more details.
The file was modifiedllvm/unittests/ADT/ImmutableMapTest.cpp
The file was modifiedllvm/include/llvm/ADT/ImmutableMap.h
Commit ae76729a015478fdfe1477653c36bfe390445f0d by 31459023+hctim
Revert "[DebugInfo] Expose Fortran array debug info attributes through DIBuilder."

This reverts commit 5b3bf8b453b8cc00efd5269009a1e63c4442a30e.

This caused a regression in the ASan buildbot. See comments at
https://reviews.llvm.org/D89817 for more information.
The file was modifiedllvm/include/llvm/IR/DIBuilder.h
The file was modifiedllvm/unittests/IR/DebugInfoTest.cpp
The file was modifiedllvm/lib/IR/DIBuilder.cpp
Commit b2f05fae80b0c1a307a9e257157a0d70e6623eb8 by kazu
[JumpThreading] Remove extraneous calls to setEdgeProbability

This patch removes extraneous calls to setEdgeProbability introduced
in c91487769d80487eba1712a7a172a1c8977a9b4f.

The follow-up patch, a7b662d0f4098371b96ce4446fb0eba79b0b649f, has
since fixed BranchProbabilityInfo::eraseBlock, so we don't need to
worry about getting stale values from getEdgeProbability.

Also, since getEdgeProbability(BB, BB->getSingleSuccessor()) returns
edge probability 1/1 by default for BB with exactly one successor
edge, we don't need to explicitly call setEdgeProbability.

This patch introduces almost no functional change, but we do end up
reducing debug messages from setEdgeProbability.

Differential Revision: https://reviews.llvm.org/D90284
The file was removedllvm/test/Transforms/JumpThreading/thread-prob-1.ll
The file was modifiedllvm/lib/Transforms/Scalar/JumpThreading.cpp
The file was removedllvm/test/Transforms/JumpThreading/thread-prob-2.ll
Commit adfaeece7b1675f01788bac02ddc6f5df7fe31ae by kazu
[JumpThreading] Rename thread-prob-3.ll to thread-prob-1.ll (NFC)

I just removed thread-prob-{1,2}.ll in
b2f05fae80b0c1a307a9e257157a0d70e6623eb8, so I am removing
thread-prob-3.ll to thread-prob-1.ll.
The file was removedllvm/test/Transforms/JumpThreading/thread-prob-3.ll
The file was addedllvm/test/Transforms/JumpThreading/thread-prob-1.ll
Commit 17c8251bca83072d2f3e00f936d6ce24500e6b02 by johannes
[OpenMP][CUDA][FIX] Use the new `remquo` overload only for OpenMP

CUDA buildbots complained about a redefinition when I landed D89971.
This is odd and I fail to understand where in the CUDA headers the other
definition is supposed to be. For now, given that CUDA doesn't need the
overload (AFAIKT), we simply restrict it to the OpenMP mode.
The file was modifiedclang/lib/Headers/__clang_cuda_cmath.h
Commit 624fc63a0510d77dc9f08099aa1d2d9f1996775c by mkazantsev
[SCEV] Re-enable "Use nw flag and symbolic iteration count to sharpen ranges of AddRecs", attempt 3

We can sharpen the range of a AddRec if we know that it does not
self-wrap and know the symbolic iteration count in the loop. If we can
evaluate the value of AddRec on the last iteration and prove that at least
one its intermediate value lies between start and end, then no-wrap flag
allows us to conclude that all of them also lie between start and end. So
the estimate of range can be improved to union of ranges of start and end.

Switched off by default, can be turned on by flag.

Differential Revision: https://reviews.llvm.org/D89381
Reviewed By: lebedev.ri, nikic
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was modifiedllvm/include/llvm/Analysis/ScalarEvolution.h
The file was modifiedllvm/test/Analysis/ScalarEvolution/no-wrap-symbolic-becount.ll