SuccessChanges

Changes from Git (git http://labmaster3.local/git/llvm-project.git)

Summary

  1. [RISCV] Fix test for inline asm z constraint modifier (details)
  2. TableGen/GlobalISel: Don't reconstruct CodeGenRegBank (details)
  3. TableGen/GlobalISel: Don't take reference to temporary values (details)
  4. TableGen: Delete some copy constuctors (details)
  5. GlobalISel: Fix narrowScalar for G_ANYEXT results (details)
  6. AMDGPU: Partially directly select llvm.amdgcn.interp.p1.f16 (details)
  7. GlobalISel: Implement lower for G_BITCAST (details)
  8. [mlir] LLVM import: handle function-typed constants (details)
  9. [FPEnv] Address post-commit review comment for D71467 (details)
  10. [clangd] Show hower info for expressions (details)
  11. [ELF] Avoid false-positive assert in getErrPlace() (details)
  12. [mlir][EDSC] Refactor dependencies involving EDSCs. (details)
  13. [gn build] (manually) port b4a99a061f51 better (details)
  14. [clangd] Add a ruler after header in hover (details)
  15. [clangd] Rearrange type, returntype and parameters in hover card (details)
  16. [clang] New __attribute__((__clang_arm_mve_strict_polymorphism)). (details)
  17. [gn build] find mistakes like the one fixed in 72b5989e0d1 at build time (details)
  18. [clangd] Fix windows buildbots (details)
Commit 46e3edcc2c89e34b3ec198387b758a6998f5980b by luismarques
[RISCV] Fix test for inline asm z constraint modifier
Summary: Use an `i` constraint in the test, to correctly trigger the
code for handling the `z` constraint modifier.
Reviewers: asb, lenary, jrtc27 Reviewed By: lenary, jrtc27 Tags: #llvm
Differential Revision: https://reviews.llvm.org/D72134
The file was modifiedllvm/test/CodeGen/RISCV/inline-asm.ll
Commit 3ab7b7f53552a0969bd89db3317eb5a3ddf31d8f by arsenm2
TableGen/GlobalISel: Don't reconstruct CodeGenRegBank
The maps for dealing with the relationships between different register
classes and subregister indexes rely on unique pointers for every
class/index. By constructing a second copy of CodeGenRegBank, two
different pointer values existed for a given subregister depending on
where you were querying.
Use the existing CodeGenRegBank owned by the CodeGenTarget instead of
constructing a second copy. This avoids incorrectly failing map lookups
in a future change.
The file was modifiedllvm/utils/TableGen/GlobalISelEmitter.cpp
Commit eafa8dbefe30c85e58efc5309793f2d7c2109e35 by arsenm2
TableGen/GlobalISel: Don't take reference to temporary values
These return temporary Optional<> values which are immediately
destroyed. I'm not sure why no sanitizers seem to have caught this, but
I encountered crashes on these in a future patch.
The file was modifiedllvm/utils/TableGen/GlobalISelEmitter.cpp
Commit 8931fde869c2787886a5f84c03f70cd32e2e8b1f by arsenm2
TableGen: Delete some copy constuctors
Some register related machinery relies on uniqued, static pointers for
register classes and subregisters, so try to make sure these are never
copied.
The file was modifiedllvm/utils/TableGen/RISCVCompressInstEmitter.cpp
The file was modifiedllvm/utils/TableGen/CodeGenRegisters.h
Commit 91715617ad601c6bd953e1c47ecaaf3610de233f by arsenm2
GlobalISel: Fix narrowScalar for G_ANYEXT results
This is nearly the same as G_ZEXT.
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-unmerge-values.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-anyext.mir
Commit bd7658a212ebc27a8f7d69666820df33bc8d61f5 by arsenm2
AMDGPU: Partially directly select llvm.amdgcn.interp.p1.f16
The 16 bank LDS case is complicated due to using multiple instructions.
If I attempt to write a pattern for it, the generated selector
incorrectly places the copy to m0 after the first instruction, so that
needs to be separately addressed.
Also fix not gluing the copy to m0 to the second operation in the second
half of the 16 bank lowering.
The file was modifiedllvm/lib/Target/AMDGPU/VOP3Instructions.td
The file was modifiedllvm/test/MC/AMDGPU/vop3.s
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
Commit 936483fb7dd2c8c6b014516ff3b3cd13740e0518 by arsenm2
GlobalISel: Implement lower for G_BITCAST
Bitcast only really applies between scalars and vectors. Implement as an
unmerge and remerge. The test needs to tolerate failure since one of the
unmerges currently fails to legalize.
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-bitcast.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
Commit dc553ce646cdbab32d72d263d3f289952648b920 by zinenko
[mlir] LLVM import: handle function-typed constants
The current implementation of the LLVM-to-MLIR translation could not
handle functions used as constant values in instructions. The handling
is added trivially as `llvm.mlir.constant` can define constants of
function type using SymbolRef attributes, which works even for functions
that have not been declared yet.
The file was modifiedmlir/test/Target/import.ll
The file was modifiedmlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
Commit 870137d207f7a5596206e2210183d911a9b06f9d by ulrich.weigand
[FPEnv] Address post-commit review comment for D71467
Remove a bit of code duplication between CreateFCmp and CreateFCmpS by
creating a shared helper function.
The file was modifiedllvm/include/llvm/IR/IRBuilder.h
Commit 4d14bfaa2cb1610104db6b0818fc7d74fad1bd8f by kadircet
[clangd] Show hower info for expressions
Summary: This currently populates only the Name with the expression's
type and Value if expression is evaluatable.
Fixes https://github.com/clangd/clangd/issues/56
Reviewers: sammccall
Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95,
cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D72500
The file was modifiedclang-tools-extra/clangd/Hover.cpp
The file was modifiedclang-tools-extra/clangd/unittests/HoverTests.cpp
Commit 441410be471d5d0a5d1d47cf363de155e397a0c2 by Alexander.Richardson
[ELF] Avoid false-positive assert in getErrPlace()
This assertion was added as part of D70659 but did not account for .bss
input sections. I noticed that this assert was incorrectly triggering
while building FreeBSD for MIPS64. Fixed by relaxing the assert to also
account for SHT_NOBITS input sections and adjust the test
mips-jalr-non-function.s to link a file with a .bss section first.
Reviewed By: MaskRay, grimar Differential Revision:
https://reviews.llvm.org/D72567
The file was modifiedlld/test/ELF/mips-jalr-non-functions.s
The file was modifiedlld/ELF/Target.cpp
Commit 89b395fe793be6f3704ff8faaf6b55191431dc7a by ntv
[mlir][EDSC] Refactor dependencies involving EDSCs.
Summary: This diff removes the dependency of LinalgOps and VectorOps on
EDSCs.
Reviewers: jpienaar, ftynse
Reviewed By: ftynse
Subscribers: merge_guards_bot, mgorny, mehdi_amini, rriddle, burmako,
shauheen, antiagainst, csigg, arpith-jacob, mgester, lucyrfox, herhut,
llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D72481
The file was modifiedmlir/test/EDSC/CMakeLists.txt
The file was modifiedmlir/include/mlir/Dialect/Linalg/Utils/Utils.h
The file was modifiedmlir/lib/Dialect/Linalg/EDSC/Builders.cpp
The file was addedmlir/lib/Dialect/Linalg/Utils/CMakeLists.txt
The file was modifiedmlir/lib/Dialect/Linalg/CMakeLists.txt
The file was modifiedmlir/lib/Dialect/Linalg/Utils/Utils.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/LinalgToLoops.cpp
The file was modifiedmlir/lib/Dialect/VectorOps/VectorTransforms.cpp
The file was addedmlir/lib/Dialect/Linalg/IR/CMakeLists.txt
The file was addedmlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
The file was modifiedmlir/include/mlir/Dialect/Linalg/EDSC/Builders.h
The file was modifiedmlir/lib/Conversion/LoopsToGPU/CMakeLists.txt
The file was modifiedmlir/tools/mlir-opt/CMakeLists.txt
The file was removedmlir/lib/Dialect/Linalg/LinalgRegistration.cpp
The file was addedmlir/lib/Dialect/Linalg/IR/LinalgRegistration.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
The file was modifiedmlir/test/lib/Transforms/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/LinalgToLLVM/CMakeLists.txt
The file was addedmlir/lib/Dialect/Linalg/EDSC/CMakeLists.txt
The file was addedmlir/lib/Dialect/Linalg/Analysis/CMakeLists.txt
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
Commit 72b5989e0d15081d71d1838eec7f84ef3158fb26 by thakis
[gn build] (manually) port b4a99a061f51 better
The file was modifiedllvm/utils/gn/secondary/clang/include/clang/Config/BUILD.gn
Commit d74a3d470c316f8fade90fe231fc0a51361c01e6 by kadircet
[clangd] Add a ruler after header in hover
Reviewers: sammccall
Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95,
cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D72622
The file was modifiedclang-tools-extra/clangd/FormattedString.cpp
The file was modifiedclang-tools-extra/clangd/unittests/FormattedStringTests.cpp
The file was modifiedclang-tools-extra/clangd/FormattedString.h
The file was modifiedclang-tools-extra/clangd/unittests/HoverTests.cpp
The file was modifiedclang-tools-extra/clangd/Hover.cpp
Commit 44f9c7a820c1e5fb949f441214a46b13588ff51a by kadircet
[clangd] Rearrange type, returntype and parameters in hover card
Summary: Moves type/returntype into its own line as it is more readable
in cases where the type is long.
Also gives parameter lists a heading, `Parameters:` to make them stand
out.
Leaves the `right arrow` instead of `Returns: ` before Return Type to
make output more symmetric.
``` function foo
Returns: ret_type Parameters:
- int x
```
vs
``` function foo
🡺 ret_type Parameters:
- int x
```
Reviewers: sammccall, ilya-biryukov
Subscribers: MaskRay, jkorous, arphaman, usaxena95, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D72623
The file was modifiedclang-tools-extra/clangd/unittests/HoverTests.cpp
The file was modifiedclang-tools-extra/clangd/Hover.cpp
The file was modifiedclang-tools-extra/clangd/test/hover.test
Commit ada01d1b869763f7d5d3438dcfce02066b06ab0a by simon.tatham
[clang] New __attribute__((__clang_arm_mve_strict_polymorphism)).
This is applied to the vector types defined in <arm_mve.h> for use with
the intrinsics for the ARM MVE vector architecture.
Its purpose is to inhibit lax vector conversions, but only in the
context of overload resolution of the MVE polymorphic intrinsic
functions. This solves an ambiguity problem with polymorphic MVE
intrinsics that take a vector and a scalar argument: the scalar argument
can often have the wrong integer type due to default integer promotions
or unsuffixed literals, and therefore, the type of the vector argument
should be considered trustworthy when resolving MVE polymorphism.
As part of the same change, I've added the new attribute to the
declarations generated by the MveEmitter Tablegen backend (and corrected
a namespace issue with the other attribute while I was there).
Reviewers: aaron.ballman, dmgreen
Reviewed By: aaron.ballman
Subscribers: kristof.beyls, JDevlieghere, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D72518
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/include/clang/Basic/Attr.td
The file was modifiedclang/include/clang/Basic/AttrDocs.td
The file was modifiedclang/lib/Sema/SemaOverload.cpp
The file was modifiedclang/lib/AST/TypePrinter.cpp
The file was addedclang/test/Sema/overload-arm-mve.c
The file was modifiedclang/lib/Sema/SemaType.cpp
The file was modifiedclang/utils/TableGen/MveEmitter.cpp
Commit 252c4dce618926311bcb4715eae6955f1bc71f13 by thakis
[gn build] find mistakes like the one fixed in 72b5989e0d1 at build time
The file was modifiedllvm/utils/gn/build/write_cmake_config.py
Commit 60adfb83cda883d9fc1079c89d2feaa681a41b90 by kadircet
[clangd] Fix windows buildbots
The file was modifiedclang-tools-extra/clangd/unittests/HoverTests.cpp