1. [OPENMP5.0]Allow multiple context selectors in the context selector (details)
  2. [InstSimplify] add tests for fma/fmuladd; NFC (details)
  3. [c++20] P1331R2: Allow transient use of uninitialized objects in (details)
  4. Data Dependence Graph Basics (details)
  5. gn build: Merge r372238 (details)
Commit 0736f7f5d72f80a509f6913113ec9f9d5032c963 by a.bataev
[OPENMP5.0]Allow multiple context selectors in the context selector
According to OpenMP 5.0, context selector set might include several
context selectors, separated with commas. Patch fixes this problem.
llvm-svn: 372235
The file was modifiedclang/include/clang/Parse/Parser.h
The file was modifiedclang/test/OpenMP/declare_variant_messages.c
The file was modifiedclang/lib/Parse/ParseOpenMP.cpp
The file was modifiedclang/test/OpenMP/declare_variant_ast_print.cpp
The file was modifiedclang/test/OpenMP/declare_variant_messages.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/lib/Sema/SemaTemplateInstantiateDecl.cpp
The file was modifiedclang/test/OpenMP/declare_variant_ast_print.c
Commit e406a3f2d64ca3a047d7289add5932bd41e881a4 by spatel
[InstSimplify] add tests for fma/fmuladd; NFC
llvm-svn: 372236
The file was modifiedllvm/test/Transforms/InstSimplify/call.ll
Commit c667cdc850c2aa821ffeedbc08c24bc985c59edd by richard-llvm
[c++20] P1331R2: Allow transient use of uninitialized objects in
constant evaluation.
llvm-svn: 372237
The file was modifiedclang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p4.cpp
The file was modifiedclang/test/SemaCXX/constant-expression-cxx1y.cpp
The file was modifiedclang/include/clang/AST/DeclCXX.h
The file was modifiedclang/include/clang/Basic/
The file was modifiedclang/test/CXX/drs/dr14xx.cpp
The file was modifiedclang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p3.cpp
The file was modifiedclang/lib/AST/DeclCXX.cpp
The file was modifiedclang/www/cxx_status.html
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/test/SemaCXX/constant-expression-cxx11.cpp
The file was modifiedclang/test/SemaCXX/constant-expression-cxx2a.cpp
The file was modifiedclang/include/clang/Basic/
The file was modifiedclang/lib/AST/Interp/State.h
Commit db800c267d8f3a4ce8dfc449b8d1d9c87708845a by bmahjour
Data Dependence Graph Basics
Summary: This is the first patch in a series of patches that will
implement data dependence graph in LLVM. Many of the ideas used in this
implementation are based on the following paper: D. J. Kuck, R. H. Kuhn,
D. A. Padua, B. Leasure, and M. Wolfe (1981). DEPENDENCE GRAPHS AND
COMPILER OPTIMIZATIONS. This patch contains support for a basic DDGs
containing only atomic nodes (one node for each instruction). The edges
are two fold: def-use edges and memory-dependence edges. The
implementation takes a list of basic-blocks and only considers
dependencies among instructions in those basic blocks. Any dependencies
coming into or going out of instructions that do not belong to those
basic blocks are ignored.
The algorithm for building the graph involves the following steps in
  1. For each instruction in the range of basic blocks to consider,
create an atomic node in the resulting graph.
2. For each node in the graph establish def-use edges to/from other
nodes in the graph.
3. For each pair of nodes containing memory instruction(s) create
memory edges between them. This part of the algorithm goes through the
instructions in lexicographical order and creates edges in reverse order
if the sink of the dependence occurs before the source of it.
Authored By: bmahjour
Reviewer: Meinersbur, fhahn, myhsu, xtian, dmgreen, kbarton, jdoerfert
Reviewed By: Meinersbur, fhahn, myhsu
Subscribers: ychen, arphaman, simoll, a.elovikov, mgorny, hiraditya,
jfb, wuzish, llvm-commits, jsji, Whitney, etiotto
Tag: #llvm
Differential Revision:
llvm-svn: 372238
The file was addedllvm/lib/Analysis/DDG.cpp
The file was addedllvm/lib/Analysis/DependenceGraphBuilder.cpp
The file was addedllvm/include/llvm/Analysis/DDG.h
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was addedllvm/docs/DependenceGraphs/index.rst
The file was addedllvm/docs/DependenceGraphs/uml_builder_pattern.png
The file was addedllvm/include/llvm/Analysis/DependenceGraphBuilder.h
The file was modifiedllvm/docs/SubsystemDocumentation.rst
The file was addedllvm/docs/DependenceGraphs/cycle.png
The file was addedllvm/test/Analysis/DDG/basic-b.ll
The file was modifiedllvm/lib/Analysis/CMakeLists.txt
The file was addedllvm/test/Analysis/DDG/basic-loopnest.ll
The file was addedllvm/docs/DependenceGraphs/cycle_pi.png
The file was addedllvm/docs/DependenceGraphs/uml_nodes_and_edges.png
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was addedllvm/test/Analysis/DDG/basic-a.ll
Commit fb6052c6516f7b9249d07e9e14418952a9fc005c by llvmgnsyncbot
gn build: Merge r372238
llvm-svn: 372239
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Analysis/