Changes

Summary

  1. SplitKit: Remove decade old live interval hack (details)
  2. Revert use of getUniqueUndroppableUser in AssumeBundleBuilder (details)
  3. NFC: DWARFTypePrinter: Remove "type" from member function names to reduce redundancy (details)
  4. [clang-format] Top-level unwrapped lines don't follow a left brace (details)
  5. Revert "[InstCombine] Improve TryToSinkInstruction with multiple uses" (details)
  6. Teach SimplifyCFG to fold switches into lookup tables in more cases. (details)
  7. [Polly] Remove autotools build systems from Externals. NFC. (details)
  8. [gn build] Port d249200fa7d5 (details)
  9. [NFC] Split up PassBuilder.cpp (details)
  10. [test] Move some llvm-extract tests into the proper directory (details)
  11. PR51874: Fix diagnostics for defaulted, implicitly deleted 'operator!='. (details)
  12. [MemProf] Avoid global lock when updating MIB cache (details)
  13. [lldb-vscode] Fix focus thread when previous thread exits (details)
Commit 87c00878d3ace60fe07cc2a9f8bd4566ab817d26 by Matthew.Arsenault
SplitKit: Remove decade old live interval hack

This was trying to fixup broken live intervals coming out of the
coalescer. The verifier is more complete now and no tests seem to fail
without this.
The file was modifiedllvm/lib/CodeGen/SplitKit.h
The file was modifiedllvm/lib/CodeGen/SplitKit.cpp
The file was modifiedllvm/lib/CodeGen/RegAllocGreedy.cpp
Commit b6cb03e6b94d91a1757d41d4b0f139166ae15de0 by anna
Revert use of getUniqueUndroppableUser in AssumeBundleBuilder

Fix build bot failure in rG4ac4e521 caused due to assumeBundleBuilder
using new API (getUniqueUndroppableUser).
We now continue using the existing API for AssumeBundleBuilder
(getSingleUndroppableUser).

Sorry for the noise here.

Tests-Run: failing testcase passes.
The file was modifiedllvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp
Commit 065bb08bb8934f1b3774f6a2f6a077fde67cf053 by dblaikie
NFC: DWARFTypePrinter: Remove "type" from member function names to reduce redundancy
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
Commit 8025c03f70ee9b92e8599519b5ee34b54c9a80da by owenca
[clang-format] Top-level unwrapped lines don't follow a left brace

Differential Revision: https://reviews.llvm.org/D109752
The file was modifiedclang/lib/Format/UnwrappedLineParser.cpp
Commit f9e4aebe4a7a318869f57852359ad637f5c5a009 by anna
Revert "[InstCombine] Improve TryToSinkInstruction with multiple uses"

This reverts commit 4ac4e52189aa6d80c3d59dc2c8f7dcc0cb7f9d58.
There are couple of test failures, which needs update of the test cases.

Doing a clean revert and will recommit the change along with fixed
testcases.
The file was modifiedllvm/include/llvm/IR/Value.h
The file was modifiedllvm/test/Transforms/InstCombine/icmp-mul-zext.ll
The file was modifiedllvm/lib/IR/Value.cpp
The file was modifiedllvm/test/Transforms/InstCombine/sink_instruction.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
Commit 68079ef0eb011c8349e5ae84b95216e5039dbc16 by resistor
Teach SimplifyCFG to fold switches into lookup tables in more cases.

In particular, it couldn't handle cases where lookup table constant
expressions involved bitcasts. This does not seem to come up
frequently in C++, but comes up reasonably often in Rust via
`#[derive(Debug)]`.

Originally reported by pcwalton.

Reviewed By: nikic

Differential Revision: https://reviews.llvm.org/D109565
The file was addedllvm/test/Transforms/SimplifyCFG/X86/switch-to-lookup-gep.ll
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
The file was addedllvm/test/Transforms/SimplifyCFG/X86/switch-to-lookup-bitcast.ll
Commit 658eb9e14264d48888ade0e3daf0b648f76c3f0e by llvm-project
[Polly] Remove autotools build systems from Externals. NFC.

