LLVM/project a4951ecllvm/lib/CodeGen/SelectionDAG SelectionDAGBuilder.cpp, llvm/test/CodeGen/X86 div-rem-pair-recomposition-unsigned.ll pr38795.ll

Recommit "[X86] Don't always separate conditions in `(br (and/or cond0, cond1))` into separate branches" (2nd Try)

Changes in Recommit:
    1) Fix non-determanism by using `SmallMapVector` instead of
       `SmallPtrSet`.
    2) Fix bug in dependency pruning where we discounted the actual
       `and/or` combining the two conditions. This lead to over pruning.

Closes #81689
DeltaFile
+157-155llvm/test/CodeGen/X86/div-rem-pair-recomposition-unsigned.ll
+155-2llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
+66-81llvm/test/CodeGen/X86/pr38795.ll
+50-69llvm/test/CodeGen/X86/tail-dup-merge-loop-headers.ll
+56-53llvm/test/CodeGen/X86/2007-08-09-IllegalX86-64Asm.ll
+42-55llvm/test/CodeGen/X86/movmsk-cmp.ll
+526-41519 files not shown
+804-63325 files

LLVM/project a81a7b9llvm/utils/git code-format-helper.py

[Py Reformat] Exclude `third-party` in `code-format-helper.py` (#83872)

Follow-up from PR #83491. `Darker`'s configuration is ignored because of the way we invoke it - with an explicit list of files. We need to filter it in `code-format-helper.py`.
DeltaFile
+1-0llvm/utils/git/code-format-helper.py
+1-01 files

LLVM/project 503075elldb/test/API/driver/quit_speed TestQuitWithProcess.py, lldb/test/API/functionalities/progress_reporting TestTrimmedProgressReporting.py

[lldb][test][NFC] Narrow scope of `import pexpect`

We do not run `pexpect` based tests on Windows, but there are still cases where those tests run `import pexpect` outside of the scope where the test is skipped. By moving the import statement to a different scope, those tests can run even when `pexpect` truly isn't installed.

Tangentially related: TestSTTYBeforeAndAfter.py is using a manual `@expectedFailureAll` for windows instead of the common `@skipIfWindows`. If `pexepect` is generally expected to not be available, we should not bother running the test at all.
DeltaFile
+1-4lldb/test/API/terminal/TestSTTYBeforeAndAfter.py
+2-2lldb/test/API/driver/quit_speed/TestQuitWithProcess.py
+0-1lldb/test/API/functionalities/progress_reporting/TestTrimmedProgressReporting.py
+3-73 files

LLVM/project b32845cclang-tools-extra/clang-tidy/bugprone UseAfterMoveCheck.cpp, clang-tools-extra/docs ReleaseNotes.rst

[clang-tidy] Let `bugprone-use-after-move` also handle calls to `std::forward` (#82673)

Add support for std::forward.

Fixes #82023
DeltaFile
+42-15clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
+37-0clang-tools-extra/test/clang-tidy/checkers/bugprone/use-after-move.cpp
+12-0clang-tools-extra/docs/clang-tidy/checks/bugprone/use-after-move.rst
+4-0clang-tools-extra/docs/ReleaseNotes.rst
+95-154 files

LLVM/project 72988abcompiler-rt/lib/sanitizer_common sanitizer_mutex.cpp

clang-format

Created using spr 1.3.6-beta.1
DeltaFile
+2-2compiler-rt/lib/sanitizer_common/sanitizer_mutex.cpp
+2-21 files

LLVM/project 081882ellvm/lib/Transforms/InstCombine InstCombineCalls.cpp, llvm/test/Transforms/InstCombine maximum.ll maxnum.ll

[InstCombine] Remove m_OneUse requirement for max, but not min (#81505)

If it is ever determined that min doesn't need one-use, then we can
remove the one-use requirement entirely.
DeltaFile
+12-5llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
+14-1llvm/test/Transforms/InstCombine/maximum.ll
+14-1llvm/test/Transforms/InstCombine/maxnum.ll
+40-73 files

LLVM/project 53a656dllvm/utils/not not.cpp

[utils/not] Disable coredumps when --crash is passed

We are expecting a crash, so it is unlikely that a coredump is going to
be particularly useful. For debugging the program can always be run without
the `not --crash` wrapper.

Reviewed By: jh7370

Pull Request: https://github.com/llvm/llvm-project/pull/83704
DeltaFile
+4-0llvm/utils/not/not.cpp
+4-01 files

LLVM/project 1da5db9lldb/source/Symbol Symtab.cpp, lldb/test/Shell/SymbolFile/Breakpad symtab-sorted-by-size.test

[lldb] Use sort-ordering for indexes when sorting by size (#83889)

Use sort-ordering for indexes when sorting by size. This addresses
Jason's post commit review feedback.
DeltaFile
+3-3lldb/test/Shell/SymbolFile/Breakpad/symtab-sorted-by-size.test
+2-1lldb/source/Symbol/Symtab.cpp
+5-42 files

LLVM/project c6277c4compiler-rt/lib/sanitizer_common sanitizer_mutex.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.6-beta.1
DeltaFile
+1-1compiler-rt/lib/sanitizer_common/sanitizer_mutex.cpp
+1-11 files

LLVM/project 289f4becompiler-rt/lib/tsan/rtl tsan_interceptors_posix.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.6-beta.1
DeltaFile
+14-9compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
+14-91 files

LLVM/project 32e2294libc/src/__support/GPU CMakeLists.txt

[libc][NFC] Clean up GPU utilities directory after rework (#83692)

Summary:
This CMake can be cleaned up now that the AMDGPU and NVPTX builds do not
share a CMake invocation.
DeltaFile
+3-5libc/src/__support/GPU/CMakeLists.txt
+3-51 files

LLVM/project c996023libc/include stdint.h.def CMakeLists.txt, libc/include/llvm-libc-macros stdint-macros.h CMakeLists.txt

[libc] Provide an implementation of the 'stdint.h' header (#83353)

Summary:
I've noticed one problem is that the user includes `stdint.h` the
compiler will do `#include_next <stdint.h>` potentially into a
conflicting implementation on systems with multiple headers installed.
The `clang` header is standards compliant and works with `clang` and
`gcc` which are both of our targets, so I simply copied it here. This
has the effect of including `stdint.h` on clang / LLVM libc behaving the
same as `-ffreestanding`.
DeltaFile
+878-0libc/include/llvm-libc-macros/stdint-macros.h
+14-0libc/include/stdint.h.def
+8-0libc/include/CMakeLists.txt
+6-0libc/include/llvm-libc-macros/CMakeLists.txt
+5-0utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+3-0libc/spec/stdc.td
+914-09 files not shown
+923-015 files

LLVM/project 5675447llvm/lib/Transforms/Instrumentation HWAddressSanitizer.cpp, llvm/test/Instrumentation/HWAddressSanitizer pgo-opt-out.ll pgo-opt-out-no-ps.ll

Reapply "[HWASAN] Implement selective instrumentation based on profiling information (#83503)"

Added REQUIRES: asserts, which should fix the build problem.

This reverts commit f6f79d46e580b34b2c98bd9bda7ede3a38f43f77.
DeltaFile
+36-0llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
+33-0llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out.ll
+16-0llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out-no-ps.ll
+85-03 files

LLVM/project 98418c2libcxx/test/std/input.output/iostream.objects/narrow.stream.objects cin.sh.cpp, libcxx/test/std/input.output/iostream.objects/wide.stream.objects wcin-imbue.sh.cpp wcin.sh.cpp

[libc++][AIX] Use input redirection instead of piping for cin tests (#83184)

When echo is used for piping, lit uses the system echo rather than the
builtin echo. The system echo on AIX doesn't support the `-n` option,
which causes these tests to fail. Use input redirection, so the builtin
echo can be used.
DeltaFile
+2-4libcxx/test/std/input.output/iostream.objects/narrow.stream.objects/cin.sh.cpp
+2-4libcxx/test/std/input.output/iostream.objects/wide.stream.objects/wcin-imbue.sh.cpp
+2-4libcxx/test/std/input.output/iostream.objects/wide.stream.objects/wcin.sh.cpp
+6-123 files

LLVM/project 0097fd2clang-tools-extra/clang-tidy/bugprone UnusedReturnValueCheck.cpp UnusedReturnValueCheck.h, clang-tools-extra/clang-tidy/hicpp IgnoredRemoveResultCheck.cpp

[clang-tidy] bugprone-unused-return-value config now supports regexes (#82952)

The parameter `CheckedFunctions` now supports regexes

Fixes #63107
DeltaFile
+101-101clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.cpp
+5-3clang-tools-extra/clang-tidy/hicpp/IgnoredRemoveResultCheck.cpp
+3-3clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.h
+3-2clang-tools-extra/docs/clang-tidy/checks/bugprone/unused-return-value.rst
+4-0clang-tools-extra/docs/ReleaseNotes.rst
+1-1clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-return-value-custom.cpp
+117-1106 files

LLVM/project ac783adllvm/lib/Transforms/Vectorize VPlan.h

[LV] Use SmallVector::resize instead of push_back/emplace_back in a loop. NFC (#83696)

This should be more efficient since the vector can know how much
additional space to reserve before creating the new elements.
DeltaFile
+4-4llvm/lib/Transforms/Vectorize/VPlan.h
+4-41 files

LLVM/project 379e55eclang/docs ReleaseNotes.rst

Fix release note bug reference from bd7bce2c8465e9cb
DeltaFile
+1-1clang/docs/ReleaseNotes.rst
+1-11 files

LLVM/project 2e0693amlir/test/Integration/Dialect/SparseTensor/GPU/CUDA sparse-matmul-lib.mlir sparse-gemm-lib.mlir

[mlir][sparse][gpu] migration to sparse_tensor.print (#83510)

Continuous efforts #83357 for our sparse CUDA tests
DeltaFile
+6-22mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/sparse-matmul-lib.mlir
+8-16mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/sparse-gemm-lib.mlir
+14-9mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/sparse-sampled-matmul-lib.mlir
+15-8mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/sparse-sddmm-lib.mlir
+43-554 files

LLVM/project 87e7140llvm/lib/Transforms/Instrumentation InstrProfiling.cpp

[nfc][InstrProfiling]For comdat setting helper function, move comment closer to the code (#83757)

DeltaFile
+29-21llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
+29-211 files

LLVM/project bd7bce2clang/docs ReleaseNotes.rst, clang/include/clang/Sema DeclSpec.h ParsedAttr.h

Fix null-deref thanks to an attribute on a global declarator chunk (#83611)

This was reported (sort of) in a PR: #77703. The problem is that a
declarator 'owns' an attributes allocation via an `AttributePool`.
However, this example tries to copy a DeclaratorChunk from one
Declarator to another, so when the temporary Declarator goes out of
scope, it deletes the attribute it has tried to pass on via the chunk.

This patch ensures that we copy the 'ownership' of the attribute
correctly, and adds an assert to catch any other casess where this
happens.

Additionally, this was put in as a bug report, so this
Fixes #83611
DeltaFile
+16-0clang/include/clang/Sema/DeclSpec.h
+8-0clang/test/Parser/cxx-declarator-attribute-crash.cpp
+6-0clang/include/clang/Sema/ParsedAttr.h
+6-0clang/lib/Sema/ParsedAttr.cpp
+3-1clang/docs/ReleaseNotes.rst
+1-1clang/lib/Parse/ParseDecl.cpp
+40-26 files

LLVM/project 252f3c9lldb/test/API/lang/cpp/gmodules/pch-chain TestPchChain.py pch.h

[lldb][test] Add test for chained PCH debugging (#83582)

Adds a test-case for debugging a program with a
pch chain, that is, the main executable depends
on a pch that itself included another pch.

Currently clang doesn't emit the sekeleton CUs
required for LLDB to track all types on the pch chain. Thus this test is
XFAILed for now.
DeltaFile
+73-0lldb/test/API/lang/cpp/gmodules/pch-chain/TestPchChain.py
+16-0lldb/test/API/lang/cpp/gmodules/pch-chain/pch.h
+10-0lldb/test/API/lang/cpp/gmodules/pch-chain/Makefile
+10-0lldb/test/API/lang/cpp/gmodules/pch-chain/main.cpp
+9-0lldb/test/API/lang/cpp/gmodules/pch-chain/base-pch.h
+118-05 files

LLVM/project 93e8ba2llvm/test/CodeGen/AMDGPU memory-legalizer-global-agent.ll memory-legalizer-global-workgroup.ll

run 'git merge main'
DeltaFile
+2,216-0llvm/test/CodeGen/AMDGPU/memory-legalizer-global-agent.ll
+2,206-0llvm/test/CodeGen/AMDGPU/memory-legalizer-global-workgroup.ll
+2,170-0llvm/test/CodeGen/AMDGPU/memory-legalizer-global-singlethread.ll
+2,170-0llvm/test/CodeGen/AMDGPU/memory-legalizer-global-wavefront.ll
+2,128-0llvm/test/CodeGen/AMDGPU/memory-legalizer-global-system.ll
+2,102-0llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-system.ll
+12,992-0440 files not shown
+49,418-6,640446 files

LLVM/project e6dff54llvm/utils/gn/secondary/clang/lib/AST BUILD.gn

[gn build] Port bc9c6c0c65e2
DeltaFile
+0-1llvm/utils/gn/secondary/clang/lib/AST/BUILD.gn
+0-11 files

LLVM/project af9c5callvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/Debugging BUILD.gn, llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/TargetProcess BUILD.gn

[gn build] Port 17efdad2296a
DeltaFile
+1-0llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/TargetProcess/BUILD.gn
+1-0llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/Debugging/BUILD.gn
+2-02 files

LLVM/project f83858fllvm/lib/Transforms/Instrumentation InstrProfiling.cpp

[nfc][InstrProfiling]Compute a boolean state as a constant and use it everywhere (#83756)

DeltaFile
+24-24llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
+24-241 files

LLVM/project 57a7208llvm/lib/DebugInfo/DWARF DWARFVerifier.cpp

Fix a use-after-move bug in DWARFVerifier constructor (#83621)

Resolve a use-after-move bug for the parameter "DumpOpts" in the
DWARFVerifier constructor.
DeltaFile
+2-1llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
+2-11 files

LLVM/project 17efdadllvm/include/llvm/ExecutionEngine/Orc/Debugging VTuneSupportPlugin.h, llvm/include/llvm/ExecutionEngine/Orc/TargetProcess JITLoaderVTune.h

[ORC][JITLink] Add Intel VTune support to JITLink (#81826)

This patch adds two plugins: VTuneSupportPlugin.cpp and
JITLoaderVTune.cpp. The testing is done in a manner similar to
llvm-jitlistener. Currently, we only support the old version of Intel
VTune API.

This pull request is stacked on top of
https://github.com/llvm/llvm-project/pull/81825
DeltaFile
+217-0llvm/lib/ExecutionEngine/Orc/TargetProcess/JITLoaderVTune.cpp
+188-0llvm/lib/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.cpp
+145-0llvm/include/llvm/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.h
+52-0llvm/test/ExecutionEngine/JITLink/x86-64/ELF_vtune.s
+31-0llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/JITLoaderVTune.h
+17-1llvm/tools/llvm-jitlink/llvm-jitlink.cpp
+650-13 files not shown
+663-19 files

LLVM/project bc9c6c0clang/lib/AST/Interp ByteCodeGenError.h ByteCodeGenError.cpp

[clang][Interp][NFC] Remove ByteCodeGenError

Unused.
DeltaFile
+0-46clang/lib/AST/Interp/ByteCodeGenError.h
+0-14clang/lib/AST/Interp/ByteCodeGenError.cpp
+0-12clang/lib/AST/Interp/Context.cpp
+0-3clang/lib/AST/Interp/Context.h
+0-1clang/lib/AST/Interp/ByteCodeExprGen.cpp
+0-1clang/lib/AST/Interp/ByteCodeStmtGen.cpp
+0-773 files not shown
+0-809 files

LLVM/project de92615llvm/lib/ExecutionEngine/IntelJITEvents jitprofiling.c ittnotify_config.h, llvm/lib/ExecutionEngine/IntelJITProfiling jitprofiling.c ittnotify_config.h

[ExecutionEngine] Move IntelJITEventsWrapper to its own library. NFC (#81825)

Split IntelJITEventsWrapper away from IntelJITEvents and rename it into
IntelJITProfiling.
NFC
DeltaFile
+0-480llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.c
+480-0llvm/lib/ExecutionEngine/IntelJITProfiling/jitprofiling.c
+0-453llvm/lib/ExecutionEngine/IntelJITEvents/ittnotify_config.h
+453-0llvm/lib/ExecutionEngine/IntelJITProfiling/ittnotify_config.h
+258-0llvm/lib/ExecutionEngine/IntelJITProfiling/jitprofiling.h
+0-258llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.h
+1,191-1,1919 files not shown
+1,426-1,41715 files

LLVM/project c240acaclang/include/clang/Driver Driver.h Options.td, clang/lib/Driver Driver.cpp

Revert "Reland "[clang][modules] Print library module manifest path." (#82160)"

This reverts commit 0c89427b99f6f6d7c217c70ff880ca097340f9a4.
DeltaFile
+0-44clang/lib/Driver/Driver.cpp
+0-40clang/test/Driver/modules-print-library-module-manifest-path.cpp
+0-10clang/include/clang/Driver/Driver.h
+0-3clang/include/clang/Driver/Options.td
+0-974 files