SuccessChanges

Summary

  1. [mlir][linalg] remove interchange option on linalg to loop lowering. (details)
  2. [clang][deps] Include "-cc1" in the arguments (details)
  3. [AArch64] Fix calling windows varargs with floats in fixed args from non-windows functions (details)
  4. [mlir] Move memref-tests from standard to memref folder. (details)
  5. [PowerPC] Improve codegen for vector fp to int widening conversions (details)
  6. [lldb] Add support for evaluating expressions in static member functions (details)
  7. [lldb][NFC] Fix unsigned/signed cmp warning in MainLoopTest (details)
  8. [AST] Add NestedNameSpecifierLoc accessors to node introspection (details)
  9. [PowerPC] Add vec_roundc as alias for vec_rint in altivec.h (details)
  10. [X86][AVX] Add PR49971 test case (details)
  11. MipsSEFrameLowering.h - remove unused headers. NFCI. (details)
  12. [Matrix] Support #pragma clang fp (details)
  13. [Bitcode] Ensure DIArgList in bitcode has no null or forward metadata refs (details)
  14. [lldb-vscode] Use a DenseMap to pacify overly aggressive linters (details)
Commit 0e777e4ad7d554436a1c181674bdbaeab9053c31 by gysit
[mlir][linalg] remove interchange option on linalg to loop lowering.

The interchange option attached to the linalg to loop lowering affects only the loops and does not update the memory accesses generated in to body of the operation. Instead of performing the interchange during the loop lowering use the interchange pattern.

Differential Revision: https://reviews.llvm.org/D100758
The file was modifiedmlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
The file was removedmlir/test/Dialect/Linalg/loop-order.mlir
The file was modifiedmlir/include/mlir/Dialect/Linalg/Passes.td
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Loops.cpp
Commit 398f25340000f26d648ebbc7eae9dc401ffc7d5f by Jan Svoboda
[clang][deps] Include "-cc1" in the arguments

To simplify tools consuming dependency scanning results, prepend the "-cc1" argument by default.

Reviewed By: Bigcheese

Differential Revision: https://reviews.llvm.org/D100942
The file was modifiedclang/test/ClangScanDeps/modules-full.cpp
The file was modifiedclang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
Commit 8000e1f5789c423e7c447782de65c56d84b66e1e by martin
[AArch64] Fix calling windows varargs with floats in fixed args from non-windows functions

When inspecting the calling convention, for calling windows functions
from a non-windows function, inspect the calling convention of
the called function, not the caller.

Also remove an unnecessary parameter to AArch64CallLowering
OutgoingArgHandler.

Differential Revision: https://reviews.llvm.org/D100890
The file was modifiedllvm/test/CodeGen/AArch64/win64_vararg_float.ll
The file was addedllvm/test/CodeGen/AArch64/win64_vararg_float_cc.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
Commit 28b6726c4df399ea597a021f63dc1bc00814b316 by Thomas.Schmeyer
[mlir] Move memref-tests from standard to memref folder.

Split memref-test from standard test and move them to the folder MemRef.

Differential Revision: https://reviews.llvm.org/D100950
The file was addedmlir/test/Dialect/MemRef/invalid.mlir
The file was addedmlir/test/Dialect/MemRef/ops.mlir
The file was modifiedmlir/test/Dialect/Standard/canonicalize.mlir
The file was modifiedmlir/test/Dialect/Standard/ops.mlir
The file was addedmlir/test/Dialect/MemRef/canonicalize.mlir
The file was modifiedmlir/test/Dialect/Standard/canonicalize-cf.mlir
The file was modifiedmlir/test/Dialect/Standard/invalid.mlir
Commit 092619cf6b8d33e8830221925c1174f5d373f1d2 by nemanja.i.ibm
[PowerPC] Improve codegen for vector fp to int widening conversions

We currently do not utilize instructions that convert single
precision vectors to doubleword integer vectors. These conversions
come up in code occasionally and this improvement allows us to
open code some functions that need to be added to altivec.h.
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrVSX.td
The file was modifiedllvm/test/CodeGen/PowerPC/build-vector-tests.ll
Commit 00764c36edf88ae9806e8d57a6addb782e6ceae8 by Raphael Isemann
[lldb] Add support for evaluating expressions in static member functions

At the moment the expression parser doesn't support evaluating expressions in
static member functions and just pretends the expression is evaluated within a
non-member function. This causes that all static members are inaccessible when
doing unqualified name lookup.

This patch adds support for evaluating in static member functions. It
essentially just does the same setup as what LLDB is already doing for
non-static member functions (i.e., wrapping the expression in a fake member
function) with the difference that we now mark the wrapping function as static
(to prevent access to non-static members).

Reviewed By: shafik, jarin