Building a source distribution using autotools adds GPL-licenced
files into the the sources. Although redistribution of theses files is
explicitly allowed with an exception, these are not used by Polly
which uses a CMake replacement. Use the direct source checkout
instead (replacing the output of 'make dist').

Some m4 scripts with the same licence are also included in isl/ppcg
repository. Removing them renders the autotools-based build scipts
inoperable, so remove the autotools build system altogether.
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/gmpapi.py
The file was addedpolly/lib/External/isl/imath/tests/qsub.tc
The file was addedpolly/lib/External/isl/imath/tests/pi1698-16.txt
The file was addedpolly/lib/External/isl/testsets/pip/jcomplex.pip
The file was removedpolly/lib/External/ppcg/configure.ac
The file was removedpolly/lib/External/isl/m4/ax_gcc_x86_cpuid.m4
The file was removedpolly/lib/External/isl/configure
The file was addedpolly/lib/External/isl/imath/tests/div.tc
The file was removedpolly/lib/External/ppcg/m4/lt~obsolete.m4
The file was addedpolly/lib/External/isl/imath/tests/sub.tc
The file was removedpolly/lib/External/isl/interface/missing
The file was removedpolly/lib/External/isl/depcomp
The file was addedpolly/lib/External/isl/testsets/pip/seghir-e3.pip
The file was removedpolly/lib/External/isl/m4/ltoptions.m4
The file was removedpolly/lib/External/ppcg/configure
The file was removedpolly/lib/External/ppcg/m4/ax_check_openmp.m4
The file was addedpolly/lib/External/isl/imath/tests/pi1024.txt
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/gendata.py
The file was addedpolly/lib/External/isl/imath/tests/mod.tc
The file was addedpolly/lib/External/isl/imath/tests/compare.tc
The file was addedpolly/lib/External/isl/testsets/pip/seghir-e1.pip
The file was addedpolly/lib/External/isl/imath/tests/qaddz.tc
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/gmp_custom_test.c
The file was addedpolly/lib/External/isl/imath/rsamath.h
The file was removedpolly/lib/External/isl/install-sh
The file was removedpolly/lib/External/isl/test-driver
The file was addedpolly/lib/External/isl/imath/tools/mkdoc.py
The file was removedpolly/lib/External/isl/doc/Makefile.am
The file was removedpolly/lib/External/isl/interface/config.guess
The file was addedpolly/lib/External/isl/imath/tests/test.sh
The file was addedpolly/lib/External/isl/imath/imtest.c
The file was addedpolly/lib/External/isl/imath/examples/findprime.c
The file was addedpolly/lib/External/isl/imath/tests/qdivz.tc
The file was removedpolly/lib/External/ppcg/m4/ltversion.m4
The file was addedpolly/lib/External/isl/testsets/pip/seghir-vd.pip
The file was removedpolly/lib/External/isl/m4/ax_gcc_archflag.m4
The file was removedpolly/lib/External/ppcg/compile
The file was removedpolly/lib/External/ppcg/aclocal.m4
The file was addedpolly/lib/External/isl/.gitignore
The file was addedpolly/lib/External/isl/imath/tests/egcd.tc
The file was removedpolly/lib/External/isl/m4/ax_detect_clang.m4
The file was addedpolly/lib/External/isl/imath/tests/qtodec.tc
The file was addedpolly/lib/External/isl/imath/examples/rsakey.c
The file was removedpolly/lib/External/isl/m4/ax_prog_cc_for_build.m4
The file was addedpolly/lib/External/isl/imath/tools/findthreshold.py
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/Makefile
The file was removedpolly/lib/External/isl/m4/ax_set_warning_flags.m4
The file was addedpolly/lib/External/isl/testsets/pip/seghir-e7.pip
The file was removedpolly/lib/External/ppcg/test-driver
The file was addedpolly/lib/External/isl/imath/tests/neg.tc
The file was removedpolly/lib/External/isl/isl_config.h.in
The file was addedpolly/lib/External/isl/imath/iprime.h
The file was removedpolly/lib/External/isl/interface/isl.py
The file was addedpolly/lib/External/isl/imath/examples/imcalc.c
The file was addedpolly/lib/External/isl/imath/.dockerignore
The file was removedpolly/lib/External/isl/include/isl/typed_cpp.h
The file was removedpolly/lib/External/isl/m4/ax_gcc_warn_unused_result.m4
The file was removedpolly/lib/External/ppcg/install-sh
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/genctest.py
The file was removedpolly/lib/External/isl/m4/ax_cxx_compile_stdcxx_11.m4
The file was addedpolly/lib/External/isl/imath/imdrover.c
The file was addedpolly/lib/External/isl/imath/tests/sqr.tc
The file was removedpolly/lib/External/isl/m4/ax_c___attribute__.m4
The file was addedpolly/lib/External/isl/imath/tests/pi1500-10.txt
The file was addedpolly/lib/External/isl/imath/tests/isprime.tc
The file was addedpolly/lib/External/isl/imath/tests/emod.tc
The file was removedpolly/lib/External/isl/interface/depcomp
The file was addedpolly/lib/External/isl/imath/.gitattributes
The file was addedpolly/lib/External/isl/imath/tests/qsubz.tc
The file was removedpolly/lib/External/isl/m4/ax_detect_git_head.m4
The file was addedpolly/lib/External/isl/imath/tests/bug-swap.c
The file was addedpolly/lib/External/isl/testsets/pip/cnt_sum2.pip
The file was addedpolly/lib/External/isl/imath/examples/input.c
The file was addedpolly/lib/External/isl/imath/examples/randprime.c
The file was removedpolly/lib/External/isl/Makefile.in
The file was addedpolly/lib/External/isl/imath/rsamath.c
The file was removedpolly/lib/External/ppcg/m4/ax_submodule.m4
The file was addedpolly/lib/External/isl/imath/tests/qdiv.tc
The file was removedpolly/lib/External/isl/interface/install-sh
The file was removedpolly/lib/External/isl/interface/Makefile.am
The file was removedpolly/lib/External/isl/m4/ax_compiler_vendor.m4
The file was removedpolly/lib/External/isl/m4/ax_create_pkgconfig_info.m4
The file was removedpolly/lib/External/isl/include/isl/cpp-checked-conversion.h
The file was removedpolly/lib/External/isl/include/isl/cpp-checked.h
The file was addedpolly/lib/External/isl/imath/contrib/Makefile.msvc
The file was addedpolly/lib/External/isl/imath/tests/rtest.c
The file was removedpolly/lib/External/isl/m4/ax_cxx_compile_stdcxx_11_no_override.m4
The file was removedpolly/lib/External/isl/compile
The file was addedpolly/lib/External/isl/testsets/pip/seghir-e8.pip
The file was removedpolly/lib/External/isl/m4/ax_cc_maxopt.m4
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/genpytest.py
The file was removedpolly/lib/External/isl/m4/ltversion.m4
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/imath_custom_test.c
The file was removedpolly/lib/External/isl/configure.ac
The file was addedpolly/lib/External/isl/imath/tests/test.bc
The file was removedpolly/lib/External/isl/m4/lt~obsolete.m4
The file was addedpolly/lib/External/isl/imath/doc.md.in
The file was addedpolly/lib/External/isl/imath/examples/pi.c
The file was addedpolly/lib/External/isl/imath/tests/qadd.tc
The file was removedpolly/lib/External/isl/m4/ax_detect_gmp.m4
The file was addedpolly/lib/External/isl/doc/interface
The file was addedpolly/lib/External/isl/imath/tests/linux/Dockerfile
The file was addedpolly/lib/External/isl/testsets/pip/seghir-e5.pip
The file was addedpolly/lib/External/isl/imath/tests/qmisc.tc
The file was addedpolly/lib/External/isl/imath/tests/emodv.tc
The file was addedpolly/lib/External/isl/imath/tests/add.tc
The file was addedpolly/lib/External/isl/imath/tests/init.tc
The file was removedpolly/lib/External/isl/m4/ax_detect_imath.m4
The file was addedpolly/lib/External/isl/imath/tests/bintest.c
The file was addedpolly/lib/External/isl/imath/Makefile
The file was addedpolly/lib/External/isl/imath/tests/set.tc
The file was addedpolly/lib/External/isl/imath/examples/basecvt.c
The file was removedpolly/lib/External/ppcg/Makefile.in
The file was addedpolly/lib/External/isl/imath/tests/conv.tc
The file was addedpolly/lib/External/isl/imath/tests/invmod.tc
The file was addedpolly/lib/External/isl/.gitmodules
The file was addedpolly/lib/External/isl/testsets/pip/bouleti.pip
The file was removedpolly/lib/External/isl/Makefile.am
The file was addedpolly/lib/External/isl/imath/tests/qmul.tc
The file was addedpolly/lib/External/isl/imath/tests/root.tc
The file was removedpolly/lib/External/isl/interface/config.sub
The file was removedpolly/lib/External/isl/m4/ax_check_compiler_flags.m4
The file was addedpolly/lib/External/isl/testsets/pip/seghir-e6.pip
The file was removedpolly/lib/External/isl/config.guess
The file was removedpolly/lib/External/ppcg/config.guess
The file was addedpolly/lib/External/isl/imath/tests/qmulz.tc
The file was addedpolly/lib/External/isl/imath/.travis.yml
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/README
The file was addedpolly/lib/External/isl/imath/doc.md
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/runtest.py
The file was removedpolly/lib/External/ppcg/m4/libtool.m4
The file was removedpolly/lib/External/isl/interface/compile
The file was addedpolly/lib/External/isl/imath/imdrover.h
The file was removedpolly/lib/External/isl/interface/aclocal.m4
The file was addedpolly/lib/External/isl/imath/contrib/README
The file was addedpolly/lib/External/isl/imath/tests/gcd.tc
The file was removedpolly/lib/External/isl/m4/ax_submodule.m4
The file was removedpolly/lib/External/ppcg/depcomp
The file was addedpolly/lib/External/isl/testsets/pip/seghir-e4.pip
The file was removedpolly/lib/External/isl/m4/libtool.m4
The file was addedpolly/lib/External/isl/imath/tests/imath-test.scm
The file was removedpolly/lib/External/isl/interface/configure
The file was removedpolly/lib/External/ppcg/Makefile.am
The file was removedpolly/lib/External/ppcg/config.sub
The file was removedpolly/lib/External/isl/m4/ltsugar.m4
The file was removedpolly/lib/External/isl/doc/Makefile.in
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/runtest
The file was removedpolly/lib/External/isl/py-compile
The file was addedpolly/lib/External/isl/imath/examples/rounding.c
The file was addedpolly/lib/External/isl/imath/LICENSE
The file was removedpolly/lib/External/ppcg/ltmain.sh
The file was removedpolly/lib/External/isl/interface/isl_config.h.in
The file was addedpolly/lib/External/isl/imath/tests/expt.tc
The file was removedpolly/lib/External/isl/m4/ax_create_stdint_h.m4
The file was addedpolly/lib/External/isl/imath/tests/bigmul.tc
The file was addedpolly/lib/External/isl/imath/tests/bigsqr.tc
The file was removedpolly/lib/External/isl/m4/ax_cxx_compile_stdcxx.m4
The file was removedpolly/lib/External/isl/m4/ax_prog_cxx_for_build.m4
The file was removedpolly/lib/External/ppcg/m4/ax_check_opencl.m4
The file was removedpolly/lib/External/ppcg/missing
The file was removedpolly/lib/External/isl/config.sub
The file was addedpolly/lib/External/isl/imath/imtimer.c
The file was removedpolly/lib/External/isl/include/isl/cpp.h
The file was addedpolly/lib/External/isl/imath/ChangeLog
The file was addedpolly/lib/External/isl/imath/tests/mul.tc
The file was addedpolly/lib/External/isl/testsets/pip/difficult.pip
The file was addedpolly/lib/External/isl/testsets/pip/seghir-e9.pip
The file was removedpolly/lib/External/ppcg/m4/ax_detect_git_head.m4
The file was addedpolly/lib/External/isl/imath/tests/gmp-compat-test/.gitignore
The file was removedpolly/lib/External/isl/missing
The file was addedpolly/lib/External/isl/imath/tests/lcm.tc
The file was removedpolly/lib/External/isl/interface/ltmain.sh
The file was removedpolly/lib/External/isl/ltmain.sh
The file was modifiedpolly/lib/External/update-isl.sh
The file was removedpolly/lib/External/isl/interface/Makefile.in
The file was addedpolly/lib/External/isl/imath/README.md
The file was removedpolly/lib/External/ppcg/m4/ltoptions.m4
The file was addedpolly/lib/External/isl/imath/iprime.c
The file was addedpolly/lib/External/isl/testsets/pip/phideo.pip
The file was removedpolly/lib/External/ppcg/m4/ltsugar.m4
The file was removedpolly/lib/External/isl/aclocal.m4
Commit c90cbb2d3455a6e1421cc7e703d2043a399ef7aa by llvmgnsyncbot
[gn build] Port d249200fa7d5
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clang-tidy/readability/BUILD.gn
Commit c3ddc13d7d631a29b55f82c7cc7a9008bf89b1f4 by aeubanks
[NFC] Split up PassBuilder.cpp

