Changes

Summary

  1. [libcxx][views] Add drop_view. (details)
  2. [gn build] Port 560170fa2de5 (details)
  3. [MLIR][LLVM] Expose type translator from LLVM to MLIR Type (details)
  4. Revert "[MLIR][LLVM] Expose type translator from LLVM to MLIR Type" (details)
  5. [Attributor] Derive AAFunctionReachability attribute. (details)
  6. Improve error handling in llvm-dwarfdump. (details)
  7. clang-format llvm-dwarfdump.cpp (details)
  8. [OpaquePtr] Mangle intrinsics with opaque pointers arguments (details)
  9. ThinLTO: Fix inline assembly references to static functions with CFI (details)
  10. [OpaquePtr] Support call instruction (details)
  11. Fix flang build after D104167 (details)
  12. [TextAPI] add symbol name prefixes to central location, NFC (details)
  13. [OpaquePtr] Support invoke instruction (details)
  14. [lld/mac] Don't crash on absolute symbols in unwind info generation (details)
  15. [InstCombine] Use getFunctionType() (details)
  16. [llvm-tapi-diff] Wrap empty string around StringLiteral NFC (details)
  17. [compiler-rt][hwasan] Add InitState options to thread initialization (details)
  18. Update test after https://reviews.llvm.org/D104483 (details)
  19. [Constants] Handle addrspacecast with opaque pointer type (details)
  20. Move dwarfdump-invalid.test into the tools/llvm-dwarfdump directory. (details)
  21. Reland "[AArch64] handle -Wa,-march=" (details)
  22. IR: Fix use-list-order round-tripping for call and invoke (details)
  23. [docs][GISel]Added GISel documentation link (details)
  24. [AMDGPU] Check for pointer operand while refining LDS align (details)
Commit 560170fa2de5ed3d8720bf6a88c7652ceb47ff8c by zoecarver
[libcxx][views] Add drop_view.

The first view in the libc++ ranges library 🚀

Differential Revision: https://reviews.llvm.org/D102037
The file was addedlibcxx/test/std/ranges/range.adaptors/range.drop/end.pass.cpp
The file was modifiedlibcxx/include/CMakeLists.txt
The file was addedlibcxx/test/std/ranges/range.adaptors/range.drop/dangling.cache.pass.cpp
The file was addedlibcxx/test/std/ranges/range.adaptors/range.drop/types.h
The file was addedlibcxx/test/std/ranges/range.adaptors/range.drop/ctor.default.pass.cpp
The file was addedlibcxx/test/std/ranges/range.adaptors/range.drop/ctor.view.pass.cpp
The file was addedlibcxx/test/std/ranges/range.adaptors/range.drop/base.pass.cpp
The file was addedlibcxx/test/std/ranges/range.adaptors/range.drop/begin.pass.cpp
The file was addedlibcxx/test/std/ranges/range.adaptors/range.drop/general.pass.cpp
The file was modifiedlibcxx/include/ranges
The file was addedlibcxx/include/__ranges/drop_view.h
The file was addedlibcxx/test/std/ranges/range.adaptors/range.drop/ctad.compile.pass.cpp
The file was addedlibcxx/test/std/ranges/range.adaptors/range.drop/size.pass.cpp
Commit 45d5373511711c7876e884e9460f99f904b5d0e3 by llvmgnsyncbot
[gn build] Port 560170fa2de5
The file was modifiedllvm/utils/gn/secondary/libcxx/include/BUILD.gn
Commit 5616a79398c7f10d92daf7d6387b195e95f2ac7e by gh
[MLIR][LLVM] Expose type translator from LLVM to MLIR Type

This commit moves the type translator from LLVM to MLIR to a public header for use by external projects or other code

Differential Revision: https://reviews.llvm.org/D104726
The file was modifiedmlir/lib/Target/LLVMIR/TypeTranslation.cpp
The file was modifiedmlir/include/mlir/Target/LLVMIR/TypeTranslation.h
The file was modifiedmlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
Commit 71f6f7e00a5946871c1390f4d29998d25ccf0d59 by gh
Revert "[MLIR][LLVM] Expose type translator from LLVM to MLIR Type"

This reverts commit 5616a79398c7f10d92daf7d6387b195e95f2ac7e.
The file was modifiedmlir/lib/Target/LLVMIR/TypeTranslation.cpp
The file was modifiedmlir/include/mlir/Target/LLVMIR/TypeTranslation.h
The file was modifiedmlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
Commit 5d44d56f7deb086ac91664fbd053d703cefd3da9 by kuterdinel
[Attributor] Derive AAFunctionReachability attribute.

This attribute uses Attributor's internal 'optimistic' call graph
information to answer queries about function call reachability.

