Go to file
Krzysztof Parzyszek 9f041b1830 [Pipeliner] Add missing loop carried dependences
The pipeliner is not adding a dependence edge for a loop carried
dependence, and ends up scheduling a load from iteration n prior
to an aliased store in iteration n-1.

The code that adds the loop carried dependences in the pipeliner
doesn't check if the memory objects for loads and stores are
"identified" (i.e., distinct) objects. If they are not, then the
code that adds the dependences needs to be conservative. The
objects can be used to check dependences only when they are
distinct objects.

The code that checks for loop carried dependences has been updated
to classify loads and stores that are not identified as "unknown"
values. A store with an "unknown" value can potentially create
a loop carried dependence with any pending load.

Patch by Brendon Cahoon.

llvm-svn: 328547
2018-03-26 16:50:11 +00:00
clang [OPENMP] Codegen for declare target with link clause. 2018-03-26 16:40:55 +00:00
clang-tools-extra [clangd] Support incremental document syncing 2018-03-26 14:41:40 +00:00
compiler-rt [sanitizer] Make test compatible with Darwin 2018-03-26 01:29:48 +00:00
debuginfo-tests [Darwin] Specify DWARF 2/4 when running apple accelerator tests. 2018-02-26 20:56:45 +00:00
libclc remainder: Port from amd builtins 2018-03-19 01:01:10 +00:00
libcxx Fix test case initialization issues in permissions test 2018-03-26 07:06:25 +00:00
libcxxabi [demangler] Fix a bug in r328464 found by oss-fuzz. 2018-03-26 15:34:36 +00:00
libunwind [libunwind][MIPS]: Add support for unwinding in N32 processes. 2018-02-27 21:24:02 +00:00
lld This is PR36799. 2018-03-26 08:58:16 +00:00
lldb Fix TestDisassembleBreakpoint broken by r328488 2018-03-26 15:17:58 +00:00
llgo irgen: Create functions instead of global variables for builtin hash and equal algorithms. 2017-06-04 22:11:28 +00:00
llvm [Pipeliner] Add missing loop carried dependences 2018-03-26 16:50:11 +00:00
openmp Fixed __kmpc_get_target_offload() to call library initialization. 2018-03-22 18:51:51 +00:00
parallel-libs [Axccel] Remove -Wno-missing-braces in build 2016-12-19 21:34:07 +00:00
polly Update for LLVM header movement 2018-03-21 23:21:10 +00:00
README.md Add an svn project to contain the files that appear at the root of the 2017-10-19 21:09:49 +00:00

README.md

Low Level Virtual Machine (LLVM)

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