PassBuilder.cpp is the slowest file to compile in LLVM.
When trying to test changes to pipelines, it takes a long time to recompile.

This doesn't actually speedup building PassBuilder.cpp itself since most
of the time is spent in other large/duplicated functions caused by
PassRegistry.def.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D109798
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Passes/BUILD.gn
The file was addedllvm/lib/Passes/OptimizationLevel.cpp
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was addedllvm/lib/Passes/PassBuilderPipelines.cpp
The file was modifiedllvm/lib/Passes/CMakeLists.txt
Commit 5d78e33ce5eba5bdf2be0d261eb5c6dd3458ec78 by aeubanks
[test] Move some llvm-extract tests into the proper directory
The file was addedllvm/test/tools/llvm-extract/extract-weak-odr.ll
The file was addedllvm/test/tools/llvm-extract/extract-alias.ll
The file was removedllvm/test/Other/extract-linkonce.ll
The file was addedllvm/test/tools/llvm-extract/extract-linkonce.ll
The file was removedllvm/test/Other/extract-weak-odr.ll
The file was removedllvm/test/Other/extract-alias.ll
The file was addedllvm/test/tools/llvm-extract/extract.ll
The file was removedllvm/test/Other/extract.ll
Commit 699da98739b0f88c27f75adbe8295c7e1dfd0188 by richard
PR51874: Fix diagnostics for defaulted, implicitly deleted 'operator!='.

