llvm-project/llvm
Jay Foad f79e6a8847 [MemCpyOptimizer] Simplify API of processStore and processMem* functions
Previously these functions either returned a "changed" flag or a "repeat
instruction" flag, and could also modify an iterator to control which
instruction would be processed next.

Simplify this by always returning a "changed" flag, and handling all of
the "repeat instruction" functionality by modifying the iterator.

No functional change intended except in this case:
// If the source and destination of the memcpy are the same, then zap it.
... where the previous code failed to process the instruction after the
zapped memcpy.

Differential Revision: https://reviews.llvm.org/D81540
2020-06-11 12:48:09 +01:00
..
benchmarks
bindings Fix go bindings after FixedVectorType -> VectorType change. 2020-05-15 16:37:57 -07:00
cmake [CMake] Do not append -lm to CMAKE_REQUIRED_LIBRARIES on Apple 2020-06-05 12:45:30 -04:00
docs FileCheck [11/12]: Add matching constraint specification 2020-06-10 15:56:10 +01:00
examples StoreInst should store Align, not MaybeAlign 2020-05-15 12:26:58 -07:00
include [MemCpyOptimizer] Simplify API of processStore and processMem* functions 2020-06-11 12:48:09 +01:00
lib [MemCpyOptimizer] Simplify API of processStore and processMem* functions 2020-06-11 12:48:09 +01:00
projects
resources
runtimes
test [llvm/DWARFDebugLine] Remove spurious full stop from warning messages 2020-06-11 13:14:21 +02:00
tools [yaml2obj] - Introduce a 10 Mb limit of the output by default and a --max-size option. 2020-06-10 15:23:59 +03:00
unittests [llvm/DWARFDebugLine] Remove spurious full stop from warning messages 2020-06-11 13:14:21 +02:00
utils [gn build] Port 0ee176edc8 2020-06-11 06:53:42 +00:00
.clang-format
.clang-tidy
.gitattributes
.gitignore
CMakeLists.txt Automatically configure MLIR when flang is enabled 2020-05-27 07:31:49 +00:00
CODE_OWNERS.TXT Make myself code owner of InferAddressSpaces 2020-06-08 21:26:01 -04:00
CREDITS.TXT
LICENSE.TXT
LLVMBuild.txt
README.txt
RELEASE_TESTERS.TXT
configure
llvm.spec.in

README.txt

The LLVM Compiler Infrastructure
================================

This directory and its subdirectories contain source code for LLVM,
a toolkit for the construction of highly optimized compilers,
optimizers, and runtime environments.

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the documentation provided in docs/ for further
assistance with LLVM, and in particular docs/GettingStarted.rst for getting
started with LLVM and docs/README.txt for an overview of LLVM's
documentation setup.

If you are writing a package for LLVM, see docs/Packaging.rst for our
suggestions.