Functions can become reachable over time as new call edges are
discovered.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D104599
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
The file was modifiedllvm/unittests/Transforms/IPO/AttributorTest.cpp
The file was modifiedllvm/lib/Transforms/IPO/AttributorAttributes.cpp
Commit 072f5180f2d33a3323a164fe19a7a477e93073a9 by Adrian Prantl
Improve error handling in llvm-dwarfdump.

Without this patch we're only showing a generic error message derived
from the error code to the end user.

rdar://79378794

Differential Revision: https://reviews.llvm.org/D104483
The file was addedllvm/test/tools/llvm-dwarfdump/X86/lc_malformed.test
The file was modifiedllvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
Commit 7b81fdf984ddc298ae2a1f672b64926e30946c3c by Adrian Prantl
clang-format llvm-dwarfdump.cpp
The file was modifiedllvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
Commit ec08f03be3942d4ae6694d0f7a9b490fe3cbba9b by zequanwu
[OpaquePtr] Mangle intrinsics with opaque pointers arguments

Mangling intrinsics with opaque pointer arguments using "op"+{address space}.

Differential Revision: https://reviews.llvm.org/D104272
The file was modifiedllvm/test/Verifier/opaque-ptr.ll
The file was modifiedllvm/lib/IR/Function.cpp
Commit e3d24b45b8f808ec66213e134c4ceda5202fbe31 by samitolvanen
ThinLTO: Fix inline assembly references to static functions with CFI

Create an internal alias with the original name for static functions
that are renamed in promoteInternals to avoid breaking inline
assembly references to them.

This relands commit 4474958d3a97dede2caa0920f7c4a4dc7aac57d3
with a fix to a use-of-uninitialized-value error that tripped
MemorySanitizer.

Link: https://github.com/ClangBuiltLinux/linux/issues/1354

Reviewed By: nickdesaulniers, pcc

Differential Revision: https://reviews.llvm.org/D104058
The file was modifiedllvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
The file was addedllvm/test/Transforms/ThinLTOBitcodeWriter/cfi-icall-static-inline-asm.ll
Commit f660af46e3df342245b6a0aacd8989c5a2212552 by nikita.ppv
[OpaquePtr] Support call instruction

Add support for call of opaque pointer, currently only possible for
indirect calls.

This requires a bit of special casing in LLParser, as calls do not
specify the callee operand type explicitly.

Differential Revision: https://reviews.llvm.org/D104740
The file was modifiedllvm/test/Assembler/opaque-ptr.ll
The file was modifiedllvm/lib/Bitcode/Writer/ValueEnumerator.cpp
The file was modifiedllvm/lib/Bitcode/Reader/BitcodeReader.cpp
The file was modifiedllvm/lib/IR/Verifier.cpp
The file was modifiedllvm/lib/AsmParser/LLParser.cpp
Commit 00c93d8801f13058a4cd9b70a2747b5a9908e2a4 by riddleriver
Fix flang build after D104167
The file was modifiedflang/include/flang/Optimizer/Dialect/FIROps.td
The file was modifiedflang/lib/Optimizer/Dialect/FIROps.cpp
Commit 56709b869570f7825d335d633bc829511980c253 by Cyndy Ishida
[TextAPI] add symbol name prefixes to central location, NFC

These prefixes are used for printing the symbols coming from tbd files
and they were redundant across locations
The file was modifiedllvm/include/llvm/TextAPI/Symbol.h
The file was modifiedllvm/tools/llvm-tapi-diff/DiffEngine.h
The file was modifiedllvm/lib/Object/TapiFile.cpp
The file was modifiedllvm/tools/llvm-tapi-diff/DiffEngine.cpp
Commit e5f2b035dd8ff5cce3e12d5ab7e478f7e66b9117 by nikita.ppv
[OpaquePtr] Support invoke instruction

With call support in place, this is only a matter of relaxing a
bitcode reader assertion.
The file was modifiedllvm/test/Assembler/opaque-ptr.ll
The file was modifiedllvm/lib/Bitcode/Reader/BitcodeReader.cpp
Commit dbbc8d8333f29cf4ad6f4793da1adf71bbfdac69 by thakis
[lld/mac] Don't crash on absolute symbols in unwind info generation

Fixes a regression from d6565a2dbcbe and PR50820.
The file was modifiedlld/MachO/UnwindInfoSection.cpp
The file was modifiedlld/test/MachO/compact-unwind.s
Commit 8321335fd8ae9110f4faaabce6ef62c28b8f16cf by nikita.ppv
[InstCombine] Use getFunctionType()

Avoid fetching pointer element type...
The file was modifiedllvm/test/Transforms/InstCombine/opaque-ptr.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
Commit fb9f9497dc013a0e8d41d24748fc142cb6f4081a by Cyndy Ishida
[llvm-tapi-diff] Wrap empty string around StringLiteral NFC