Don't say we couldn't find an 'operator<=>' when we were actually
looking for an 'operator=='. Also fix a crash when attempting to
diagnose if we select a built-in 'operator!=' in this lookup.
The file was addedclang/test/CXX/class/class.compare/class.compare.secondary/p2.cpp
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
Commit 37a5a3ae5508a120a6eba113dbd0b23ab27d650e by tejohnson
[MemProf] Avoid global lock when updating MIB cache

Previously we used a global Allocator-scope mutex to lock when adding a
deallocation to the MIB cache. This resulted in a lot of contention.
Instead add and use per-set mutexes.

Along with this, we now need to remove the global miss and access count
variables and instead utilize the per-set statistics to report the
overall miss rate.

Differential Revision: https://reviews.llvm.org/D109853
The file was modifiedcompiler-rt/lib/memprof/memprof_allocator.cpp
Commit 17589538aaef2b5ae27a0bfeb4346aff433aa59d by tedwood
[lldb-vscode] Fix focus thread when previous thread exits

The thread that Visual Studio Code displays on a stop is called the focus thread. When the previous focus thread exits and we stop in a new thread, lldb-vscode does not tell vscode to set the new thread as the focus thread, so it selects the first thread in the thread list.

This patch changes lldb-vscode to tell vscode that the new thread is the focus thread. It also includes a test that verifies the DAP stop message for this case contains the correct values.

Reviewed By: clayborg, wallace

Differential Revision: https://reviews.llvm.org/D109633
The file was addedlldb/test/API/tools/lldb-vscode/correct-thread/main.c
The file was addedlldb/test/API/tools/lldb-vscode/correct-thread/TestVSCode_correct_thread.py
The file was modifiedlldb/tools/lldb-vscode/lldb-vscode.cpp
The file was addedlldb/test/API/tools/lldb-vscode/correct-thread/Makefile