SuccessChanges

Summary

  1. [lldb][doc] Mention python3-dev instead of python2.7-dev in build docs (details)
  2. [Ignore Expressions] Fix performance regression by inlining `Ignore*SingleStep` (details)
  3. [gn build] Port c0e5e3fbfa5 (details)
  4. [MLIR][Standard] Update `tensor_from_elements` assembly format (details)
  5. [MLIR][Shape] Lower `shape_of` to `dynamic_tensor_from_elements` (details)
  6. [lldb] Don't infinite loop in SemaSourceWithPriorities::CompleteType when trying to complete a forward decl (details)
Commit 4e4a3feecdb6bd56483b9c6ba9116609c20588aa by Raphael Isemann
[lldb][doc] Mention python3-dev instead of python2.7-dev in build docs
The file was modifiedlldb/docs/resources/build.rst (diff)
Commit c0e5e3fbfa504c3792023d0db9008b08caa6b6d7 by ecaldas
[Ignore Expressions] Fix performance regression by inlining `Ignore*SingleStep`

We also add a `const` versions of `IgnoreExprNodes`

Differential Revision: https://reviews.llvm.org/D87278
The file was modifiedclang/lib/AST/CMakeLists.txt (diff)
The file was removedclang/lib/AST/IgnoreExpr.cpp
The file was modifiedclang/include/clang/AST/IgnoreExpr.h (diff)
Commit fdc8a1aac293084ffb2d7f04b1225c8e2fb3b164 by llvmgnsyncbot
[gn build] Port c0e5e3fbfa5
The file was modifiedllvm/utils/gn/secondary/clang/lib/AST/BUILD.gn (diff)
Commit 133322d2e30877d5039643ab5c2ed02f75c29466 by frgossen
[MLIR][Standard] Update `tensor_from_elements` assembly format

Remove the redundant parenthesis that are used for none of the other operation
formats.

Differential Revision: https://reviews.llvm.org/D86287
The file was modifiedmlir/test/IR/core-ops.mlir (diff)
The file was modifiedmlir/include/mlir/Dialect/StandardOps/IR/Ops.td (diff)
The file was modifiedmlir/test/Conversion/ShapeToStandard/shape-to-standard.mlir (diff)
The file was modifiedmlir/test/Transforms/canonicalize.mlir (diff)
The file was modifiedmlir/lib/Dialect/StandardOps/IR/Ops.cpp (diff)
The file was modifiedmlir/test/IR/invalid-ops.mlir (diff)
Commit 5106a8b8f8d0d3dd6c3fc0554f05402d8d9177ef by frgossen
[MLIR][Shape] Lower `shape_of` to `dynamic_tensor_from_elements`

Take advantage of the new `dynamic_tensor_from_elements` operation in `std`.
Instead of stack-allocated memory, we can now lower directly to a single `std`
operation.

Differential Revision: https://reviews.llvm.org/D86935
The file was modifiedmlir/lib/Dialect/StandardOps/IR/Ops.cpp (diff)
The file was modifiedmlir/test/Conversion/ShapeToStandard/shape-to-standard.mlir (diff)
The file was modifiedmlir/include/mlir/Dialect/StandardOps/IR/Ops.td (diff)
The file was modifiedmlir/lib/Conversion/ShapeToStandard/ShapeToStandard.cpp (diff)
Commit 32c8da41dc0cb99651823a1a21130c2cbdf688e1 by Raphael Isemann
[lldb] Don't infinite loop in SemaSourceWithPriorities::CompleteType when trying to complete a forward decl

SemaSourceWithPriorities is a special SemaSource that wraps our normal LLDB
ExternalASTSource and the ASTReader (which is used for the C++ module loading).
It's only active when the `import-std-module` setting is turned on.

The `CompleteType` function there in `SemaSourceWithPriorities` is looping over
all ExternalASTSources and asks each to complete the type. However, that loop is
in another loop that keeps doing that until the type is complete. If that
function is ever called on a type that is a forward decl then that causes LLDB
to go into an infinite loop.

I remember I added that second loop and the comment because I thought I saw a
similar pattern in some other Clang code, but after some grepping I can't find
that code anywhere and it seems the rest of the code base only calls
CompleteType once (It would also be kinda silly to have calling it multiple
times). So it seems that's just a silly mistake.

The is implicitly tested by importing `std::pair`, but I also added a simpler
dedicated test that creates a dummy libc++ module with some forward declarations
and then imports them into the scratch AST context. At some point the
ASTImporter will check if one of the forward decls could be completed by the
ExternalASTSource, which will cause the `SemaSourceWithPriorities` to go into an
infinite loop once it receives the `CompleteType` call.

Reviewed By: shafik

Differential Revision: https://reviews.llvm.org/D87289
The file was addedlldb/test/API/commands/expression/import-std-module/forward_decl_from_module/Makefile
The file was addedlldb/test/API/commands/expression/import-std-module/forward_decl_from_module/root/usr/include/c++/v1/vector
The file was addedlldb/test/API/commands/expression/import-std-module/forward_decl_from_module/TestForwardDeclFromStdModule.py
The file was addedlldb/test/API/commands/expression/import-std-module/forward_decl_from_module/root/usr/include/libc_header.h
The file was addedlldb/test/API/commands/expression/import-std-module/forward_decl_from_module/root/usr/include/c++/v1/module.modulemap
The file was addedlldb/test/API/commands/expression/import-std-module/forward_decl_from_module/main.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ASTUtils.h (diff)