FailedChanges

Summary

  1. [DSE,MemorySSA] Split off partial tracking from isOverwite. (details)
  2. [llvm-readobj] - Change how we create DynRegionInfo objects. NFCI. (details)
  3. [lldb] Tab completion for process load/unload (details)
Commit a0e92ffd0d663a6f1c39239847d15c0d65d2c3d6 by flo
[DSE,MemorySSA] Split off partial tracking from isOverwite.

When traversing memory uses to look for aliasing reads/writes, we only
care about complete overwrites. This patch splits off the partial
overwrite tracking from isOverwrite This avoids some unnecessary work
when checking for read/write clobbers with MemorySSA-DSE.
isOverwrite, which skips the partial overwrite tracking.

This gives a relatively small improvement
http://llvm-compile-time-tracker.com/compare.php?from=ef2a2f77f87553a0a4a39f518eb9ac86b756bda6&to=658f3905dd96d3415f3782adc712c79fa59a4665&stat=instructions

This is part of the patches to bring down compile-time to the level
referenced in
http://lists.llvm.org/pipermail/llvm-dev/2020-August/144417.html

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D86280
The file was modifiedllvm/lib/Transforms/Scalar/DeadStoreElimination.cpp (diff)
Commit 80e9dd08784fc4f28bb04a8e9c0639d433a94d08 by grimar
[llvm-readobj] - Change how we create DynRegionInfo objects. NFCI.

Currently we have `checkDRI` and two `createDRIFrom` methods which
are used to create `DynRegionInfo` objects.

And we have an issue: constructions like:
`ObjF->getELFFile()->base() + P->p_offset`
that are used in `createDRIFrom` functions might overflow.

I had to revert `D85519` which triggered such UBSan failure.

This NFC, simplifies and generalizes how we create `DynRegionInfo` objects.
It will allow us to introduce more/better validation checks in a single place.
It also will allow to change `createDRI` to return `Expected<>` so
that we will be able to stop using the `reportError`, which
is used inside currently, and have a warning instead.

Differential revision: https://reviews.llvm.org/D86297
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp (diff)
Commit e1cd7cac8a36608616d515b64d12f2e86643970d by Raphael Isemann
[lldb] Tab completion for process load/unload

1. Complete `process load` with the common disk file completion, so there is not test provided for it;
2. Complete `process unload` with the tokens of valid loaded images.

Thanks for Raphael's help on the test for `process unload`.

Reviewed By: teemperor

Differential Revision: https://reviews.llvm.org/D79887
The file was modifiedlldb/test/API/functionalities/completion/Makefile (diff)
The file was addedlldb/test/API/functionalities/completion/shared.cpp
The file was modifiedlldb/source/Commands/CommandObjectProcess.cpp (diff)
The file was modifiedlldb/include/lldb/Target/Process.h (diff)
The file was modifiedlldb/test/API/functionalities/completion/TestCompletion.py (diff)