Differential Revision: https://reviews.llvm.org/D81550
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
The file was addedlldb/test/API/lang/cpp/stopped_in_static_member_function/TestStoppedInStaticMemberFunction.py
The file was addedlldb/test/API/lang/cpp/stopped_in_static_member_function/Makefile
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.h
The file was addedlldb/test/API/lang/cpp/stopped_in_static_member_function/main.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.h
Commit 034c73d42e4655ae247fc1f72dc3d2d6c621ab23 by Raphael Isemann
[lldb][NFC] Fix unsigned/signed cmp warning in MainLoopTest

The gtest checks compare all against unsigned int constants so this also needs
to be unsigned.
The file was modifiedlldb/unittests/Host/MainLoopTest.cpp
Commit 21ce124e1e638e380ce56dbcc97d174c58530566 by steveire
[AST] Add NestedNameSpecifierLoc accessors to node introspection

Differential Revision: https://reviews.llvm.org/D100712
The file was modifiedclang/unittests/Introspection/IntrospectionTest.cpp
The file was modifiedclang/lib/Tooling/DumpTool/APIData.h
The file was modifiedclang/lib/Tooling/DumpTool/generate_cxx_src_locs.py
The file was modifiedclang/lib/Tooling/DumpTool/ASTSrcLocProcessor.cpp
Commit 3bcd0ece43bd117b9931d2b010b50884aa74870a by nemanja.i.ibm
[PowerPC] Add vec_roundc as alias for vec_rint in altivec.h

For compatibility with XLC, add these overloads.
The file was modifiedclang/test/CodeGen/builtins-ppc-vsx.c
The file was modifiedclang/lib/Headers/altivec.h
Commit e28ae5e530679eee5a7a574de6cb78a12cbe75ed by llvm-dev
[X86][AVX] Add PR49971 test case

This is a llvm12 only bug, and is already avoided in trunk, but we should keep track of it.
The file was modifiedllvm/test/CodeGen/X86/horizontal-shuffle-3.ll
Commit 439366817bb860f638b288268a7158cbcdd49e43 by llvm-dev
MipsSEFrameLowering.h - remove unused headers. NFCI.
The file was modifiedllvm/lib/Target/Mips/MipsSEFrameLowering.h
Commit be2277fbf233cca8e1bd698fa9ab6de404001c3a by flo
[Matrix] Support #pragma clang fp

From https://bugs.llvm.org/show_bug.cgi?id=49739:

Currently, `#pragma clang fp` are ignored for matrix types.

For the code below, the `contract` fast-math flag should be added to the generated call to `llvm.matrix.multiply` and `fadd`

```
typedef float fx2x2_t __attribute__((matrix_type(2, 2)));

void foo(fx2x2_t &A, fx2x2_t &C, fx2x2_t &B) {
  #pragma clang fp contract(fast)
  C = A*B + C;
}
```

Reviewed By: fhahn, mibintc

Differential Revision: https://reviews.llvm.org/D100834
The file was addedclang/test/CodeGen/fp-matrix-pragma.c
The file was modifiedclang/lib/CodeGen/CGExprScalar.cpp
Commit e5d844b5874488599dc79e788a2dd6efa02940fb by stephen.tozer
[Bitcode] Ensure DIArgList in bitcode has no null or forward metadata refs

This patch fixes an issue in which ConstantAsMetadata arguments to a
DIArglist, as well as the Constant values referenced by that metadata,
would not be always be emitted correctly into bitcode. This patch fixes
this issue firstly by searching for ConstantAsMetadata in DIArgLists
(previously we would only search for them when directly wrapped in
MetadataAsValue), and secondly by enumerating all of a DIArgList's
arguments directly prior to enumerating the DIArgList itself.

This patch also adds a number of asserts, and no longer treats the
arguments to a DIArgList as optional fields when reading/writing to
bitcode.

Differential Revision: https://reviews.llvm.org/D100572
The file was modifiedllvm/lib/Bitcode/Writer/ValueEnumerator.h
The file was modifiedllvm/lib/Bitcode/Writer/ValueEnumerator.cpp
The file was modifiedllvm/lib/Bitcode/Reader/MetadataLoader.cpp
The file was modifiedllvm/test/DebugInfo/Generic/debug_value_list.ll
The file was modifiedllvm/lib/Bitcode/Writer/BitcodeWriter.cpp
Commit edc869cb57fb4cf999c8a388b48ae4ecd027bfe7 by benny.kra
[lldb-vscode] Use a DenseMap to pacify overly aggressive linters

Some linters get rather upset upon seeing
`std::unordered_map<const char*`, because it looks like a map of
strings but isn't. lldb uses interned strings so this is not a problem.
DenseMap is a better data structure for this anyways, so use that
instead.
The file was modifiedlldb/tools/lldb-vscode/lldb-vscode.cpp