llvm-project/llvm
Evgeniy Brevnov 5573abceab [DependenceAnalysis] Dependecies for loads marked with "ivnariant.load" should not be shared with general accesses(PR42151).
Summary:
This is second attempt to fix the problem with incorrect dependencies reported in presence of invariant load. Initial fix (https://reviews.llvm.org/D64405) was reverted due to a regression reported in https://reviews.llvm.org/D70516.

The original fix changed caching behavior for invariant loads. Namely such loads are not put into the second level cache (NonLocalDepInfo). The problem with that fix is the first level cache  (CachedNonLocalPointerInfo) still works as if invariant loads were in the second level cache. The solution is in addition to not putting dependence results into the second level cache avoid putting info about invariant loads into the first level cache as well.

Reviewers: jdoerfert, reames, hfinkel, efriedma

Reviewed By: jdoerfert

Subscribers: DaniilSuchkov, hiraditya, bmahjour, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D73027
2020-02-14 12:18:31 +07:00
..
benchmarks
bindings Rework go bindings so that validation works fine 2020-02-13 14:13:03 +01:00
cmake [CMake] Delete llvm_add_go_executable and a reference to TARGET llvm-go 2020-02-11 20:55:50 -08:00
docs [AsmPrinter] De-capitalize all AsmPrinter::Emit* but EmitInstruction 2020-02-13 17:06:24 -08:00
examples Reverted the remainings of c1c9819ef9 2020-02-11 16:20:06 -08:00
include [dsymutil] Fix double relocation of DW_AT_call_return_pc 2020-02-13 17:42:48 -08:00
lib [DependenceAnalysis] Dependecies for loads marked with "ivnariant.load" should not be shared with general accesses(PR42151). 2020-02-14 12:18:31 +07:00
projects
resources
runtimes [runtimes] Add umbrella targets for runtimes 2020-02-12 09:46:14 -08:00
test [DependenceAnalysis] Dependecies for loads marked with "ivnariant.load" should not be shared with general accesses(PR42151). 2020-02-14 12:18:31 +07:00
tools Reinstate llvm-go to test the go bindings. 2020-02-13 17:24:55 -08:00
unittests [Local] Do not move around dbg.declares during replaceDbgDeclare 2020-02-13 14:35:02 -08:00
utils Fix lit version test 2020-02-13 21:49:48 +01:00
.arcconfig
.clang-format
.clang-tidy - Update .clang-tidy to ignore parameters of main like functions for naming violations in clang and llvm directory 2020-01-31 16:49:45 +00:00
.gitattributes
.gitignore Continue removing llgo. 2020-02-10 10:33:58 -08:00
CMakeLists.txt Fix integration of pass plugins with llvm dylib 2020-02-13 14:18:08 +01:00
CODE_OWNERS.TXT Continue removing llgo. 2020-02-10 10:33:58 -08: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.