Go to file
Tobias Grosser e3c0558e35 Add OpenMP code generation to isl backend
This backend supports besides the classical code generation the upcoming SCEV
based code generation (which the existing CLooG backend does not support
robustly).

OpenMP code generation in the isl backend benefits from our run-time alias
checks such that the set of loops that can possibly be parallelized is a lot
larger.

The code was tested on LNT. We do not regress on builds without -polly-parallel.
When using -polly-parallel most tests work flawlessly, but a few issues still
remain and will be addressed in follow up commits.

SCEV/non-SCEV codegen:
  - Compile time failure in ldecod and TimberWolfMC due a problem in our
    run-time alias check generation triggered by pointers that escape through
    the OpenMP subfunction (OpenMP specific).

  - Several execution time failures. Due to the larger set of loops that we now
    parallelize (compared to the classical code generation),  we currently run
    into some timeouts in tests with a lot loops that have a low trip count and
    are slowed down by parallelizing them.

SCEV only:

  - One existing failure in lencod due to llvm.org/PR21204 (not OpenMP specific)

OpenMP code generation is the last feature that was only available in the CLooG
backend. With the isl backend being the only one supporting features such as
run-time alias checks and delinearization, we will soon switch to use the isl
ast generator by the default and subsequently remove our dependency on CLooG.

http://reviews.llvm.org/D5517

llvm-svn: 222088
2014-11-15 21:32:53 +00:00
clang Fix issues missed during the review of r222099. 2014-11-15 06:37:39 +00:00
clang-tools-extra Remove some redundant virtual on overridden functions 2014-11-14 19:27:22 +00:00
compiler-rt As a follow up to r222001, Peter Bergner pointed out that there is 2014-11-15 13:52:10 +00:00
debuginfo-tests New round of fixes for "Always compile debuginfo-tests for the host triple" 2014-10-18 23:47:59 +00:00
libclc Prune CRLF. 2014-10-27 12:37:26 +00:00
libcxx Fix build regression caused by not defining ABI library macros 2014-11-15 17:25:23 +00:00
libcxxabi Add -g -fno-omit-frame-pointer when compiling tests with sanitizers 2014-11-14 22:27:43 +00:00
lld [PECOFF] Fix section alignment. 2014-11-14 21:33:07 +00:00
lldb For some reason, sometimes the directory paths that clang emits have internal 2014-11-15 01:54:26 +00:00
llvm [X86][SSE] Improve legal SHUFP and PSHUFD shuffle matching 2014-11-15 21:13:05 +00:00
openmp I apologise in advance for the size of this check-in. At Intel we do 2014-10-07 16:25:50 +00:00
polly Add OpenMP code generation to isl backend 2014-11-15 21:32:53 +00:00