This prevents invalid implicit conversation which caused buildbot
failure.
The file was modifiedllvm/tools/llvm-tapi-diff/DiffEngine.cpp
Commit b06fbdeae752e59cdf36a1cd26be8a6dcd51e862 by leonardchan
[compiler-rt][hwasan] Add InitState options to thread initialization

Similar to InitOptions in asan, we can use this optional struct for
initializing some members thread objects before they are created. On
linux, this is unused and can remain undefined. On fuchsia, this will
just be the stack bounds.

Differential Revision: https://reviews.llvm.org/D104553
The file was modifiedcompiler-rt/lib/hwasan/hwasan_thread_list.h
The file was modifiedcompiler-rt/lib/hwasan/hwasan_linux.cpp
The file was modifiedcompiler-rt/lib/hwasan/hwasan_thread.cpp
The file was modifiedcompiler-rt/lib/hwasan/hwasan_thread.h
Commit 5076d27ff01913a280e8ca8b40d38fb11fe7113d by Adrian Prantl
Update test after https://reviews.llvm.org/D104483
The file was modifiedllvm/test/DebugInfo/dwarfdump-invalid.test
Commit f086ef3e83fd466fef2fbd1f9184d540675db0f6 by nikita.ppv
[Constants] Handle addrspacecast with opaque pointer type

This is the same change as D104668, but for constant expression
addrspacecasts.
The file was modifiedllvm/test/Transforms/InstCombine/opaque-ptr.ll
The file was modifiedllvm/lib/IR/Constants.cpp
Commit 7a38a757a16830c25c1402258682c0d18290d84d by Adrian Prantl
Move dwarfdump-invalid.test into the tools/llvm-dwarfdump directory.
The file was removedllvm/test/DebugInfo/Inputs/invalid.elf
The file was removedllvm/test/DebugInfo/Inputs/invalid.elf.2
The file was addedllvm/test/tools/llvm-dwarfdump/X86/dwarfdump-invalid.test
The file was addedllvm/test/tools/llvm-dwarfdump/X86/Inputs/invalid.elf
The file was addedllvm/test/tools/llvm-dwarfdump/X86/Inputs/invalid.elf.2
The file was removedllvm/test/DebugInfo/Inputs/invalid.elf.3
The file was addedllvm/test/tools/llvm-dwarfdump/X86/Inputs/invalid.elf.3
The file was removedllvm/test/DebugInfo/dwarfdump-invalid.test
Commit 0eac975b51cca5b54a1f516d05a233c215375eda by caij2003
Reland "[AArch64] handle -Wa,-march="

This reverts commit fd11a26d368c5a909fb88548fef2cee7a6c2c931, which was
reverted by 9145a3d4ab7eb05d9fb113b5392e8961df629b88 due to a test
failure on aarch64 backend, e.g.
https://lab.llvm.org/buildbot/#/builders/43/builds/7031. This patch
fixed the test failure.

Reviewed By: DavidSpickett, nickdesaulniers

Differential Revision: https://reviews.llvm.org/D103184
The file was modifiedclang/lib/Driver/ToolChains/Arch/AArch64.h
The file was addedclang/test/Driver/aarch64-target-as-march.s
The file was modifiedclang/lib/Driver/ToolChains/Arch/AArch64.cpp
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
Commit 3cf415c6c367ced43175ebd1dc4bd9582c7f5376 by Duncan P. N. Exon Smith
IR: Fix use-list-order round-tripping for call and invoke

Fix the use-list-order for call and invoke instructions by setting the
operands in order of their index. This matches the use-list-order
prediction. Note that the verifier precludes sharing operands in callbr
(so there was no bug to fix), but that code was updated for consistency.

Bug was found during review of https://reviews.llvm.org/D104740.

Differential Revision: https://reviews.llvm.org/D104805
The file was modifiedllvm/lib/IR/Instructions.cpp
The file was addedllvm/test/Assembler/call-arg-is-callee.ll
Commit a15f9ff996eafdc125402d5a40c8af5cd59a0f6a by pyadav2299
[docs][GISel]Added GISel documentation link

Added the GISel docs link here - https://llvm.org/docs/CodeGenerator.html#instruction-selection-section

Differential Revision: https://reviews.llvm.org/D104204
The file was modifiedllvm/docs/CodeGenerator.rst
Commit d274d64ef45f99387428d80a4f4b81dee91305e8 by Stanislav.Mekhanoshin
[AMDGPU] Check for pointer operand while refining LDS align

Also skips the propagation if alignment is 1.

Differential Revision: https://reviews.llvm.org/D104796
The file was modifiedllvm/test/CodeGen/AMDGPU/lower-kernel-lds-super-align.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp