llvm-project/clang
Malhar 74ddacd30d [Clang] Ensure vector predication loop metadata is always emitted when pragma is specified.
This patch ensures that vector predication and vectorization width
pragmas work together correctly/as expected. Specifically, this patch
fixes the issue that when vectorization_width > 1, the vector
predication behaviour (this would matter if it has NOT been disabled
explicitly by a pragma) was getting ignored, which was incorrect.

The fix here removes the dependence of vector predication on the
vectorization width. The loop metadata corresponding to clang loop
pragma vectorize_predicate is always emitted, if the pragma is
specified, even if vectorization is disabled by vectorize_width(1)
or vectorize(disable) since the option is also used for interleaving
by the LoopVectorize pass.

Reviewed By: dmgreen, Meinersbur

Differential Revision: https://reviews.llvm.org/D94779
2021-02-13 17:35:54 -06:00
..
INPUTS
bindings
cmake [clang] Add AddClang.cmake to the list of the CMake modules that are installed 2021-02-04 12:38:38 +00:00
docs [NFC][Docs] Fix RAVFrontendAction doc's CMakeLists.txt for shared build 2021-02-13 19:48:49 +05:30
examples Refactoring the attribute plugin example to fit the new API 2020-12-21 08:24:09 -05:00
include [clang] Add -ffinite-loops & -fno-finite-loops options. 2021-02-12 19:25:49 +00:00
lib [Clang] Ensure vector predication loop metadata is always emitted when pragma is specified. 2021-02-13 17:35:54 -06:00
runtime
test [Clang] Ensure vector predication loop metadata is always emitted when pragma is specified. 2021-02-13 17:35:54 -06:00
tools Partially Revert "scan-view: Remove Reporter.py and associated AppleScript files" 2021-02-11 19:10:46 -08:00
unittests [Syntax] Remove a strict valid source location assertion for TypeLoc. 2021-02-11 09:53:52 +01:00
utils [analyzer][tests] Fix issue comparison script 2021-02-13 13:58:47 +03:00
www [Branch-Rename] Fix some links 2021-02-01 16:43:21 +05:30
.clang-format
.clang-tidy
.gitignore
CMakeLists.txt [clang][cli] Command line round-trip for HeaderSearch options 2021-02-04 10:18:34 +01:00
CODE_OWNERS.TXT
INSTALL.txt
LICENSE.TXT
ModuleInfo.txt
NOTES.txt
README.txt

README.txt

//===----------------------------------------------------------------------===//
// C Language Family Front-end
//===----------------------------------------------------------------------===//

Welcome to Clang.  This is a compiler front-end for the C family of languages
(C, C++, Objective-C, and Objective-C++) which is built as part of the LLVM
compiler infrastructure project.

Unlike many other compiler frontends, Clang is useful for a number of things
beyond just compiling code: we intend for Clang to be host to a number of
different source-level tools.  One example of this is the Clang Static Analyzer.

If you're interested in more (including how to build Clang) it is best to read
the relevant web sites.  Here are some pointers:

Information on Clang:             http://clang.llvm.org/
Building and using Clang:         http://clang.llvm.org/get_started.html
Clang Static Analyzer:            http://clang-analyzer.llvm.org/
Information on the LLVM project:  http://llvm.org/

If you have questions or comments about Clang, a great place to discuss them is
on the Clang development mailing list:
  http://lists.llvm.org/mailman/listinfo/cfe-dev

If you find a bug in Clang, please file it in the LLVM bug tracker:
  http://llvm.org/bugs/