FailedChanges

Summary

  1. Step-by-step instructions for a new worker (details)
  2. List of required Python packages for buildbot 2.8.x. (details)
  3. Added collapse build requests handling. (details)
  4. We use github authentication to let LLVM users do some extra with the build bot. (details)
  5. More logs in larger files. (details)
  6. Ported InterpolateToNativePath and InterpolateToPosixPath. (details)
  7. Ported LLVMBuildFactory. (details)
  8. Ported automatic schedulers; added support for force builds from Web UI. (details)
  9. Ported LLVMPoller. (details)
  10. Ported FileExists and FileDoesNotExist. (details)
  11. Ported NinjaCommand. (details)
  12. Ported CmakeCommand. (details)
  13. Ported LitTestCommand. (details)
  14. Ported builders.Util. (details)
  15. Ported XToolchainBuilder. (details)
  16. Ported AOSPBuilder. (details)
  17. Ported ClangLTOBuilder. (details)
  18. Ported FuchsiaBuilder. (details)
  19. Ported LLDPerformanceTestsuite. (details)
  20. Ported OpenMPBuilder. (details)
  21. Ported PollyBuilder. (details)
  22. Ported SanitizerBuilder. (details)
  23. Ported ClangBuilder. (details)
  24. Ported LLDBBuilder. (details)
  25. Ported UnifiedTreeBuilder. (details)
  26. Ported FlangBuilder. (details)
  27. Ported ABITestsuitBuilder. (details)
  28. Ported config __init__.py. (details)
  29. Ported builders.py. (details)
  30. Workers do the work. (details)
  31. First draft of LLVMInformativeMailNotifier. (details)
  32. Ported status.py. (details)
  33. Added status.py to the master/config. (details)
  34. Ported master.cfg. (details)
  35. NFC. They are workers. (details)
  36. The first draft of ported AnnotatedCommand. (details)
  37. Dial with bogus commits and commits to the llvm-project root directory. (details)
  38. Dial with potentially empty test description in LitTestCommand. (details)
  39. Disabled debug logs for github authenticator. (details)
  40. Posix paths in CMAKE_C_COMPILER and CMAKE_CXX_COMPILER. (details)
  41. NFC. Cosmetic changes. (details)
  42. Applied last minute changes from zord 0.8.5. (details)
  43. AnnotatedCommand rewritten for buildbot 2.8.x (details)
  44. [sanitizer][zorg] Use ccache on Android bot (details)
  45. one (details)
  46. [NFC][Sanitizer] Try to increase file limits on bot (details)
  47. [NFC][Santizer] Continue build if ulimit fails (details)
  48. Use ccache on tsan bot (details)
  49. [Sanitizer] Always clean build on tsan bot (details)
  50. [Sanitizer] Switch tsan bot to ninja (details)
  51. [NFC] Remove unused ENV vars (details)
  52. Revert "one" commited by mistake (details)
  53. [sanitizer] Clean build_stage1 and use ccache (details)
  54. Add new worker debian-stadler-sparc64 for Linux 64-bit SPARC (details)
  55. [sanitizer] Clear clang_build and use ccache (details)
  56. Fix tsan buildbot (details)
  57. [flang] Switch from check-all to check-flang (details)
  58. [zorg][PowerPC] Add tags for builders (details)
  59. [sanitizer] Clean build with CCACHE on Android bot (details)
  60. [sanitizer] Remove unused cmake flags (details)
  61. [sanitizer] Delete unused script (details)
  62. Updated requirements. (details)
  63. [sanitizer] Remove unused ENV variables (details)
  64. [ubsan] Use libc++ on ubsan bots (details)
  65. Cleanup linker setup on sanitizer bots (details)
  66. Use check-all on sanitizer bots (details)
  67. [NFC] Format script (details)
  68. Test clang-tools-extra with sanitizers (details)
  69. Dump some diagnostics as a step (details)
  70. Fix format of Info/Prepare steps (details)
  71. Extra mail notifiers should not report to blamelist. We have a designated notifier for that. (details)
  72. NFC. Some comments and code formatting. (details)
  73. Configure reporters for production and staging buildbot differently. (details)
  74. [llvm-zorg] Use ndk21 for buildbot (details)
  75. Added compiler-rt tests to run on ARM target. (details)
  76. [sanitizers] check more on stage3 (details)
  77. [zorg][PowerPC] Switch RHEL buildbot to use runtime build (details)
Commit e8ba87e92b857c14b7eb5466c4266a9e09a1f5fb by kuhnel
Step-by-step instructions for a new worker
The file was modifiedbuildbot/google/README.md (diff)
Commit 4a72d556deb82fa379295c4babeed3f151e0b2a8 by gkistanova
List of required Python packages for buildbot 2.8.x.
The file was addedrequirements.txt
Commit 33c85caa0af3b4cba3df54964b4e825a8f443515 by gkistanova
Added collapse build requests handling.
The file was addedzorg/buildbot/process/buildrequest.py
Commit 606f96ea6429ebdb56dff55a18d6f49d96345896 by gkistanova
We use github authentication to let LLVM users do some extra with the build bot.
The file was addedbuildbot/osuosl/master/config/auth.py
Commit 40829a75a03f5a5bee7dd20ee6aa2779f20d8824 by gkistanova
More logs in larger files.
The file was modifiedbuildbot/osuosl/master/buildbot.tac (diff)
Commit 68cc2b96fcc43180a8bd16a264ace6d7c6509071 by gkistanova
Ported InterpolateToNativePath and InterpolateToPosixPath.
The file was modifiedzorg/buildbot/process/properties.py (diff)
Commit 95a620e3813318af15ac99ef69e685058e99643b by gkistanova
Ported LLVMBuildFactory.
The file was modifiedzorg/buildbot/process/factory.py (diff)
Commit f78b45f4252e4967d46ab0094465ad5649f19e9d by gkistanova
Ported automatic schedulers; added support for force builds from Web UI.
The file was modifiedbuildbot/osuosl/master/config/schedulers.py (diff)
The file was modifiedzorg/buildbot/changes/llvmgitpoller.py (diff)
Commit 287ceec10e78cacd52469915840cccaeaed3ddb6 by gkistanova
Ported FileExists and FileDoesNotExist.
The file was modifiedzorg/buildbot/conditions/FileConditions.py (diff)
The file was modifiedzorg/buildbot/commands/NinjaCommand.py (diff)
The file was modifiedzorg/buildbot/commands/CmakeCommand.py (diff)
Commit c6088e8656cc71c0918b16535185ef633b940eec by gkistanova
Ported LitTestCommand.
The file was modifiedzorg/buildbot/commands/LitTestCommand.py (diff)
The file was modifiedzorg/buildbot/builders/Util.py (diff)
Commit 5e315d9df7889396327b36736e51dac1926dfa17 by gkistanova
Ported XToolchainBuilder.
The file was modifiedzorg/buildbot/builders/XToolchainBuilder.py (diff)
The file was modifiedzorg/buildbot/builders/AOSPBuilder.py (diff)
Commit 563c06235fd025001112eb3fdb45de05d1b8716f by gkistanova
Ported ClangLTOBuilder.
The file was modifiedzorg/buildbot/builders/ClangLTOBuilder.py (diff)
Commit 682000952c2737b37a7038c5a10fdf6edb1301bb by gkistanova
Ported FuchsiaBuilder.
The file was modifiedzorg/buildbot/builders/FuchsiaBuilder.py (diff)
Commit 5bdc20b343937698e072beabe7e36448138b76ea by gkistanova
Ported LLDPerformanceTestsuite.
The file was modifiedzorg/buildbot/builders/LLDPerformanceTestsuite.py (diff)
The file was modifiedzorg/buildbot/builders/OpenMPBuilder.py (diff)
The file was modifiedzorg/buildbot/builders/PollyBuilder.py (diff)
Commit 7e9f96b61613557f6b10908b4cc943a0901749db by gkistanova
Ported SanitizerBuilder.
The file was modifiedzorg/buildbot/builders/SanitizerBuilder.py (diff)
The file was modifiedzorg/buildbot/builders/ClangBuilder.py (diff)
The file was modifiedzorg/buildbot/builders/LLDBBuilder.py (diff)
Commit 8631fdd46ed136ae8501bfa115ff8c3143d55444 by gkistanova
Ported UnifiedTreeBuilder.
The file was modifiedzorg/buildbot/builders/UnifiedTreeBuilder.py (diff)
The file was modifiedzorg/buildbot/builders/FlangBuilder.py (diff)
Commit 152cc15b9dcf04a6ec3cc01fa2da36c7ed2657f2 by gkistanova
Ported ABITestsuitBuilder.
The file was modifiedzorg/buildbot/builders/ABITestsuitBuilder.py (diff)
Commit 1a13e68decb1d17a4d1c01c6a4d82367a71eff4c by gkistanova
Ported config __init__.py.
The file was modifiedbuildbot/osuosl/master/config/__init__.py (diff)
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
The file was addedbuildbot/osuosl/master/config/workers.py
The file was removedbuildbot/osuosl/master/config/slaves.py
Commit 20548aa6da125638b87792b999ecd2290ce0cd65 by gkistanova
First draft of LLVMInformativeMailNotifier.
The file was modifiedzorg/buildbot/util/InformativeMailNotifier.py (diff)
The file was modifiedbuildbot/osuosl/master/config/status.py (diff)
Commit b50bd6f481ccd01d89dac3e08893f62a8a113a6b by gkistanova
Added status.py to the master/config.
The file was modifiedbuildbot/osuosl/master/config/__init__.py (diff)
The file was modifiedbuildbot/osuosl/master/master.cfg (diff)
Commit c0dc5406fd1d636dbd72f430e0234451992b5814 by gkistanova
NFC. They are workers.
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
The file was modifiedzorg/buildbot/process/properties.py (diff)
The file was modifiedbuildbot/osuosl/master/config/workers.py (diff)
Commit 17448db1cd085d1de39ba95644e3175a60374dfc by gkistanova
The first draft of ported AnnotatedCommand.
The file was modifiedzorg/buildbot/commands/AnnotatedCommand.py (diff)
Commit 3759d2deb7f8fd544c3c60dd4f557e8ef16912c3 by gkistanova
Dial with bogus commits and commits to the llvm-project root directory.
The file was modifiedzorg/buildbot/changes/llvmgitpoller.py (diff)
Commit 96efba68fcbbea6963e6423032d7b7f6d4a7bed1 by gkistanova
Dial with potentially empty test description in LitTestCommand.
The file was modifiedzorg/buildbot/commands/LitTestCommand.py (diff)
Commit 44f4088cde7a030b89f52695555a515ac3777835 by gkistanova
Disabled debug logs for github authenticator.
The file was modifiedbuildbot/osuosl/master/config/auth.py (diff)
Commit 70bbd3b3857652b8fd2be6d3a6cb4c7cfe1e36d9 by gkistanova
Posix paths in CMAKE_C_COMPILER and CMAKE_CXX_COMPILER.
The file was modifiedzorg/buildbot/builders/ClangBuilder.py (diff)
Commit a37f32c8fc33d6c0a0c92b6767d29ef33359c4d0 by gkistanova
NFC. Cosmetic changes.
The file was modifiedzorg/buildbot/commands/LitTestCommand.py (diff)
The file was modifiedbuildbot/osuosl/master/config/schedulers.py (diff)
Commit c8131a23602d72f02556ac3898d34b7b51f0354c by gkistanova
Applied last minute changes from zord 0.8.5.
The file was modifiedbuildbot/osuosl/master/config/workers.py (diff)
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit 4f9548116f8afd7ae3edb69d1ccf2cd00e62f73a by gkistanova
AnnotatedCommand rewritten for buildbot 2.8.x
The file was modifiedzorg/buildbot/commands/AnnotatedCommand.py (diff)
Commit c2f611c2251ddfa75c6da25757ace8770ca61650 by Vitaly Buka
[sanitizer][zorg] Use ccache on Android bot
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_android_functions.sh (diff)
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_android.sh (diff)
Commit 605f441f4892c7c930b0e2a7c5aee7ab3462d072 by Vitaly Buka
[NFC][Sanitizer] Try to increase file limits on bot
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_functions.sh (diff)
Commit fd7bc345ab6bd4ac7972b0a4e60061dcf71dc9af by Vitaly Buka
[NFC][Santizer] Continue build if ulimit fails
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_functions.sh (diff)
Commit 7f16fe1f358aeca731c9ee5ae09119a57ddbb4cf by Vitaly Buka
Use ccache on tsan bot
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_standard.sh (diff)
Commit b89994ecccd45d80f363a3e631e7b85ffded5df7 by Vitaly Buka
[Sanitizer] Always clean build on tsan bot
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_standard.sh (diff)
Commit 182c0fd7573d7a21522c32e71a79c6e4eb6d8024 by Vitaly Buka
[Sanitizer] Switch tsan bot to ninja
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_standard.sh (diff)
Commit e0138d3279be873313ef0c4817884a5d1d53b204 by Vitaly Buka
[NFC] Remove unused ENV vars
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_standard.sh (diff)
Commit 3659362bd7f7bcfe620a35fdffeb4c8a223c1a1d by Vitaly Buka
Revert "one" commited by mistake

This reverts commit cfc055848cee7b30a3326458eaba257f79988191.
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_android.sh (diff)
Commit d74105e5b5fc9c26d9b208364d8d3114c2aa2fc5 by Vitaly Buka
[sanitizer] Clean build_stage1 and use ccache
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_fast.sh (diff)
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_functions.sh (diff)
Commit 327577737ff69ead88fd0553dea1cf7a0e2004e7 by gkistanova
Add new worker debian-stadler-sparc64 for Linux 64-bit SPARC

This adds a new builder called debian-stadler-sparc64 which will build LLVM and Clang on Debian unstable on sparc64.

Reviewed By: gkistanova

Differential Revision: https://reviews.llvm.org/D90148
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
The file was modifiedbuildbot/osuosl/master/config/workers.py (diff)
Commit 75601f8abfc43a072f6d336afb1e30db12aa7d9e by Vitaly Buka
[sanitizer] Clear clang_build and use ccache
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_cmake.sh (diff)
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_standard.sh (diff)
Commit 32826aace596c48525a0e7c1cd2d83b19e2b5f75 by andrzej.warzynski
[flang] Switch from check-all to check-flang

With check-all this builder captures too many generic failures that are
not specific to Flang. We are switching to check-flang for better
granularity.

Differential Revision: https://reviews.llvm.org/D90308
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit 237d0b4da0c0df5ffec99ce30e62b3acc7d15c3c by Jinsong Ji
[zorg][PowerPC] Add tags for builders

Add the tag for all PowerPC builders so that we can identify them
easily.
eg: Check all with http://lab.llvm.org:8011/#/waterfall?tags=%20ppc

Reviewed By: gkistanova

Differential Revision: https://reviews.llvm.org/D90263
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit 57fc648ce70335aee7dff2c0e0f21c5db36a4071 by Vitaly Buka
[sanitizer] Clean build with CCACHE on Android bot
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_android_functions.sh (diff)
Commit f7e0584692a19fb1103e5d228145e8f9dd3bac08 by Vitaly Buka
[sanitizer] Remove unused cmake flags
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_android_functions.sh (diff)
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_android.sh (diff)
Commit 1bad980ec16e3dd3c7edad694f7bd89763666835 by Vitaly Buka
[sanitizer] Delete unused script
The file was removedzorg/buildbot/builders/sanitizers/buildbot_gn.sh
The file was modifiedrequirements.txt (diff)
Commit 08418851a73c85648e4ab0f35233c69d82a59ad1 by Vitaly Buka
[sanitizer] Remove unused ENV variables
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_android.sh (diff)
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_fuzzer.sh (diff)
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_bootstrap_msan.sh (diff)
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_fast.sh (diff)
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_bootstrap_ubsan.sh (diff)
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_bootstrap_asan.sh (diff)
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_functions.sh (diff)
Commit 16682e95f72cdbb5bf60da42e58a26064d5956de by Vitaly Buka
[ubsan] Use libc++ on ubsan bots
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_functions.sh (diff)
Commit 5835123edd8714ac584cc7eeab7a3d3a4a217adf by Vitaly Buka
Cleanup linker setup on sanitizer bots
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_bootstrap_asan.sh (diff)
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_bootstrap_msan.sh (diff)
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_fast.sh (diff)
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_bootstrap_ubsan.sh (diff)
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_functions.sh (diff)
Commit a909af1b08a212bc3605ad304b46b131e6036f6d by Vitaly Buka
Use check-all on sanitizer bots
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_functions.sh (diff)
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_functions.sh (diff)
Commit 09f45064d988db56acc81166eec1ad8a97d3f16d by Vitaly Buka
Test clang-tools-extra with sanitizers
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_functions.sh (diff)
Commit a6156beb615ee09c70bfd2bb8d9680e91ec8a088 by Vitaly Buka
Dump some diagnostics as a step
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_functions.sh (diff)
Commit 5604990c9318e08491daa65fa8ed83acf2c7eb7b by Vitaly Buka
Fix format of Info/Prepare steps
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_functions.sh (diff)
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_standard.sh (diff)
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_cmake.sh (diff)
Commit fad99832df6b02d15ad42c89f96b67e8dcc6763b by gkistanova
Extra mail notifiers should not report to blamelist. We have a designated notifier for that.
The file was modifiedbuildbot/osuosl/master/config/status.py (diff)
Commit 43a84c669d6cfc473817d21e67fe6831892a69c7 by gkistanova
NFC. Some comments and code formatting.
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
The file was modifiedbuildbot/osuosl/master/config/status.py (diff)
Commit 6e69134d8602c49a6ad21e1eaef0e326232810bb by gkistanova
Configure reporters for production and staging buildbot differently.
The file was modifiedbuildbot/osuosl/master/config/status.py (diff)
Commit 6553d9775a943ed49a3261695060872a1df3c0cf by Vitaly Buka
[llvm-zorg] Use ndk21 for buildbot

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D89924
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_android.sh (diff)
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_android_functions.sh (diff)
Commit 477485f2fbf7d00b9c91acb9d675d79c91dc8f22 by aorlov
Added compiler-rt tests to run on ARM target.

Run compiler-rt tests remotely on the target if it makes sense.

Reviewed By: vvereschaka

Differential Revision: https://reviews.llvm.org/D90491
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit 05c6a5dab9d140f3acdd11586021c49a13931c0d by noreply
[sanitizers] check more on stage3
The file was modifiedzorg/buildbot/builders/sanitizers/buildbot_functions.sh (diff)
Commit d24b181949873b5657495de3ecfb770fdda52e75 by Jinsong Ji
[zorg][PowerPC] Switch RHEL buildbot to use runtime build

We are using runtime build now,
See Petr's definition about "runtime" build here:
http://lists.llvm.org/pipermail/llvm-dev/2020-April/140771.html

Update the cmake macros to reflect the change.

Reviewed By: saghir

Differential Revision: https://reviews.llvm.org/D90609
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)

Summary

  1. [X86] lowerShuffleWithPERMV - use MVT::changeTypeToInteger helper. NFCI. (details)
  2. [InstCombine] Rename InstCombinerImpl::matchBSwap to matchBSwapOrBitReverse. NFCI. (details)
  3. [InstCombine] matchBSwapOrBitReverse - expose bswap/bitreverse matching flags. (details)
  4. [mlir] Expose affine expression to C API (details)
  5. [ValueTracking] add range limits for ctpop (details)
  6. [clang-tidy] Fix redefinition of module in the same module.modulemap file (details)
  7. [clangd] Migrate to proto2 syntax (details)
  8. [CMake] generate_grpc_protos -> generate_protos(... GRPC). NFC (details)
  9. [CMake] Fix hardcoding of protobuf output basename. NFC (details)
  10. [clangd] NFC: Add using directives to avoid spelling out llvm::sys::path (details)
  11. [InstSimplify] add tests for ctlz constant range; NFC (details)
  12. [InstSimplify] add tests for cttz constant range; NFC (details)
  13. [ValueTracking] add range limits for ctlz (details)
  14. [ValueTracking] add range limits for cttz (details)
  15. [clang] Split remote index service definition into a separate file. (details)
  16. [MLIR] Extract buffer alias analysis for reuse (details)
  17. [PowerPC][LLD] Support for PC Relative TLS for Local Dynamic (details)
  18. [clangd] Drop version from remote index proto names, fix clangd-index-server (details)
  19. [LSR] ignore profitable chain when reg num is not major cost. (details)
  20. [runtimes] Revert the libc++ __config_site change (details)
  21. [gn build] port 48e4b0f (__config_site revert) (details)
  22. [DebugInstrRef] Convert DBG_INSTR_REFs into variable locations (details)
  23. [llvm-mca] Extend cortex-a57 memory instructions test (details)
  24. [MLIR] Fix bad merge with buffer alias analysis. (details)
  25. Export TemplateArgumentMatcher so clients defining custom matchers don't need to use the internal namespace (details)
  26. [flang][openacc] Fix semantic check for wait and atomic directives (details)
  27. AMDGPU: Increase branch size estimate with offset bug (details)
  28. AMDGPU: Don't query for TII in TII (details)
  29. [TableGen] Change !getop and !setop to !getdagop and !setdagop. (details)
  30. [InstCombine] Add initial bitreverse test coverage (details)
  31. [InstCombine] Add 8/16/32/64 bitreverse test coverage (details)
  32. [InstCombine] Add i8 bitreverse by multiplication test patterns (details)
  33. [flang][OpenMP] Upstream lowering of `ParallelOp` clauses (details)
  34. CfgInterface: rename interface() to getInterface() (details)
  35. Revert "[Statepoints] Allow deopt GC pointer on VReg if gc-live bundle is empty." (details)
  36. [AMDGPU] Add simplification/combines for llvm.amdgcn.fma.legacy (details)
  37. [DebugInstrRef] Handle DBG_INSTR_REFs use-before-defs in LiveDebugValues (details)
  38. [flang][OpenMP] Upstream lowering of OpenMP `Flush` construct (details)
  39. [WebAssembly] Implementation of (most) table instructions (details)
  40. [clangd] Fix remote-server build and add it to check-clangd (details)
  41. [AMDGPU] Fix access beyond the end of the basic block in execMayBeModifiedBeforeAnyUse. (details)
  42. [gn build] Port 00255f41929 (details)
  43. [PowerPC] Fix the Predicates for enabling pcrelative-memops and PLXVP/PSTXVP definitions (details)
  44. SourceManager: Clarify that FileInfo always has a ContentCache, NFC (details)
  45. [AArch64][SVE] Fix umin/umax lowering to handle out of range imm. (details)
  46. Re-apply "[JITLink][ELF] Add support for ELF::R_X86_64_REX_GOTPCRELX relocation" (details)
  47. Added utility to launch tests on a target remotely. (details)
  48. Revert "[CGSCC] Detect devirtualization in more cases" (details)
  49. SourceManager: Encapsulate line number mapping into SrcMgr::LineOffsetMapping (details)
  50. These compiler-rt tests should be UNSUPPORTED instead of XFAIL. (details)
  51. [lldb] Redesign Target::GetUtilityFunctionForLanguage API (details)
  52. [CUDA] Improve clang's ability to detect recent CUDA versions. (details)
  53. [CUDA] Extract CUDA version from cuda.h if version.txt is not found (details)
  54. [gn build] Port dbbc4f4e226 (details)
  55. [AArch64][GlobalISel] Introduce a new post-isel optimization pass. (details)
  56. SourceManager: Make LastLineNoContentCache and ContentCache::SourceLineCache mutable, NFC (details)
  57. [MLInliner] Disable always inliner in bounds tests (details)
  58. [ELF] Don't error on R_PPC64_REL24/R_PPC64_REL24_NOTOC referencing __tls_get_addr for missing R_PPC64_TLSGD/R_PPC64_TLSLD (details)
  59. [mlir] Add FuncOp::eraseResults (details)
  60. [PhiValues] Use SetVector to avoid non-determinism (details)
  61. [PowerPC] Add intrinsics for MMA (details)
  62. [NFC] Use [MC]Register in RegAllocGreedy (details)
  63. [BasicAA] Add additional phi cycle test (NFC) (details)
  64. [MemProf] XFAIL test on avr until issue can be debugged (details)
  65. [AIX][cmake] Adjust management of `-G` for linking (details)
  66. [AMDGPU] Fixed isLegalRegOperand() with physregs (details)
  67. [AIX] Let alloca return 16 bytes alignment (details)
  68. [lldb] Fix use of undefined type 'lldb_private::UtilityFunction' (details)
  69. [IR] add fn attr for no_stack_protector; prevent inlining on mismatch (details)
  70. SourceManager: Simplify by inlining what remains of ComputeLineNumbers, NFC (details)
  71. [gn build] Add missing comma (details)
  72. [mlir][vector] Add folding for ExtractOp with ShapeCastOp source (details)
  73. [libc++] Refactor the run-buildbot script to make it more modular, and run the benchmarks (details)
  74. Unconditionally #include <future> (details)
  75. [mlir][vector] Add folder for ExtractStridedSliceOp (details)
  76. [libc++] Clean up unused CI files (details)
  77. [lldb] Move copying of files into reproducer out of process (details)
  78. [AArch64] Add vector compare/select cost-model tests. (details)
  79. [libc++] NFC: Remove unused includes from the test suite (details)
  80. [mlir] Link with pthreads in AsyncRuntime (details)
  81. Fix shared build. NFC. (details)
  82. [Asan][Windows] Fix asan stack traces on Windows. (details)
  83. Fix typo in diagnostic name. (details)
  84. Remove global dialect registration (details)
  85. [mlir][Vector] Introduce UnrollVectorOptions to control vector unrolling. (details)
  86. [flang] An erroneous type bound procedure was causing a call to CHECK() (details)
  87. GC-parseable element atomic memcpy/memmove (details)
  88. Add a mlir natvis file for debugging with Visual Studio (details)
  89. [SVE] Lower fixed length VECREDUCE_SEQ_FADD operation (details)
  90. Revert "Remove global dialect registration" (details)
  91. PR47954 / DR2126: permit temporary objects that are lifetime-extended by (details)
  92. [RISCV] Use the commercial name for scheduling model (NFC) (details)
  93. [CodeGen] Emit destructor calls to destruct non-trivial C struct (details)
  94. [llvm-install-name-tool] Add -prepend_rpath option (details)
  95. [test] Simplify pr33641_remove_arg_dbgvalue.ll (details)
  96. [Inliner][NPM] Properly pass callee AAResults (details)
  97. [StructurizeCFG][NewPM] Port -structurizecfg to NPM (details)
  98. [MemProf] Attempt to debug avr bot failure (details)
  99. [libFuzzer] Added -print_full_coverage flag. (details)
  100. [Hexagon] Handle selection between HVX vector predicates (details)
  101. Don't allow structured binding declarations to decompose a (details)
  102. [intel-pt] Disable/Enable tracing to guarantee the trace is correct (details)
  103. Fix a few warnings from GCC (NFC) (details)
  104. Topologically sort the library to link to mlir-cpu-runner which is required with some linkers like BFD (NFC) (details)
  105. Remove global dialect registration (details)
  106. Remove unused verifyRegStateMapping() function in RegAllocFast (NFC) (details)
  107. [AutoFDO] Remove a broken assert in merging inlinee samples (details)
  108. FileManager: Reorder declarations of FileEntry and FileEntryRef, NFC (details)
  109. Add CMake dependency from MLIRJitRunner on all dialects (details)
  110. clangd: Stop calling FileEntryRef::FileEntryRef (details)
  111. llvm-dwarfdump: Support verbose printing DW_OP_convert to print the CU local offset before the resolved absolute offset (details)
  112. HeaderSearch: Simplify use of FileEntryRef in HeaderSearch::LookupFile, NFC (details)
  113. [NFC][UBSAN] Avoid "not FileCheck" in tests (details)
  114. fix lldb for recent libDebugInfoDWARF API change (details)
  115. [llvm-cov] don't include all source files when provided source files are filtered out (details)
  116. [flang][windows] Support platform-specific path separator. (details)
  117. [flang][msvc] Fix lambda capture ambiguity. NFC. (details)
  118. hwasan: Disable operator {new,delete} interceptors when interceptors are disabled. (details)
  119. [NFC][UBSAN] Refine CHECK pattern in test (details)
  120. [llvm/DebugInfo] Emit DW_OP_implicit_value when tuning for LLDB (details)
  121. [flang] Fix pimpl idiom for IntrinsicProcTable. (details)
  122. [AMDGPU] Cleanup AMDGPUUsage.rst (details)
  123. [lldb] Fix building with GCC 7. NFC. (details)
  124. [lldb] [Process/NetBSD] Use XStateRegSet for all FPU registers (details)
  125. [SystemZ] Define MaxInstLength to have the value of 6. (details)
  126. [BasicAA] Fix caching in the presence of phi cycles (details)
  127. [BasicAA] Avoid duplicate cache lookup (NFCI) (details)
  128. [LegalizeTypes] Legalize vector rotate operations (details)
  129. [DAG] Add BuildVectorSDNode::getRepeatedSequence helper to recognise multi-element splat patterns (details)
  130. [InstCombine] narrowFunnelShift - fold trunc/zext or(shl(a,x),lshr(b,sub(bw,x))) -> fshl(a,b,x) (PR35155) (details)
  131. Fix some signed/unsigned comparison gcc warnings from D87930 (details)
  132. [JITLink][ELF] PCRel32GOTLoad relocations are resolved like regular PCRel32 ones (details)
  133. [jitlink][ELF] Add zero-fill blocks for symbols in section SHN_COMMON (details)
  134. [LoopVersioning] Form dedicated exits for versioned loop to preserve simplify form (details)
  135. Revert "[jitlink][ELF] Add zero-fill blocks for symbols in section SHN_COMMON" (details)
  136. [NPM] Port -loop-versioning-licm to NPM (details)
  137. [Flang][Driver] Add infrastructure for basic frontend actions and file I/O (details)
  138. [JITLink][ELF] PCRel32GOTLoad edge offset can be smaller three (details)
  139. Reapply "[jitlink][ELF] Add zero-fill blocks for symbols in section SHN_COMMON" (details)
  140. [flang][tests] Fix Python bug in the lit config (details)
  141. [ARM] Remove some dead code. NFC (details)
  142. [AMDGPU][CostModel] Refine cost model for half- and quarter-rate instructions. (details)
  143. Unbreak the clang-interpreter example after 0aec49c8531bc5282b095730d34681455826bc2c (details)
  144. [X86] Add a stub for znver3 based on the little public information there is in AMD's manuals (details)
  145. [X86] Add a stub for Intel's alderlake. (details)
  146. [CostModel] remove cost-kind predicate for vector reduction costs (details)
  147. Revert "hwasan: Disable operator {new,delete} interceptors when interceptors are disabled." (details)
  148. [AArch64][GlobalISel] Fix -Wunused-variable. NFC (details)
  149. [asan][fuchsia] set current thread before reading thread state (details)
  150. [asan] Fix stack-use-after-free checks on non-main thread on Fuchsia (details)
  151. [X86] Produce R_X86_64_GOTPCRELX for test/binop instructions (MOV32rm/TEST32rm/...) when -Wa,-mrelax-relocations=yes is enabled (details)
  152. [ELF] Don't crash on R_X86_64_GOTPCRELX for test/binop instructions (details)
  153. Fix typo SSC -> SCC (details)
  154. [clangd] Add a TestWorkspace utility (details)
  155. For P0732R2, P1907R1: ensure that template parameter objects don't refer (details)
  156. [MemProf] Temporarily disable part of test (details)
  157. Revert "[CostModel] remove cost-kind predicate for vector reduction costs" (details)
  158. [X86] Use TargetConstant for FPDiff with X86::TC_RETURN. (details)
  159. [c++20] For P0732R2: Support string literal operator templates. (details)
  160. [InstCombine] Add test for or(fshl(),fshl()) bswap pattern. (details)
  161. [InstCombine] matchBSwapOrBitReversem - recognise or(fshl(),fshl()) bswap patterns. (details)
  162. [clang] Enable support for #pragma STDC FENV_ACCESS (details)
  163. Remove superfluous whitespace around if(). NFC. (details)
  164. [SLP] Add AArch64 tests with vectorizable compare/select patterns. (details)
  165. Correct LIT test failure detected on buildbot after mibintc committed rG2e204e23911b: [clang] Enable support for #pragma STDC FENV_ACCESS D87528 (details)
  166. [InstSimplify] add tests for logic-of-cmps with not op; NFC (details)
  167. [InstSimplify] peek through 'not' operand in logic-of-icmps fold (details)
  168. [IndVars] Regenerate test checks (NFC) (details)
  169. [SCEV] Strength nowrap flags after constant folding (details)
  170. [SCEV] Separate out constant folding in mul expr creation (details)
  171. [SCEV] Always constant fold mul expression operands (details)
  172. Thread safety analysis: Consider global variables in scope (details)
  173. Thread safety analysis: Nullability improvements in TIL, NFCI (details)
  174. [SCEV] Strenthen nowrap flags after constant folding for mul exprs (details)
  175. [CostModel] fix operand/type accounting for fadd/fmul reductions (details)
  176. [CostModel] remove cost-kind predicate for some vector reduction costs (details)
  177. [X86] Use TargetConstant instead of Constant for operands to X86vaarg64. (details)
  178. [X86] Use TargetConstant for immediates for VASTART_SAVE_XMM_REGS. (details)
  179. [X86] VEX/EVEX prefix doesn't work for inline assembly. (details)
  180. [X86] Don't disassemble wbinvd with 0xf2 or 0x66 prefix. (details)
  181. [AMDGPU] Avoid offset register in MUBUF for direct stack object accesses (details)
  182. [clangd] Add dependency on remote index service proto (details)
  183. [IndVars] Use contextual knowledge when proving trivial conds (details)
  184. [NFC] Factor out common code into lambda for further improvement (details)
  185. [NFC] Remove unused funciton param (details)
  186. Fix broken build after previous commit (details)
  187. [VE] Support atomic fence (details)
  188. [Schedule] Add a MultiHazardRecognizer (details)
  189. [gn build] Port 61bc18de0b2 (details)
  190. [ARM][SchedModels] Convert IsLdrAm3NegRegOffPred to MCSchedPredicate (details)
  191. [ARM][SchedModels] Convert IsLdstsoMinusRegPred to MCSchedPredicate (details)
  192. [ARM][SchedModels] Get rid of IsLdrAm2ScaledPred (details)
  193. [VE] Support atomic load (details)
  194. [PowerPC] Add test case for pr47830. NFC. (details)
  195. [ARM][SchedModels] Rename and generalize predicate. NFC (details)
  196. [AMDGPU] Emit new pal metadata by default (details)
  197. [AsmPrinter] Add per BB instruction mix remark. (details)
  198. [VE] Add integer arithmetic vector instructions (details)
  199. [VE] Add vector comparison and min/max (details)
  200. [Annotation] Allows annotation to carry some additional constant arguments. (details)
  201. [flang] Tighten rules to resolve procedure as intrinsic procedure (details)
  202. Try to fix buildbots after d3205bbca3e0002d76282878986993e7e7994779 (details)
  203. [lldb] [Process/FreeBSDRemote] Fix #include for i386 compat (details)
  204. [lldb] [test/Register] Use initial state for write tests (details)
  205. [lldb] [Process/NetBSD] Set xs_xstate_bv correctly when setting regs (details)
  206. [lldb] [Process/Linux] Reuse NativeRegisterContextWatchpoint_x86 (details)
  207. [lldb] Fix bitfield "frame var" for pointers (pr47743) (details)
  208. [lldb] Modernize PseudoTerminal::Fork (details)
  209. [NFC][InstrRefLDV] Fix a typo (details)
  210. [llvm-mca] Add few memory instructions to cortex-a57 test (details)
  211. tsan: add mips64 support in lib/tsan/go/buildgo.sh (details)
  212. [InstCombine] Add rotate tests where the shift amount is zero extended after masking (details)
  213. [InstCombine] Add support for zext(and(neg(amt),width-1)) rotate shift amount patterns (details)
  214. [clang] Suppress "follow-up" diagnostics on recovery call expressions. (details)
  215. [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM (details)
  216. [clang-fuzzer] CreateAndRunJITFunc - fix use after move static analyzer warning. (details)
  217. [llvm-ar][Object] Fix detection of need for 64-bit archive symbol tables (details)
  218. [DAGCombine] Add test case showing incorrect DAGCombine optimization (details)
  219. [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype (details)
  220. [clangd] Fix remote index build failures due to lack of proto dependency (details)
  221. [LV] Add cost-model test for AArch64 select costs. (details)
  222. [AMDGPU] Make more use of printNamedBit in AMDGPUInstPrinter. NFC. (details)
  223. [InstCombine] Add bswap test pattern using bitreverse intrinsic (details)
  224. [lldb][NFC] Make GetShellSafeArgument simpler and faster (details)
  225. [clangd] NFC: Update FIXME comment regarding lack of c/dtor support (details)
  226. [InstCombine] collectBitParts - add bitreverse intrinsic support. (details)
  227. Fix SBError::SetErrorToGenericError (details)
  228. [TableGen] [tests] Change integer ranges to use new '...' punctuation (details)
  229. [analyzer] [NFC] Simplify SVal::getAsLocSymbol function using existing functions (details)
  230. [VE] Support atomic store (details)
  231. [VE] Add vector logical instructions (details)
  232. [VE] Add vector shift instructions (details)
  233. [X86] Use mtriple instead of march in MIR tests (details)
  234. [AArch64] Add 2 cases where insertelement lowering could be improved. (details)
  235. [OpenMP] changing OMP rtl to use shared memory instead of env variable (details)
  236. [InstCombine] Add bswap test pattern using truncates (details)
  237. [libc++] Add a CI jobs to test the Standalone builds (details)
  238. [SVE][CodeGen][DAGCombiner] Fix TypeSize warning in redundant store elimination (details)
  239. Revert "[SVE][CodeGen][DAGCombiner] Fix TypeSize warning in redundant store elimination" (details)
  240. [SVE][CodeGen][DAGCombiner] Fix TypeSize warning in redundant store elimination (details)
  241. Unconfuse gcc5.3 after 2e204e23911b1f / D87528 (details)
  242. [libc++] Fix indentation of buildkite-pipeline.yml (details)
  243. [lld][ELF] Don't write output to the test directory. NFC. (details)
  244. [clang][unittest] Don't hardcode the string "Assertion" (details)
  245. [AMDGPU] Avoid unused variable warning in Release builds. NFC. (details)
  246. Fix issue in cortex-a57 sched model (details)
  247. [mlir][Linalg] Add basic support for TileAndFuse on Linalg on tensors. (details)
  248. [ARM][SchedModels] Convert IsLdstsoScaledNotOptimalPred to MCSchedPredicate (details)
  249. [lldb][PDB] Add ObjectFile PDB plugin (details)
  250. [DebugInfo][dexter] Add dexter tests for escaped locals (details)
  251. [SVE][AArch64] Fix TypeSize warning in loop vectorization legality (details)
  252. [SVE][AArch64] Fix TypeSize warning in GEP cost analysis (details)
  253. [SVE][InstCombine] Fix TypeSize warning in canReplaceGEPIdxWithZero (details)
  254. [SVE] Fix TypeSize warning in llvm::getGEPInductionOperand (details)
  255. [mlir][vector] Update doc strings for insert_map/extract_map and fix insert_map semantic (details)
  256. [AArch64] Extend tests for insertelement improvements. (details)
  257. SourceManager: Return non-const references in getOrCreateContentCache and related, NFC (details)
  258. [libc++abi] Make sure we can run the tests in Standalone mode (details)
  259. [Clang][CodeGen] fix failed assertion (details)
  260. [lldb][NativePDB] fix test load-pdb.cpp (details)
  261. [libc++] NFC: Consistent indentation for buildkite-pipeline.yml (details)
  262. [AMDGPU] Fix VC warning about singed/unsigned comparison. NFC. (details)
  263. Revert "Ensure that checkInitIsICE is called exactly once for every variable" (details)
  264. Revert "Revert "Ensure that checkInitIsICE is called exactly once for every variable"" (details)
  265. [mlir] Convert MemRefReinterpretCastOp to LLVM. (details)
  266. [clang-tidy] Silence unused variable warning in Release builds. NFCI. (details)
  267. Make sure Objective-C category support in IncludeSorter handles top-level imports (details)
  268. [ARM][SchedModels] Move IsLDMBaseRegInListPred to ARMSchedule.td. NFC (details)
  269. Add release tarballs for libclc (details)
  270. SourceManager: Fix an SLocEntry memory regression introduced with FileEntryRef (details)
  271. [clangd] Add back dependency on proto generated targets (details)
  272. Fix SROA with a PHI mergig values from a same block (details)
  273. [BitCode] decode nossp fn attr (details)
  274. llvm-reduce: Test reduction for D88684 ( ee6e25e4391a6d3ac0a3c89615474e512f44cda6 ) (details)
  275. [GWP-ASan] Refactor memory mapping functions (details)
  276. [libc++] NFC: Minor refactoring in filesystem_test_helper.h to ease readability (details)
  277. [InstCombine] reduce code duplication in icmp intrinsic folds; NFC (details)
  278. [InstCombine] add tests for ctpop at bitwidth limit; NFC (details)
  279. [InstCombine] add folds for icmp+ctpop (details)
  280. [AIX] Also error on -G for link-only step (details)
  281. [MemProf] Decouple memprof build from COMPILER_RT_BUILD_SANITIZERS (details)
  282. [libc++] Get rid of <iostream> in a filesystem test (details)
  283. Avoid unnecessary uses of `MDNode::getTemporary`, NFC (details)
  284. Test to check backtraces with machine function splitting. (details)
  285. [NFC] Remove max_align.c LIT testcase (details)
  286. [libunwind] Add -Wno-dll-attribute-on-redeclaration when building for windows (details)
  287. Prepend "__uniq" to symbol names hash with -funique-internal-linkage-names. (details)
  288. Run test only if X86 target is available (details)
  289. [AMDGPU] Use flat scratch instructions where available (details)
  290. [mlir] NFC: properly align IR in comments (details)
  291. [libc++] Remove the reliance of several <random> tests on <iostream> (details)
  292. [NFC] Fixing comment heading for MachineStableHash.h. (details)
  293. [nfc] [lldb] Refactor DWARFUnit::GetDIE (details)
  294. [mlir] Do not print back 0 alignment in LLVM dialect 'alloca' op (details)
  295. [TargetRegisterInfo] Fix a couple of typos in the comments (details)
  296. [CodeView] Emit static data members as S_CONSTANTs. (details)
  297. [MLIR] Fix AttributeInterface declaration. (details)
  298. IR: Clarify ownership of ConstantDataSequentials, NFC (details)
  299. [cmake] Add LLVM_UBSAN_FLAGS, to allow overriding UBSan flags (details)
  300. [mlir] Document 'ParentOneOf' with the HasParent trait (details)
  301. Fixed release build after D89170 (details)
  302. Explicitly check for entry basic block, rather than relying on MachineBasicBlock::pred_empty. (details)
  303. [mlir][Linalg] Miscalleneous enhancements to cover more fusion cases. (details)
  304. [DebugInfo] Expose Fortran array debug info attributes through DIBuilder. (details)
  305. [profile] Suppress spurious 'expected profile to require unlock' warning (details)
  306. [PowerPC] Implement Set Boolean Condition Instructions (details)
  307. Fix checking for C++98 ICEs in C++11-and-later mode to not consider use (details)
  308. [clang][NFC] Rearrange Comment Token and Lexer fields to reduce padding (details)
  309. [lldb][NativePDB] fix test load-pdb.cpp (details)
  310. [NFC] Use [MC]Register in RegAllocPBQP & RegisterCoalescer (details)
  311. SourceManager: Use the same fake SLocEntry whenever it fails to load (details)
  312. [mlir] Add a conversion pass between PDL and the  PDL Interpreter Dialect (details)
  313. [mlir][Pattern] Refactor the Pattern class into a "metadata only" class (details)
  314. [mlir][NFC] Move around the code related to PatternRewriting to improve layering (details)
  315. [mlir][Pattern] Add a new FrozenRewritePatternList class (details)
  316. IR: Add a comment at missing std::make_unique calls from b2b7cf39d596b1528cd64015575b3f5d1461c011, NFC (details)
  317. [NPM] Port -slsr to NPM (details)
  318. [AMDGPU] Move WQM Pass after MI Scheduler (details)
  319. Teach `-fsanitize=fuzzer` to respect `-static` and `-static-libstdc++` when adding C++ standard libraries. (details)
  320. Update email addresses in CODE_OWNERS. (details)
  321. IR: Simplify two loops walking ConstantDataSequential, NFC (details)
  322. SourceManager: clang-format the SrcMgr namespace, NFC (details)
  323. [LSR] fix typo in comments and rename for a new added hook. (details)
  324. [Clang][OpenMP] Fixed an issue of segment fault when using target nowait (details)
  325. [mlir][StorageUniquer] Refactor parametric storage to use sharded dense sets (details)
  326. [mlir][SymbolTable] Use Identifier instead of StringRef when looking up symbol name attributes (details)
  327. Port -objc-arc-apelim to NPM (details)
  328. Port -objc-arc-expand to NPM (details)
  329. [PlaceSafepoints] Pin tests to legacy PM (details)
  330. [AlwaysInliner] Pass callee AAResults to InlineFunction() (details)
  331. [CostModel][X86] teach TTI calculate cost of chain of vector inserts/extracts more precisely and correctly:In each 128-lane, if there is at least one index is demanded and not all indices are demanded... (details)
  332. Revert "[AlwaysInliner] Pass callee AAResults to InlineFunction()" (details)
  333. Use uint64_t for branch weights instead of uint32_t (details)
  334. Reland [AlwaysInliner] Pass callee AAResults to InlineFunction() (details)
  335. Fix calls to (p)read on macOS when size > INT32_MAX (details)
  336. [Clang][OpenMP] Avoid unnecessary privatization of mapper array when there is no user defined mapper (details)
  337. [IndVars] Remove monotonic checks with unknown exit count (details)
  338. [GVN LoadPRE] Add an option to disable splitting backedge (details)
  339. [libTooling] Recognize sccache as a compiler wrapper in compilation database commands (details)
  340. [clangd] Increase the TooMany limit for index-based textual navigation to 5 (details)
  341. [NFC] Factor away lambda's redundant parameter (details)
  342. [mlir] Fix TypeID lookup in GDB pretty printers. (details)
  343. [X86] Encode global address in small code model (details)
  344. [X86] Alternate implementation of D88194. (details)
  345. [Syntax] Disallow invalid Node operations (details)
  346. [Test] One more range check test (details)
  347. [clangd] Fix proto deps, for real this time. (details)
  348. Updating llvm.mlir test to match recent IR change (details)
  349. [clang][RecoveryExpr] Add tests for ObjectiveC. (details)
  350. Correct examples after d3205bbca3e0002d76282878986993e7e7994779 (details)
  351. [mlir] use OpBuilderDAG instead of OpBuilder (details)
  352. [ARM][AArch64] Add VLDN shuffled interleaving tests. NFC (details)
  353. [LoopRotation] Allow loop header duplication if vectorization is forced. (details)
  354. [yaml2obj] - Add a way to override the sh_addralign field of a section. (details)
  355. [lldb][NFC] Rewrite TestQuoting (details)
  356. [AMDGPU] Use DPP instead of Ext in a couple of class names. NFC. (details)
  357. [llvm/DebugInfo] Simplify DW_OP_implicit_value condition (NFC) (details)
  358. [llvm-readelf] - Implement --section-details option. (details)
  359. [clang][Basic] Integrate SourceLocation with FoldingSet, NFCI (details)
  360. [clangd] Separate final_result into a different message (details)
  361. [VE] Add missing regression test (details)
  362. [VE] Add vector float instructions (details)
  363. [NFC][InstCombine] Add more exhaustive test coverage for `(x >>? X1) << C2` pattern (PR37872) (details)
  364. [NFC][InstCombine] Autogenerate cast.ll test (details)
  365. [NFC][PhaseOrdering] Autogenerate basic.ll test (details)
  366. [InstCombine] Fold `(X >>? C1) << C2` patterns to shift+bitmask (PR37872) (details)
  367. [lldb] Correct vFile:pread/pwrite packet docs (details)
  368. msgpack: Improve error for empty node (details)
  369. [ValueTracking] Add tracking of the alignment assume bundle (details)
  370. [ValueTracking] Add more tests for alignment assume bundles (details)
  371. [ValueTracking][NFC] Use Log2(Align) instead of countTrailingZeroes (details)
  372. [clang-format] Fix misformatted macro definitions after D86959 (details)
  373. Fix sancov.py when objdump is llvm-objdump (details)
  374. [gn build] Port 850325348ae (details)
  375. [TargetLowering] Add i1 condition for bit comparison fold (details)
  376. [NFC][IntrRefLDV] Some code clean up (details)
  377. Fix for PR47544. Clang is crashing after generating the right (details)
  378. [InstCombine] collectBitParts - add trunc support. (details)
  379. [X86] Regenerate vector shift tests. NFCI. (details)
  380. [MallocChecker] Remove duplicate QCoreApplication::postEvent check. NFCI. (details)
  381. [clang] RewriteObjCClassMetaData - remove superfluous null pointer check. NFCI. (details)
  382. Revert "Use uint64_t for branch weights instead of uint32_t" (details)
  383. [X86] Regenerate all-ones vector tests with common prefixes. (details)
  384. [X86] Don't crash on CVTPS2PH with wide vector inputs. (details)
  385. Revert rG0905bd5c2fa42bd4c "[InstCombine] collectBitParts - add trunc support." (details)
  386. [amdgpu] Enable use of AA during codegen. (details)
  387. Fix use-after-scope introduced in 850325348ae82cd5e26ea9edfd04219d0fbe7828 (details)
  388. Revert "[NFC] Factor away lambda's redundant parameter" (details)
  389. Revert "[IndVars] Remove monotonic checks with unknown exit count" (details)
  390. [lldb] [Process/FreeBSDRemote] Enable watchpoint support (details)
  391. [lldb] [Process/FreeBSD] Fix missing namespace qualifier (details)
  392. [lldb] Add llvm-pdbutil to lldb test dependencies (details)
  393. [AArch64] Add additional tests for vector inserts with common element. (details)
  394. [libc++] Fix filesystem test in C++11/14 (details)
  395. [lldb][NFC] Make GetResumeCountForLaunchInfo return an unsigned. (details)
  396. Revert "Updating llvm.mlir test to match recent IR change" (details)
  397. [AMDGPU] Add missing support for targets (details)
  398. [clangd] Start using SyntaxTrees for folding ranges feature (details)
  399. [AMDGPU] Add llvm.amdgcn.div.scale with fneg tests (details)
  400. [lldb] Support Python imports relative the to the current file being sourced (details)
  401. [libc++] Remove references to CONDUIT_TOKEN (details)
  402. [Flang][OpenMP 4.5] Add semantic check for OpenMP default clause (details)
  403. [X86] Regenerate xop tests with common prefixes. (details)
  404. [X86] Regenerate popcnt tests. NFCI. (details)
  405. [X86] Regenerate tbm intrinsics tests. NFCI. (details)
  406. [X86] Regenerate xor tests. NFCI. (details)
  407. [ADT] Fix accidental pointer comparison in test (details)
  408. [Utils] Skip RemoveRedundantDbgInstrs in MergeBlockIntoPredecessor (PR47746) (details)
  409. [VE] Add vector reduction instructions (details)
  410. [libc++] Get rid of iostreams in the to_string tests (details)
  411. [X86] Regenerate scalar fptosi/fptoui tests. NFCI. (details)
  412. [amdgpu] Add the late codegen preparation pass. (details)
  413. [gn build] Port 46c3d5cb05d (details)
  414. Revert "[CodeView] Emit static data members as S_CONSTANTs." (details)
  415. [llvm-readobj] Remove duplicate inner if() condition. NFCI. (details)
  416. [libcxx] Fix typo in spelling of 'sentinel'. NFC. (details)
  417. [mlir] Catch async.yield operands not matching the number of async.execute results. (details)
  418. [AMDGPU] Fix check prefix for VOP3 VI disassembler tests (details)
  419. [mlir] Add bufferization for std.select op. (details)
  420. FileManager: Shrink FileEntryRef to the size of a pointer (details)
  421. [libc++] Add a libc++ configuration that does not support localization (details)
  422. [PowerPC][PCRelative] Turn on TLS support for PCRel by default (details)
  423. [AMDGPU] Change predicate for fma/fmac legacy (details)
  424. [mlir][Python] Custom python op view wrappers for building and traversing. (details)
  425. [llvm-reduce] Add test with some aliases. (details)
  426. Revert "DomTree: Extract (mostly) read-only logic into type-erased base classes" (details)
  427. Revert multiple patches based on "Introduce CfgTraits abstraction" (details)
  428. [HIP][NFC] Use correct max in cuda_complex_builtins (details)
  429. [test] Make ThinLTO/X86/crash_debuginfo.ll work with -enable-new-pm=1 (details)
  430. [gn build] Port ce6900c6cb5 (details)
  431. [gn build] Port e025d09b216 (details)
  432. [test] Delete Feature/load_module.ll which is covered by load_extension.ll (details)
  433. [libc++] Make sure we include a header when checking compiler macros (details)
  434. [OpenMP] Add Passing in Original Declaration Names To Mapper API (details)
  435. [AMDGPU] Order AMDGPU ELF machine numbers in ascending order (details)
  436. [libc++] Try to fix cross-loading of lit.local.cfg on Windows (details)
  437. [OpenMP] Add Support for Mapping Names in Libomptarget RTL (details)
  438. [PowerPC] Fix single-use check and update chain users for ld-splat (details)
  439. [libcxx] Don't truncate intermediates to wchar_t when widening (details)
  440. [CostModel] add tests for FP reductions; NFC (details)
  441. [CostModel] remove cost-kind predicate for FP add/mul vector reduction costs (details)
  442. [mlir] JitRunner: add a config option to register symbols with ExecutionEngine at runtime (details)
  443. [lld][WebAssembly] Fix memory size in dylink section for -pie exectuables (details)
  444. [JumpThreading] Set edge probabilities when creating basic blocks (details)
  445. [BranchProbabilityInfo] Fix eraseBlock (details)
  446. [mlir][Linalg] Add fusion of IndexedGenericOp with TensorReshapeOp by expansion. (details)
  447. [mlir][SIdeEffectInterface][NFC] Move several InterfaceMethods to the extraClassDeclarations instead (details)
  448. [mlir][Interfaces] Generate a struct containing function pointers instead of a class with vtables (details)
  449. [mlir][Interfaces] Optimize the implementation of InterfaceMap to reduce generated code size. (details)
  450. [mlir][NFC] Remove unnecessary PatternRewriter::create methods (details)
  451. [mlir][NFC] Fix incorrect header comments. (details)
  452. [BranchProbabilityInfo] Make MaxSuccIdx[Src] efficient and add a comment about the subtle eraseBlock. NFC (details)
  453. [libc][NFC] Use a convenience macro to declare special floating point constants. (details)
  454. Unbreak build with gcc5.3 after 917acac (details)
  455. [OpenMP][CUDA] Add missing overload for `remquo(float,float,int*)` (details)
  456. [LangRef] Clarify `dereferenceable` -> `nonnull` implication (details)
  457. [WebAssembly] Add support for DWARF type units (details)
  458. [clang] Pass-through remarks options to linker (details)
  459. [mlir] Fix stack-use-after-scope in cuda/vulkan cpu runners (details)
  460. Remove unused variable name. NFC. (details)
  461. Revert "[WebAssembly] Add support for DWARF type units" (details)
  462. [flang][openacc] Fix ambiguity in the self clause parsing (details)
  463. [MLIR] [ODS] Allowing attr-dict in custom directive (details)
  464. [Attributor][NFC] Improve time trace output (details)
  465. [Attributor][FIX] Properly check uses in the call not uses of the call (details)
  466. [Attributor][NFC] Hoist call out of a lambda (details)
  467. [Attributor][NFC] Clang-format (details)
  468. [Attributor][FIX] Do not attach range metadata to the wrong Instruction (details)
  469. [Attributor][FIX] Delete all unreachable static functions (details)
  470. [Attributor][NFC] Print the right value in debug output (details)
  471. [Attributor][NFC] Introduce a debug counter for `AA::manifest` (details)
  472. [Attributor] Finalize the CGUpdater after each SCC (details)
  473. [AMDGPU] Fix insert of SIPreAllocateWWMRegs in FastRegAlloc (details)
  474. [NFC] [LLParser] Renaming LLParser routines to comply LLVM coding style (details)
  475. Revert "[ADT] Fix for ImmutableMapRef" (details)
  476. Revert "[DebugInfo] Expose Fortran array debug info attributes through DIBuilder." (details)
  477. [JumpThreading] Remove extraneous calls to setEdgeProbability (details)
  478. [JumpThreading] Rename thread-prob-3.ll to thread-prob-1.ll (NFC) (details)
  479. [OpenMP][CUDA][FIX] Use the new `remquo` overload only for OpenMP (details)
  480. [SCEV] Re-enable "Use nw flag and symbolic iteration count to sharpen ranges of AddRecs", attempt 3 (details)
  481. Rename EHPersonality::MSVC_Win64SEH to EHPersonality::MSVC_TableSEH. NFC. (details)
  482. [NFC][UBSAN] Remove XFAIL from fixed tests (details)
  483. [NFC][UBSAN] Try to re-enable tests on IOS (details)
  484. [NFC][Asan] Fix cpplint warnings in tests (details)
  485. [NFC][Asan] Fix cpplint warning in test (details)
  486. [NFC][Sanitizer] format sanitizer_platform_interceptors.h (details)
  487. [llvm-exegesis] Update doc. (details)
  488. [AArch64] Additional Interleaving Access test. NFC (details)
  489. [AArch64] Remove AArch64ISD::NOT, use vnot instead (details)
  490. Re-enable "[SCEV] Prove implications of different type via truncation" (details)
  491. [llvm-exegesis] Do not silently fail on unknown instruction encoding formats. (details)
  492. [VE] Specify to expand BRIND and BR_JT (details)
  493. [VE][NFC] Fix typo in comment (details)
  494. [llvm-exegesis][doc] Remove old FIXME. (details)
  495. [VE] Add vector iterative operation instructions (details)
  496. [testing] Add missing REQUIRES: asserts (details)
  497. [VE] Add vector merger operation instructions (details)
  498. [DSE] Use walker to skip noalias stores between current & clobber def. (details)
  499. [yaml2obj] - Support the "Offset" key for the .dynsym section. (details)
  500. [Syntax] Add iterators over children of syntax trees. (details)
  501. Return "[IndVars] Remove monotonic checks with unknown exit count" (details)
  502. [x86 testing] NFC: remove a few needless vector popcnt tests (details)
  503. [llvm-reduce] Extend test to also use special globals. (details)
  504. [X86] Regenerate bool-vector tests. NFCI. (details)
  505. [DAG] Move canFoldInAddressingMode before foldBinOpIntoSelect. NFC. (details)
  506. [yaml2obj][obj2yaml] - Teach tools to work with regular archives. (details)
  507. [mlir] NFC: small fixes to LinalgTilingOptions API (details)
  508. [gn build] Port 47369e194a4 (details)
  509. [llvm-objdump] - Rewrite malformed-archives.test to use YAML descriptions. (details)
  510. [AMDGPU] Omit needless string concatenations. NFC. (details)
  511. [llvm-objdump] - Restore Inputs/libbogus11.a input to fix BB. (details)
  512. Revert "[OpenMP] Add Passing in Original Declaration Names To Mapper API" (details)
  513. [openmp] Use front() instead of *begin() to not hide bugs when CurTypes is empty. (details)
  514. [TableGen] Update xxx-tblgen command document. (details)
  515. [llvm-reduce] Add reduction for aliases. (details)
  516. MLIR: add SinOp Lowering to __nv_sinf and __nv_sin (details)
  517. [gn build] Port 23c8da25ef7 (details)
  518. [yaml2obj][test] - Try to fix Archives/regular.yaml to fix BB. (details)
  519. [TableGen] Command description file requires a hyphen in document title. (details)
  520. [obj2yaml][test] - Replace llvm-ar with yaml2obj in Archives/regular.yaml to fix BB. (details)
  521. [libc++] Remove <clocale> from some system_error tests (details)
  522. [libc++] Move the #error message for no localization to <locale.h> (details)
  523. [yamls2obj][test] - Make the Archives/regular.yaml test stricter. (details)
  524. [debuginfo-tests][dexter] Add two new debug experience tests (details)
  525. [libomptarget][nvptx] Undef, weak shared variables (details)
  526. [NFC][IntrRefLDV] Improve the Value printing (details)
  527. [AMDGPU] Use -strict-whitespace for GFX10 disassembler tests (details)
  528. [AArch64] Extend vector insertion test cases. (details)
  529. [Syntax] Add missing default constructor for ConstChildIterator (details)
  530. [compiler-rt][SystemZ] Skip fuzzer/full-coverage.test (details)
  531. Fix Wdocumentation unknown parameter warnings. NFCI. (details)
  532. [clang-tidy][NFC] IdentifierNaming: Remove unnecessary string allocations (details)
  533. [X86] Fix cpu name typos (details)
  534. [ELF] -r: don't crash when a non-SHF_LINK_ORDER orphan is added before a SHF_LINK_ORDER orphan (details)
  535. [AMDGPU] Precommit tests for D89388 and D89399, NFC (details)
  536. RegAlloc: Clear isSSA (details)
  537. [TableGen] [AMDGPU] Add !sub operator for subtraction (details)
  538. [WebAssembly] Prototype extending multiplication SIMD instructions (details)
  539. [WebAssembly] Clang-format builtins generation (NFC) (details)
  540. [AMDGPU] Use -strict-whitespace for GFX8 and GFX9 disassembler tests (details)
  541. [WebAssembly] Fix incorrectly named target builtin (details)
  542. [clangd] Fix a null dereference in tests. (details)
  543. [debuginfo-tests][dexter] add requires lldb to two tests (details)
  544. [AVR][clang] Pass the address of the data section to the linker for ATmega328 (details)
  545. [llvm-mc] Drop unneeded dependency on CodeGen (details)
  546. Add a `mlirModuleGetBody()` accessor to the C API and bind it in Python (details)
  547. [clangd] Don't offer to expand auto in structured binding declarations. (details)
  548. [CostModel] remove cost-kind predicate for funnel shift costs (details)
  549. [Clang][PowerPC] Add __vector_pair and __vector_quad types (details)
  550. [clang][ToolChains] explicitly return LangOptions::StackProtectorMode (details)
  551. [CostModel][x86] remove cost-kind predicate for intrinsic costs (details)
  552. [NFC][TSAN] Logs to debug test script on bot (details)
  553. [mlir] NFC: fix trivial typos (details)
  554. [DebugInfo] Fix legacy ZExt emission when FromBits >= 64 (PR47927) (details)
  555. [DebugInfo] Shorten legacy [s|z]ext dwarf expressions (details)
  556. [lldb] Delete lldb/utils/test (details)
  557. [SLP][Test] Precommit test case for PR47629. NFC. (details)
  558. [openmp][openacc] Check for duplicate clauses for directive (details)
  559. [NFC] Use Register in RegisterPressure APIs (details)
  560. [clangd] Go-to-definition from non-renaming alias is unambiguous. (details)
  561. [libc++] Refactor tests to remove uses of std::rand() (details)
  562. [GISel]: Few InsertVecElt combines (details)
  563. [NFC][ThinLTO] Change command line passing to EmbedBitcodeInModule (details)
  564. [libc++] Fix a few warnings (details)
  565. [AArch64] Use DUP for BUILD_VECTOR with few different elements. (details)
  566. [Clang][OpenMP] Added the support for target data nowait (details)
  567. [test] Make bt_order_by_weight in switch.ll more robust (details)
  568. [DebugInfo] Support for DW_TAG_generic_subrange (details)
  569. [DebugInfo] Expose Fortran array debug info attributes through DIBuilder. (details)
  570. [mlir] Convert memref_reshape to memref_reinterpret_cast. (details)
  571. [MemLoc]  Adjust memccpy support in MemoryLocation::getForArgument (details)
  572. Split out llvm/Support/FileSystem/UniqueID.h and clang/Basic/FileEntry.h, NFC (details)
  573. [mlir] Use OpBuilderDAG for MemRefReinterpretCastOp. (details)
  574. [gn build] Port 23ed570af1c (details)
  575. [llvm-lit] Improve the error message when make_paths_relative() fails (details)
  576. [libc++] Re-apply the switch-based std::variant implementation (details)
  577. [mlir] Properly handle recursive bufferization for scf.for/scf.if (details)
  578. PR48002: Fix injection of elaborated-type-specifiers within local (details)
  579. [Deref] Use maximum trip count instead of exact trip count (details)
  580. [AMDGPU] Fix inserting combined s_nop in bundles (details)
  581. [AArch64] Improve lowering of insert_vector_elt with 0.0 consts. (details)
  582. [TableGen] Treat reg as isolated in reg$foo (but not in ${foo}reg) (details)
  583. [AMDGPU] Fix double space in disassembly of SDWA instructions with vcc (details)
  584. [InstCombine] Do not introduce bitcasts for swifterror arguments. (details)
  585. [AMDGPU] Allow some modifiers on VOP3B instructions (details)
  586. [GWP-ASan] Abstract the thread local variables access (details)
  587. C API: support scalable vectors (details)
  588. [llvm-install-name-tool] Quote passed rpath args in error messages (details)
  589. Better source location for -Wignored-qualifiers on trailing return types (details)
  590. [Sema] Let getters assert that trailing return type exists, NFCI (details)
  591. Fix includes in llvm/Support/FileSystem/UniqueID.h after 23ed570af1cc165afea1b70a533a4a39d6656501 (details)
  592. gn build: Define HWASAN_WITH_INTERCEPTORS=1 for hwasan_new_delete.cpp as well. (details)
  593. Reland "hwasan: Disable operator {new,delete} interceptors when interceptors are disabled." (details)
  594. [NFC] Use [MC]Register in CSE & LICM (details)
  595. ModuleManager: Simplify lookupModuleFile by only setting the out parameter once, NFC (details)
  596. [Sema] adds basic -Wfree-nonheap-object functionality (details)
  597. Make the post-commit review expectations more explicit with respect to revert (details)
  598. [AMDGPU] Add Reset function to GCNHazardRecognizer (details)
  599. Recommit "[CodeView] Emit static data members as S_CONSTANTs." (details)
  600. [VE] Add vector mask operation instructions (details)
  601. Revert "[AppleObjCRuntimeV2] Force lazily allocated class names to be resolved." (details)
  602. [llvm][StringExtras] Add a fail-able version of `fromHex` (details)
  603. [llvm][StringExtras] Use a lookup table for `hexDigitValue` (details)
  604. [mlir] Optimize the parsing of ElementsAttr hex strings (details)
  605. [mlir] Convert raw data in dense element attributes for big-endian machines. (details)
  606. [WebAssembly] Add support for DWARF type units (details)
  607. [ThinLTO] Fix .llvmcmd emission (details)
  608. Revert "[DebugInfo] Shorten legacy [s|z]ext dwarf expressions" (details)
  609. Revert "[DebugInfo] Fix legacy ZExt emission when FromBits >= 64 (PR47927)" (details)
  610. [Debugify] Move global namespace functions into llvm:: (details)
  611. [NFC][AVR] Improve device list (details)
  612. [NFC][clang][AVR] Add more devices (details)
  613. [mlir][Inliner] Add a new hook for checking if it is legal to inline a callable into a call (details)
  614. [mlir][Inliner] Add a `wouldBeCloned` flag to each of the `isLegalToInline` hooks. (details)
  615. [mlir][SymbolTable] Small optimization to walking symbol references (details)
  616. [Attributor][FIX] Properly promote arguments pointers to arrays (details)
  617. [Attributor][NFC] Rerun update test script (details)
  618. [opt] Pin -stats-json & -opt-bisect-limit tests to -enable-new-pm=0 (details)
  619. [FPEnv] Tests for rounding properties of constant evalution (details)
  620. [Reassociate][test] Delete improper -NOT patterns to work with -enable-new-pm=1 (details)
  621. [libFuzzer] Remove InterruptHandler from Fuchsia implementation (details)
  622. [llvm-objdump][test] - Stop using precompiled binary in MachO/disassemble-g-dsym.test (details)
  623. [mlir][gpu] Fix leaked stream and module when lowering gpu.launch_func to runtime calls. (details)
  624. Revert "[NFC][TSAN] Logs to debug test script on bot" (details)
  625. [clangd] Support CodeActionParams.only (details)
  626. [NFC][SCEV] Refactor monotonic predicate checks to return enums instead of bools (details)
  627. [CMake] Support inter-proto dependencies in generate_protos. (details)
  628. [InterleaveAccess] Recognise Interleave loads through binary operations (details)
  629. [yaml2obj] - Improve handling of SectionHeaderTable::NoHeaders flag. (details)
  630. [SCEV][NFC] Use general predicate checkers in monotonicity check (details)
  631. [lldb] Unbreak the build after a recent PowerPC change (details)
  632. [lldb] Correct --help output for qemu rootfs script (details)
  633. [VE] Add vector control instructions (details)
  634. [VE] Add missing vector regression test (details)
  635. clang-format: Add a consumer to diagnostics engine (details)
  636. [yaml2obj][test] - Merge dynsymtab-shlink.yaml to dynsym-section.yaml (details)
  637. [mlir] Reorder shape assuming bufferization. (details)
  638. [NFC] Add some new util functions to ICmpInst (details)
  639. [SCEV] Match 'zext (trunc A to iB) to iY' as URem. (details)
  640. [DebugInfo] [NFCI] Adding a missed out line in support for DW_TAG_generic_subrange. (details)
  641. [AMDGPU] Simplify insertNoops functions. NFC. (details)
  642. [NFC][SCEV] Use generic predicate checkers to simplify code (details)
  643. [MIR] Fix out of bounds access in MIRPrinter. (details)
  644. [InstCombine] Add select+funnel-shift test patterns (details)
  645. [yaml2obj][test] - Merge strtab-implicit-sections-*.yaml into strtab-implicit-sections.yaml and improve testing of .shstrtab (details)
  646. [ADT] Fix for ImmutableMapRef (details)
  647. [llvm-exegesis] Do not try to assign random registers twice. (details)
  648. [DebugInfo] [NFCI] Additional test for support of DW_TAG_generic_subrange (details)
  649. [llvm-readobj/elf] - Fix a crash when dumping a dynamic relocation that refer to a symbol past the EOF. (details)
  650. [lldb] Use reverse connection method for lldb-server tests (details)
  651. [libunwind] Fix linker flag handling in the tests. (details)
  652. [libcxx] Add targets to available features. (details)
  653. [libcxx] [docs] [NFC] Fix typo. (details)
  654. [flang][openacc] Enforce no modifier on enter data and exit data clauses (details)
  655. [mlir][openacc] Add if and device_type to update op (details)
  656. [VE] Support register aliases in llvm-mc (details)
  657. [VE] Add missing symbolic branch patterns (details)
  658. Revert "clang-format: Add a consumer to diagnostics engine" (details)
  659. [VE] Add missing BCR format (details)
  660. [SVE] Remove TypeSize comparison operators (details)
  661. [MLIR] Support walks over regions and blocks (details)
  662. [AMDGPU] Fix double space in disassembly of some DPP instructions (details)
  663. [AMDGPU] Fix double space in disassembly of s_set_gpr_idx_mode (details)
  664. [AMDGPU] Remove gds operand from ds_gws_* MachineInstrs (details)
  665. [libc++] Remove additional uses of std::rand() missed by 63aeadb4849d (details)
  666. [VE] Change to use integrated assembly by defualt (details)
  667. [ARM] Add IT block generation test (details)
  668. [ARM] Fix IT block generation after Thumb2SizeReduce with -Oz (details)
  669. [mlir][Linalg] Make Linalg fusion a test pass (details)
  670. [InstCombine] visitShl - ensure inner shifts have inrange amounts (details)
  671. [NFC] Add more tests for DISubprogram verifier (details)
  672. [sanitizer] Print errno for report file open failure (details)
  673. [AMDGPU] Use pseudo instructions for readlane/writelane (details)
  674. [MC] Error for .globl/.local which change the symbol binding and warn for .weak (details)
  675. [x86] add test for umul intrinsic costs; NFC (details)
  676. [AMDGPU] Add __builtin_amdgcn_grid_size (details)
  677. [X86] Add PR46393 test case (details)
  678. [mlir][gpu] Allow gpu.launch_func to be async. (details)
  679. [ThinLTO] Fix empty .llvmcmd sections (details)
  680. [nfc] [lldb] Remove excessive parentheses in SymbolFileDWARF::GetUID (details)
  681. [MemProf] Augment test to debug avr bot failure (details)
  682. Revert "[mlir][gpu] Allow gpu.launch_func to be async." (details)
  683. [AMDGPU] Fix double space in disassembly of ds_gws_sema_* with gds (details)
  684. [Support] Make Support/SwapByteOrder.h compile on Fuchsia (details)
  685. [sanitizer][fuchsia] Avoid deprecated syscall. (details)
  686. [libc++] Minor cleanup in the test suite (details)
  687. [WebAssembly] Implement SIMD signselect instructions (details)
  688. Add support of the next Ubuntu (Ubuntu 21.04 - Hirsute Hippo) (details)
  689. [MemProf] Temporarily disable test failing on a couple bots (details)
  690. [RISCV] Remove include of RISCVRegisterInfo.h from RISCVBaseInfo.h (details)
  691. [clangd] Add support for multiple DecisionForest model experiments. (details)
  692. [llvm-libtool-darwin] Add support for LLVM bitcode files (details)
  693. [InferAttrs] Add nocapture/writeonly to string/mem libcalls (details)
  694. [OpenMP] Add NULL check in dispatcher debug output (details)
  695. [sanitizer] Disable ASLR for release_shadow_space (details)
  696. [SDAG] Extract helper to get vecreduce base opcode (NFC) (details)
  697. Remove HAVE_VCS_VERSION_INC, not needed (details)
  698. Added remotely ran compiler-rt tests. (details)
  699. [AMDGPU] Update AMD GPU documentation (details)
  700. [mlir][gpu] NFC: Change gpu.launch_func ops to custom format. (details)
  701. [CodeGen] Fix neutral value of vecreduce fadd in tests (NFC) (details)
  702. [SDAG] Fix neutral value for vecreduce_fadd (details)
  703. [WebAssembly] Remove unused FileCheck test prefixes (details)
  704. [SLP] Consider alternatives for cost of select instructions. (details)
  705. GetModule, GetExeModule methods added (details)
  706. [LoopUtils] Fix neutral value for vector.reduce.fadd (details)
  707. [mlir][gpu] Allow gpu.launch_func to be async. (details)
  708. [LCSSA] Doc for special treatment of PHIs (details)
  709. [SDAG] Extract helper to determine neutral element (NFC) (details)
  710. [mlir][gpu] Handle async in gpu.launch_func lowering. (details)
  711. [mlir][gpu] Add pass to make GPU ops within a region execute asynchronously. (details)
  712. Mark the execution of stop-hooks as non-interactive. (details)
  713. Use !hasLocalLinkage instead of listing the symbol types (details)
  714. [RISCV] Add test case for D90339 (details)
  715. [RISCV] Improve worklist management in the DAG combine for SLLW/SRLW/SRAW (details)
  716. [mlir][vector] Improve vector distribute integration test and fix block distribution (details)
  717. Provide a reasonable value for PATH_MAX if the lldb headers don't provide it. (details)
  718. [OpenMP] Use __OPENMP_NVPTX__ instead of _OPENMP in complex wrapper headers. (details)
  719. [GWP-ASan] Add mutexes for Fuchsia (details)
  720. [AMDGPU] Update Memory Model in AMDGPUUsage.rst (details)
  721. [NFC][AMDGPU] Resize Memory Model columns in AMDGPUUsage.rst (details)
  722. [NFC] Fix typo function -> module (details)
  723. Thread safety analysis: Consider static class members as inaccessible (details)
  724. This is a preliminary version of the test for https://reviews.llvm.org/D88483. (details)
  725. [Hexagon] Handle additional shuffles that can be made perfect (details)
  726. clang-tidy: Make tests more hermetic (details)
  727. [WebAssembly] Improved LLD error messages in case of mixed wasm32/wasm64 object files (details)
  728. Add InsertionPoint and context managers to the Python API. (details)
  729. [llvm-readobj][NFC] Remove unused prefix from FileCheck tests (details)
  730. [dwarfdump] Recognize __apple sections as debug info sections (details)
  731. [AA] Pass query info. (details)
  732. [PruneEH] Pin tests to legacy PM (details)
  733. [lldb] Update TestTypeGetModule.py (details)
  734. [lldb] XFAIL TestTypeGetModule.py (temporarily) (details)
  735. Support complex target features combinations (details)
  736. [gn build] Port 00090a2b826 (details)
  737. [MC] Add SMLoc to MCStreamer::emitSymbolAttribute and report changed binding warnings/errors for ELF (details)
  738. [llvm] Export LLVM_LIT_ARGS in LLVMConfig.cmake (details)
  739. [RISCV] Fix unused check prefixes in test/MC/RISCV/ (details)
  740. Fix shared build. (details)
  741. [test] Fix unused check prefixes in test/Linker/ and test/Other/ (details)
  742. Fix "incorrect" assertions in Linalg/EDSC/Builders.cpp (NFC) (details)
  743. [NFC] Don't run clang/bindings/python/tests with msan (details)
  744. [Flang][OpenMP][OpenACC] Fix exit out of a region in OpenMP parallel construct. (details)
  745. [MC] Fix an assert in MCAssembler::writeSectionData to be aware of errors (details)
  746. [OpenMP][NFC] Clang format ParseOpenMP (details)
  747. [OpenMP][Docs] Structure and content for the OpenMP documentation (details)
  748. [NFC] Don't run python binding tests with sanitizers (details)
  749. [llvm-readobj][test][NFC] - Use "--check-prefix" instead of "--check-prefixes". (details)
  750. [Coroutine] Properly determine whether an alloca should live on the frame (details)
  751. [NFC] Fix "ambiguous overload for ‘operator=’" (details)
  752. [mlir][ASM] Refactor how attribute/type aliases are specified. (details)
  753. [NFC] Fix "ambiguous overload for ‘operator=’" (details)
  754. [mips] Implement add.ps, mul.ps and sub.ps (details)
  755. [SCEV] Introduce SCEVPtrToIntExpr (PR46786) (details)
  756. [SCEV] SCEVPtrToIntExpr simplifications (details)
  757. [sanitizer] Use __atomic_load/store() built-ins for generic 32-bit targets (details)
  758. [mlir] Add shape.is_broadcastable. (details)
  759. [compiler-rt] Don't include libc++ headers from the source tree in MSAN (details)
  760. [DSE] Remove noop stores after killing stores for a MemoryDef. (details)
  761. [mlir] Add lowering for IsBroadcastable to Std dialect. (details)
  762. [ADT] Add methods to SmallString for efficient concatenation (details)
  763. [ARM] Additional MVE VQDMULH tests. NFC (details)
  764. [NFC] Simplify code in IndVars (details)
  765. [ADT][NFC] Silence some misc-unconventional-assign-operator warnings (details)
  766. [SROA] Pass Twine by const reference. NFCI. (details)
  767. [clangd] Fix MSVC implicit capture build failure. (details)
  768. [AMDGPU] SILowerControlFlow::removeMBBifRedundant. Refactoring plus fix for the null MBB pointer in MF->splice (details)
  769. [Flang] Fix build failures (NFC) (details)
  770. Revert rG22c383763456 "[RISCV] Remove include of RISCVRegisterInfo.h from RISCVBaseInfo.h" (details)
  771. [Aarch64] Fix assumption that Windows implies x86 (details)
  772. [AST] Fix traversal over CXXConstructExpr in Syntactic mode (details)
  773. [mlir] Implement lowering to LLVM of async.execute ops with token dependencies (details)
  774. [clang][FPEnv] Diagnose Strict FP pragmas if target does not support StrictFP (details)
  775. [yaml2obj] - Make `Section::Link` field to be `Optional<>`. (details)
  776. [libc++] Add a new concept of ConfigAction, and use it in the DSL (details)
  777. [lldb/test] Simplify/generalize YAMLModuleTester (details)
  778. [lldb/test] Remove a double debugserver launch in TestGdbRemoteGPacket (details)
  779. [ARM] Match MVE vqdmulh (details)
  780. [SVE] Add fatal error for unnamed SVE variadic arguments (details)
  781. [MLIR][SPIRV] Start module combiner (details)
  782. PR47372: Fix Lambda invoker calling conventions (details)
  783. [TTI] Add VecPred argument to getCmpSelInstrCost. (details)
  784. [NFCI][SCEV] getPtrToIntExpr(): use SCEVRewriteVisitor<> for ptrtoint cast sinking (details)
  785. Address ABI issues introduced with CXCursor_CXXAddrspaceCastExpr (details)
  786. [lldb/DWARF] Fix dwo flavour of TestTypeGetModule (details)
  787. [clang] add fexperimental-strict-floating-point to test cases that fail on arm and aarch not sure this will work due to commit rG13bfd89c4962 (details)
  788. BitcodeReader::popValue - pass SmallVectorImpl<> as const reference. NFCI. (details)
  789. Use cast<> instead of dyn_cast<> as we dereference the pointer immediately. NFCI. (details)
  790. [stack-clash] Fix probing of dynamic alloca (details)
  791. [lit] Ship and bundle license for lit package (details)
  792. [MLIR] Use `llvm::is_one_of` in walk templates (details)
  793. [SCEV] SCEVExpander::InsertNoopCastOfTo - reduce scope of pointer type. NFCI. (details)
  794. [VPlan] Use isa<> instead getVPRecipeID in getFirstNonPhi (NFC). (details)
  795. [ARM] Update target triple in tests. NFC (details)
  796. Revert "[MLIR][SPIRV] Start module combiner" (details)
  797. [clang][aarch64] Address various fixed-length SVE vector operations (details)
  798. AMDGPU: Fix missing writelane cases to skip with exec=0 (details)
  799. [VE][NFC] Split up lowering init (details)
  800. Use cast<> instead of dyn_cast<> as we dereference the pointers immediately. NFCI. (details)
  801. [SLP][X86] Extend target coverage for PR47629 (details)
  802. [DSE] Improve partial overlap detection (details)
  803. [gvn] PRE needs to skip convergent intrinsics/calls. (details)
  804. [llvm-cov][NFC] Remove unused prefixes from FileCheck usage (details)
  805. [VE][NFC] move scalar tests to Scalar/ (details)
  806. [nfc] [lldb] Align `user_id_t` format to the current `DIERef` format (details)
  807. Fix an embarrasing use-after-free from a895a446bcde (details)
  808. [CodeGen][X86] Remove unused check-prefix in amx inline asm tests (details)
  809. [CodeGen][X86] Cleanup + remove unused check-prefixes in avx union tests (details)
  810. [CodeGen][X86] Remove unused check-prefix in bswap tests (details)
  811. [CodeGen][X86] Remove unused check-prefix in bitscan tests (details)
  812. [CodeGen][X86] Tidyup CHECKs on bitscan tests (details)
  813. [CodeGen][X86] Cleanup + fix unused check-prefixes in bmi tests (details)
  814. [lldb] Ignore binary data in crashlog (details)
  815. [CodeGen][X86] Remove unused check-prefix in movdir tests (details)
  816. [CodeGen][X86] Remove unused check-prefix in constrained fma tests (details)
  817. [CodeView] Encode signed int values correctly when emitting S_CONSTANTs (details)
  818. [x86] add cost overrides for mul with overflow (details)
  819. [libunwind] Support DW_CFA_remember/restore_state without heap allocation. (details)
  820. [libc++] NFC: Fix several GCC warnings in the test suite (details)
  821. [NFC][LoopSimplify] modernize for loops over LoopInfo (details)
  822. [NFC][Reg2Mem] modernize loops iterators (details)
  823. [libc++] Add -Wno-sized-deallocation to avoid spurious GCC warnings (details)
  824. [clang][driver] Rename DriverOption as NoXarchOption (NFC) (details)
  825. Use uint64_t for branch weights instead of uint32_t (details)
  826. [NFC] Clean up PassBuilder (details)
  827. [lld][WebAssembly] Give better warnings on bad relocation sites (details)
  828. PR47861: Expand dangling reference warning to look through copy (details)
  829. FileManager: Improve the FileEntryRef API and customize its OptionalStorage (details)
  830. [Support] PR42623: Avoid setting the delete-on-close bit if a TempFile doesn't reside on a local drive (details)
  831. [lldb][NFC] Refactor getUUID functionality (details)
  832. [RISCV] Don't use DCI.CombineTo to replace a single result. NFCI (details)
  833. [gn build] port e58660750e76 (details)
  834. [gn build] Port 84e8257937e (details)
  835. Speculative fix for bots after 84e8257937ec6a332aa0b688f4dce57016516ffd (details)
  836. Speculative fix for bots after 84e8257937ec6a332aa0b688f4dce57016516ffd, v2 (details)
  837. Revert "FileManager: Improve the FileEntryRef API and customize its OptionalStorage" and follow-ups (details)
  838. [gn build] Port 940d0a310dc (details)
  839. tsan: add Go race detector support for macOS/ARM64 (details)
  840. [libc++] Fix tests failing with Clang after removing GCC warnings (details)
  841. [AMDGPU] Refactor and extend elf-header-flags-mach tests (details)
  842. [MLIR][SPIRV] Start module combiner. (details)
  843. Reapply "FileManager: Improve the FileEntryRef API and customize its OptionalStorage" (details)
  844. [CFG] Replace hardcoded max BBs explored as CL option. NFC. (details)
  845. [lldb] GetSharedModule: Collect old modules in SmallVector (details)
  846. [lldb] Report old modules from ModuleList::ReplaceEquivalent (details)
  847. [gn build] Port ac49500cd04 (details)
  848. [FileCheck] Report missing prefixes when more than one is provided. (details)
  849. [PhaseOrdering] Add test for PR39282 (NFC) (details)
  850. AArch64: Switch to x20 as the shadow base register for outlined HWASan checks. (details)
  851. AArch64: Use SBFX instead of UBFX to extract address granule in outlined HWASan checks. (details)
  852. [TableGen] Remove spurious GISEL prefix from test. (details)
  853. hwasan: Move fixed shadow behind opaque no-op cast as well. (details)
  854. Remove `noexcept` from ac49500cd0484e1b2dcf37fa4c0dade6f113c2c9 to fix bots (details)
  855. [clang][NFC] Remove unused FileCheck prefix (details)
  856. Revert "[MLIR][SPIRV] Start module combiner." (details)
  857. [mlir] Move some linalg patterns around. (details)
  858. [MLIR][SPIRV] Start module combiner. (details)
  859. [Legalize] Add legalizations for VECREDUCE_SEQ_FADD (details)
  860. [mlir] Add BufferResultsToOutParams pass. (details)
  861. [FileCheck] Address unused prefixes in tests (details)
  862. hwasan: Support for outlined checks in the Linux kernel. (details)
  863. Revert "[TTI] Add VecPred argument to getCmpSelInstrCost." (details)
  864. Revert "[SLP] Consider alternatives for cost of select instructions." (details)
  865. Use `--allow-unused-prefixes=false` by default for FileCheck in MLIR testsuite (details)
  866. [WebAssembly] Prototype i64x2.widen_{low,high}_i32x4_{s,u} (details)
  867. [flang] Detect and rewrite ambiguous READ(CVAR)[,item-list] (details)
  868. [NFC][AMDGPU] Minor cleanup to AMDGPU memory model table (details)
  869. [clang-tidy][test] Fix test failure when LLVM_ENABLE_WERROR is set. (details)
  870. [WebAssembly] Prototype i64x2.eq (details)
  871. [flang] Add warning for FINAL pitfall (details)
  872. [WebAssembly] Fixed DWARF DW_AT_low_pc encoded as 64-bit in wasm64 (details)
  873. [flang] Better error messages & more cases caught for bad forward refs (details)
  874. [WebAssembly] Prototype i64x2.bitmask (details)
  875. [flang] Plug error recovery hole for erroneous subscripts (details)
  876. [WebAssembly] fix paths in dwarfdump64.ll test (details)
  877. [lld][WebAssembly] Do not specify temporary file name in tests. (details)
  878. PR42513: Fix handling of function definitions lazily instantiated from (details)
  879. [CMake] Replace ctime with time.h in memprof (details)
  880. [CMake] Remove cxx-headers from runtime deps (details)
  881. [CMake] Add -fno-rtti into tsan unittests (details)
  882. [NFC][CMake] Move some COMPILER_RT variables setup (details)
  883. [X86] Support Intel avxvnni (details)
  884. [gn build] Port 756f5978410 (details)
  885. [lldb] Fix XcodeSDKModuleTests (details)
  886. [test] Fix unused check prefixes in test/DebugInfo (details)
  887. [test] Fix unused check prefixes in test/Driver (details)
  888. Revert "Use uint64_t for branch weights instead of uint32_t" (details)
  889. [CMake] Avoid accidental C++ standard library dependency in sanitizers (details)
  890. [Inliner] Add extra test for callsite noalias metadata (NFC) (details)
  891. [Inliner] Consistently apply callsite noalias metadata (details)
  892. Add option 'exceptions' to pragma clang fp (details)
  893. [sanitizer] Disabled 2 tests on Android (details)
  894. Fix gendered documentation (details)
  895. [X86] No need to determine pointer when the type is already a MachineInstr*. NFCI. (details)
  896. [X86] X86AsmPrinter - ensure the declaration/definition variable names match. NFCI. (details)
  897. [X86] printAsmVRegister - remove unused argument. NFC. (details)
  898. [X86] assignValueToReg - fix Wshadow warning. NFCI. (details)
  899. [X86] printAsmMRegister - make the X86AsmPrinter arg a const reference. NFC. (details)
  900. [X86] Reduce scope of DestReg and use specific Register type not unsigned. NFCI. (details)
  901. [X86] X86MCTargetDesc - ensure the declaration/definition variable names match. NFCI. (details)
  902. [MCA][LSUnit] Correctly update the internal group flags on store barrier execution. Fixes PR48024. (details)
  903. [Bitcode] Make some basic PlaceholderQueue/MetadataLoaderImpl helper methods const. NFCI. (details)
  904. [CSE] Make some basic EarlyCSE::StackNode helper methods const. NFCI. (details)
  905. [X86] Make the X86FrameSortingComparator operator const. NFCI. (details)
  906. [X86] Make some basic VarArgsLoweringHelper helper methods const. NFCI. (details)
  907. [InstCombine] foldSelectRotate - generalize to foldSelectFunnelShift (details)
  908. Temporarily remove test CodeGen/pragma-fp-exc (details)
  909. [ARM] Fix crash for gather of pointer costs. (details)
  910. Use ANSI escape codes for --use-color on Windows (details)
  911. [TableGen] Eliminate uses of true and false in .td files. (details)
  912. [CodeGen] Implement [[likely]] and [[unlikely]] for while and for loop. (details)
  913. [Sema] Diagnose annotating `if constexpr` with a likelihood attribute (details)
  914. Reland "[SLP] Consider alternatives for cost of select instructions." (details)
  915. [GWP-ASan] Fuchsia specific mapping & utilities functions (details)
  916. Add missing EOL. NFCI. (details)
  917. [COFF] Move ghash timers under the "add objects" timer (details)
  918. Fix lld/wasm test portability issue, and XFAIL the test (details)
  919. [DSE] Add additional tests with free, regenerate check lines. (details)
  920. [DSE] Use same logic as legacy impl to check if free kills a location. (details)
  921. [mlir][AsmPrinter] Fix crash in windows build after D89354 (details)
  922. [AVR] Improve inline rotate/shift expansions (details)
  923. [lld][WebAssembly] Remove bad-reloc test (details)
  924. [test] Clean up test/Frontend/gnu-mcount.c and fix unused check prefixes (details)
  925. [test] Fix unused check prefixes in test/AST (details)
  926. [test] Fix some unused check prefixes in test/Analysis/CostModel/X86 (details)
  927. [AMDGPU] Add alignment check for v3 to v4 load type promotion (details)
  928. [AMDGPU] Some refactoring after D90404. NFC. (details)
  929. [lldb] TestTypeGetModule.py review improvements (details)
  930. [NFC][lldb] Silence unused variable warning (details)
  931. [PowerPC] Avoid unnecessary fadd for unsigned to ppcf128 (details)
  932. [ARM] Add extra MVE tests for various patches. NFC (details)
  933. [VPlan] Assert no users remaining when deleting a VPValue. (details)
  934. [SCEV] Construct GEP expression more efficiently (NFCI) (details)
  935. [RISCV] Use 'unsigned' instead of Register in getRegForInlineAsmConstraint. NFC (details)
  936. Recommit "[RISCV] Remove include of RISCVRegisterInfo.h from RISCVBaseInfo.h. NFCI" (details)
  937. [RISCV] Add tests to show missed opportunities to use rori for fshr intrinsic with same inputs. NFC (details)
  938. [SCEV] Delay strengthening of nowrap flags (details)
  939. [MemProf] Pass down memory profile name with optional path from clang (details)
  940. [Scheduling] Fall back to the fast cluster algorithm if the DAG is too complex (details)
  941. [MachineSink] sink more profitable loads (details)
  942. [libcxx] Fix regression where `ninja all` doesn't copy libcxx headers (details)
  943. [mlir][Python] Context managers for Context, InsertionPoint, Location. (details)
  944. [MemProf] Fix test failure on windows (details)
  945. NFC: Wrap lines in Python.md. (details)
  946. [CodeGen][X86] Remove unused check-prefix in adx tests. (details)
  947. [RISCV] Add more rev32 and rev16 test cases using fshl/fshr intrinsics. NFC (details)
  948. [RISCV] Add a test case to show a bug in SelectRORIW. NFC (details)
  949. [compiler-rt][NFC] Fix typo in comment (details)
  950. [PowerPC] Fix a crash in POWER 9 setb peephole (details)
  951. [RISCV] Add a test case for another issue in SelectRORIW. NFC (details)
  952. [CodeGen][X86] Remove unused check-prefix in strict FP tests. (details)
  953. [clangd] Fix ParsedASTTest.TopLevelDecls test. (details)
  954. [clangd] Add lit tests for remote index (details)
  955. [AArch64][AsmParser] Remove 'x31' alias for 'sp/xzr' register. (details)
  956. Revert "[AArch64][AsmParser] Remove 'x31' alias for 'sp/xzr' register." (details)
  957. [yaml2obj] - Add support of Offset for .strtab/.shstrtab/.dynstr sections. (details)
  958. [llvm-exegesis] Print signal name when the snippet crashed. (details)
  959. [clangd] Improve remote-index test (details)
  960. [flang][driver] Use --match-full-lines in tests for `-test-io` (details)
  961. [clangd] Value initialize SymbolIDs (details)
  962. [flang][driver] Rename the accessors/mutators (NFC) (details)
  963. [RISCV] Avoid std::pair<> in FPReg StringSwitch to avoid MSVC compile failures. NFCI. (details)
  964. [SLP][X86] Add AVX512VL test target coverage for PR47629 (details)
  965. [LV][X86] Regenerate gather_scatter tests. NFCI. (details)
  966. [libc++] NFC: Remove warning about non-void function returning void (details)
  967. Use --use-color in run-clang-tidy.py (details)
  968. [AMDGPU] Remove a comment. NFC. (details)
  969. [AMDGPU] Generate test checks. NFC. (details)
  970. [AMDGPU] Precommit ds_read2/write2 with unaligned offset tests. NFC. (details)
  971. Fix ds_read2/write2 unaligned offsets (details)
  972. Revert "Fix ds_read2/write2 unaligned offsets" (details)
  973. [llvm-exegesis] Save target state before running the benchmark. (details)
  974. [Flang][Driver] Add PrintPreprocessedInput FrontendAction (`flang-new -E`) (details)
  975. Revert "[llvm-exegesis] Save target state before running the benchmark." (details)
  976. [gn build] (manually) port 76a168bce01 (details)
  977. [PS4] Support dllimport/export attributes (details)
  978. [TableGen][SchedModels] Fix read/write variant substitution (details)
  979. [lldb/test] Fix a fragile assumption in TestTypeGetModule (details)
  980. [SLP] Added testcase for PR47623 (details)
  981. Add a new altera kernel name restriction check to clang-tidy. (details)
  982. RegisterCoalescer: Use Register (details)
  983. [gn build] (manually) port 76a168bce01 better (details)
  984. Fix link to a new check within the release notes. (details)
  985. [libc++abi] Get rid of warnings when running the tests with GCC (details)
  986. AMDGPU: Reorder checks (details)
  987. Revert "Add a new altera kernel name restriction check to clang-tidy." (details)
  988. [lldb] Generalize an deflake gdb-remote *client* tests (details)
  989. [libc++] Split off iostreams explicit instantiations into its own source file (details)
  990. Reland "[TTI] Add VecPred argument to getCmpSelInstrCost." (details)
  991. [analyzer][ReturnPtrRangeChecker] Fix a false positive on end() iterator (details)
  992. [gn build] (manually) port c6eaa14e11 (details)
  993. [gn build] Run `git ls-files '*.gn' '*.gni' | xargs llvm/utils/gn/gn.py format` (details)
  994. [libc++/libc++abi] Use Python3_EXECUTABLE consistently to run utilities (details)
  995. [Debugify] Port -debugify-each to NewPM (details)
  996. Revert "[MLIR] Use `llvm::is_one_of` in walk templates" (details)
  997. Revert "[MLIR] Support walks over regions and blocks" (details)
  998. [libc++] Make it easier to re-generate the ABI lists (details)
  999. [libc++] NFC: Re-generate the ABI lists with the new script (details)
  1000. [ELF] --emit-relocs: fix st_value of STT_SECTION in the presence of a gap before the first input section (details)
  1001. [ARM][MachineOutliner] Do not overestimate LR liveness in return block (details)
  1002. [FileCheck] Fix comments and eof in allow-unused-prefixes.txt (details)
  1003. [LLDB/Lua] call lua_close() on Lua dtor (details)
  1004. [libc++][CI] Allow retries in case an agent is lost (details)
  1005. [MemProf] Reenable test with fix for bot failures (details)
  1006. [clang] Limit scope of CLANG_VENDOR definition (details)
  1007. [clangd] Account for vendor in version string (details)
  1008. [test] Fix unused FileCheck prefix in ThinLTO test (details)
  1009. [Clang] Add the ability to map DLL storage class to visibility (details)
  1010. [AggressiveInstCombine] foldGuardedRotateToFunnelShift - generalize rotation to funnel shift matcher. (details)
  1011. [RISCV] When matching RORIW, make sure the same input is given to both shifts. (details)
  1012. [InstCombine] add multi-use tests for negator; NFC (details)
  1013. [x86] add AVX2 cost model entries for maxnum of 256-bit vectors (details)
  1014. [TableGen] Fix a couple of minor issues regarding the paste operator. (details)
  1015. [flang] Design document for runtime derived type descriptions (NFC) (details)
  1016. [libc++] Migrate warning flags to the DSL (details)
  1017. [AggressiveInstCombine] Regenerate rotate tests (details)
  1018. [AggressiveInstCombine] Add funnel shift tests (details)
  1019. [RISCV] Make SelectRORIW handle the commutability of OR. (details)
  1020. Revert "[Clang] Add the ability to map DLL storage class to visibility" (details)
  1021. [ARM] Cost model test for target intrinsics. NFC (details)
  1022. Correct the nomerge attribute documentation (details)
  1023. [AtomicExpand] Avoid creating an unnamed libcall (details)
  1024. [clang-format] Improve BAS_DontAlign+AllowAllArgumentsOnNextLine=false (details)
Commit 936ef89ebe8646c483b993d8d8e50ee9509e005d by llvm-dev
[X86] lowerShuffleWithPERMV - use MVT::changeTypeToInteger helper. NFCI.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 19a13bf538b30fa67fc4a381fb25d150cc5a9989 by llvm-dev
[InstCombine] Rename InstCombinerImpl::matchBSwap to matchBSwapOrBitReverse. NFCI.

This matches bswap and bitreverse intrinsics, so we should make that clear in the function name.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineInternal.h
Commit 1cab3bf0046117759cc7891eec66affbbeb5965c by llvm-dev
[InstCombine] matchBSwapOrBitReverse - expose bswap/bitreverse matching flags.

matchBSwapOrBitReverse was hardcoded to just match bswaps - we're going to need to expose the ability to match bitreverse as well, so make this part of the function call.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineInternal.h
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
Commit 448f25c86b79aebae90718938b6a2cb4c782e57d by zhanghb97
[mlir] Expose affine expression to C API

This patch provides C API for MLIR affine expression.
- Implement C API for methods of AffineExpr class.
- Implement C API for methods of derived classes (AffineBinaryOpExpr, AffineDimExpr, AffineSymbolExpr, and AffineConstantExpr).

Differential Revision: https://reviews.llvm.org/D89856
The file was modifiedmlir/include/mlir/IR/AffineExpr.h
The file was modifiedmlir/lib/CAPI/IR/CMakeLists.txt
The file was modifiedmlir/test/CAPI/ir.c
The file was addedmlir/include/mlir/CAPI/AffineExpr.h
The file was addedmlir/lib/CAPI/IR/AffineExpr.cpp
The file was addedmlir/include/mlir-c/AffineExpr.h
Commit 748ecc6b326082c72f5d0866fd7cae499516c079 by spatel
[ValueTracking] add range limits for ctpop

As discussed in D89952,
instcombine can sometimes find a way to reduce similar patterns,
but it is incomplete.
InstSimplify uses the computeConstantRange() ValueTracking analysis
via simplifyICmpWithConstant(), so we just need to fill in the max
value of ctpop to process any "icmp pred ctpop(X), C" pattern (the
min value is initialized to zero automatically).

Differential Revision: https://reviews.llvm.org/D89976
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
The file was modifiedllvm/test/Transforms/InstSimplify/compare.ll
Commit 55a2deed075b87646db62abc7bcd476541eda403 by dpolukhin
[clang-tidy] Fix redefinition of module in the same module.modulemap file

In memory VFS cannot handle aceesssing the same file with different paths.
This diff just stops using VFS for modulemap files.

Fixes PR47839

Differential Revision: https://reviews.llvm.org/D89886
The file was modifiedclang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
Commit 421a2a0dbbd691abeb86dee150cf710a6122e269 by kbobyrev
[clangd] Migrate to proto2 syntax

This allows us to check whether enum field is actually sent over the wire or missing.

Reviewed By: sammccall

Differential Revision: https://reviews.llvm.org/D89882
The file was modifiedclang-tools-extra/clangd/index/remote/marshalling/Marshalling.cpp
The file was modifiedclang-tools-extra/clangd/index/remote/Index.proto
Commit 81f7b2ac0fdc84906d31f6824e34103798d3306c by sam.mccall
[CMake] generate_grpc_protos -> generate_protos(... GRPC). NFC

Differential Revision: https://reviews.llvm.org/D90027
The file was modifiedllvm/cmake/modules/FindGRPC.cmake
The file was modifiedclang-tools-extra/clangd/index/remote/CMakeLists.txt
Commit 2d25004a137223a02aa06e8bfd512a648f3b3f94 by sam.mccall
[CMake] Fix hardcoding of protobuf output basename. NFC

Differential Revision: https://reviews.llvm.org/D90030
The file was modifiedllvm/cmake/modules/FindGRPC.cmake
Commit e6c4d880fa8c1fdb55850cccd5d56050b7f3ecc5 by kbobyrev
[clangd] NFC: Add using directives to avoid spelling out llvm::sys::path

`llvm::sys::path` is used a lot in the remote index marshalling code. We can save space by avoiding spelling it out explicitly for most functions and times.

Reviewed By: kadircet

Differential Revision: https://reviews.llvm.org/D90016
The file was modifiedclang-tools-extra/clangd/index/remote/marshalling/Marshalling.cpp
Commit 9bcb437f46fedbf4f56262ab50721e87fdfc3589 by spatel
[InstSimplify] add tests for ctlz constant range; NFC

This is a search-and-replace of f6cb7f3.
The file was modifiedllvm/test/Transforms/InstSimplify/compare.ll
Commit 0351bd959faefe54456b43933b2f628ea14efb0d by spatel
[InstSimplify] add tests for cttz constant range; NFC

This is a search-and-replace of f6cb7f3
The file was modifiedllvm/test/Transforms/InstSimplify/compare.ll
Commit 3fb0d6b0d55b52a214a3e5118dda3c7d3422782a by spatel
[ValueTracking] add range limits for ctlz

As discussed in D89952,
instcombine can sometimes find a way to reduce similar patterns,
but it is incomplete.
InstSimplify uses the computeConstantRange() ValueTracking analysis
via simplifyICmpWithConstant(), so we just need to fill in the max
value of ctlz to process any "icmp pred ctlz(X), C" pattern (the
min value is initialized to zero automatically).

Follow-up to D89976.
The file was modifiedllvm/test/Transforms/InstSimplify/compare.ll
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
Commit c72198079df60e73948fe4744b1c0ef7231803fd by spatel
[ValueTracking] add range limits for cttz

As discussed in D89952,
instcombine can sometimes find a way to reduce similar patterns,
but it is incomplete.
InstSimplify uses the computeConstantRange() ValueTracking analysis
via simplifyICmpWithConstant(), so we just need to fill in the max
value of cttz to process any "icmp pred cttz(X), C" pattern (the
min value is initialized to zero automatically).

https://alive2.llvm.org/ce/z/Z_SLWZ

Follow-up to D89976.
The file was modifiedllvm/test/Transforms/InstCombine/ctpop-cttz.ll
The file was modifiedllvm/test/Transforms/InstSimplify/compare.ll
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
Commit e6c1c3f97f13b7d973fa786a3f2da883fa31bdf6 by sam.mccall
[clang] Split remote index service definition into a separate file.

This allows it to have a separate namespace (grpc versioned service) without
putting versioning info on all of the other protos (before we need it).

clang-index-server is still broken (from 81e5f298c431555).

Differential Revision: https://reviews.llvm.org/D90031
The file was modifiedclang-tools-extra/clangd/index/remote/server/Server.cpp
The file was modifiedclang-tools-extra/clangd/index/remote/CMakeLists.txt
The file was modifiedclang-tools-extra/clangd/index/remote/server/CMakeLists.txt
The file was modifiedclang-tools-extra/clangd/index/remote/marshalling/CMakeLists.txt
The file was addedclang-tools-extra/clangd/index/remote/Service.proto
The file was modifiedclang-tools-extra/clangd/index/remote/Client.cpp
The file was modifiedclang-tools-extra/clangd/index/remote/Index.proto
Commit 6d83e3b443358ca735c40b6edcba0c6b095dd4f2 by frgossen
[MLIR] Extract buffer alias analysis for reuse

Extract buffer alias analysis from buffer placement.

Differential Revision: https://reviews.llvm.org/D89902
The file was addedmlir/include/mlir/Analysis/BufferAliasAnalysis.h
The file was addedmlir/lib/Analysis/BufferAliasAnalysis.cpp
The file was modifiedmlir/lib/Analysis/CMakeLists.txt
The file was modifiedmlir/include/mlir/Interfaces/ControlFlowInterfaces.td
The file was modifiedmlir/include/mlir/Transforms/Bufferize.h
The file was modifiedmlir/lib/Transforms/BufferDeallocation.cpp
Commit c6561ccfd982f03fc9f572c6c27ddab336158e18 by stefanp
[PowerPC][LLD] Support for PC Relative TLS for Local Dynamic

Add support to LLD for PC Relative Thread Local Storage for Local Dynamic.
This patch adds support for two relocations: R_PPC64_GOT_TLSLD_PCREL34 and
R_PPC64_DTPREL34.

The Local Dynamic code is:
```
pla r3, x@got@tlsld@pcrel        R_PPC64_GOT_TLSLD_PCREL34
bl __tls_get_addr@notoc(x@tlsld) R_PPC64_TLSLD
                                 R_PPC64_REL24_NOTOC
...
paddi r9, r3, x@dtprel           R_PPC64_DTPREL34
```

After relaxation to Local Exec:
```
paddi r3, r13, 0x1000
nop
...
paddi r9, r3, x@dtprel          R_PPC64_DTPREL34
```

Reviewed By: NeHuang, sfertile

Differential Revision: https://reviews.llvm.org/D87504
The file was addedlld/test/ELF/ppc64-tls-pcrel-ld.s
The file was modifiedlld/ELF/Relocations.cpp
The file was modifiedlld/ELF/Arch/PPC64.cpp
Commit ce63383e45f4c833dbff6a89b242bfd1d188786e by sam.mccall
[clangd] Drop version from remote index proto names, fix clangd-index-server

We only need to version these messages if they actually diverge.
Unlike the service, the namespace name isn't part of the wire format.

clangd-index-server was broken by 81e5f298c431555d809f898c196945ca879c1150
as the namespace names weren't updated there, this fixes it (by adding
them for the service, and not requiring them elsewhere).
The file was modifiedclang-tools-extra/clangd/index/remote/server/Server.cpp
The file was modifiedclang-tools-extra/clangd/index/remote/marshalling/Marshalling.cpp
The file was modifiedclang-tools-extra/clangd/index/remote/Index.proto
The file was modifiedclang-tools-extra/clangd/index/remote/marshalling/Marshalling.h
The file was modifiedclang-tools-extra/clangd/unittests/remote/MarshallingTests.cpp
Commit 1e0b6c1df0f2cf8b056244d6ecd5041f7f9ad7a6 by czhengsz
[LSR] ignore profitable chain when reg num is not major cost.

Reviewed By: samparker

Differential Revision: https://reviews.llvm.org/D89665
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h
The file was modifiedllvm/lib/Analysis/TargetTransformInfo.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfoImpl.h
The file was modifiedllvm/test/CodeGen/PowerPC/lsr-profitable-chain.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfo.h
The file was modifiedllvm/lib/Target/PowerPC/PPCTargetTransformInfo.h
Commit 48e4b0fd3a3d68cc9774699964cf4c6c2be38cf3 by Louis Dionne
[runtimes] Revert the libc++ __config_site change

This is a massive revert of the following commits (from most revent to oldest):

2b9b7b5775a1d8fcd7aa5abaa8fc0bc303434f1a.
529ac33197f6408952ae995075ac5e2dc5287e81
28270234f1478047e35879f4ba8838b47edfcc14
69c2087283cf7b17ca75f69daebf4ffc158b754a
b5aa67446e01bd277727b05710a42e69ac41e74b
5d796645d6c8cadeb003715c33e231a8ba05b6de

After checking-in the __config_site change, a lot of things started breaking
due to widespread reliance on various aspects of libc++'s build, notably the
fact that we can include the headers from the source tree, but also reliance
on various "internal" CMake variables used by the runtimes build and compiler-rt.

These were unintended consequences of the change, and after two days, we
still haven't restored all the bots to being green. Instead, now that I
understand what specific areas this will blow up in, I should be able to
chop up the patch into smaller ones that are easier to digest.

See https://reviews.llvm.org/D89041 for more details on this adventure.
The file was modifiedlibcxx/cmake/Modules/HandleLibCXXABI.cmake
The file was modifiedlibcxx/docs/TestingLibcxx.rst
The file was modifiedlibcxx/utils/libcxx/test/config.py
The file was modifiedlibunwind/test/libunwind/test/config.py
The file was modifiedlibcxx/CMakeLists.txt
The file was modifiedlibcxx/include/__config
The file was modifiedllvm/runtimes/CMakeLists.txt
The file was modifiedlibcxx/benchmarks/CMakeLists.txt
The file was modifiedlibcxx/include/CMakeLists.txt
The file was modifiedlibcxxabi/src/CMakeLists.txt
The file was modifiedlibcxx/test/configs/legacy.cfg.in
The file was modifiedlibcxxabi/CMakeLists.txt
The file was modifiedlibcxxabi/test/libcxxabi/test/config.py
Commit 13aff21f0da7007c42d407b4ec5c1f6b24cb6831 by thakis
[gn build] port 48e4b0f (__config_site revert)

This reverts commit b3ca53e14274642274be8fe7db8b43dc3c146366.
This reverts commit 8b7dac81d378c339d3e55f6f51cd0c42803903ad.
This reverts commit 37c030f81a9fdd7a7e1b6fa5407b277c1ab1afa1.
The file was modifiedllvm/utils/gn/secondary/libcxx/include/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/libcxx/src/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/clang/tools/driver/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/libcxxabi/src/BUILD.gn
Commit 68f47157164e0513fb5bf3a4639884c85b8a1308 by jeremy.morse
[DebugInstrRef] Convert DBG_INSTR_REFs into variable locations

Handle DBG_INSTR_REF instructions in LiveDebugValues, to determine and
propagate variable locations. The logic is fairly straight forwards:
Collect a map of debug-instruction-number to the machine value numbers
generated in the first walk through the function. When building the
variable value transfer function and we see a DBG_INSTR_REF, look up the
instruction it refers to, and pick the machine value number it generates,
That's it; the rest of LiveDebugValues continues as normal.

Awkwardly, there are two kinds of instruction numbering happening here: the
offset into the block (which is how machine value numbers are determined),
and the numbers that we label instructions with when generating
DBG_INSTR_REFs.

I've also restructured the TransferTracker redefVar code a little, to
separate some DBG_VALUE specific operations into its own method. The
changes around redefVar should be largely NFC, while allowing
DBG_INSTR_REFs to specify a value number rather than just a location.

Differential Revision: https://reviews.llvm.org/D85771
The file was addedllvm/test/DebugInfo/MIR/InstrRef/livedebugvalues_instrref_tolocs.mir
The file was modifiedllvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
Commit b651ecfb726f06752590122054f5bf19c9407537 by eleviant
[llvm-mca] Extend cortex-a57 memory instructions test

Patch adds few/load store instructions which have custom sched
classes in cortex-a57 model.
The file was modifiedllvm/test/tools/llvm-mca/ARM/cortex-a57-memory-instructions.s
Commit 8039b3f966804c6578f8265d5eb7bdde8dec3ddd by frgossen
[MLIR] Fix bad merge with buffer alias analysis.
The file was modifiedmlir/lib/Transforms/BufferOptimizations.cpp
Commit f55eeea4024cb05bff2c9f72968f23183e992a32 by sam.mccall
Export TemplateArgumentMatcher so clients defining custom matchers don't need to use the internal namespace

This change adds another export, `using TemplateArgumentMatcher = internal::Matcher<TemplateArgument>;`, to the collection of exports that put instantiations of the `clang::ast_matchers::internal::Matcher` into the `clang::ast_matchers` namespace. This makes it possible to define custom TemplateArgument matchers without reaching into the `internal` namespace.

Reviewed By: klimek

Differential Revision: https://reviews.llvm.org/D89920
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchers.h
Commit 676ff75d60792d98161f95460e7f982664f39603 by clementval
[flang][openacc] Fix semantic check for wait and atomic directives

wait and atomic directives are represented by OpenACCWaitConstruct, OpenACCAtmicConstruct in the parser. Those contrsuct were
not taken into account in the semantic check so far.

Reviewed By: kiranchandramohan

Differential Revision: https://reviews.llvm.org/D88628
The file was modifiedflang/lib/Semantics/check-acc-structure.h
The file was modifiedflang/test/Semantics/acc-clause-validity.f90
The file was modifiedflang/include/flang/Parser/parse-tree.h
The file was modifiedflang/lib/Parser/openacc-parsers.cpp
The file was modifiedflang/lib/Semantics/check-acc-structure.cpp
Commit d61996473dd9481da9ffc40cea608a5e6eaacf06 by Matthew.Arsenault
AMDGPU: Increase branch size estimate with offset bug

This will be relaxed to insert a nop if the offset hits the bad value,
so over estimate branch instruction sizes.
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SOPInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
The file was addedllvm/test/CodeGen/AMDGPU/branch-relaxation-gfx10-branch-offset-bug.ll
Commit 8a59d4b654e486d9f8f8dbc6da40a4d7ad93ee68 by Matthew.Arsenault
AMDGPU: Don't query for TII in TII
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.cpp
Commit 876af264c118c6ebcb8d79ab1a25d061f98fde82 by paul
[TableGen] Change !getop and !setop to !getdagop and !setdagop.

Differential Revision: https://reviews.llvm.org/D89814
The file was modifiedllvm/lib/TableGen/TGLexer.cpp
The file was modifiedclang/include/clang/Basic/arm_mve.td
The file was modifiedllvm/docs/TableGen/ProgRef.rst
The file was modifiedllvm/lib/TableGen/Record.cpp
The file was modifiedllvm/lib/TableGen/TGParser.cpp
The file was modifiedllvm/test/TableGen/getsetop.td
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was modifiedllvm/lib/TableGen/TGLexer.h
The file was modifiedllvm/include/llvm/TableGen/Record.h
Commit 9e7667e2ad4838cf213fcd73782d5a70a657c058 by llvm-dev
[InstCombine] Add initial bitreverse test coverage
The file was addedllvm/test/Transforms/InstCombine/bitreverse.ll
Commit 61d1847b12a91e148a7f6bc32a7a2d490bc19ffd by llvm-dev
[InstCombine] Add 8/16/32/64 bitreverse test coverage

Use typical codegen for the traditional pairwise lgN bitreverse algorithm
The file was modifiedllvm/test/Transforms/InstCombine/bitreverse.ll
Commit a6ad077f5d3979c0c9decb1d41660a91fe44fe0a by llvm-dev
[InstCombine] Add i8 bitreverse by multiplication test patterns

Pulled from bit twiddling hacks webpage
The file was modifiedllvm/test/Transforms/InstCombine/bitreverse.ll
Commit 1d328446bf92f76f1861d0e5f84d67732d76c8fd by SourabhSingh.Tomar
[flang][OpenMP] Upstream lowering of `ParallelOp` clauses

Note: This patch reflects the work that can be upstreamed from PR's(merged):

1. https://github.com/flang-compiler/f18-llvm-project/pull/456
2. https://github.com/flang-compiler/f18-llvm-project/pull/485

Also replaced TODO with new TODO.

Reviewed By: kiranchandramohan

Differential Revision: https://reviews.llvm.org/D89769
The file was modifiedflang/lib/Lower/OpenMP.cpp
Commit a74fc481588fcea9317cbf1f6c5888a30c9edd2d by nicolai.haehnle
CfgInterface: rename interface() to getInterface()

Apparently there are some Microsoft headers which
`#define interface struct`. This method is only used
in pending changes so far.

Change-Id: Ic68fe8e1958ec9b015f817ee218431f4146b888a
The file was modifiedllvm/include/llvm/Support/CfgTraits.h
Commit 4f7ee55971e7f7a27af69c501e4b395c4079decb by dantrushin
Revert "[Statepoints] Allow deopt GC pointer on VReg if gc-live bundle is empty."

Downstream testing revealed some problems with this patch.
Reverting while investigating.
This reverts commit 2b96dcebfae65485859d956954f10f409abaae79.
The file was modifiedllvm/test/CodeGen/X86/statepoint-vreg-details.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp
Commit 958130dfda276304372b54010adfc48f05b13c2c by jay.foad
[AMDGPU] Add simplification/combines for llvm.amdgcn.fma.legacy

This follows on from D89558 which added the new intrinsic and D88955
which added similar combines for llvm.amdgcn.fmul.legacy.

Differential Revision: https://reviews.llvm.org/D90028
The file was addedllvm/test/Transforms/InstCombine/AMDGPU/fma_legacy.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
The file was modifiedllvm/test/Transforms/InstCombine/AMDGPU/fmul_legacy.ll
Commit b1b2c6ab667d50e68a6f945f6b64ce0351c2739c by jeremy.morse
[DebugInstrRef] Handle DBG_INSTR_REFs use-before-defs in LiveDebugValues

Deciding where to place debugging instructions when normal instructions
sink between blocks is difficult -- see PR44117. Dealing with this with
instruction-referencing variable locations is simple: we just tolerate
DBG_INSTR_REFs referring to values that haven't been computed yet. This
patch adds support into InstrRefBasedLDV to record when a variable value
appears in the middle of a block, and should have a DBG_VALUE added when it
appears (a debug use before def).

While described simply, this relies heavily on the value-propagation
algorithm in InstrRefBasedLDV. The implementation doesn't attempt to verify
the location of a value unless something non-trivial occurs to merge
variable values in vlocJoin. This means that a variable with a value that
has no location can retain it across all control flow (including loops).
It's only when another debug instruction specifies a different variable
value that we have to check, and find there's no location.

This property means that if a machine value is defined in a block dominated
by a DBG_INSTR_REF that refers to it, all the successor blocks can
automatically find a location for that value (if it's not clobbered). Thus
in a sense, InstrRefBasedLDV is already supporting and implementing
use-before-defs. This patch allows us to specify a variable location in the
block where it's defined.

When loading live-in variable locations, TransferTracker currently discards
those where it can't find a location for the variable value. However, we
can tell from the machine value number whether the value is defined in this
block. If it is, add it to a set of use-before-def records. Then, once the
relevant instruction has been processed, emit a DBG_VALUE immediately after
it.

Differential Revision: https://reviews.llvm.org/D85775
The file was modifiedllvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
The file was modifiedllvm/test/DebugInfo/MIR/InstrRef/livedebugvalues_instrref_tolocs.mir
Commit e7d37742a2a584fef9002778b33f9453647ab43c by SourabhSingh.Tomar
[flang][OpenMP] Upstream lowering of OpenMP `Flush` construct

Note: This patch reflects the work that can be upstreamed from PR's(merged):

- https://github.com/flang-compiler/f18-llvm-project/pull/476

Reviewed By: kiranchandramohan, clementval

Differential Revision: https://reviews.llvm.org/D90048
The file was modifiedflang/lib/Lower/OpenMP.cpp
Commit 69e2797eaed5b9db969fb4ff5e40530a7122b3a3 by sbc
[WebAssembly] Implementation of (most) table instructions

Implementation of instructions table.get, table.set, table.grow,
table.size, table.fill, table.copy.

Missing instructions are table.init and elem.drop as they deal with
element sections which are not yet implemented.

Added more tests to tables.s

Differential Revision: https://reviews.llvm.org/D89797
The file was modifiedllvm/lib/Object/WasmObjectFile.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td
The file was modifiedllvm/lib/CodeGen/ValueTypes.cpp
The file was modifiedllvm/include/llvm/Support/MachineValueType.h
The file was modifiedllvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp
The file was modifiedllvm/lib/MC/WasmObjectWriter.cpp
The file was modifiedllvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp
The file was modifiedllvm/include/llvm/CodeGen/ValueTypes.td
The file was modifiedllvm/include/llvm/Object/Wasm.h
The file was modifiedllvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
The file was modifiedllvm/include/llvm/BinaryFormat/WasmRelocs.def
The file was addedllvm/lib/Target/WebAssembly/WebAssemblyInstrTable.td
The file was modifiedllvm/utils/TableGen/CodeGenTarget.cpp
The file was modifiedllvm/test/MC/WebAssembly/tables.s
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
The file was modifiedllvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCCodeEmitter.cpp
The file was modifiedllvm/lib/Object/RelocationResolver.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.td
Commit 5dd39923a09ec284d30083e5fadaa29e618d4446 by kadircet
[clangd] Fix remote-server build and add it to check-clangd

Differential Revision: https://reviews.llvm.org/D90047
The file was modifiedclang-tools-extra/clangd/test/CMakeLists.txt
The file was modifiedclang-tools-extra/clangd/index/remote/server/Server.cpp
Commit 00255f419298b93c812324a257ff057e57ab5c04 by vpykhtin
[AMDGPU] Fix access beyond the end of the basic block in execMayBeModifiedBeforeAnyUse.

I was wrong in thinking that MRI.use_instructions return unique instructions and mislead Jay in his previous patch D64393.

First loop counted more instructions than it was in reality and the second loop went beyond the basic block with that counter.

I used Jay's previous code that relied on MRI.use_operands to constrain the number of instructions to check among.
modifiesRegister is inlined to reduce the number of passes over instruction operands and added assert on BB end boundary.

Differential Revision: https://reviews.llvm.org/D89386
The file was addedllvm/unittests/Target/AMDGPU/ExecMayBeModifiedBeforeAnyUse.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.cpp
The file was modifiedllvm/unittests/Target/AMDGPU/CMakeLists.txt
Commit 24a1fe754713cfcc00100a02ba59b7d0371aedde by llvmgnsyncbot
[gn build] Port 00255f41929
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/Target/AMDGPU/BUILD.gn
Commit 7a74bb899abe1772a428ec98597d544a637e5551 by wei.huang
[PowerPC] Fix the Predicates for enabling pcrelative-memops and PLXVP/PSTXVP definitions

In this patch, Predicates fix added for the following:
* disable prefix-instrs will disable pcrelative-memops
* set two predicates PairedVectorMemops and PrefixInstrs for PLXVP/PSTXVP definitions

Differential Revision: https://reviews.llvm.org/D89727
Reviewed by: amyk, steven.zhang
The file was modifiedllvm/lib/Target/PowerPC/PPC.td
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrPrefix.td
The file was modifiedllvm/test/CodeGen/PowerPC/p10-splatImm-CPload-pcrel.ll
Commit 74a8783480219f5f0e5c4673a6d0e29b4ad99877 by Duncan P. N. Exon Smith
SourceManager: Clarify that FileInfo always has a ContentCache, NFC

It turns out that `FileInfo` *always* has a ContentCache. Clarify that
in the code:
- Update the private version of `SourceManager::createFileID` to take a
  `ContentCache&` instead of `ContentCache*`, and rename it to
  `createFileIDImpl` for clarity.
- Change `FileInfo::getContentCache` to return a reference.

Differential Revision: https://reviews.llvm.org/D89554
The file was modifiedclang/lib/Lex/ScratchBuffer.cpp
The file was modifiedclang/lib/Basic/SourceManager.cpp
The file was modifiedclang/lib/Rewrite/Rewriter.cpp
The file was modifiedclang/lib/AST/ASTImporter.cpp
The file was modifiedclang/include/clang/Basic/SourceManager.h
The file was modifiedclang/lib/Serialization/ASTWriter.cpp
The file was modifiedclang/tools/libclang/CIndexInclusionStack.cpp
Commit 1e113c078a560ad71e838ab9cf6719a3d4f1ec6d by huihuiz
[AArch64][SVE] Fix umin/umax lowering to handle out of range imm.

Immediate must be in an integer range [0,255] for umin/umax instruction.
Extend pattern matching helper SelectSVEArithImm() to take in value type
bitwidth when checking immediate value is in range or not.

Reviewed By: sdesmalen

Differential Revision: https://reviews.llvm.org/D89831
The file was modifiedllvm/lib/Target/AArch64/SVEInstrFormats.td
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
The file was modifiedllvm/test/CodeGen/AArch64/sve-int-arith-imm.ll
The file was modifiedllvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-imm.ll
Commit 996a8b42aa2d956c1f8fc1b001bcee543e2ef697 by Lang Hames
Re-apply "[JITLink][ELF] Add support for ELF::R_X86_64_REX_GOTPCRELX relocation"

This re-applies e2fceec2fd1 with fixes. Apparently we already *do* support
relaxation for ELF, so we need to make sure the test case allocates a slab at
a fixed address, and that the R_X86_64_REX_GOTPCRELX test references an external
that is guaranteed to be out of range.
The file was modifiedllvm/test/ExecutionEngine/JITLink/X86/ELF_x86-64_relocations.s
The file was modifiedllvm/lib/ExecutionEngine/JITLink/ELF_x86_64.cpp
Commit dc98923a8c09ca66f5f71c5a5f416dc1f91e2ab8 by aorlov
Added utility to launch tests on a target remotely.

Runs an executable on a remote host.
This is meant to be used as an executor when running the LLVM and the Libraries tests on a target.

Reviewed By: vvereschaka

Differential Revision: https://reviews.llvm.org/D89349
The file was addedllvm/utils/remote-exec.py
Commit 5668eda864e36baed92854fd13a89042d978ffa4 by aeubanks
Revert "[CGSCC] Detect devirtualization in more cases"

This reverts commit 3024fe5b55ed72633915f613bd5e2826583c396f.

Causes major compile time regressions:
https://llvm-compile-time-tracker.com/compare.php?from=3b8d8954bf2c192502d757019b9fe434864068e9&to=3024fe5b55ed72633915f613bd5e2826583c396f&stat=instructions
The file was modifiedllvm/lib/Analysis/CGSCCPassManager.cpp
The file was removedllvm/test/Transforms/Inline/devirtualize-5.ll
The file was modifiedllvm/test/Transforms/Inline/devirtualize.ll
The file was modifiedllvm/test/Transforms/Inline/devirtualize-3.ll
The file was modifiedllvm/include/llvm/Analysis/CGSCCPassManager.h
Commit dbbc4f4e226be44e484f448be2d308d205c81038 by Duncan P. N. Exon Smith
SourceManager: Encapsulate line number mapping into SrcMgr::LineOffsetMapping

Put the guts of `ComputeLineNumbers` into `LineOffsetMapping::get` and
`LineOffsetMapping::LineOffsetMapping`.  As a drive-by, store the number
of lines directly in the bump-ptr-allocated array.

Differential Revision: https://reviews.llvm.org/D89913
The file was modifiedclang/include/clang/Basic/SourceManager.h
The file was modifiedclang/lib/Basic/SourceManager.cpp
The file was addedclang/unittests/Basic/LineOffsetMappingTest.cpp
The file was modifiedclang/unittests/Basic/CMakeLists.txt
The file was modifiedclang/lib/Lex/ScratchBuffer.cpp
Commit 9df832d1c3aa014c88ec947df3677da2e7d8bd64 by aorlov
These compiler-rt tests should be UNSUPPORTED instead of XFAIL.

These compiler-rt tests should be UNSUPPORTED instead of XFAIL, which seems to be the real intent of the authors.

Reviewed By: vvereschaka

Differential Revision: https://reviews.llvm.org/D89840
The file was modifiedcompiler-rt/test/builtins/Unit/gcc_personality_test.c
The file was modifiedcompiler-rt/test/crt/dso_handle.cpp
Commit de346cf2ac850be793ee7fc31f99a7671331c289 by Jonas Devlieghere
[lldb] Redesign Target::GetUtilityFunctionForLanguage API

This patch redesigns the Target::GetUtilityFunctionForLanguage API:

- Use a unique_ptr instead of a raw pointer for the return type.
- Wrap the result in an llvm::Expected instead of using a Status object as an I/O parameter.
- Combine the action of "getting" and "installing" the UtilityFunction as they always get called together.
- Pass std::strings instead of const char* and std::move them where appropriate.

There's more room for improvement but I think this tackles the most
prevalent issues with the current API.

Differential revision: https://reviews.llvm.org/D90011
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV1.cpp
The file was modifiedlldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/ObjCLanguageRuntime.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/IRDynamicChecks.cpp
The file was modifiedlldb/include/lldb/Target/Target.h
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.cpp
The file was modifiedlldb/source/Target/Target.cpp
The file was modifiedlldb/source/Plugins/SystemRuntime/MacOSX/AppleGetItemInfoHandler.cpp
The file was modifiedlldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
The file was modifiedlldb/source/Plugins/Platform/POSIX/PlatformPOSIX.cpp
The file was modifiedlldb/source/Plugins/SystemRuntime/MacOSX/AppleGetThreadItemInfoHandler.cpp
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
The file was modifiedlldb/source/Plugins/SystemRuntime/MacOSX/AppleGetQueuesHandler.cpp
The file was modifiedlldb/source/Plugins/SystemRuntime/MacOSX/AppleGetPendingItemsHandler.cpp
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
The file was modifiedlldb/include/lldb/Symbol/TypeSystem.h
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV1.h
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.h
Commit 65d206484c54177641d4b11d42cab1f1acc8c0c7 by tra
[CUDA] Improve clang's ability to detect recent CUDA versions.

CUDA-11.1 does not carry version.txt which causes clang to assume that it's
CUDA-7.0, which used to be the only CUDA version w/o version.txt.

In order to tell CUDA-7.0 apart from the new versions, clang now probes for the
presence of libdevice.10.bc which is not present in the old CUDA versions.

This should keep Clang working for CUDA-11.1.

PR47332: https://bugs.llvm.org/show_bug.cgi?id=47332

Differential Revision: https://reviews.llvm.org/D89752
The file was addedclang/test/Driver/Inputs/CUDA_111/usr/local/cuda/bin/.keep
The file was modifiedclang/test/Driver/cuda-version-check.cu
The file was addedclang/test/Driver/Inputs/CUDA_111/usr/local/cuda/lib/.keep
The file was addedclang/test/Driver/Inputs/CUDA_111/usr/local/cuda/lib64/.keep
The file was addedclang/test/Driver/Inputs/CUDA_111/usr/local/cuda/nvvm/libdevice/libdevice.10.bc
The file was modifiedclang/lib/Driver/ToolChains/Cuda.cpp
The file was addedclang/test/Driver/Inputs/CUDA_111/usr/local/cuda/include/.keep
Commit e7fe125b776bf08d95e60ff3354a5c836218a0e6 by tra
[CUDA] Extract CUDA version from cuda.h if version.txt is not found

If CUDA version can not be determined based on version.txt file, attempt to find
CUDA_VERSION macro in cuda.h.

This is a follow-up to D89752,

Differntial Revision: https://reviews.llvm.org/D89832
The file was addedclang/test/Driver/Inputs/CUDA_102/usr/local/cuda/lib64/.keep
The file was addedclang/test/Driver/Inputs/CUDA_102/usr/local/cuda/include/.keep
The file was addedclang/test/Driver/Inputs/CUDA_102/usr/local/cuda/lib/.keep
The file was modifiedclang/include/clang/Basic/DiagnosticDriverKinds.td
The file was modifiedclang/lib/Driver/ToolChains/Cuda.cpp
The file was addedclang/test/Driver/Inputs/CUDA_102/usr/local/cuda/bin/.keep
The file was addedclang/test/Driver/Inputs/CUDA_111/usr/local/cuda/include/cuda.h
The file was modifiedclang/test/Driver/cuda-version-check.cu
The file was addedclang/test/Driver/Inputs/CUDA_102/usr/local/cuda/version.txt
The file was addedclang/test/Driver/Inputs/CUDA_102/usr/local/cuda/nvvm/libdevice/libdevice.10.bc
The file was modifiedclang/lib/Driver/ToolChains/Cuda.h
Commit bf44d3689a0b101914e7088b9671c90e72b8a4e8 by llvmgnsyncbot
[gn build] Port dbbc4f4e226
The file was modifiedllvm/utils/gn/secondary/clang/unittests/Basic/BUILD.gn
Commit 0f0fd383b487e004fd616ac941307422bd09c261 by Amara Emerson
[AArch64][GlobalISel] Introduce a new post-isel optimization pass.

There are two optimizations here:

1. Consider the following code:
FCMPSrr %0, %1, implicit-def $nzcv
%sel1:gpr32 = CSELWr %_, %_, 12, implicit $nzcv
%sub:gpr32 = SUBSWrr %_, %_, implicit-def $nzcv
FCMPSrr %0, %1, implicit-def $nzcv
%sel2:gpr32 = CSELWr %_, %_, 12, implicit $nzcv
This kind of code where we have 2 FCMPs each feeding a CSEL can happen
when we have a single IR fcmp being used by two selects. During selection,
to ensure that there can be no clobbering of nzcv between the fcmp and the
csel, we have to generate an fcmp immediately before each csel is
selected.

However, often we can essentially CSE these together later in MachineCSE.
This doesn't work though if there are unrelated flag-setting instructions
in between the two FCMPs. In this case, the SUBS defines NZCV
but it doesn't have any users, being overwritten by the second FCMP.

Our solution here is to try to convert flag setting operations between
a interval of identical FCMPs, so that CSE will be able to eliminate one.

2. SelectionDAG imported patterns for arithmetic ops currently select the
flag-setting ops for CSE reasons, and add the implicit-def $nzcv operand
to those instructions. However if those impdef operands are not marked as
dead, the peephole optimizations are not able to optimize them into non-flag
setting variants. The optimization here is to find these dead imp-defs and
mark them as such.

This pass is only enabled when optimizations are enabled.

Differential Revision: https://reviews.llvm.org/D89415
The file was modifiedllvm/lib/Target/AArch64/AArch64.h
The file was modifiedllvm/lib/Target/AArch64/CMakeLists.txt
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/gisel-commandline-option.ll
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/postselectopt-dead-cc-defs-in-fcmp.mir
The file was modifiedllvm/test/CodeGen/AArch64/addsub-shifted.ll
The file was modifiedllvm/test/CodeGen/AArch64/addsub_ext.ll
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
The file was addedllvm/lib/Target/AArch64/GISel/AArch64PostSelectOptimize.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetMachine.cpp
Commit 5431c37b55e2c2952b6b56c9690bd1ce05b23c7e by Duncan P. N. Exon Smith
SourceManager: Make LastLineNoContentCache and ContentCache::SourceLineCache mutable, NFC

Avoid some noisy `const_cast`s by making `ContentCache::SourceLineCache`
and `SourceManager::LastLineNoContentCache` both mutable.

Differential Revision: https://reviews.llvm.org/D89914
The file was modifiedclang/lib/Lex/ScratchBuffer.cpp
The file was modifiedclang/include/clang/Basic/SourceManager.h
The file was modifiedclang/lib/Basic/SourceManager.cpp
Commit 2b8fb5185e4a2087874924468086e3fb6a2ec495 by mtrofin
[MLInliner] Disable always inliner in bounds tests

That changes the threshold calculation.
The file was modifiedllvm/test/Transforms/Inline/ML/bounds-checks-rewards.ll
The file was modifiedllvm/test/Transforms/Inline/ML/bounds-checks.ll
Commit 9267caebfa9209e4ae69517043d008d1b83307aa by i
[ELF] Don't error on R_PPC64_REL24/R_PPC64_REL24_NOTOC referencing __tls_get_addr for missing R_PPC64_TLSGD/R_PPC64_TLSLD

This partially reverts D85994.

In glibc, elf/dl-sym.c calls the raw `__tls_get_addr` by specifying the
tls_index parameter. Such a call does not have a pairing R_PPC64_TLSGD/R_PPC64_TLSLD.
This is legitimate. Since we cannot distinguish the benign case from cases due
to toolchain issues, we have to be permissive.

Acked by Stefan Pintilie
The file was modifiedlld/test/ELF/ppc64-tls-missing-gdld.s
The file was modifiedlld/ELF/Relocations.cpp
Commit 1253c40727d2fae9398fc63c86de75db88fb5124 by silvasean
[mlir] Add FuncOp::eraseResults

I just found I needed this in an upcoming patch, and it seems generally
useful to have.

Differential Revision: https://reviews.llvm.org/D90000
The file was modifiedmlir/include/mlir/IR/Function.h
The file was modifiedmlir/lib/IR/Function.cpp
The file was addedmlir/test/IR/test-func-erase-result.mlir
The file was modifiedmlir/test/lib/IR/TestFunc.cpp
Commit dd887d97ce38bc60f3680d2481fc2d96ce45c4f5 by nikita.ppv
[PhiValues] Use SetVector to avoid non-determinism

I'm not sure whether this can cause actual non-determinism in the
compiler output, but at least it causes non-determinism in the
statistics collected by BasicAA.

Use SetVector to have a predictable iteration order.
The file was modifiedllvm/lib/Analysis/PhiValues.cpp
The file was modifiedllvm/include/llvm/Analysis/PhiValues.h
Commit edb27912a3ec097b5f267941b3b0107b4bb8d997 by saghir
[PowerPC] Add intrinsics for MMA

This patch adds support for MMA intrinsics.

Authored by: Baptiste Saleil

Reviewed By: #powerpc, bsaleil, amyk

Differential Revision: https://reviews.llvm.org/D89345
The file was modifiedllvm/test/CodeGen/PowerPC/bfloat16-outer-product.ll
The file was addedllvm/test/CodeGen/PowerPC/mma-outer-product.ll
The file was modifiedllvm/include/llvm/IR/IntrinsicsPowerPC.td
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrPrefix.td
The file was addedllvm/test/CodeGen/PowerPC/mma-integer-based-outer-product.ll
Commit 819044ad2d6a38ee12321d4523b9d980a7afbc18 by mtrofin
[NFC] Use [MC]Register in RegAllocGreedy

This was initiated from the uses of MCRegUnitIterator, so while likely
not exhaustive, it's a step forward.

Differential Revision: https://reviews.llvm.org/D89975
The file was modifiedllvm/lib/CodeGen/RegAllocGreedy.cpp
The file was modifiedllvm/lib/CodeGen/AllocationOrder.h
Commit 1b65a51af80a9375ef85cb8fa6ec9ec3c68b3549 by nikita.ppv
[BasicAA] Add additional phi cycle test (NFC)

This is a variation of the BatchAA problem that also applies
without BatchAA. We may have a cached result from earlier in
the same query.
The file was modifiedllvm/unittests/Analysis/AliasAnalysisTest.cpp
Commit b67a2aef8ac9fd9c10666a05d72d909315140dcb by tejohnson
[MemProf] XFAIL test on avr until issue can be debugged

For unknown reasons, this test started failing only on the
llvm-avr-linux bot after 5c20d7db9f2791367b9311130eb44afecb16829c:
http://lab.llvm.org:8011/#/builders/112/builds/365

The error message is not helpful, and I have an email out to the bot
owner to help with debugging. XFAIL it on avr for now.
The file was modifiedcompiler-rt/test/memprof/TestCases/log_path_test.cpp
Commit 1602c6fd9294494aaa7461e258602d486166b303 by hubert.reinterpretcast
[AIX][cmake] Adjust management of `-G` for linking

The change in 0ba98433971f changed the behaviour of the build when
using an XL build compiler because `-G` is not a pure linker option:
it also implies `-shared`. This was accounted for in the base CMake
configuration, so an analysis of the change from 0ba98433971f in
relation to a build using Clang (where `-shared` is introduced by CMake)
would not identify the issue. This patch resolves this particular issue
by adding `-shared` alongside `-Wl,-G`.

At the same time, the investigation reveals that several aspects of the
various build configurations are not operating in the manner originally
intended.

The other issue related to the `-G` linker option in the build is that
the removal of it (to avoid unnecessary use of run-time linking) is not
effective for the build using the Clang compiler. This patch addresses
this by adjusting the regular expressions used to remove the broadly-
applied `-G`.

Finally, the issue of specifying the export list with `-Wl,` instead of
a compiler option is flagged with a FIXME comment.

Reviewed By: daltenty, amyk

Differential Revision: https://reviews.llvm.org/D90041
The file was modifiedllvm/cmake/modules/AddLLVM.cmake
The file was modifiedllvm/CMakeLists.txt
Commit 2e64ad94948763a4f9a289265dbce4ce1d22591b by Stanislav.Mekhanoshin
[AMDGPU] Fixed isLegalRegOperand() with physregs

This does not change anything at the moment, but needed for
D89170. In that change I am probing a physical SGPR to see if
it is legal. RC is SReg_32, but DRC for scratch instructions
is SReg_32_XEXEC_HI and test fails.

That is sufficient just to check if DRC contains a register
here in case of physreg. Physregs also do not use subregs
so the subreg handling below is irrelevant for these.

Differential Revision: https://reviews.llvm.org/D90064
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.cpp
Commit 05bef88eb3ecb8519a871ca9aa53caeca5add555 by Xiangling.Liao
[AIX] Let alloca return 16 bytes alignment

On AIX, to support vector types, which should always be 16 bytes aligned,
we set alloca to return 16 bytes aligned memory space.

Differential Revision: https://reviews.llvm.org/D89910
The file was addedclang/test/CodeGen/aix_alloca_align.c
The file was modifiedclang/test/Preprocessor/init-ppc.c
The file was modifiedclang/test/Preprocessor/init-ppc64.c
The file was modifiedclang/lib/Basic/Targets/PPC.h
Commit a4459feca415a757fa0ca3ab4731a17240931a81 by Jonas Devlieghere
[lldb] Fix use of undefined type 'lldb_private::UtilityFunction'

We were returning the default constructed unique_pointer from
TypeSystem.h for which the compiler does not have a definition. Move the
implementation into the cpp file.
The file was modifiedlldb/include/lldb/Symbol/TypeSystem.h
The file was modifiedlldb/source/Symbol/TypeSystem.cpp
Commit b7926ce6d7a83cdf70c68d82bc3389c04009b841 by ndesaulniers
[IR] add fn attr for no_stack_protector; prevent inlining on mismatch

It's currently ambiguous in IR whether the source language explicitly
did not want a stack a stack protector (in C, via function attribute
no_stack_protector) or doesn't care for any given function.

It's common for code that manipulates the stack via inline assembly or
that has to set up its own stack canary (such as the Linux kernel) would
like to avoid stack protectors in certain functions. In this case, we've
been bitten by numerous bugs where a callee with a stack protector is
inlined into an __attribute__((__no_stack_protector__)) caller, which
generally breaks the caller's assumptions about not having a stack
protector. LTO exacerbates the issue.

While developers can avoid this by putting all no_stack_protector
functions in one translation unit together and compiling those with
-fno-stack-protector, it's generally not very ergonomic or as
ergonomic as a function attribute, and still doesn't work for LTO. See also:
https://lore.kernel.org/linux-pm/20200915172658.1432732-1-rkir@google.com/
https://lore.kernel.org/lkml/20200918201436.2932360-30-samitolvanen@google.com/T/#u

Typically, when inlining a callee into a caller, the caller will be
upgraded in its level of stack protection (see adjustCallerSSPLevel()).
By adding an explicit attribute in the IR when the function attribute is
used in the source language, we can now identify such cases and prevent
inlining.  Block inlining when the callee and caller differ in the case that one
contains `nossp` when the other has `ssp`, `sspstrong`, or `sspreq`.

Fixes pr/47479.

Reviewed By: void

Differential Revision: https://reviews.llvm.org/D87956
The file was addedllvm/test/Verifier/function-attribute-nossp-ssp-sspreq-sspstrong.ll
The file was modifiedllvm/lib/IR/Attributes.cpp
The file was modifiedllvm/docs/BitCodeFormat.rst
The file was modifiedllvm/include/llvm/Bitcode/LLVMBitCodes.h
The file was modifiedclang/include/clang/Basic/AttrDocs.td
The file was modifiedllvm/utils/llvm.grm
The file was modifiedllvm/lib/AsmParser/LLParser.cpp
The file was modifiedllvm/lib/Bitcode/Writer/BitcodeWriter.cpp
The file was modifiedllvm/lib/IR/Verifier.cpp
The file was modifiedllvm/lib/CodeGen/StackProtector.cpp
The file was modifiedllvm/bindings/go/llvm/ir_test.go
The file was modifiedllvm/bindings/ocaml/llvm/llvm.ml
The file was modifiedllvm/lib/Transforms/IPO/ForceFunctionAttrs.cpp
The file was modifiedllvm/utils/vim/syntax/llvm.vim
The file was modifiedllvm/lib/AsmParser/LLToken.h
The file was modifiedllvm/test/CodeGen/X86/stack-protector-2.ll
The file was modifiedllvm/utils/kate/llvm.xml
The file was modifiedllvm/test/Transforms/CodeExtractor/PartialInlineAttributes.ll
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was modifiedllvm/docs/LangRef.rst
The file was modifiedllvm/include/llvm/IR/Attributes.td
The file was modifiedllvm/lib/Transforms/Utils/CodeExtractor.cpp
The file was modifiedllvm/test/Transforms/Inline/inline_ssp.ll
The file was addedllvm/test/Transforms/Inline/inline_nossp.ll
The file was modifiedllvm/lib/AsmParser/LLLexer.cpp
The file was modifiedllvm/lib/Transforms/Utils/InlineFunction.cpp
The file was modifiedclang/test/CodeGen/stack-protector.c
The file was addedclang/test/Frontend/optimization-remark-missed-inline-stack-protectors.c
The file was modifiedllvm/utils/vscode/llvm/syntaxes/ll.tmLanguage.yaml
The file was modifiedllvm/utils/emacs/llvm-mode.el
Commit cf52a85ddc9be165daca3d32521747c898f4ffd1 by Duncan P. N. Exon Smith
SourceManager: Simplify by inlining what remains of ComputeLineNumbers, NFC

Use `LineOffsetMapping:get` directly and remove/inline the helper
`ComputeLineNumbers`, simplifying the callers.

Differential Revision: https://reviews.llvm.org/D89922
The file was modifiedclang/lib/Basic/SourceManager.cpp
Commit 4b90a253c257cdb23b699eeae126b6687dbf96bf by aeubanks
[gn build] Add missing comma
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
Commit 8c72eea9a04ca8349224f26d1982d838824786a3 by thomasraoux
[mlir][vector] Add folding for ExtractOp with ShapeCastOp source

Differential Revision: https://reviews.llvm.org/D89853
The file was modifiedmlir/lib/Dialect/Vector/VectorOps.cpp
The file was modifiedmlir/test/Dialect/Vector/canonicalize.mlir
Commit 2f8dd2687fa0211ef0c8d2faf74c0e003fe59e7a by Louis Dionne
[libc++] Refactor the run-buildbot script to make it more modular, and run the benchmarks

As a fly-by fix, unbreak the benchmarks on Apple platforms.

Differential Revision: https://reviews.llvm.org/D90043
The file was modifiedlibcxx/utils/ci/buildkite-pipeline.yml
The file was modifiedlibcxxabi/src/CMakeLists.txt
The file was modifiedlibcxx/src/CMakeLists.txt
The file was modifiedlibcxx/test/support/debug_mode_helper.h
The file was modifiedlibcxx/utils/ci/run-buildbot.sh
Commit bfb04aeb85b85cb49c7e630de979ef4d8de6e79a by joker.eph
Unconditionally #include <future>

This unbreaks building with `LLVM_ENABLE_THREADS=0`. Since
https://github.com/llvm/llvm-project/commit/069919c9ba33 usage of
`std::promise` is not guarded by `LLVM_ENABLE_THREADS`, so this header
must be unconditionally included.

Reviewed By: lhames

Differential Revision: https://reviews.llvm.org/D89758
The file was modifiedllvm/lib/ExecutionEngine/Orc/Core.cpp
Commit ea6a60a9a6c18a2a512b066fd8a873ff0db49836 by thomasraoux
[mlir][vector] Add folder for ExtractStridedSliceOp

Add folder for the case where ExtractStridedSliceOp source comes from a chain
of InsertStridedSliceOp. Also add a folder for the trivial case where the
ExtractStridedSliceOp is a no-op.

Differential Revision: https://reviews.llvm.org/D89850
The file was modifiedmlir/include/mlir/Dialect/Vector/VectorOps.td
The file was modifiedmlir/lib/Dialect/Vector/VectorOps.cpp
The file was modifiedmlir/test/Dialect/Vector/canonicalize.mlir
Commit cb9f6c4c8cbaa327b4836cf0fa61015f760f4002 by Louis Dionne
[libc++] Clean up unused CI files

Those were useful during CI experimentation, but are not used anymore.
The file was removedlibcxx/utils/ci/phabricator-report
The file was removedlibcxx/utils/ci/buildkite-pipeline-trigger.sh
Commit 73811d32c72d0760c8c2066e4675dd6f1a7bbef7 by Jonas Devlieghere
[lldb] Move copying of files into reproducer out of process

For performance reasons the reproducers don't copy the files captured by
the file collector eagerly, but wait until the reproducer needs to be
generated.

This is a problematic when LLDB crashes and we have to do all this
signal-unsafe work in the signal handler. This patch uses a similar
trick to clang, which has the driver invoke a new cc1 instance to do all
this work out-of-process.

This patch moves the writing of the mapping file as well as copying over
the reproducers into a separate process spawned when lldb crashes.

Differential revision: https://reviews.llvm.org/D89600
The file was modifiedlldb/source/API/SBReproducer.cpp
The file was addedlldb/test/Shell/Reproducer/TestFinalize.test
The file was modifiedlldb/source/Utility/Reproducer.cpp
The file was modifiedlldb/source/Utility/ReproducerProvider.cpp
The file was modifiedlldb/include/lldb/API/SBReproducer.h
The file was modifiedlldb/include/lldb/Host/FileSystem.h
The file was modifiedlldb/tools/driver/Options.td
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ModuleDependencyCollector.h
The file was modifiedlldb/include/lldb/Utility/ReproducerProvider.h
The file was modifiedlldb/tools/driver/Driver.cpp
The file was modifiedlldb/source/Commands/CommandObjectReproducer.cpp
The file was modifiedlldb/test/Shell/Reproducer/TestCaptureEnvOverride.test
The file was modifiedlldb/source/Host/common/FileSystem.cpp
The file was modifiedlldb/include/lldb/Utility/Reproducer.h
Commit 089c1ccd6d26d2cf4067a16dec4c4527c8536039 by flo
[AArch64] Add vector compare/select cost-model tests.
The file was addedllvm/test/Analysis/CostModel/AArch64/vector-select.ll
Commit 9f4b888c32161ac32cd10df3897e35bf66bba396 by Louis Dionne
[libc++] NFC: Remove unused includes from the test suite

- <iostream> include from a <chrono> test
- <regex> include from the filesystem tests
The file was modifiedlibcxx/test/std/utilities/time/time.cal/time.cal.ym/time.cal.ym.nonmembers/minus.pass.cpp
The file was modifiedlibcxx/test/support/filesystem_test_helper.h
Commit b16f6324db21f778aba9cb62452010aab13c2d1f by ezhulenev
[mlir] Link with pthreads in AsyncRuntime

AsyncRuntime must be explicitly linked with LLVM pthreads

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D89983
The file was modifiedmlir/lib/ExecutionEngine/CMakeLists.txt
The file was modifiedmlir/lib/ExecutionEngine/AsyncRuntime.cpp
Commit 9497e2e7d88f6d38005d3c419cf649527cbec5d1 by michael.hliao
Fix shared build. NFC.
The file was modifiedllvm/unittests/Target/AMDGPU/CMakeLists.txt
Commit 3827effe3ab541a3357c417c676939826fc5b4ac by akhuang
[Asan][Windows] Fix asan stack traces on Windows.

While implementing inline stack traces on Windows I noticed that the stack
traces in many asan tests included an inlined frame that shouldn't be there.

Currently we get the PC and then do a stack unwind and use the PC to
find the beginning of the stack trace.
In the failing tests the first thing in the stack trace is inside an inline
call site that shouldn't be in the stack trace, so replace it with the PC.

Differential Revision: https://reviews.llvm.org/D89996
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_unwind_win.cpp
Commit 2b7dfdd319c0e6e3a8934bcf4019f402d63f7539 by richard
Fix typo in diagnostic name.

No functionality change intended.
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticASTKinds.td
Commit b22e2e4c6e420b78a8a4c307f0cf002f51af9590 by joker.eph
Remove global dialect registration

This has been deprecated for >1month now and removal was announced in:

https://llvm.discourse.group/t/rfc-revamp-dialect-registration/1559/11

Differential Revision: https://reviews.llvm.org/D86356
The file was modifiedmlir/lib/Support/MlirOptMain.cpp
The file was modifiedmlir/unittests/IR/DialectTest.cpp
The file was modifiedmlir/unittests/SDBM/SDBMTest.cpp
The file was modifiedmlir/unittests/TableGen/OpBuildGen.cpp
The file was modifiedmlir/unittests/TableGen/StructsGenTest.cpp
The file was modifiedmlir/tools/mlir-reduce/mlir-reduce.cpp
The file was modifiedmlir/include/mlir/IR/MLIRContext.h
The file was modifiedmlir/tools/mlir-rocm-runner/mlir-rocm-runner.cpp
The file was modifiedmlir/test/EDSC/builder-api-test.cpp
The file was modifiedmlir/examples/toy/Ch7/toyc.cpp
The file was modifiedmlir/lib/IR/Dialect.cpp
The file was modifiedmlir/lib/IR/MLIRContext.cpp
The file was modifiedmlir/unittests/Dialect/SPIRV/DeserializationTest.cpp
The file was modifiedmlir/examples/toy/Ch6/toyc.cpp
The file was modifiedmlir/lib/ExecutionEngine/JitRunner.cpp
The file was modifiedmlir/tools/mlir-opt/mlir-opt.cpp
The file was modifiedmlir/tools/mlir-cuda-runner/mlir-cuda-runner.cpp
The file was modifiedmlir/unittests/Pass/AnalysisManagerTest.cpp
The file was modifiedmlir/unittests/IR/AttributeTest.cpp
The file was modifiedmlir/tools/mlir-vulkan-runner/mlir-vulkan-runner.cpp
The file was modifiedmlir/examples/toy/Ch3/toyc.cpp
The file was modifiedmlir/examples/toy/Ch4/toyc.cpp
The file was modifiedmlir/unittests/Dialect/SPIRV/SerializationTest.cpp
The file was modifiedmlir/examples/standalone/standalone-opt/standalone-opt.cpp
The file was modifiedmlir/lib/CAPI/IR/IR.cpp
The file was modifiedmlir/test/SDBM/sdbm-api-test.cpp
The file was modifiedmlir/lib/Translation/Translation.cpp
The file was modifiedmlir/include/mlir/IR/Dialect.h
The file was modifiedmlir/examples/toy/Ch5/toyc.cpp
The file was modifiedmlir/include/mlir/InitAllDialects.h
The file was modifiedmlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-gen.cpp
The file was modifiedmlir/unittests/IR/OperationSupportTest.cpp
The file was modifiedmlir/lib/Dialect/SPIRV/Serialization/TranslateRegistration.cpp
The file was modifiedmlir/tools/mlir-cpu-runner/mlir-cpu-runner.cpp
The file was modifiedmlir/examples/toy/Ch2/toyc.cpp
The file was modifiedmlir/unittests/Dialect/Quant/QuantizationUtilsTest.cpp
Commit b6204b995eaa2ec771f947a2109bd2ef338e688c by ravishankarm
[mlir][Vector] Introduce UnrollVectorOptions to control vector unrolling.

The current pattern for vector unrolling takes the native shape to
unroll to at pattern instantiation time, but the native shape might
defer based on the types of the operand. Introduce a
UnrollVectorOptions struct which allows for using a function that will
return the native shape based on the operation. Move other options of
unrolling like `filterConstraints` into this struct.

Differential Revision: https://reviews.llvm.org/D89744
The file was modifiedmlir/include/mlir/Dialect/Vector/VectorTransforms.h
The file was addedmlir/test/Dialect/Vector/vector-unroll-options.mlir
The file was modifiedmlir/test/lib/Transforms/TestVectorTransforms.cpp
Commit b6b589ca84841f7ef4ac8c67570ec1e43b29aa76 by psteinfeld
[flang] An erroneous type bound procedure was causing a call to CHECK()

I added a test to verify that the associated symbol did not have errors before
doing the anaylsis of a call to a component ref along with a test that
triggers the original problem.

Differential Revision: https://reviews.llvm.org/D90074
The file was modifiedflang/test/Semantics/bindings01.f90
The file was modifiedflang/lib/Semantics/expression.cpp
Commit 6ec2c5e402a724ba99bce82a9cac7a3006d660f4 by apilipenko
GC-parseable element atomic memcpy/memmove

This change introduces a GC parseable lowering for element atomic
memcpy/memmove intrinsics. This way runtime can provide an
implementation which can take a safepoint during copy operation.

See "GC-parseable element atomic memcpy/memmove" thread on llvm-dev
for the background and details:
https://groups.google.com/g/llvm-dev/c/NnENHzmX-b8/m/3PyN8Y2pCAAJ

Differential Revision: https://reviews.llvm.org/D88861
The file was modifiedllvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
The file was addedllvm/test/Transforms/RewriteStatepointsForGC/unordered-atomic-memcpy-no-deopt.ll
The file was addedllvm/test/Transforms/RewriteStatepointsForGC/unordered-atomic-memcpy.ll
The file was modifiedllvm/docs/LangRef.rst
The file was modifiedllvm/docs/Statepoints.rst
Commit f98bb414f58ee447481e4de19625baff22718343 by aaron.smith
Add a mlir natvis file for debugging with Visual Studio

Differential Revision: https://reviews.llvm.org/D89601
The file was addedmlir/utils/MLIRVisualizers/mlir.natvis
Commit a1cc274cb35fae64399158f059e67a601caa10f1 by mcinally
[SVE] Lower fixed length VECREDUCE_SEQ_FADD operation

Differential Revision: https://reviews.llvm.org/D89162
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
The file was modifiedllvm/test/CodeGen/AArch64/sve-fixed-length-fp-reduce.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
Commit 6a72635881e98dbac458323fe9666af6507a09ec by joker.eph
Revert "Remove global dialect registration"

This reverts commit b22e2e4c6e420b78a8a4c307f0cf002f51af9590.

Investigating broken builds
The file was modifiedmlir/include/mlir/InitAllDialects.h
The file was modifiedmlir/lib/CAPI/IR/IR.cpp
The file was modifiedmlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-gen.cpp
The file was modifiedmlir/unittests/SDBM/SDBMTest.cpp
The file was modifiedmlir/examples/toy/Ch2/toyc.cpp
The file was modifiedmlir/test/SDBM/sdbm-api-test.cpp
The file was modifiedmlir/tools/mlir-cuda-runner/mlir-cuda-runner.cpp
The file was modifiedmlir/examples/toy/Ch3/toyc.cpp
The file was modifiedmlir/tools/mlir-rocm-runner/mlir-rocm-runner.cpp
The file was modifiedmlir/tools/mlir-vulkan-runner/mlir-vulkan-runner.cpp
The file was modifiedmlir/unittests/IR/DialectTest.cpp
The file was modifiedmlir/examples/toy/Ch6/toyc.cpp
The file was modifiedmlir/unittests/Dialect/SPIRV/DeserializationTest.cpp
The file was modifiedmlir/lib/Support/MlirOptMain.cpp
The file was modifiedmlir/tools/mlir-cpu-runner/mlir-cpu-runner.cpp
The file was modifiedmlir/unittests/Dialect/SPIRV/SerializationTest.cpp
The file was modifiedmlir/unittests/TableGen/OpBuildGen.cpp
The file was modifiedmlir/examples/toy/Ch4/toyc.cpp
The file was modifiedmlir/unittests/IR/OperationSupportTest.cpp
The file was modifiedmlir/tools/mlir-reduce/mlir-reduce.cpp
The file was modifiedmlir/unittests/Pass/AnalysisManagerTest.cpp
The file was modifiedmlir/unittests/Dialect/Quant/QuantizationUtilsTest.cpp
The file was modifiedmlir/examples/standalone/standalone-opt/standalone-opt.cpp
The file was modifiedmlir/examples/toy/Ch7/toyc.cpp
The file was modifiedmlir/include/mlir/IR/MLIRContext.h
The file was modifiedmlir/lib/Translation/Translation.cpp
The file was modifiedmlir/include/mlir/IR/Dialect.h
The file was modifiedmlir/lib/ExecutionEngine/JitRunner.cpp
The file was modifiedmlir/lib/IR/MLIRContext.cpp
The file was modifiedmlir/examples/toy/Ch5/toyc.cpp
The file was modifiedmlir/tools/mlir-opt/mlir-opt.cpp
The file was modifiedmlir/unittests/TableGen/StructsGenTest.cpp
The file was modifiedmlir/lib/Dialect/SPIRV/Serialization/TranslateRegistration.cpp
The file was modifiedmlir/lib/IR/Dialect.cpp
The file was modifiedmlir/test/EDSC/builder-api-test.cpp
The file was modifiedmlir/unittests/IR/AttributeTest.cpp
Commit cb9b9842d31d6082c6a2259a64eb5d47bd680d32 by richard
PR47954 / DR2126: permit temporary objects that are lifetime-extended by
variables that are usable in constant expressions to themselves be
usable in constant expressions.
The file was modifiedclang/test/CXX/drs/dr21xx.cpp
The file was modifiedclang/www/cxx_dr_status.html
The file was modifiedclang/include/clang/AST/ExprCXX.h
The file was modifiedclang/test/SemaCXX/constant-expression-cxx11.cpp
The file was modifiedclang/lib/AST/ExprCXX.cpp
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/test/CodeGenCXX/const-init-cxx11.cpp
Commit fe9a7d962781a15a7823194a3f0e5d841e7af80b by evandro.menezes
[RISCV] Use the commercial name for scheduling model (NFC)

Use the commercial name for the scheduling model for the SiFive 7 Series.
The file was addedllvm/lib/Target/RISCV/RISCVSchedSiFive7.td
The file was removedllvm/lib/Target/RISCV/RISCVSchedBullet.td
The file was modifiedllvm/lib/Target/RISCV/RISCV.td
Commit 71e1a56de153536b9ff655fe740ccbf3f6b1faf0 by Akira
[CodeGen] Emit destructor calls to destruct non-trivial C struct
temporaries created by conditional and assignment operators

rdar://problem/64989559

Differential Revision: https://reviews.llvm.org/D83448
The file was modifiedclang/test/CodeGenObjC/strong-in-c-struct.m
The file was modifiedclang/lib/CodeGen/CGExprAgg.cpp
Commit 77cbf2595331b11018c2cffb76eb5b8db69f4577 by alexshap
[llvm-install-name-tool] Add -prepend_rpath option

This diff adds the option -prepend_rpath which inserts an rpath as
the first rpath in the binary.

Test plan: make check-all

Differential revision: https://reviews.llvm.org/D89605
The file was modifiedllvm/tools/llvm-objcopy/CopyConfig.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/InstallNameToolOpts.td
The file was modifiedllvm/tools/llvm-objcopy/CopyConfig.h
The file was addedllvm/test/tools/llvm-objcopy/MachO/install-name-tool-prepend-rpath.test
Commit 245d71bae5a9cad472d5ec4cad67a9be0e0d261b by aeubanks
[test] Simplify pr33641_remove_arg_dbgvalue.ll

This makes it pass under the NPM.
The legacy PM pass ran passes on SCCs in a different order, causing
argpromotion to not trigger on @bar().

Reviewed By: rnk

Differential Revision: https://reviews.llvm.org/D89889
The file was modifiedllvm/test/Transforms/ArgumentPromotion/pr33641_remove_arg_dbgvalue.ll
Commit ba22c403b2b316d59902ba55e8774a7a34d2d056 by aeubanks
[Inliner][NPM] Properly pass callee AAResults

Fixes noalias-calls.ll under NPM.

Differential Revision: https://reviews.llvm.org/D89592
The file was modifiedllvm/lib/Transforms/IPO/Inliner.cpp
The file was modifiedllvm/test/Transforms/Inline/noalias-calls.ll
Commit baffd052b0f7c6ce52cf958e39726545d8edddf2 by aeubanks
[StructurizeCFG][NewPM] Port -structurizecfg to NPM

This doesn't support -structurizecfg-skip-uniform-regions since that
would require porting LegacyDivergenceAnalysis.

The NPM doesn't support adding a non-analysis pass as a dependency of
another, so I had to add -lowerswitch to some tests or pin them to the
legacy PM.

This is the only RegionPass in tree, so I simply copied the logic for
finding all Regions from the legacy PM's RGManager into
StructurizeCFG::run().

Reviewed By: arsenm

Differential Revision: https://reviews.llvm.org/D89026
The file was modifiedllvm/include/llvm/InitializePasses.h
The file was modifiedllvm/lib/Transforms/Scalar/StructurizeCFG.cpp
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/lib/Transforms/Scalar/Scalar.cpp
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/test/Transforms/StructurizeCFG/interleaved-loop-order.ll
The file was modifiedllvm/test/Transforms/StructurizeCFG/nested-loop-order.ll
The file was modifiedllvm/test/Transforms/StructurizeCFG/AMDGPU/uniform-regions.ll
The file was addedllvm/include/llvm/Transforms/Scalar/StructurizeCFG.h
The file was modifiedllvm/test/Transforms/StructurizeCFG/switch.ll
Commit eeba325b12c4e40ca1ce09788fc5c7dd115fa904 by tejohnson
[MemProf] Attempt to debug avr bot failure

Reverts the XFAIL added in b67a2aef8ac9fd9c10666a05d72d909315140dcb,
which had no effect.

Adjust the test to make sure all output is dumped to stderr, so that
hopefully I can get a better idea of where/why this is failing.

Remove some redundant checking while here.
The file was modifiedcompiler-rt/test/memprof/TestCases/log_path_test.cpp
Commit dc62d5ec97261429b553f2d6b45d96a137211f14 by mmoroz
[libFuzzer] Added -print_full_coverage flag.

-print_full_coverage=1 produces a detailed branch coverage dump when run on a single file.
Uses same infrastructure as -print_coverage flag, but prints all branches (regardless of coverage status) in an easy-to-parse format.
Usage: For internal use with machine learning fuzzing models which require detailed coverage information on seed files to generate mutations.

Differential Revision: https://reviews.llvm.org/D85928
The file was addedcompiler-rt/test/fuzzer/full-coverage.test
The file was modifiedcompiler-rt/lib/fuzzer/FuzzerDriver.cpp
The file was modifiedcompiler-rt/lib/fuzzer/FuzzerTracePC.cpp
The file was modifiedcompiler-rt/lib/fuzzer/FuzzerTracePC.h
The file was modifiedcompiler-rt/lib/fuzzer/FuzzerOptions.h
The file was addedcompiler-rt/test/fuzzer/dso-cov-input.txt
The file was modifiedcompiler-rt/lib/fuzzer/FuzzerFlags.def
The file was modifiedcompiler-rt/lib/fuzzer/FuzzerLoop.cpp
The file was modifiedcompiler-rt/lib/fuzzer/FuzzerInternal.h
Commit 1b5baa42bc93432e6ae33e0a0fdce4d3e7c98dcb by kparzysz
[Hexagon] Handle selection between HVX vector predicates

Make sure that (select i1 q0 q1) is handled properly.
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.h
The file was addedllvm/test/CodeGen/Hexagon/autohvx/isel-q-legalization-loop.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonPatternsHVX.td
The file was addedllvm/test/CodeGen/Hexagon/autohvx/isel-select-q.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
Commit ccca93b5a2cb284dcdfecd34db1ca14632d6a1c1 by richard
Don't allow structured binding declarations to decompose a
lambda-expression's captures.

The built-in structured binding rules for classes require that all
fields can be accessed by name, and the fields introduced for lambda
captures are unnamed, so decomposing a capturing lambda is ill-formed.
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was modifiedclang/test/SemaCXX/cxx1z-decomposition.cpp
Commit 48d8af98251613261805891a3476e9fb01932f43 by a20012251
[intel-pt] Disable/Enable tracing to guarantee the trace is correct

As mentioned in the comment inside the code, the Intel documentation
states that the internal CPU buffer is flushed out to RAM only when tracing is
disabled. Otherwise, the buffer on RAM might be stale.

This diff disables tracing when the trace buffer is going to be read. This is a
quite safe operation, as the reading is done when the inferior is paused at a
breakpoint, so we are not losing any packets because there's no code being
executed.

After the reading is finished, tracing is enabled back.

It's a bit hard to write a test for this now, but Greg Clayton and I will
refactor the PT support and writing tests for it will be easier. However
I tested it manually by doing a script that automates
the following flow

```
(lldb) b main
Breakpoint 1: where = a.out`main + 15 at main.cpp:4:7, address = 0x000000000040050f
(lldb) r
Process 3078226 stopped
* thread #1, name = 'a.out', stop reason = breakpoint 1.1
frame #0: 0x000000000040050f a.out`main at main.cpp:4:7
(lldb) processor-trace start
(lldb) b 5
Breakpoint 2: where = a.out`main + 22 at main.cpp:5:12, address = 0x0000000000400516
(lldb) c
Process 3078226 resuming
Process 3078226 stopped
* thread #1, name = 'a.out', stop reason = breakpoint 2.1
frame #0: 0x0000000000400516 a.out`main at main.cpp:5:12
(lldb) processor-trace show-instr-log
thread #1: tid=3078226
0x40050f <+15>: movl $0x0, -0x8(%rbp)

>>> Before, some runs of the script up to this point lead to empty traces

(lldb) b 6
Breakpoint 3: where = a.out`main + 42 at main.cpp:6:14, address = 0x000000000040052a
(lldb) c
Process 3092991 resuming
Process 3092991 stopped
* thread #1, name = 'a.out', stop reason = breakpoint 3.1
frame #0: 0x000000000040052a a.out`main at main.cpp:6:14
(lldb) processor-trace show-instr-log thread #1: tid=3092991
0x40050f <+15>: movl $0x0, -0x8(%rbp)
0x400516 <+22>: movl $0x0, -0xc(%rbp)
0x40051d <+29>: cmpl $0x2710, -0xc(%rbp) ; imm = 0x2710
0x400524 <+36>: jge 0x400546 ; <+70> at main.cpp
0x400524 <+36>: jge 0x400546 ; <+70> at main.cpp

>>> The trace was re-enabled correctly and includes the instruction of the
first reading.
```
Those instructions correspond to these lines
```
3 int main() {
4 int z = 0;
5 for (int i = 0; i < 10000; i++) {
6 z += fun(z)
...
```

Differential Revision: https://reviews.llvm.org/D85241
The file was modifiedlldb/source/Plugins/Process/Linux/ProcessorTrace.cpp
Commit 035a6b95c3125e1b044d1b43f819fac93a56dc5c by joker.eph
Fix a few warnings from GCC (NFC)
The file was modifiedmlir/lib/Transforms/Bufferize.cpp
The file was modifiedmlir/include/mlir/CAPI/IR.h
The file was modifiedmlir/lib/TableGen/TypeDef.cpp
Commit 3a4b832b1ba8a58cfd12d66474ccb0cb322c24c4 by joker.eph
Topologically sort the library to link to mlir-cpu-runner which is required with some linkers like BFD (NFC)
The file was modifiedmlir/tools/mlir-cpu-runner/CMakeLists.txt
Commit e7021232e66f4a8e21f2bcd77d9841d1fb414245 by joker.eph
Remove global dialect registration

This has been deprecated for >1month now and removal was announced in:

https://llvm.discourse.group/t/rfc-revamp-dialect-registration/1559/11

Differential Revision: https://reviews.llvm.org/D86356
The file was modifiedmlir/unittests/Dialect/SPIRV/DeserializationTest.cpp
The file was modifiedmlir/unittests/TableGen/StructsGenTest.cpp
The file was modifiedmlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-gen.cpp
The file was modifiedmlir/examples/toy/Ch2/toyc.cpp
The file was modifiedmlir/lib/Dialect/SPIRV/Serialization/TranslateRegistration.cpp
The file was modifiedmlir/examples/toy/Ch5/toyc.cpp
The file was modifiedmlir/include/mlir/IR/Dialect.h
The file was modifiedmlir/lib/IR/MLIRContext.cpp
The file was modifiedmlir/unittests/TableGen/OpBuildGen.cpp
The file was modifiedmlir/lib/ExecutionEngine/JitRunner.cpp
The file was modifiedmlir/unittests/Dialect/SPIRV/SerializationTest.cpp
The file was modifiedmlir/examples/toy/Ch7/toyc.cpp
The file was modifiedmlir/tools/mlir-vulkan-runner/mlir-vulkan-runner.cpp
The file was modifiedmlir/tools/mlir-cpu-runner/mlir-cpu-runner.cpp
The file was modifiedmlir/test/SDBM/sdbm-api-test.cpp
The file was modifiedmlir/tools/mlir-reduce/mlir-reduce.cpp
The file was modifiedmlir/unittests/SDBM/SDBMTest.cpp
The file was modifiedmlir/examples/toy/Ch6/toyc.cpp
The file was modifiedmlir/lib/IR/Dialect.cpp
The file was modifiedmlir/tools/mlir-cuda-runner/mlir-cuda-runner.cpp
The file was modifiedmlir/unittests/IR/DialectTest.cpp
The file was modifiedmlir/examples/toy/Ch3/toyc.cpp
The file was modifiedmlir/tools/mlir-rocm-runner/mlir-rocm-runner.cpp
The file was modifiedmlir/unittests/Dialect/Quant/QuantizationUtilsTest.cpp
The file was modifiedmlir/examples/standalone/standalone-opt/standalone-opt.cpp
The file was modifiedmlir/lib/CAPI/IR/IR.cpp
The file was modifiedmlir/unittests/IR/AttributeTest.cpp
The file was modifiedmlir/include/mlir/InitAllDialects.h
The file was modifiedmlir/lib/Translation/Translation.cpp
The file was modifiedmlir/tools/mlir-opt/mlir-opt.cpp
The file was modifiedmlir/unittests/IR/OperationSupportTest.cpp
The file was modifiedmlir/examples/toy/Ch4/toyc.cpp
The file was modifiedmlir/lib/Support/MlirOptMain.cpp
The file was modifiedmlir/include/mlir/IR/MLIRContext.h
The file was modifiedmlir/test/EDSC/builder-api-test.cpp
The file was modifiedmlir/unittests/Pass/AnalysisManagerTest.cpp
Commit 8f492f646781ed6c894775f95846520728d9119e by joker.eph
Remove unused verifyRegStateMapping() function in RegAllocFast (NFC)

This fixes compiler warning when building with assertions.
The file was modifiedllvm/lib/CodeGen/RegAllocFast.cpp
Commit a16cbdd676bb40e7f1c0e3f87a61023331002508 by hoy
[AutoFDO] Remove a broken assert in merging inlinee samples

Duplicated callsites share the same callee profile if the original callsite was inlined. The sharing also causes the profile of callee's callee to be shared. This breaks the assert introduced ealier by D84997 in a tricky way.

To illustrate, I'm using an abstract example. Say we have three functions `A`, `B` and `C`. A calls B twice and B calls C once. Some optimize performed prior to the sample profile loader duplicates first callsite to `B` and the program may look like

```
A()
{
  B();  // with nested profile B1 and C1
  B();  // duplicated, with nested profile B1 and C1
  B();  // with nested profile B2 and C2
}
```

For some reason, the sample profile loader inliner then decides to only inline the first callsite in `A` and transforms `A` into

```
A()
{
  C();  // with nested profile C1
  B();  // duplicated, with nested profile B1 and C1
  B();  // with nested profile B2 and C2.
}
```

Here is what happens next:

1. Failing to inline the callsite `C()` results in `C1`'s samples returned to `C`'s base (outlined) profile. In the meantime, `C1`'s head samples are updated to `C1`'s entry sample. This also affects the profile of the middle callsite which shares `C1` with the first callsite.
2. Failing to inline the middle callsite results in `B1` returned to `B`'s base profile, which in turn will cause `C1` merged into `B`'s base profile. Note that the nest `C` profile in `B`'s base has a non-zero head sample count now. The value actually equals to `C1`'s entry count.
3. Failing to inline last callsite results in `B2` returned to `B`'s base profile. Note that the nested `C` profile in `B`'s base now has an entry count equal to the sum of that of `C1` and `C2`, with the head count equal to that of `C1`. This will trigger the assert later on.
        4. Compiling `B` using `B`'s base profile. Failing to inline `C` there triggers the returning of the nested `C` profile. Since the nested `C` profile has a non-zero head count, the returning doesn't go through. Instead, the assert goes off.

It's good that `C1` is only returned once, based on using a non-zero head count to ensure an inline profile is only returned once. However C2 is never returned. While it seems hard to solve this perfectly within the current framework, I'm just removing the broken assert. This should be reasonably fixed by the upcoming CSSPGO work where counts returning is based on context-sensitivity and a distribution factor for callsite probes.

The simple example is extracted from one of our internal services. In reality, why the original callsite `B()` and duplicate one having different inline behavior is a magic. It has to do with imperfect counts in profile and extra complicated inlining that makes the hotness for them different.

Reviewed By: wenlei

Differential Revision: https://reviews.llvm.org/D90056
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
Commit 81ac81f8644a7c6ed19bea95385794f7870d0fda by Duncan P. N. Exon Smith
FileManager: Reorder declarations of FileEntry and FileEntryRef, NFC

This reduces noise in a future patch, but shouldn't change anything
otherwise.

Differential Revision: https://reviews.llvm.org/D89521
The file was modifiedclang/include/clang/Basic/FileManager.h
Commit 4bde9aa9644a54e6e650809d8460cff0b9e17c2a by joker.eph
Add CMake dependency from MLIRJitRunner on all dialects

This dependency was already existing indirectly, but is now more direct
since the registration relies on a inline function. This fixes the
link of the tools with BFD.
The file was modifiedmlir/lib/ExecutionEngine/CMakeLists.txt
The file was modifiedmlir/tools/mlir-cpu-runner/CMakeLists.txt
Commit 434f3774f629f5896614e9efb4eda82d813402ed by Duncan P. N. Exon Smith
clangd: Stop calling FileEntryRef::FileEntryRef

In `ReplayPreamble::replay`, use `getFileRef` instead of `getFile`, and
then use that `FileEntryRef` later to avoid needing
`FileEntryRef::FileEntryRef`. The latter is going to become private to
`FileManager` in a later commit.
The file was modifiedclang-tools-extra/clangd/ParsedAST.cpp
Commit 0ec5baa1324d61e79bc21a1307ea52aa43a12352 by dblaikie
llvm-dwarfdump: Support verbose printing DW_OP_convert to print the CU local offset before the resolved absolute offset
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp
The file was modifiedllvm/test/DebugInfo/X86/convert-debugloc.ll
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFExpression.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFExpression.cpp
The file was modifiedllvm/unittests/DebugInfo/DWARF/DWARFDebugFrameTest.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h
The file was modifiedllvm/tools/llvm-readobj/DwarfCFIEHPrinter.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugLoc.cpp
Commit 74910cbbd8d1df824ab1d5e742c50641d0fee907 by Duncan P. N. Exon Smith
HeaderSearch: Simplify use of FileEntryRef in HeaderSearch::LookupFile, NFC

Simplify `HeaderSearch::LookupFile`. Instead of deconstructing a
`FileEntryRef` into a name and `FileEntry` and then rebuilding it later,
use it as is. This helps to unblock making the constructor of
`FileEntryRef` private to `FileManager`.

Differential Revision:
The file was modifiedclang/lib/Lex/HeaderSearch.cpp
Commit 776a15d8aecad2768f1391092099e9b173b8148b by Vitaly Buka
[NFC][UBSAN] Avoid "not FileCheck" in tests

It's not clear if "not FileCheck" succeeded because
input is empty or because input does not match "CHECK:"
pattern.
The file was modifiedcompiler-rt/test/ubsan/TestCases/ImplicitConversion/unsigned-integer-truncation.c
The file was modifiedcompiler-rt/test/ubsan/TestCases/ImplicitConversion/integer-sign-change-blacklist.c
The file was modifiedcompiler-rt/test/ubsan/TestCases/ImplicitConversion/signed-integer-truncation-blacklist.c
The file was modifiedcompiler-rt/test/ubsan/TestCases/ImplicitConversion/signed-integer-truncation-or-sign-change-blacklist.c
The file was modifiedcompiler-rt/test/ubsan/TestCases/ImplicitConversion/unsigned-integer-truncation-blacklist.c
Commit 0b057320453b90bb409f55f74386b6841546d48a by dblaikie
fix lldb for recent libDebugInfoDWARF API change
The file was modifiedlldb/source/Expression/DWARFExpression.cpp
The file was modifiedlldb/source/Symbol/UnwindPlan.cpp
The file was modifiedlldb/unittests/Symbol/PostfixExpressionTest.cpp
The file was modifiedlldb/unittests/SymbolFile/NativePDB/PdbFPOProgramToDWARFExpressionTests.cpp
Commit e92eeaf3c21923151cf86c706e396b613145f142 by zequanwu
[llvm-cov] don't include all source files when provided source files are filtered out

When all provided source files are filtered out either due to `--ignore-filename-regex` or not part of binary, don't generate coverage reults for all source files. Because if users want to generate coverage results for all source files, they don't even need to provid selected source files or `--ignore-filename-regex`.

Differential Revision: https://reviews.llvm.org/D89359
The file was modifiedllvm/test/tools/llvm-cov/sources-specified.test
The file was modifiedllvm/test/tools/llvm-cov/warnings.h
The file was modifiedllvm/tools/llvm-cov/CodeCoverage.cpp
The file was modifiedllvm/test/tools/llvm-cov/native_separators.c
The file was modifiedllvm/test/tools/llvm-cov/universal_bin_wrapping_archives.test
Commit b57937861f68305068d8a35154811b4303ce52e5 by llvm-project
[flang][windows] Support platform-specific path separator.

Remove the assumption that the path separator is `/`. Use functions from `llvm::sys::path` instead.

Reviewed By: isuruf, klausler

Differential Revision: https://reviews.llvm.org/D89369
The file was modifiedflang/lib/Parser/source.cpp
The file was modifiedflang/test/Semantics/getsymbols02.f90
Commit 0b671a44ad2d606647aa14d5782425b39aed9271 by llvm-project
[flang][msvc] Fix lambda capture ambiguity. NFC.

Patch D88695 introduces a new local variable inside a lambda with the same name as a variable outside of it. In some of the if constexpr regions, msvc prioritizes the outer declaration and emits the error.
```
C:\Users\meinersbur\src\llvm-project\flang\lib\Evaluate\fold-implementation.h(1200): error C3493: 'context' cannot be implicitly captured because no default capture mode has been specified
```

This is fixed by giving the inner variable a different name.

Reviewed By: klausler

Differential Revision: https://reviews.llvm.org/D89367
The file was modifiedflang/lib/Evaluate/fold-implementation.h
Commit fa66bcf4bc9467514dddacdba711a42e0a83cf9d by peter
hwasan: Disable operator {new,delete} interceptors when interceptors are disabled.

Differential Revision: https://reviews.llvm.org/D89827
The file was modifiedcompiler-rt/lib/hwasan/hwasan.h
Commit 21d64c32eca63e98a94675cfc074f82371cadfe7 by Vitaly Buka
[NFC][UBSAN] Refine CHECK pattern in test

As-is it was failed by unrelated linker warning with filename in the
output.
The file was modifiedcompiler-rt/test/ubsan_minimal/TestCases/alignment-assumption.c
Commit 64c4dac60e3af340c0e97ce213206472463c4873 by medismail.bennani
[llvm/DebugInfo] Emit DW_OP_implicit_value when tuning for LLDB

This patch enables emitting DWARF `DW_OP_implicit_value` opcode when
tuning debug information for LLDB (`-debugger-tune=lldb`).

This will also propagate to Darwin platforms, since they use LLDB tuning
as a default.

rdar://67406059

Differential Revision: https://reviews.llvm.org/D90001

Signed-off-by: Med Ismail Bennani <medismail.bennani@gmail.com>
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
The file was modifiedllvm/test/DebugInfo/X86/implicit_value-float.ll
The file was modifiedllvm/test/DebugInfo/X86/stack-value-piece.ll
The file was modifiedllvm/test/DebugInfo/X86/implicit_value-double.ll
Commit d590c854303959bcaa78746a62b9a8f81583c111 by llvm-project
[flang] Fix pimpl idiom for IntrinsicProcTable.

The class IntrinsicProcTable uses the pimpl idiom and manages its own pointer-to-implementation.  However, it violates the rule-of-five and does not implement a move-constructor or assignment-operator. Due to differences between compilers in implementation copy elision, these may or may not be used. Due to the missing user implementation for resource handling, using the results in runtime errors.

Fix my using `std::unique_ptr` instead of custom resource management.

Reviewed By: klausler

Differential Revision: https://reviews.llvm.org/D88794
The file was modifiedflang/include/flang/Common/idioms.h
The file was modifiedflang/lib/Evaluate/intrinsics.cpp
The file was modifiedflang/include/flang/Evaluate/intrinsics.h
Commit bf6518a806acc3fc20e5413586607d045b7c2732 by Tony.Tye
[AMDGPU] Cleanup AMDGPUUsage.rst

- Layout and typo improvements.
- Add memory spaces section.
- reStructure syntax fixes.

Differential Revision: https://reviews.llvm.org/D90002
The file was modifiedllvm/docs/AMDGPUUsage.rst
Commit 84ce6b9991bb6db1c37897aca55978a377ce931a by martin
[lldb] Fix building with GCC 7. NFC.
The file was modifiedlldb/source/Target/Target.cpp
Commit d96cb52830fd7109cead60956a9b108935988e5c by mgorny
[lldb] [Process/NetBSD] Use XStateRegSet for all FPU registers

Unify the x86 regset API to use XStateRegSet for all FPU registers,
therefore eliminating the legacy API based on FPRegSet.  This makes
the code a little bit simpler but most notably, it provides future
compatibility for register caching.

Since the NetBSD kernel takes care of providing compatibility with
pre-XSAVE processors, PT_{G,S}ETXSTATE can be used on systems supporting
only FXSAVE or even plain FSAVE (and unlike PT_{G,S}ETXMMREGS, it
clearly indicates that XMM registers are not supported).

Differential Revision: https://reviews.llvm.org/D90034
The file was modifiedlldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD_x86_64.h
The file was modifiedlldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD_x86_64.cpp
Commit 7c026a83ee903f00cb0a2827519ccd6f16b6ed03 by paulsson
[SystemZ] Define MaxInstLength to have the value of 6.

This value had the default value of 4 which caused branch relaxation to fail.

Review: Ulrich Weigand

Differential Revision: https://reviews.llvm.org/D90065
The file was modifiedllvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmInfo.cpp
The file was addedllvm/test/CodeGen/SystemZ/Large/branch-range-13.py
Commit d09c5921421c362ecc24c9a804e87c2bc1d48997 by nikita.ppv
[BasicAA] Fix caching in the presence of phi cycles

Any time we insert a block into VisitedPhiBBs, previously cached
values may no longer be valid for the recursive alias queries. As
such, perform them using an empty AAQueryInfo.

Note that if we recurse to the same phi, the block will already
be inserted, so we reuse the old AAQueryInfo, and thus still
protect against infinite recursion.

This problem can appear with with an without BatchAA, but is more
likely to occur with BatchAA, as more values are cached.

Differential Revision: https://reviews.llvm.org/D90066
The file was modifiedllvm/lib/Analysis/BasicAliasAnalysis.cpp
The file was modifiedllvm/unittests/Analysis/AliasAnalysisTest.cpp
Commit 1a7a9efec3cf872dcf3e1a6e6fe39e797c4d9fc6 by nikita.ppv
[BasicAA] Avoid duplicate cache lookup (NFCI)

Rather than performing the cache lookup with both possible orders
for the locations, use the same canonicalization as the other
AliasCache lookups in BasicAA.
The file was modifiedllvm/lib/Analysis/BasicAliasAnalysis.cpp
Commit 62b17a76971cd17c1ebd4ce00a536b0b74af98b2 by llvm-dev
[LegalizeTypes] Legalize vector rotate operations

Lower vector rotate operations as long as the legalization occurs outside of LegalizeVectorOps.

This fixes https://bugs.llvm.org/show_bug.cgi?id=47320

Patch By: @rsanthir.quic (Ryan Santhirarajan)

Differential Revision: https://reviews.llvm.org/D89497
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
The file was addedllvm/test/CodeGen/AArch64/expand-vector-rot.ll
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
Commit ce356e1546c9c538134dcdfc9f2d728b8ba0719c by llvm-dev
[DAG] Add BuildVectorSDNode::getRepeatedSequence helper to recognise multi-element splat patterns

Replace the X86 specific isSplatZeroExtended helper with a generic BuildVectorSDNode method.

I've just used this to simplify the X86ISD::BROADCASTM lowering so far (and remove isSplatZeroExtended), but we should be able to use this in more places to lower to complex broadcast patterns.

Differential Revision: https://reviews.llvm.org/D87930
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAGNodes.h
The file was modifiedllvm/unittests/CodeGen/AArch64SelectionDAGTest.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Commit 310f62b4ff3ecb67cf696a977b194cceb326fa43 by llvm-dev
[InstCombine] narrowFunnelShift - fold trunc/zext or(shl(a,x),lshr(b,sub(bw,x))) -> fshl(a,b,x) (PR35155)

As discussed on PR35155, this extends narrowFunnelShift (recently renamed from narrowRotate) to support basic funnel shift patterns.

Unlike matchFunnelShift we don't include the computeKnownBits limitation as extracting the pattern from the zext/trunc layers should be a indicator of reasonable funnel shift codegen, in D89139 we demonstrated how to efficiently promote funnel shifts to wider types.

Differential Revision: https://reviews.llvm.org/D89542
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
The file was modifiedllvm/test/Transforms/InstCombine/funnel.ll
Commit b481e00bf4de31eeb20b95f83b1eae3dcdb4b79c by llvm-dev
Fix some signed/unsigned comparison gcc warnings from D87930
The file was modifiedllvm/unittests/CodeGen/AArch64SelectionDAGTest.cpp
Commit 138b9f1928454a6096bb928195bacb7ccd46fd00 by Stefan Gränitz
[JITLink][ELF] PCRel32GOTLoad relocations are resolved like regular PCRel32 ones

The difference is that the former are indirect and go to the GOT while the latter go to the target directly. This info can be used to relax indirect ones that don't need the GOT (because the target is in range). We check for this optimization beforehand. For formal correctness and to avoid confusion, we should only change the relocation kind if we actually apply the relaxation.
The file was modifiedllvm/lib/ExecutionEngine/JITLink/ELF_x86_64.cpp
Commit e9955b0843cc1e5876430f3f051494d4197419f3 by Stefan Gränitz
[jitlink][ELF] Add zero-fill blocks for symbols in section SHN_COMMON

Symbols with special section index SHN_COMMON (0xfff2) haven't been handled so far and caused an invalid section error.

This is a more or less straightforward use of the code commented out at the end of the function. I checked with the ELF spec, that the symbol value gives the alignment.

Reviewed By: lhames

Differential Revision: https://reviews.llvm.org/D89795
The file was addedllvm/test/ExecutionEngine/JITLink/X86/ELF_x86-64_common.s
The file was modifiedllvm/lib/ExecutionEngine/JITLink/ELF_x86_64.cpp
Commit 060a4fccf101b120cc9c36d4aa1041ee07044766 by tu.da.wei
[LoopVersioning] Form dedicated exits for versioned loop to preserve simplify form

The exit blocks of the versioned and non-versioned loops are not dedicated and thus the two loops are not in simplify form.
Insert dummy exit blocks after loop versioning with `formDedicatedExits()` to preserve the simplify form for subsequence passes.

Reviewed By: aeubanks

Differential Revision: https://reviews.llvm.org/D89569
The file was modifiedllvm/lib/Transforms/Utils/LoopVersioning.cpp
The file was modifiedllvm/test/Transforms/LoopDistribute/scev-inserted-runtime-check.ll
The file was modifiedllvm/test/Transforms/LoopVersioning/incorrect-phi.ll
The file was modifiedllvm/test/Transforms/LoopDistribute/outside-use.ll
The file was modifiedllvm/test/Transforms/LoopVersioning/basic.ll
The file was modifiedllvm/test/Transforms/LoopDistribute/followup.ll
The file was modifiedllvm/test/Transforms/LoopDistribute/basic-with-memchecks.ll
The file was modifiedllvm/test/Transforms/LoopVersioning/add-phi-update-users.ll
Commit 10b1a61bafba39fd7400a814a7272f41222ad579 by Stefan Gränitz
Revert "[jitlink][ELF] Add zero-fill blocks for symbols in section SHN_COMMON"

This reverts commit e9955b0843cc1e5876430f3f051494d4197419f3. Cannot reproduce the buildbot failures yet. Reverting in the meantime.
The file was modifiedllvm/lib/ExecutionEngine/JITLink/ELF_x86_64.cpp
The file was removedllvm/test/ExecutionEngine/JITLink/X86/ELF_x86-64_common.s
Commit 65a36bbc3d79f4f23843ec632e86363bc87b02d9 by tu.da.wei
[NPM] Port -loop-versioning-licm to NPM

Reviewed By: aeubanks

Differential Revision: https://reviews.llvm.org/D89371
The file was modifiedllvm/include/llvm/InitializePasses.h
The file was modifiedllvm/test/Transforms/LoopVersioningLICM/loopversioningLICM1.ll
The file was modifiedllvm/lib/Transforms/Scalar/LoopVersioningLICM.cpp
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/lib/Transforms/Scalar/Scalar.cpp
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/test/Transforms/LoopVersioningLICM/metadata.ll
The file was modifiedllvm/test/Transforms/LoopVersioningLICM/convergent.ll
The file was modifiedllvm/test/Transforms/LoopVersioningLICM/loopversioningLICM2.ll
The file was addedllvm/include/llvm/Transforms/Scalar/LoopVersioningLICM.h
The file was modifiedllvm/test/Transforms/LoopVersioningLICM/loopversioningLICM3.ll
Commit 4c5906cffd04202387d2f6b50a47d39c0e4f2c0e by andrzej.warzynski
[Flang][Driver] Add infrastructure for basic frontend actions and file I/O

This patch introduces the dependencies required to read and manage input files
provided by the command line option. It also adds the infrastructure to create
and write to output files. The output is sent to either stdout or a file
(specified with the `-o` flag).

Separately, in order to be able to test the code for file I/O, it adds
infrastructure to create frontend actions. As a basic testable example, it adds
the `InputOutputTest` FrontendAction. The sole purpose of this action is to
read a file from the command line and print it either to stdout or the output
file.  This action is run by using the `-test-io` flag also introduced in this
patch (available for `flang-new` and `flang-new -fc1`). With this patch:
```
flang-new -test-io input-file.f90
```
will read input-file.f90 and print it in the output file.

The `InputOutputTest` frontend action has been introduced primarily to
facilitate testing. It is hidden from users (i.e. it's only displayed with
`--help-hidden`). Currently Clang doesn’t have an equivalent action.

`-test-io` is used to trigger the InputOutputTest action in the Flang frontend
driver. This patch makes sure that “flang-new” forwards it to “flang-new -fc1"
by creating a preprocessor job. However, in Flang.cpp, `-test-io` is passed to
“flang-new -fc1” without `-E`. This way we make sure that the preprocessor is
_not_ run in the frontend driver. This is the desired behaviour: `-test-io`
should only read the input file and print it to the output stream.

co-authored-by: Andrzej Warzynski <andrzej.warzynski@arm.com>

Differential Revision: https://reviews.llvm.org/D87989
The file was modifiedclang/lib/Driver/Driver.cpp
The file was addedflang/test/Flang-Driver/driver-help-hidden.f90
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedflang/test/Flang-Driver/driver-help.f90
The file was modifiedflang/include/flang/Frontend/CompilerInvocation.h
The file was modifiedflang/include/flang/Frontend/CompilerInstance.h
The file was addedflang/lib/Frontend/FrontendAction.cpp
The file was modifiedflang/lib/FrontendTool/CMakeLists.txt
The file was modifiedflang/lib/Frontend/FrontendOptions.cpp
The file was addedflang/test/Frontend/multiple-input-files.f90
The file was modifiedflang/include/flang/Frontend/FrontendOptions.h
The file was modifiedflang/lib/Frontend/CompilerInstance.cpp
The file was modifiedflang/test/lit.cfg.py
The file was modifiedclang/lib/Driver/ToolChains/Flang.cpp
The file was modifiedflang/lib/Frontend/CMakeLists.txt
The file was modifiedflang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
The file was addedflang/include/flang/Frontend/FrontendActions.h
The file was addedflang/unittests/Frontend/InputOutputTest.cpp
The file was addedflang/test/Frontend/input-output-file.f90
The file was modifiedflang/test/Flang-Driver/emit-obj.f90
The file was addedflang/test/Frontend/Inputs/hello-world.f90
The file was modifiedclang/include/clang/Driver/Options.h
The file was addedflang/include/flang/Frontend/FrontendAction.h
The file was modifiedflang/unittests/Frontend/CMakeLists.txt
The file was modifiedflang/unittests/Frontend/CompilerInstanceTest.cpp
The file was modifiedclang/lib/Driver/Types.cpp
The file was modifiedflang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedflang/include/flang/FrontendTool/Utils.h
The file was addedflang/lib/Frontend/FrontendActions.cpp
The file was modifiedclang/test/Driver/immediate-options.c
The file was modifiedflang/tools/flang-driver/fc1_main.cpp
Commit b6ef40891c7fb076a2f4ea860f8ee4135ae72aae by Stefan Gränitz
[JITLink][ELF] PCRel32GOTLoad edge offset can be smaller three

Offset is 2 for MOVL instruction in test ELF_x86-64_common. This should fix the test failures.

Differential Revision: https://reviews.llvm.org/D89795
The file was modifiedllvm/lib/ExecutionEngine/JITLink/ELF_x86_64.cpp
Commit 66abe650fff6031074171ea9c7c6aa180bc2cbe9 by Stefan Gränitz
Reapply "[jitlink][ELF] Add zero-fill blocks for symbols in section SHN_COMMON"

Root cause of the test failure was fixed with:
[JITLink][ELF] PCRel32GOTLoad edge offset can be smaller three

This reverts commit 10b1a61bafba39fd7400a814a7272f41222ad579.
The file was modifiedllvm/lib/ExecutionEngine/JITLink/ELF_x86_64.cpp
The file was addedllvm/test/ExecutionEngine/JITLink/X86/ELF_x86-64_common.s
Commit cbb7f1420b747aae09a7f728c186bb0c2702eb02 by andrzej.warzynski
[flang][tests] Fix Python bug in the lit config

Without this change LIT tests for Flang fail with:
```
TypeError: append() takes exactly one argument (2 given)
```
The file was modifiedflang/test/lit.cfg.py
Commit 92205bf122b14e4beaaade612b6681dd21a926ab by david.green
[ARM] Remove some dead code. NFC
The file was modifiedllvm/lib/Target/ARM/ARMInstrInfo.td
Commit 9068c209655efc597b31b23fc41630d82c5b98a4 by dfukalov
[AMDGPU][CostModel] Refine cost model for half- and quarter-rate instructions.

1. Throughput and codesize costs estimations was separated and updated.
2. Updated fdiv cost estimation for different cases.
3. Added scalarization processing for types that are treated as !isSimple() to
improve codesize estimation in getArithmeticInstrCost() and
getArithmeticInstrCost(). The code was borrowed from TCK_RecipThroughput path
of base implementation.

Next step is unify scalarization part in base class that is currently works for
TCK_RecipThroughput path only.

Reviewed By: rampitec

Differential Revision: https://reviews.llvm.org/D89973
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
The file was modifiedllvm/test/Analysis/CostModel/AMDGPU/fadd.ll
The file was modifiedllvm/test/Analysis/CostModel/AMDGPU/fmul.ll
The file was modifiedllvm/test/Analysis/CostModel/AMDGPU/fdiv.ll
The file was modifiedllvm/test/Analysis/CostModel/AMDGPU/fma.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
The file was modifiedllvm/test/Analysis/CostModel/AMDGPU/fsub.ll
The file was modifiedllvm/test/Analysis/CostModel/AMDGPU/fused_costs.ll
The file was modifiedllvm/test/Analysis/CostModel/AMDGPU/mul.ll
The file was modifiedllvm/test/Analysis/CostModel/AMDGPU/shifts.ll
Commit b8d2b6f6cf6015751fc950c3e8149404e8b37fe8 by benny.kra
Unbreak the clang-interpreter example after 0aec49c8531bc5282b095730d34681455826bc2c
The file was modifiedclang/examples/clang-interpreter/main.cpp
Commit bd2cf96c098ed0020f5178eda12cf30d3980d9bd by benny.kra
[X86] Add a stub for znver3 based on the little public information there is in AMD's manuals

No scheduling, no autodetection. Just enough so -march=znver3 works.
The file was modifiedclang/test/Preprocessor/predefined-arch-macros.c
The file was modifiedllvm/include/llvm/Support/X86TargetParser.h
The file was modifiedclang/test/Misc/target-invalid-cpu-note.c
The file was modifiedclang/lib/Basic/Targets/X86.cpp
The file was modifiedllvm/test/CodeGen/X86/cpus-amd.ll
The file was modifiedllvm/lib/Support/X86TargetParser.cpp
The file was modifiedllvm/lib/Target/X86/X86.td
Commit 39a0d6889dee636af3b7fbb69e1ac5c8af777ad0 by benny.kra
[X86] Add a stub for Intel's alderlake.

No scheduling, no autodetection.
The file was modifiedllvm/include/llvm/Support/X86TargetParser.def
The file was modifiedllvm/lib/Support/X86TargetParser.cpp
The file was modifiedclang/docs/ReleaseNotes.rst
The file was modifiedclang/lib/Basic/Targets/X86.cpp
The file was modifiedclang/test/CodeGen/target-builtin-noerror.c
The file was modifiedllvm/lib/Target/X86/X86.td
The file was modifiedclang/test/CodeGen/attr-target-mv.c
The file was modifiedclang/test/Preprocessor/predefined-arch-macros.c
The file was modifiedcompiler-rt/lib/builtins/cpu_model.c
The file was modifiedllvm/docs/ReleaseNotes.rst
The file was modifiedllvm/test/CodeGen/X86/cpus-intel.ll
The file was modifiedclang/test/Driver/x86-march.c
The file was modifiedllvm/include/llvm/Support/X86TargetParser.h
The file was modifiedclang/test/Misc/target-invalid-cpu-note.c
Commit 22d10b8ab44f703b72b8316a9b3b8adc623ca73f by spatel
[CostModel] remove cost-kind predicate for vector reduction costs

This is similar in spirit to 01ea93d85d6e (memcpy) except that
here the underlying caller assumptions were created for vectorizer
use (throughput) rather than other passes.

That meant targets could have an enormous throughput cost with no
corresponding size, latency, or blended cost increase.
The ARM costs show a small difference between throughput and
size because there's an underlying difference in cmp/sel
costs that is also predicated on cost-kind.

Paraphrasing from the previous commits:
This may not make sense for some callers, but at least now the
costs will be consistently wrong instead of mysteriously wrong.

Targets should provide better overrides if the current modeling
is not accurate.
The file was modifiedllvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h
The file was modifiedllvm/test/Analysis/CostModel/ARM/intrinsic-cost-kinds.ll
The file was modifiedllvm/test/Analysis/CostModel/ARM/reduce-add.ll
Commit 6f9d84bb26f15845e984170be40f7c1383425eea by thakis
Revert "hwasan: Disable operator {new,delete} interceptors when interceptors are disabled."

This reverts commit fa66bcf4bc9467514dddacdba711a42e0a83cf9d.
Seems to break tests, see https://reviews.llvm.org/D89827#2351930
The file was modifiedcompiler-rt/lib/hwasan/hwasan.h
Commit d5adadb3a564236a894cbb5f189496a65d9e9742 by i
[AArch64][GlobalISel] Fix -Wunused-variable. NFC
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
Commit 29480c6c746cd3eda90b7060233bdc04a3f2e3dd by mcgrathr
[asan][fuchsia] set current thread before reading thread state

When enabling stack use-after-free detection, we discovered that we read
the thread ID on the main thread while it is still set to 2^24-1.

This patch moves our call to AsanThread::Init() out of CreateAsanThread,
so that we can call SetCurrentThread first on the main thread.

Reviewed By: mcgrathr

Differential Revision: https://reviews.llvm.org/D89606
The file was modifiedcompiler-rt/lib/asan/asan_thread.cpp
The file was modifiedcompiler-rt/lib/asan/asan_fuchsia.cpp
Commit 1e09dbb6a942ec5558dc84b5dbc8a842891135d4 by mcgrathr
[asan] Fix stack-use-after-free checks on non-main thread on Fuchsia

While some platforms call `AsanThread::Init()` from the context of the
thread being started, others (like Fuchsia) call `AsanThread::Init()`
from the context of the thread spawning a child.  Since
`AsyncSignalSafeLazyInitFakeStack` writes to a thread-local, we need to
avoid calling it from the spawning thread on Fuchsia.  Skipping the call
here on Fuchsia is fine; it'll get called from the new thread lazily on first
attempted access.

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D89607
The file was modifiedcompiler-rt/lib/asan/asan_thread.cpp
Commit f04d92af94a8d763e91ae38fe35319e426dc466c by i
[X86] Produce R_X86_64_GOTPCRELX for test/binop instructions (MOV32rm/TEST32rm/...) when -Wa,-mrelax-relocations=yes is enabled

We have been producing R_X86_64_REX_GOTPCRELX (MOV64rm/TEST64rm/...) and
R_X86_64_GOTPCRELX for CALL64m/JMP64m without the REX prefix since 2016 (to be
consistent with GNU as), but not for MOV32rm/TEST32rm/...
The file was modifiedllvm/lib/ExecutionEngine/JITLink/ELF_x86_64.cpp
The file was removedllvm/test/MC/ELF/got-relaxed.s
The file was modifiedllvm/test/MC/ELF/got.s
The file was addedllvm/test/MC/X86/gotpcrelx.s
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
Commit 398b81067c8202d2b3e4fec23547b6b64d181459 by i
[ELF] Don't crash on R_X86_64_GOTPCRELX for test/binop instructions

While MC did not produce R_X86_64_GOTPCRELX for test/binop instructions
(movl/adcl/addl/andl/...) before the previous commit, this code path has been
exercised by -fno-integrated-as for GNU as since 2016: -no-pie relaxing
may incorrectly access loc[-3] and produce a corrupted instruction.

Simply handle test/binop R_X86_64_GOTPCRELX like R_X86_64_GOTPCREL.
The file was modifiedlld/test/ELF/x86-64-gotpc-relax-nopic.s
The file was modifiedlld/ELF/Arch/X86_64.cpp
Commit c039e83a2ceebb48af2353b5e939ee6bcb732104 by aeubanks
Fix typo SSC -> SCC
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
Commit aaa8b44d19918ea1764339224cec68c27445aa8e by zeratul976
[clangd] Add a TestWorkspace utility

TestWorkspace allows easily writing tests involving multiple
files that can have inclusion relationships between them.

BackgroundIndexTest.RelationsMultiFile is refactored to use
TestWorkspace, and moved to FileIndexTest as it no longer
depends on BackgroundIndex.

Differential Revision: https://reviews.llvm.org/D89297
The file was modifiedclang-tools-extra/clangd/unittests/FileIndexTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/TestTU.h
The file was modifiedclang-tools-extra/clangd/unittests/BackgroundIndexTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/TestTU.cpp
The file was addedclang-tools-extra/clangd/unittests/TestWorkspace.cpp
The file was modifiedclang-tools-extra/clangd/unittests/CMakeLists.txt
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clangd/unittests/BUILD.gn
The file was addedclang-tools-extra/clangd/unittests/TestWorkspace.h
Commit 7b3515880c22c887cd5ca4825dfb060ad82d3ebc by richard
For P0732R2, P1907R1: ensure that template parameter objects don't refer
to disallowed objects or have non-constant destruction.
The file was modifiedclang/test/SemaTemplate/temp_arg_nontype_cxx1z.cpp
The file was modifiedclang/include/clang/AST/Expr.h
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedclang/test/CXX/temp/temp.param/p8-cxx20.cpp
The file was modifiedclang/include/clang/Basic/PartialDiagnostic.h
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticCommonKinds.td
The file was modifiedclang/lib/Sema/SemaOverload.cpp
The file was modifiedclang/test/CXX/drs/dr1xx.cpp
The file was modifiedclang/test/SemaTemplate/temp_arg_nontype_cxx20.cpp
The file was modifiedclang/include/clang/Basic/LLVM.h
The file was modifiedclang/lib/Sema/SemaExpr.cpp
Commit 13c62ce99aab2e0192e56767c46c5fab476a81c2 by tejohnson
[MemProf] Temporarily disable part of test

Disable the part of this test that started failing only on the
llvm-avr-linux bot after 5c20d7db9f2791367b9311130eb44afecb16829c.
Unfortunately, "XFAIL: avr" does not work. Still in the process of
trying to figure out how to debug.
The file was modifiedcompiler-rt/test/memprof/TestCases/log_path_test.cpp
Commit 1c8371692dfe8245bc6690ff1262dcced4649d21 by martin
Revert "[CostModel] remove cost-kind predicate for vector reduction costs"

This reverts commit 22d10b8ab44f703b72b8316a9b3b8adc623ca73f.

This broke compilation e.g. like this:
$ cat synth.c
*a;
float *b;
c() {
  for (;;) {
    float d = -*b * *a++;
    d -= *--b * *a++;
    d -= *--b * *a;
    d -= *--b * *a;
    e(d);
  }
}
$ clang -target x86_64-linux-gnu -c -O2 -ffast-math synth.c
clang: ../include/llvm/Support/Casting.h:104: static bool llvm::isa_impl
_cl<To, const From*>::doit(const From*) [with To = llvm::PointerType; Fr
om = llvm::Type]: Assertion `Val && "isa<> used on a null pointer"' fail
ed.
The file was modifiedllvm/test/Analysis/CostModel/ARM/reduce-add.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll
The file was modifiedllvm/test/Analysis/CostModel/ARM/intrinsic-cost-kinds.ll
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h
Commit a222d832d531afca294bb43d80388b97d45a9aea by craig.topper
[X86] Use TargetConstant for FPDiff with X86::TC_RETURN.

It's required to be a constant and can never be in a register so
make it explicit.
The file was modifiedllvm/lib/Target/X86/X86InstrCompiler.td
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit f81f09ba8950a199af88e5a622155fb9801b11b7 by richard
[c++20] For P0732R2: Support string literal operator templates.
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/test/CXX/lex/lex.literal/lex.ext/p5.cpp
The file was modifiedclang/lib/Sema/SemaLookup.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
Commit 5e9f172295d011cc0a186a3e133b3b628556287f by llvm-dev
[InstCombine] Add test for or(fshl(),fshl()) bswap pattern.

Currently InstCombinerImpl::matchBSwapOrBitReverse won't match starting from funnel shifts.
The file was modifiedllvm/test/Transforms/InstCombine/bswap.ll
Commit 3052e474eceb25e3699940d6a7270550eed66606 by llvm-dev
[InstCombine] matchBSwapOrBitReversem - recognise or(fshl(),fshl()) bswap patterns.

I'm not certain InstCombinerImpl::matchBSwapOrBitReverse needs to filter the or(op0(),op1()) ops - there are just too many cases that recognizeBSwapOrBitReverseIdiom/collectBitParts handle now (and quickly).
The file was modifiedllvm/test/Transforms/InstCombine/bswap.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
Commit 2e204e23911b1f8bd1463535da40c6e48747a138 by melanie.blower
[clang] Enable support for #pragma STDC FENV_ACCESS

Reviewers: rjmccall, rsmith, sepavloff

Differential Revision: https://reviews.llvm.org/D87528
The file was modifiedclang/lib/CodeGen/CodeGenModule.h
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/test/Parser/fp-floatcontrol-syntax.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticASTKinds.td
The file was modifiedclang/include/clang/Sema/Sema.h
The file was addedclang/test/Parser/pragma-fenv_access.c
The file was modifiedclang/include/clang/AST/Decl.h
The file was modifiedclang/include/clang/Basic/Attr.td
The file was modifiedclang/lib/Serialization/ASTReaderDecl.cpp
The file was modifiedclang/docs/UsersManual.rst
The file was modifiedclang/lib/Sema/SemaStmt.cpp
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/lib/Sema/SemaTemplateInstantiateDecl.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticParseKinds.td
The file was modifiedclang/include/clang/Basic/LangOptions.h
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was modifiedclang/test/Preprocessor/pragma_unknown.c
The file was modifiedclang/include/clang/Sema/ScopeInfo.h
The file was modifiedclang/test/CodeGen/fp-floatcontrol-pragma.cpp
The file was modifiedclang/lib/CodeGen/CGCall.cpp
The file was modifiedclang/lib/Parse/ParseStmt.cpp
The file was modifiedclang/lib/Sema/ScopeInfo.cpp
The file was modifiedclang/lib/Parse/ParsePragma.cpp
The file was modifiedclang/lib/CodeGen/CodeGenFunction.cpp
The file was modifiedclang/lib/Sema/SemaAttr.cpp
The file was modifiedclang/lib/Serialization/ASTWriterDecl.cpp
The file was modifiedclang/test/CXX/expr/expr.const/p2-0x.cpp
The file was addedclang/test/CodeGen/pragma-fenv_access.c
Commit d64ea0f18994e06c4428548c4093b3ce7a35cb98 by llvm-dev
Remove superfluous whitespace around if(). NFC.
The file was modifiedllvm/lib/ExecutionEngine/Orc/IndirectionUtils.cpp
Commit 968aa6b917f7ffb3bda059c53f9e836934a9d16e by flo
[SLP] Add AArch64 tests with vectorizable compare/select patterns.

This patch adds an additional set of tests that can be vectorized
efficiently on AArch64, using CMxx & BFI.
The file was addedllvm/test/Transforms/SLPVectorizer/AArch64/vectorizable-selects-uniform-cmps.ll
Commit 576d436c828f84f18277e4675e6e5337d2b77fde by melanie.blower
Correct LIT test failure detected on buildbot after mibintc committed rG2e204e23911b: [clang] Enable support for #pragma STDC FENV_ACCESS D87528
The file was modifiedclang/test/Parser/pragma-fenv_access.c
Commit 7de2add8296fb26fd49106173c9f140ebd0abedc by spatel
[InstSimplify] add tests for logic-of-cmps with not op; NFC

One variant of this is shown in:
https://llvm.org/PR47858
The file was modifiedllvm/test/Transforms/InstSimplify/and-or-icmp-min-max.ll
Commit e77ba263fe0eaa41a973583fc82089721c881593 by spatel
[InstSimplify] peek through 'not' operand in logic-of-icmps fold

This extends D78430 to solve cases like:
https://llvm.org/PR47858

There are still missed opportunities shown in the tests,
and as noted in the earlier patches, we have related
functionality in InstCombine, so we may want to extend
other folds in a similar way.

A semi-random sampling of test diff proofs in this patch:
https://rise4fun.com/Alive/sS4C
The file was modifiedllvm/test/Transforms/InstSimplify/and-or-icmp-min-max.ll
The file was modifiedllvm/lib/Analysis/InstructionSimplify.cpp
Commit c5718253c9383bc02b384109743de30792c2b122 by nikita.ppv
[IndVars] Regenerate test checks (NFC)

Also run the test case through -instnamer.
The file was modifiedllvm/test/Transforms/IndVarSimplify/X86/pr35406.ll
Commit 0dda6333175c1749f12be660456ecedade3bcf21 by nikita.ppv
[SCEV] Strength nowrap flags after constant folding

We should first try to constant fold the add expression and only
strengthen nowrap flags afterwards. This allows us to determine
stronger flags if e.g. only two operands are left after constant
folding (and thus "guaranteed no wrap region" code applies) or the
resulting operands are non-negative and thus nsw->nuw strengthening
applies.
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was modifiedllvm/test/Analysis/ScalarEvolution/trip-count9.ll
The file was modifiedllvm/test/Transforms/IndVarSimplify/eliminate-comparison.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/load-deref-pred.ll
The file was modifiedllvm/test/Transforms/IndVarSimplify/X86/eliminate-trunc.ll
The file was modifiedllvm/test/Transforms/IndVarSimplify/X86/pr35406.ll
The file was modifiedllvm/test/Transforms/LoopReroll/nonconst_lb.ll
The file was modifiedllvm/test/Analysis/ScalarEvolution/ptrtoint-constantexpr-loop.ll
The file was modifiedllvm/test/Analysis/ScalarEvolution/trip-count15.ll
Commit 22a5cde541c3306e53279fd02c6d60ae6178ef10 by nikita.ppv
[SCEV] Separate out constant folding in mul expr creation

Separate out the code handling constant folding into a separate
block, that is independent of other folds that need a constant
first operand. Also make some minor adjustments to make the
constant folding look nearly identical to the same code in
getAddExpr().

The only reason this change is not strictly NFC is that the
C1*(C2+V) fold is moved below the constant folding, which means
that it now also applies to C1*C2*(C3+V), as it should.
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
Commit 1ff313f0989009f8a080418e93fe510ec66e8999 by nikita.ppv
[SCEV] Always constant fold mul expression operands

Establish parity with the handling of add expressions, by always
constant folding mul expression operands before checking the depth
limit (this is a non-recursive simplification). The code was already
unconditionally constant folding the case where all operands were
constants, but was not folding multiple constant operands together
if there were also non-constant operands.

This requires picking out a different demonstration for depth-based
folding differences in the limit-depth.ll test.
The file was modifiedllvm/test/Analysis/ScalarEvolution/limit-depth.ll
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
Commit 5250a03a9959c2701a8338fe1a1ffa8bd93d6173 by aaronpuchert
Thread safety analysis: Consider global variables in scope

Instead of just mutex members we also consider mutex globals.
Unsurprisingly they are always in scope. Now the paper [1] says that

> The scope of a class member is assumed to be its enclosing class,
> while the scope of a global variable is the translation unit in
> which it is defined.

But I don't think we should limit this to TUs where a definition is
available - a declaration is enough to acquire the mutex, and if a mutex
is really limited in scope to a translation unit, it should probably be
only declared there.

The previous attempt in 9dcc82f34ea was causing false positives because
I wrongly assumed that LiteralPtrs were always globals, which they are
not. This should be fixed now.

[1] https://static.googleusercontent.com/media/research.google.com/en/us/pubs/archive/42958.pdf

Fixes PR46354.

Reviewed By: aaron.ballman

Differential Revision: https://reviews.llvm.org/D84604
The file was modifiedclang/test/SemaCXX/warn-thread-safety-analysis.cpp
The file was modifiedclang/test/SemaCXX/warn-thread-safety-negative.cpp
The file was modifiedclang/lib/Analysis/ThreadSafety.cpp
Commit b296c64e64a0bc600538c8bc67d4ccc2564e3c72 by aaronpuchert
Thread safety analysis: Nullability improvements in TIL, NFCI

The constructor of Project asserts that the contained ValueDecl is not
null, use that in the ThreadSafetyAnalyzer. In the case of LiteralPtr
it's the other way around.

Also dyn_cast<> is sufficient if we know something isn't null.
The file was modifiedclang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h
The file was modifiedclang/lib/Analysis/ThreadSafetyCommon.cpp
The file was modifiedclang/lib/Analysis/ThreadSafety.cpp
Commit ebeef022aa6d244c3b151b247399e97e31d392ff by nikita.ppv
[SCEV] Strenthen nowrap flags after constant folding for mul exprs

Same change as 0dda6333175c1749f12be660456ecedade3bcf21, but for
mul expressions. We want to first fold any constant operans and
then strengthen the nowrap flags, as we can compute more precise
flags at that point.
The file was modifiedllvm/test/Analysis/LoopAccessAnalysis/wrapping-pointer-versioning.ll
The file was modifiedllvm/test/Analysis/IVUsers/quadradic-exit-value.ll
The file was modifiedllvm/test/Transforms/IndVarSimplify/ARM/code-size.ll
The file was modifiedllvm/test/Transforms/IndVarSimplify/replace-loop-exit-folds.ll
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was modifiedllvm/test/Analysis/ScalarEvolution/zext-divrem.ll
Commit 74ffc823ed2128dfce40181a13e3b2076a61126f by spatel
[CostModel] fix operand/type accounting for fadd/fmul reductions

I'm not sure if/how this ever worked, but it must not be tested
currently because the basic tests added here were crashing as
noted in the post-review comments for 1c83716 (which reverted
another cost-model fix in 22d10b8ab44f).
The file was addedllvm/test/Analysis/CostModel/X86/reduce-fmul.ll
The file was addedllvm/test/Analysis/CostModel/X86/reduce-fadd.ll
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h
Commit f2c25c70791de95d2466e09b5b58fc37f6ccd7a4 by spatel
[CostModel] remove cost-kind predicate for some vector reduction costs

This is a modified 2nd try of 22d10b8ab44f
(reverted by 1c8371692d because it managed
to expose an existing crashing bug that should be fixed by
74ffc823 ).

Original commit message:

This is similar in spirit to 01ea93d85d6e (memcpy) except that
here the underlying caller assumptions were created for vectorizer
use (throughput) rather than other passes.

That meant targets could have an enormous throughput cost with no
corresponding size, latency, or blended cost increase.
The ARM costs show a small difference between throughput and
size because there's an underlying difference in cmp/sel
costs that is also predicated on cost-kind.

Paraphrasing from the previous commits:
This may not make sense for some callers, but at least now the
costs will be consistently wrong instead of mysteriously wrong.

Targets should provide better overrides if the current modeling
is not accurate.
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h
The file was modifiedllvm/test/Analysis/CostModel/ARM/reduce-add.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll
The file was modifiedllvm/test/Analysis/CostModel/ARM/intrinsic-cost-kinds.ll
Commit 2ed16aa66f706ea565d1238e4fa6f7ae97c7d948 by craig.topper
[X86] Use TargetConstant instead of Constant for operands to X86vaarg64.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrCompiler.td
Commit 63ba82ed00ffe3e5d5f4ce907c4523d8d980fc8a by craig.topper
[X86] Use TargetConstant for immediates for VASTART_SAVE_XMM_REGS.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrCompiler.td
Commit 180548c5c7848f82ceac5d6a3528a8cb14c20fed by chen3.liu
[X86] VEX/EVEX prefix doesn't work for inline assembly.

For now, we lost the encoding information if we using inline assembly.
The encoding for the inline assembly will keep default even if we add
the vex/evex prefix.

Differential Revision: https://reviews.llvm.org/D90009
The file was modifiedllvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h
The file was addedclang/test/CodeGen/X86/att-inline-asm-prefix.c
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86InstPrinterCommon.cpp
Commit 82974e0114f02ffc07557e217d87f8dc4e100a26 by craig.topper
[X86] Don't disassemble wbinvd with 0xf2 or 0x66 prefix.

The 0xf3 prefix has been defined as wbnoinvd on Icelake Server. So
the prefix isn't ignored by the CPU. AMD documentation suggests that
wbnoinvd is treated as wbinvd on older processors. Intel documentation
is not clear. Perhaps 0xf2 and 0x66 are treated the same, but its
not documented.

This patch changes TB to PS in the td file so 0xf2 and 0x66 will
be treated as errors. This matches versions of objdump after
wbnoinvd was added.
The file was modifiedllvm/lib/Target/X86/X86InstrSystem.td
The file was modifiedllvm/test/MC/Disassembler/X86/x86-32.txt
The file was addedllvm/test/MC/Disassembler/X86/invalid-wbinvd.txt
The file was modifiedllvm/test/MC/Disassembler/X86/x86-64.txt
Commit 5a061041ec4c8e16ba8d8321353d3a35ca77858f by Christudasan.Devadasan
[AMDGPU] Avoid offset register in MUBUF for direct stack object accesses

We use an absolute address for stack objects and
it would be necessary to have a constant 0 for soffset field.

Fixes: SWDEV-228562

Reviewed By: arsenm

Differential Revision: https://reviews.llvm.org/D89234
The file was modifiedllvm/test/CodeGen/AMDGPU/call-argument-types.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/callee-special-input-vgprs.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
Commit 15f6bad6d74a993e366c8fc93a9c91f213ac6bc3 by kbobyrev
[clangd] Add dependency on remote index service proto

It requires Index.proto to be built first. Failed builds:
https://github.com/clangd/clangd/runs/1305985916
The file was modifiedclang-tools-extra/clangd/index/remote/CMakeLists.txt
Commit c019099053c147c6fb924a88e30c0993144ce22e by mkazantsev
[IndVars] Use contextual knowledge when proving trivial conds

No exact example where it would help, but it's a generally a more
powerful way to prove predicates.
The file was modifiedllvm/lib/Transforms/Scalar/IndVarSimplify.cpp
Commit 4b5e848befdf786f5c905adf3b6c589216a24bff by mkazantsev
[NFC] Factor out common code into lambda for further improvement
The file was modifiedllvm/lib/Transforms/Scalar/IndVarSimplify.cpp
Commit cdccc82f4825a1c9ac1bc0df2a222acdf5e820d4 by mkazantsev
[NFC] Remove unused funciton param
The file was modifiedllvm/lib/Transforms/Scalar/IndVarSimplify.cpp
Commit bfabd7878b3240732d64b09eeadbc1eccc21910a by mkazantsev
Fix broken build after previous commit
The file was modifiedllvm/lib/Transforms/Scalar/IndVarSimplify.cpp
Commit 52f03fe1151f65278c855651bb8f325cca8500ea by marukawa
[VE] Support atomic fence

Support atomic fence instruction and add a regression test.
Add MEMBARRIER pseudo insturction also to use it as a barrier
against to the compiler optimizations.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D90112
The file was modifiedllvm/lib/Target/VE/VEISelLowering.cpp
The file was modifiedllvm/lib/Target/VE/VEISelLowering.h
The file was modifiedllvm/lib/Target/VE/VEInstrInfo.td
The file was addedllvm/test/CodeGen/VE/atomic_fence.ll
Commit 61bc18de0b2edf8659053b06d73dfd2563143572 by david.green
[Schedule] Add a MultiHazardRecognizer

This adds a MultiHazardRecognizer and starts to make use of it in the
ARM backend. The idea of the class is to allow multiple independent
hazard recognizers to be added to a single base MultiHazardRecognizer,
allowing them to all work in parallel without requiring them to be
chained into subclasses. They can then be added or not based on cpu or
subtarget features, which will become useful in the ARM backend once
more hazard recognizers are being used for various things.

This also renames ARMHazardRecognizer to ARMHazardRecognizerFPMLx in the
process, to more clearly explain what that recognizer is designed for.

Differential Revision: https://reviews.llvm.org/D72939
The file was addedllvm/include/llvm/CodeGen/MultiHazardRecognizer.h
The file was modifiedllvm/lib/Target/ARM/ARMHazardRecognizer.cpp
The file was addedllvm/lib/CodeGen/MultiHazardRecognizer.cpp
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
The file was modifiedllvm/lib/Target/ARM/ARMHazardRecognizer.h
The file was modifiedllvm/lib/CodeGen/CMakeLists.txt
Commit 8000d277bafa15f52061961e1ff1020306487e38 by llvmgnsyncbot
[gn build] Port 61bc18de0b2
The file was modifiedllvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
Commit d613e39d52d263823324a695614c3c2981e94927 by eleviant
[ARM][SchedModels] Convert IsLdrAm3NegRegOffPred to MCSchedPredicate

Differential revision: https://reviews.llvm.org/D90045
The file was modifiedllvm/lib/Target/ARM/ARMScheduleA57.td
The file was modifiedllvm/lib/Target/ARM/ARMSchedule.td
The file was modifiedllvm/include/llvm/Target/TargetInstrPredicate.td
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.h
The file was modifiedllvm/test/tools/llvm-mca/ARM/cortex-a57-memory-instructions.s
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
Commit a4fc18e6410f1d88ef3171e4eb6afc33d750f69a by eleviant
[ARM][SchedModels] Convert IsLdstsoMinusRegPred to MCSchedPredicate

Differential revision: https://reviews.llvm.org/D90029
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
The file was modifiedllvm/lib/Target/ARM/ARMSchedule.td
The file was modifiedllvm/test/tools/llvm-mca/ARM/cortex-a57-memory-instructions.s
The file was modifiedllvm/lib/Target/ARM/ARMScheduleA57.td
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.h
Commit 99b2756517f23252d1bd60f2a15c5799df054ef3 by eleviant
[ARM][SchedModels] Get rid of IsLdrAm2ScaledPred

Differential revision: https://reviews.llvm.org/D90024
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.h
The file was modifiedllvm/test/tools/llvm-mca/ARM/cortex-a57-memory-instructions.s
The file was modifiedllvm/lib/Target/ARM/ARMScheduleA57.td
Commit f32992ad24470e0abfc310dcd62359f35378be7b by marukawa
[VE] Support atomic load

Support atomic load instruction and add a regression test.
VE uses release consitency, so need to insert fence around
atomic instructions.  This patch enable AtomicExpandPass
and use emitLeadingFence and emitTrailingFence mechanism
for such purpose.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D90135
The file was addedllvm/test/CodeGen/VE/atomic_load.ll
The file was modifiedllvm/lib/Target/VE/VETargetMachine.cpp
The file was modifiedllvm/lib/Target/VE/VEInstrInfo.td
The file was modifiedllvm/lib/Target/VE/VEISelLowering.cpp
The file was modifiedllvm/lib/Target/VE/VEISelLowering.h
Commit 82150dae8660c005823ed2da5c86cc1559a40c7b by lkail
[PowerPC] Add test case for pr47830. NFC.
The file was addedllvm/test/CodeGen/PowerPC/pr47830.ll
Commit a95ce5f65f13608f652d554ee37e61d9df7fa0d3 by eleviant
[ARM][SchedModels] Rename and generalize predicate. NFC
The file was modifiedllvm/lib/Target/ARM/ARMSchedule.td
The file was modifiedllvm/lib/Target/ARM/ARMScheduleA57.td
Commit a094b4fa4b7f00d3e389a55c401e4078534494b8 by sebastian.neubauer
[AMDGPU] Emit new pal metadata by default

If no pal metadata is given, default to the msgpack format instead of
the legacy metadata. This makes tests better readable.

Differential Revision: https://reviews.llvm.org/D90035
The file was modifiedllvm/test/CodeGen/AMDGPU/amdpal-vs.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/amdpal.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/amdpal-hs.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/amdpal-gs.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/amdpal-cs.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/amdpal-psenable.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/elf-notes.ll
The file was modifiedllvm/lib/Target/AMDGPU/Utils/AMDGPUPALMetadata.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/amdpal-es.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/amdpal-ls.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/wave_dispatch_regs.ll
Commit b2bec7cece9bb7d17799ac0af65a770cab4397ee by flo
[AsmPrinter] Add per BB instruction mix remark.

This patch adds a remarks that provides counts for each opcode per basic block.

An snippet of the generated information can be seen below.

The current implementation uses the target specific opcode for the counts. For example, on AArch64 this means we currently get 2 entries for `add` instructions if the block contains 32 and 64 bit adds. Similarly, immediate version are treated differently.

Unfortunately there seems to be no convenient way to get only the mnemonic part of the instruction as a string AFAIK. This could be improved in the future.

```
--- !Analysis
Pass:            asm-printer
Name:            InstructionMix
DebugLoc:        { File: arm64-instruction-mix-remarks.ll, Line: 30, Column: 30 }
Function:        foo
Args:
  - String:          'BasicBlock: '
  - BasicBlock:      else
  - String:          "\n"
  - String:          INST_MADDWrrr
  - String:          ': '
  - INST_MADDWrrr:   '2'
  - String:          "\n"
  - String:          INST_MOVZWi
  - String:          ': '
  - INST_MOVZWi:     '1'
```

Reviewed By: anemet, thegameg, paquette

Differential Revision: https://reviews.llvm.org/D89892
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was addedllvm/test/CodeGen/AArch64/arm64-instruction-mix-remarks.ll
Commit 0acf7002433052c02487645759540431c3b94829 by marukawa
[VE] Add integer arithmetic vector instructions

Add VADD/VADS/VADX/VSUB/VSBS/VSBX/VMPY/VMPS/VMPX/VMPD/VDIV/VDVS/VDVX
instructions.  Also add regression tests.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D89642
The file was addedllvm/test/MC/VE/VADS.s
The file was addedllvm/test/MC/VE/VMPX.s
The file was addedllvm/test/MC/VE/VDVS.s
The file was addedllvm/test/MC/VE/VSBX.s
The file was addedllvm/test/MC/VE/VADX.s
The file was modifiedllvm/lib/Target/VE/VEInstrVec.td
The file was addedllvm/test/MC/VE/VMPY.s
The file was addedllvm/test/MC/VE/VSUB.s
The file was addedllvm/test/MC/VE/VADD.s
The file was addedllvm/test/MC/VE/VDVX.s
The file was addedllvm/test/MC/VE/VDIV.s
The file was addedllvm/test/MC/VE/VMPS.s
The file was addedllvm/test/MC/VE/VMPD.s
The file was addedllvm/test/MC/VE/VSBS.s
Commit 8aa60f67dc8c67390680b7a3be0d31384300f09f by marukawa
[VE] Add vector comparison and min/max

Add VCMP/VCPS/VCPX/VCMS/VCMX vector instructions.  Also add regression
tests.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D89643
The file was addedllvm/test/MC/VE/VCPX.s
The file was modifiedllvm/lib/Target/VE/VEInstrVec.td
The file was addedllvm/test/MC/VE/VCMS.s
The file was addedllvm/test/MC/VE/VCMP.s
The file was addedllvm/test/MC/VE/VCMX.s
The file was addedllvm/test/MC/VE/VCPS.s
Commit d3205bbca3e0002d76282878986993e7e7994779 by tyker
[Annotation] Allows annotation to carry some additional constant arguments.

This allows using annotation in a much more contexts than it currently has.
especially when annotation with template or constexpr.

Reviewed By: aaron.ballman

Differential Revision: https://reviews.llvm.org/D88645
The file was modifiedclang/lib/CodeGen/CodeGenFunction.h
The file was modifiedclang/test/Sema/annotate.c
The file was modifiedclang/test/CodeGen/annotations-field.c
The file was addedclang/test/CodeGenCXX/attr-annotate.cpp
The file was modifiedllvm/test/Analysis/CostModel/free-intrinsics-datalayout.ll
The file was modifiedclang/lib/Sema/SemaTemplateInstantiateDecl.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/CodeGen/CodeGenModule.h
The file was addedclang/test/CodeGenCXX/attr-annotate2.cpp
The file was modifiedclang/test/Parser/access-spec-attrs.cpp
The file was modifiedclang/test/CodeGen/annotations-global.c
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/test/CodeGen/annotations-var.c
The file was modifiedclang/include/clang/Sema/ParsedAttr.h
The file was modifiedclang/test/AST/ast-dump-attr.cpp
The file was addedclang/test/SemaCXX/attr-annotate.cpp
The file was modifiedllvm/test/CodeGen/Generic/ptr-annotate.ll
The file was modifiedclang/test/Parser/objc-implementation-attrs.m
The file was modifiedclang/include/clang/Basic/Attr.td
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
The file was modifiedclang/test/Misc/pragma-attribute-objc.m
The file was modifiedclang/test/Sema/pragma-attribute.c
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was modifiedllvm/include/llvm/IR/Intrinsics.td
The file was modifiedllvm/test/Transforms/InstCombine/assume_inevitable.ll
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was modifiedllvm/test/Analysis/CostModel/free-intrinsics-no_info.ll
The file was modifiedclang/test/CodeGen/annotations-loc.c
The file was modifiedllvm/test/Analysis/CostModel/X86/free-intrinsics.ll
The file was modifiedclang/lib/CodeGen/CodeGenFunction.cpp
The file was modifiedclang/test/Misc/pragma-attribute-cxx.cpp
Commit 878b526409acb04b11f0a6b83c561bfee3521e57 by jperier
[flang] Tighten rules to resolve procedure as intrinsic procedure

2 Bug fixes:

- Do not resolve procedure as intrinsic if they appeared in an
  EXTERNAL attribute statement (one path was not considering this flag)

- Emit an error if a procedure resolved to be an intrinsic function
  (resp. subroutine) is used as a subroutine (resp. function).
  Lowering was attempted while the evaluate::Expression for the
  call was missing without any errors.

1 behavior change:

- Do not implicitly resolve subroutines (resp. functions) as intrinsics
  because their name is the name of an intrinsic function (resp.
  subroutine). Add justification in documentation.

Reviewed By: klausler, tskeith

Differential Revision: https://reviews.llvm.org/D90049
The file was addedflang/test/Semantics/call16.f90
The file was modifiedflang/lib/Semantics/resolve-names.cpp
The file was modifiedflang/docs/Intrinsics.md
The file was addedflang/test/Semantics/symbol19.f90
The file was modifiedflang/lib/Evaluate/intrinsics.cpp
The file was modifiedflang/include/flang/Evaluate/intrinsics.h
Commit 4afa077899b1e3def4cff475deae73681db04e21 by tyker
Try to fix buildbots after d3205bbca3e0002d76282878986993e7e7994779
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/irtranslator-no-op-intrinsics.ll
Commit 7acf2e2e1e8f7e2eac2dd5bbf7d752ba7ad4e79c by mgorny
[lldb] [Process/FreeBSDRemote] Fix #include for i386 compat

Include <x86/fpu.h> rather than <machine/fpu.h>, as the latter is not
present on i386.

Differential Revision: https://reviews.llvm.org/D90128
The file was modifiedlldb/source/Plugins/Process/FreeBSDRemote/NativeRegisterContextFreeBSD_x86_64.cpp
Commit 37d4d3bb4daf409102237132ae8e1db250da83be by mgorny
[lldb] [test/Register] Use initial state for write tests

Reset registers to their 'initial' state instead of a semi-random
pattern in write tests.  While the latter might have been helpful
while debugging failures (i.e. to distinguish unmodified registers
from mistakenly written zeroes), the former makes it possible to test
whether xstate_bv field is written correctly when using XSAVE.

With this change, the four relevant tests start failing on NetBSD
without D90105.

Differential Revision: https://reviews.llvm.org/D90114
The file was modifiedlldb/test/Shell/Register/Inputs/x86-64-write.cpp
The file was modifiedlldb/test/Shell/Register/Inputs/x86-zmm-write.cpp
The file was modifiedlldb/test/Shell/Register/Inputs/x86-mm-xmm-write.cpp
The file was modifiedlldb/test/Shell/Register/Inputs/x86-ymm-write.cpp
Commit a8902376651a7adbacd0c1934d9f70bdb9fad7f0 by mgorny
[lldb] [Process/NetBSD] Set xs_xstate_bv correctly when setting regs

Ensure that xs_xstate_bv is set correctly before calling
WriteRegisterSet().  The bit can be clear if the relevant registers
were at their initial state when they were read, and it needs to be set
in order to apply changes from the XState structure.

Differential Revision: https://reviews.llvm.org/D90105
The file was modifiedlldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD_x86_64.cpp
Commit f5ca27569eacc398f0e4fc63a9b55cafac398c04 by mgorny
[lldb] [Process/Linux] Reuse NativeRegisterContextWatchpoint_x86

Differential Revision: https://reviews.llvm.org/D90119
The file was modifiedlldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86_64.h
The file was modifiedlldb/source/Plugins/Process/Linux/NativeRegisterContextLinux.cpp
The file was modifiedlldb/source/Plugins/Process/Linux/NativeRegisterContextLinux.h
The file was modifiedlldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.cpp
The file was modifiedlldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_ppc64le.cpp
The file was modifiedlldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_s390x.cpp
The file was modifiedlldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp
The file was modifiedlldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm.cpp
The file was modifiedlldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86_64.cpp
Commit 97ca9ca180f0810adcc1637d1a6dd32a04f63cfe by pavel
[lldb] Fix bitfield "frame var" for pointers (pr47743)

Displaying large packed bitfields did not work if one was accessing them
through a pointer, and he used the "->" notation ("[0]." notation is
fine). The reason for that is that implicit dereference in -> is plumbed
all the way down to ValueObjectChild::UpdateValue, where the process of
fetching the child value was forked for this flag. The bitfield
"sliding" code was implemented only for the branch which did not require
dereferencing.

This patch restructures the function to avoid this mistake. Processing
now happens in two stages.
- first the parent is dereferenced (if needed)
- then the child value is computed (this step includes sliding and is
  common for both branches)

Differential Revision: https://reviews.llvm.org/D89236
The file was modifiedlldb/source/Core/ValueObjectChild.cpp
The file was modifiedlldb/test/API/lang/c/bitfields/TestBitfields.py
The file was modifiedlldb/test/API/lang/c/bitfields/main.c
Commit e4cc6e9bcdff5fe979ab72025cb803d723cd9c31 by pavel
[lldb] Modernize PseudoTerminal::Fork
The file was modifiedlldb/source/Host/common/PseudoTerminal.cpp
The file was modifiedlldb/include/lldb/Host/PseudoTerminal.h
The file was modifiedlldb/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp
Commit a64b2c93662d8c9bbe49561980ed6c78892491d3 by djtodoro
[NFC][InstrRefLDV] Fix a typo
The file was modifiedllvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
Commit 1876d06ea31f38411012841971a3ff69b4a864d4 by eleviant
[llvm-mca] Add few memory instructions to cortex-a57 test
The file was modifiedllvm/test/tools/llvm-mca/ARM/cortex-a57-memory-instructions.s
Commit 5cad535ccfebf9b41a57cf2788d8de7a765f7f35 by dvyukov
tsan: add mips64 support in lib/tsan/go/buildgo.sh

Enable mips64 support in buildgo.sh.

Author: mzh (Meng Zhuo)
Reviewed-in: https://reviews.llvm.org/D90130
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_platform.h
The file was modifiedcompiler-rt/lib/tsan/go/buildgo.sh
Commit 821f3b763ae506b329144550028a4fd0cba0a361 by llvm-dev
[InstCombine] Add rotate tests where the shift amount is zero extended after masking
The file was modifiedllvm/test/Transforms/InstCombine/rotate.ll
Commit 6b2eb31e1e2db1f3ca7a5c4914ab08cb18698de7 by llvm-dev
[InstCombine] Add support for zext(and(neg(amt),width-1)) rotate shift amount patterns

Alive2: https://alive2.llvm.org/ce/z/bCvvHd
The file was modifiedllvm/test/Transforms/InstCombine/rotate.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
Commit efa9aaad703e6b150980ed1a74b4e7c9da7d85a2 by hokein.wu
[clang] Suppress "follow-up" diagnostics on recovery call expressions.

Because of typo-correction, the AST can be transformed, and the transformed
AST is marginally useful for diagnostics purpose, the following
diagnostics usually do harm than good (easily cause confusions).

Given the following code:

```
void abcc();
void test() {
  if (abc());
  // diagnostic 1 (for the typo-correction): the typo is correct to `abcc()`, so the code is treate as `if (abcc())` in AST perspective;
  // diagnostic 2 (for mismatch type): we perform an type-analysis on `if`, discover the type is not match
}
```

The secondary diagnostic "convertable to bool" is likely bogus to users.

The idea is to use RecoveryExpr (clang's dependent mechanism) to preserve the
recovery behavior but suppress all follow-up diagnostics.

Differential Revision: https://reviews.llvm.org/D89946
The file was modifiedclang/lib/Sema/SemaOverload.cpp
The file was modifiedclang/test/SemaCXX/typo-correction-delayed.cpp
The file was modifiedclang/test/AST/ast-dump-recovery.cpp
Commit cae4067ec1cdf7846aa46dab13d3bc1f58b76016 by antiagainst
[MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM

This patch introduces a pass for running
`mlir-spirv-cpu-runner` - LowerHostCodeToLLVMPass.

This pass emulates `gpu.launch_func` call in LLVM dialect and lowers
the host module code to LLVM. It removes the `gpu.module`, creates a
sequence of global variables that are later linked to the varables
in the kernel module, as well as a series of copies to/from
them to emulate the memory transfer to/from the host or to/from the
device sides. It also converts the remaining Standard dialect into
LLVM dialect, emitting C wrappers.

Reviewed By: mravishankar

Differential Revision: https://reviews.llvm.org/D86112
The file was modifiedmlir/include/mlir/Conversion/SPIRVToLLVM/ConvertSPIRVToLLVMPass.h
The file was modifiedmlir/lib/Conversion/SPIRVToLLVM/CMakeLists.txt
The file was addedmlir/test/Conversion/SPIRVToLLVM/lower-host-to-llvm-calls.mlir
The file was addedmlir/lib/Conversion/SPIRVToLLVM/ConvertLaunchFuncToLLVMCalls.cpp
The file was modifiedmlir/include/mlir/Conversion/Passes.td
Commit e4991867fb5ace434640bfacfd28720ad031d33c by llvm-dev
[clang-fuzzer] CreateAndRunJITFunc - fix use after move static analyzer warning.

We were using the unique_ptr M to determine the triple after it had been moved in the EngineBuilder constructor.
The file was modifiedclang/tools/clang-fuzzer/handle-llvm/handle_llvm.cpp
Commit 2add7c5cf3ebbba629d2756b3e91728e55b40881 by andrew.ng
[llvm-ar][Object] Fix detection of need for 64-bit archive symbol tables

The code to detect the requirement for 64-bit offsets in the archive
symbol table was not correctly accounting for the archive file signature
and the size of all the contents of the symbol table itself, e.g. the
symbol table's header and string table. Also was not considering the
variation in symbol table formats. This could result in the creation of
large archives with a corrupt symbol table.

Change the testing environment variable SYM64_THRESHOLD to be an
absolute value rather than a power of 2 in order to enable precise
testing of this detection code.

Differential Revision: https://reviews.llvm.org/D89891
The file was modifiedllvm/lib/Object/ArchiveWriter.cpp
The file was modifiedllvm/test/Object/archive-symtab.test
Commit ffa6d2afa4a6f35e2e99172a17d489bcec7f0353 by fraser
[DAGCombine] Add test case showing incorrect DAGCombine optimization

This optmization produces incorrect results when the vector element type
is not byte-sized. Related to D78568.
The file was addedllvm/test/CodeGen/AMDGPU/extract-load-i1.ll
Commit 89808ce7343b22586bfd0d3fafddcdbba94fbcbb by antiagainst
[MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype

This patch introduces a SPIR-V runner. The aim is to run a gpu
kernel on a CPU via GPU -> SPIRV -> LLVM conversions. This is a first
prototype, so more features will be added in due time.

- Overview
The runner follows similar flow as the other runners in-tree. However,
having converted the kernel to SPIR-V, we encode the bind attributes of
global variables that represent kernel arguments. Then SPIR-V module is
converted to LLVM. On the host side, we emulate passing the data to device
by creating in main module globals with the same symbolic name as in kernel
module. These global variables are later linked with ones from the nested
module. We copy data from kernel arguments to globals, call the kernel
function from nested module and then copy the data back.

- Current state
At the moment, the runner is capable of running 2 modules, nested one in
another. The kernel module must contain exactly one kernel function. Also,
the runner supports rank 1 integer memref types as arguments (to be scaled).

- Enhancement of JitRunner and ExecutionEngine
To translate nested modules to LLVM IR, JitRunner and ExecutionEngine were
altered to take an optional (default to `nullptr`) function reference that
is a custom LLVM IR module builder. This allows to customize LLVM IR module
creation from MLIR modules.

Reviewed By: ftynse, mravishankar

Differential Revision: https://reviews.llvm.org/D86108
The file was modifiedmlir/lib/ExecutionEngine/JitRunner.cpp
The file was modifiedmlir/lib/ExecutionEngine/ExecutionEngine.cpp
The file was modifiedmlir/test/lit.site.cfg.py.in
The file was modifiedmlir/CMakeLists.txt
The file was modifiedmlir/examples/toy/Ch7/toyc.cpp
The file was modifiedmlir/include/mlir/ExecutionEngine/JitRunner.h
The file was addedmlir/test/mlir-spirv-cpu-runner/double.mlir
The file was modifiedmlir/tools/CMakeLists.txt
The file was modifiedmlir/include/mlir/ExecutionEngine/ExecutionEngine.h
The file was modifiedmlir/test/CMakeLists.txt
The file was addedmlir/test/mlir-spirv-cpu-runner/lit.local.cfg
The file was modifiedmlir/examples/toy/Ch6/toyc.cpp
The file was addedmlir/test/mlir-spirv-cpu-runner/CMakeLists.txt
The file was addedmlir/tools/mlir-spirv-cpu-runner/CMakeLists.txt
The file was modifiedmlir/test/lit.cfg.py
The file was addedmlir/test/mlir-spirv-cpu-runner/mlir_test_spirv_cpu_runner_c_wrappers.cpp
The file was addedmlir/test/mlir-spirv-cpu-runner/simple_add.mlir
The file was addedmlir/tools/mlir-spirv-cpu-runner/mlir-spirv-cpu-runner.cpp
Commit 58d0ef2d0466a893ab400f6a9829057b9d851038 by kbobyrev
[clangd] Fix remote index build failures due to lack of proto dependency

Previous attempt (15f6bad6d74a993e366c8fc93a9c91f213ac6bc3) introduced
add_dependencies but unfortunately it does not actually add a dependency
between RemoteIndexProto and RemoteIndexServiceProto. This is likely due
to some requirements of it that clang_add_library violates.

As a workaround, we will link RemoteIndexProto library to
RemoteIndexServiceProto which is logical because the library can not be
without linking to RemoteIndexProto anyway.
The file was modifiedclang-tools-extra/clangd/index/remote/CMakeLists.txt
Commit 1747aae9fc64448fb9b4f715dcd327c94f2fa4a6 by flo
[LV] Add cost-model test for AArch64 select costs.

Currently, the cost of some compare/select patterns is overestimated on
AArch64.
The file was addedllvm/test/Transforms/LoopVectorize/AArch64/select-costs.ll
Commit 0ca4124798df6518bb7b3b3722e0ab788acdd494 by jay.foad
[AMDGPU] Make more use of printNamedBit in AMDGPUInstPrinter. NFC.
The file was modifiedllvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
Commit 16f126df437f9ea19383c5486181c5e2797227f2 by llvm-dev
[InstCombine] Add bswap test pattern using bitreverse intrinsic

This is mainly to help with future better bitreverse folding support but we can test it via bswap matching for now.
The file was modifiedllvm/test/Transforms/InstCombine/bswap.ll
Commit d0ee1d8efe804b3184b1073cd367a307867f1372 by Raphael Isemann
[lldb][NFC] Make GetShellSafeArgument simpler and faster

Escaping by inserting characters in the middle of a std::string isn't cheap.
It's much more verbose than just prepending a backslash in a loop.
The file was modifiedlldb/source/Utility/Args.cpp
Commit 1704704e762f232e827849ee881ebe74b5db7ef1 by kbobyrev
[clangd] NFC: Update FIXME comment regarding lack of c/dtor support

Both `SymbolKind` and `indexSymbolKindToSymbolKind` support constructors and
separate them into a different category from regular methods.

Reviewed By: kadircet

Differential Revision: https://reviews.llvm.org/D89935
The file was modifiedclang-tools-extra/clangd/FindSymbols.cpp
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
Commit 532f3bec3e019a3e6089edf6bd21e9b9b540542b by llvm-dev
[InstCombine] collectBitParts - add bitreverse intrinsic support.
The file was modifiedllvm/test/Transforms/InstCombine/bswap.ll
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
Commit 206e8d8905035f6e9049b97c9cd8af0eaa5aa118 by Raphael Isemann
Fix SBError::SetErrorToGenericError

`SBError::SetErrorToGenericError` should call `Status::SetErrorToGenericError`,
not `Status::SetErrorToErrno`.

Reviewed By: teemperor

Differential Revision: https://reviews.llvm.org/D90151
The file was modifiedlldb/source/API/SBError.cpp
The file was addedlldb/test/API/python_api/sberror/TestSBError.py
Commit 26e2e9f2de7efdfb843a5440e7a94c4e919efd7a by paul
[TableGen] [tests] Change integer ranges to use new '...' punctuation

Differential Revision: https://reviews.llvm.org/D90057
The file was modifiedllvm/test/TableGen/FixedLenDecoderEmitter/conflict.td
The file was modifiedllvm/test/TableGen/FixedLenDecoderEmitter/InitValue.td
The file was modifiedllvm/test/TableGen/Common/reg-with-subregs-common.td
The file was modifiedllvm/unittests/TableGen/Automata.td
Commit 32efb81ea60a9e99571923bf9308598f6cd341f2 by dpetrov
[analyzer] [NFC] Simplify SVal::getAsLocSymbol function using existing functions

Summary: Method of obtaining MemRegion from LocAsInteger/MemRegionVal already exists in SVal::getAsRegion function. Replace repetitive conditions in SVal::getAsLocSymbol with SVal::getAsRegion function.

Differential Revision: https://reviews.llvm.org/D89982
The file was modifiedclang/lib/StaticAnalyzer/Core/SVals.cpp
Commit cfefef50c18a481040203f15b55edf89c1fafceb by marukawa
[VE] Support atomic store

Support atomic store instructions and add a regression test.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D90137
The file was modifiedllvm/lib/Target/VE/VEInstrInfo.td
The file was addedllvm/test/CodeGen/VE/atomic_store.ll
Commit 83cb423c6e19f3aad819b89140b1d74203b23180 by marukawa
[VE] Add vector logical instructions

Add VAND/VOR/VXOE/VEQV/VLDZ/VPCNT/VBRV/VSEQ instrucitons and regression
tests.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D90141
The file was addedllvm/test/MC/VE/VBRV.s
The file was addedllvm/test/MC/VE/VOR.s
The file was addedllvm/test/MC/VE/VEQV.s
The file was addedllvm/test/MC/VE/VLDZ.s
The file was modifiedllvm/lib/Target/VE/VEInstrVec.td
The file was addedllvm/test/MC/VE/VAND.s
The file was addedllvm/test/MC/VE/VSEQ.s
The file was addedllvm/test/MC/VE/VPCNT.s
The file was addedllvm/test/MC/VE/VXOR.s
Commit 9d0db405b57b892d5dad75549dea942c337e9f0d by marukawa
[VE] Add vector shift instructions

Add VSLL/VSLD/VSRL/VSLA/VSLAX/VSRA/VSRAX/VSFA instructionss.  Add
additonal AsmParser for VSLD special operand.  Also add regression
tests.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D90143
The file was addedllvm/test/MC/VE/VSLA.s
The file was addedllvm/test/MC/VE/VSRAX.s
The file was addedllvm/test/MC/VE/VSRA.s
The file was modifiedllvm/lib/Target/VE/AsmParser/VEAsmParser.cpp
The file was addedllvm/test/MC/VE/VSLAX.s
The file was addedllvm/test/MC/VE/VSFA.s
The file was addedllvm/test/MC/VE/VSLL.s
The file was modifiedllvm/lib/Target/VE/VEInstrVec.td
The file was addedllvm/test/MC/VE/VSLD.s
Commit 2030db328ae319b53c358923009f3d48d6fd4b52 by llvm-dev
[X86] Use mtriple instead of march in MIR tests
The file was modifiedllvm/test/CodeGen/X86/unreachable-mbb-undef-phi.mir
The file was modifiedllvm/test/CodeGen/X86/opt_phis2.mir
The file was modifiedllvm/test/CodeGen/X86/x87-reg-usage.mir
The file was modifiedllvm/test/CodeGen/X86/opt_phis.mir
Commit a562dc82a8d9488d35ff535302716141bc6feaa3 by flo
[AArch64] Add 2 cases where insertelement lowering could be improved.
The file was modifiedllvm/test/CodeGen/AArch64/arm64-vector-insertion.ll
Commit d6a0957467e86d5a87964d45fae18733e212c86f by Andrey.Churbanov
[OpenMP] changing OMP rtl to use shared memory instead of env variable

Patch by Erdner, Todd <todd.erdner@intel.com>

Differential Revision: https://reviews.llvm.org/D89898
The file was modifiedopenmp/runtime/cmake/LibompHandleFlags.cmake
The file was modifiedopenmp/runtime/src/kmp_runtime.cpp
The file was modifiedopenmp/runtime/cmake/config-ix.cmake
Commit 0ef6a25e195bafa285d3b957f247bfb23b2cf704 by llvm-dev
[InstCombine] Add bswap test pattern using truncates
The file was modifiedllvm/test/Transforms/InstCombine/bswap.ll
Commit d3024a074be09f6589eccac00cecabccd8258f2d by Louis Dionne
[libc++] Add a CI jobs to test the Standalone builds
The file was modifiedlibcxx/utils/ci/buildkite-pipeline.yml
The file was modifiedlibcxx/utils/ci/run-buildbot.sh
The file was modifiedlibcxx/src/CMakeLists.txt
Commit 4604441386dc5fcd3165f4b39f5fa2e2c600f1bc by joe.ellis
[SVE][CodeGen][DAGCombiner] Fix TypeSize warning in redundant store elimination

The modified code in visitSTORE was missing a scalable vector check, and still
using the now deprecated implicit cast of TypeSize to uint64_t through the
overloaded operator. This patch fixes these issues.

This brings the logic in line with the comment on the context line immediately
above the added precondition.

Add a test in Redundantstores.ll that the warning is not triggered.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/test/CodeGen/AArch64/Redundantstore.ll
Commit 6536d6040f5cd20d554901e265519b80dd8119f2 by peter.waller
Revert "[SVE][CodeGen][DAGCombiner] Fix TypeSize warning in redundant store elimination"

This reverts commit 4604441386dc5fcd3165f4b39f5fa2e2c600f1bc.

Reverting because it was not the intended version of the patch, which
follows this patch.
The file was modifiedllvm/test/CodeGen/AArch64/Redundantstore.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Commit 5b742a0c106fbed11779d6dd99854a6f97643524 by peter.waller
[SVE][CodeGen][DAGCombiner] Fix TypeSize warning in redundant store elimination

The modified code in visitSTORE was missing a scalable vector check, and still
using the now deprecated implicit cast of TypeSize to uint64_t through the
overloaded operator. This patch fixes these issues.

This brings the logic in line with the comment on the context line immediately
above the added precondition.

Add a test in sve-redundant-store.ll that the warning is not triggered.

Differential Revision: https://reviews.llvm.org/D89701
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was addedllvm/test/CodeGen/AArch64/sve-redundant-store.ll
Commit c686dfd61705f33419875b22eb08bd197a72cd18 by thakis
Unconfuse gcc5.3 after 2e204e23911b1f / D87528

The local variable CmpResult added in that change shadowed the
type CmpResult, which confused an older gcc. Rename the variable
CmpResult to APFloatCmpResult.
The file was modifiedclang/lib/AST/ExprConstant.cpp
Commit 88374f76ee19d21b2c64425c95f05a20d37a84fa by Louis Dionne
[libc++] Fix indentation of buildkite-pipeline.yml
The file was modifiedlibcxx/utils/ci/buildkite-pipeline.yml
Commit 85e2af7ffeed1e4d2e07b502a2030eff09a06636 by benny.kra
[lld][ELF] Don't write output to the test directory. NFC.
The file was modifiedlld/test/ELF/lto/warn-backrefs.ll
Commit dd7095f52bda36e0f3cd37574a1cb97c7a46cffe by benny.kra
[clang][unittest] Don't hardcode the string "Assertion"

This depends on the libc implementation. Use the string from the
assertion message instead. Overly specific, but so is this entire test.
The file was modifiedclang/unittests/Basic/LineOffsetMappingTest.cpp
Commit b777d3049652746881b74152416e3ffb025a887c by benny.kra
[AMDGPU] Avoid unused variable warning in Release builds. NFC.

SIRegisterInfo.cpp:480:19: error: unused variable 'SOffset'
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
Commit a877bda397bb0ace3688c687281dbc3e8d00204a by eleviant
Fix issue in cortex-a57 sched model

Differential revision: https://reviews.llvm.org/D90152
The file was modifiedllvm/lib/Target/ARM/ARMScheduleA57WriteRes.td
The file was modifiedllvm/test/tools/llvm-mca/ARM/cortex-a57-basic-instructions.s
Commit 37e0fdd072a95b51bcd0eb6b08d2762aa304e766 by nicolas.vasilache
[mlir][Linalg] Add basic support for TileAndFuse on Linalg on tensors.

This revision allows the fusion of the producer of input tensors in the consumer under a tiling transformation (which produces subtensors).
Many pieces are still missing (e.g. support init_tensors, better refactor LinalgStructuredOp interface support, try to merge implementations and reuse code) but this still allows getting started.

The greedy pass itself is just for testing purposes and will be extracted in a separate test pass.

Differential revision: https://reviews.llvm.org/D89491
The file was modifiedmlir/include/mlir/Dialect/Linalg/Utils/Utils.h
The file was addedmlir/test/Dialect/Linalg/tile-and-fuse-tensors.mlir
The file was modifiedmlir/lib/Dialect/Linalg/Analysis/DependenceAnalysis.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgOps.h
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOpsInterface.td
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
Commit e74f66125ebb3b43720b6803b4715c8a9c361a2f by eleviant
[ARM][SchedModels] Convert IsLdstsoScaledNotOptimalPred to MCSchedPredicate

Differential revision: https://reviews.llvm.org/D90150
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
The file was modifiedllvm/lib/Target/ARM/ARMSchedule.td
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.h
The file was modifiedllvm/test/tools/llvm-mca/ARM/cortex-a57-memory-instructions.s
The file was modifiedllvm/lib/Target/ARM/ARMScheduleA57.td
Commit 242e1e9910441ad00118e580e4cbd5743c77ea5e by zequanwu
[lldb][PDB] Add ObjectFile PDB plugin

To allow loading PDB file with `target symbols add` command.

Differential Revision: https://reviews.llvm.org/D89812
The file was addedlldb/source/Plugins/ObjectFile/PDB/ObjectFilePDB.cpp
The file was modifiedlldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/NativePDB/PdbIndex.h
The file was modifiedlldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h
The file was addedlldb/source/Plugins/ObjectFile/PDB/ObjectFilePDB.h
The file was modifiedlldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
The file was modifiedlldb/source/Plugins/ObjectFile/CMakeLists.txt
The file was modifiedlldb/source/Plugins/SymbolFile/NativePDB/PdbIndex.cpp
The file was addedlldb/source/Plugins/ObjectFile/PDB/CMakeLists.txt
The file was addedlldb/test/Shell/ObjectFile/PDB/object.test
The file was modifiedlldb/source/Plugins/SymbolFile/NativePDB/CMakeLists.txt
The file was addedlldb/test/Shell/SymbolFile/NativePDB/load-pdb.cpp
Commit 66d03af88c2e4932ae53787e07f502b90ab220cc by orlando.hyams
[DebugInfo][dexter] Add dexter tests for escaped locals

Recently there has been renewed interest in improving debug-info for variables
that (partially or otherwise) live on the stack in optimised code.

At the moment instcombine speculates that stack slots are probably going to be
promoted to registers, and prepares the debug-info accordingly. It runs a
function called LowerDbgDeclare which converts dbg.declares to a set of
dbg.values after loads, and before stores and calls. Sometimes the stack
location remains (e.g. for escaped locals). If any dbg.values become undef
where the stack location is still valid we end up unnecessarily reducing
variable location coverage due to our inability to track multiple locations
simultaneously. There is a flag to disable this feature
(-instcombine-lower-dbg-declare=0), which prevents this conversion at the cost
of sometimes providing incorrect location info in the face of DSE, DCE, GVN,
CSE etc.

This has been discussed fairly extensively on PR34136.

The idea of these tests is to provide examples of situations that we should
consider when designing a new system, to aid discussions and eventually help
evaluate the implementation.

Dexter isn't ideal for observing specific optimisation behaviour. Writing an
exaustive test suite would be difficult, and the resultant suite would be
fragile. However, I think having some concrete executable examples is useful
at least as a reference.

Differential Revision: https://reviews.llvm.org/D89543
The file was addeddebuginfo-tests/dexter-tests/memvars/loop.c
The file was addeddebuginfo-tests/dexter-tests/memvars/const-branch.c
The file was addeddebuginfo-tests/dexter-tests/memvars/implicit-ptr.c
The file was addeddebuginfo-tests/dexter-tests/memvars/bitcast.c
The file was addeddebuginfo-tests/dexter-tests/memvars/ctrl-flow.c
The file was addeddebuginfo-tests/dexter-tests/memvars/inlining.c
The file was addeddebuginfo-tests/dexter-tests/memvars/ptr-to.c
The file was addeddebuginfo-tests/dexter-tests/memvars/inlining-dse.c
The file was addeddebuginfo-tests/dexter-tests/memvars/struct-dse.c
Commit 467e5cf40f5da942419624d6a722567976b28a45 by joe.ellis
[SVE][AArch64] Fix TypeSize warning in loop vectorization legality

The warning would fire when calling isDereferenceableAndAlignedInLoop
with a scalable load. Calling isDereferenceableAndAlignedInLoop with a
scalable load would result in the use of the now deprecated implicit
cast of TypeSize to uint64_t through the overloaded operator.

This patch fixes this issue by:

- no longer considering vector loads as candidates in
  canVectorizeWithIfConvert. This doesn't make sense in the context of
  identifying scalar loads to vectorize.

- making use of getFixedSize inside isDereferenceableAndAlignedInLoop --
  this removes the dependency on the deprecated interface, and will
  trigger an assertion error if the function is ever called with a
  scalable type.

Reviewed By: sdesmalen

Differential Revision: https://reviews.llvm.org/D89798
The file was addedllvm/test/Transforms/LoopVectorize/AArch64/sve-scalable-load-in-loop.ll
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
The file was modifiedllvm/lib/Analysis/Loads.cpp
Commit 0383a1a8c230581aec4f2d9d4bfb5f5ed32d2bf5 by joe.ellis
[SVE][AArch64] Fix TypeSize warning in GEP cost analysis

The warning would fire when calling getGEPCost for analyzing the cost of
a GEP instruction. This would result in the use of the now deprecated
implicit cast of TypeSize to uint64_t through the overloaded operator.

This patch fixes the issue by using getKnownMinSize instead of the
implicit cast. This is possible because the code is already
scalable-vector aware. The semantic behaviour of the code is unchanged
by this patch.

Reviewed By: sdesmalen, fpetrogalli

Differential Revision: https://reviews.llvm.org/D89872
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfoImpl.h
The file was addedllvm/test/Analysis/CostModel/AArch64/cost-scalable-vector-gep.ll
Commit 0f8350559325db35e0ee3423db5d29113e4eec12 by joe.ellis
[SVE][InstCombine] Fix TypeSize warning in canReplaceGEPIdxWithZero

The warning would fire when calling canReplaceGEPIdxWithZero on a GEP
whose source element type is a scalable vector. The size of scalable
vector types is not known, so this optimization cannot be performed.

This patch fixes the issue by:

- bailing out early in this routine if the GEP instruction's source
  element type is a scalable vector.

- making use of getFixedSize -- this removes the dependency on the
  deprecated interface.

Reviewed By: fpetrogalli

Differential Revision: https://reviews.llvm.org/D89968
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
The file was addedllvm/test/Transforms/InstCombine/gep-can-replace-gep-idx-with-zero-typesize.ll
Commit bf60bb26ecbf4dace2a03886180be66b3ef5608a by joe.ellis
[SVE] Fix TypeSize warning in llvm::getGEPInductionOperand

We do not need to use the implicit cast here. We can instead can rely on
a comparison between two TypeSize objects instead. This algorithm will
work fine with scalable vectors.

Reviewed By: DavidTruby

Differential Revision: https://reviews.llvm.org/D90146
The file was modifiedllvm/lib/Analysis/VectorUtils.cpp
The file was addedllvm/test/Analysis/LoopAccessAnalysis/gep-induction-operand-typesize-warning.ll
Commit bd07be4f3f7fc062c7c80122b8796838be91abd3 by thomasraoux
[mlir][vector] Update doc strings for insert_map/extract_map and fix insert_map semantic

Based on discourse discussion, fix the doc string and remove examples with
wrong semantic. Also fix insert_map semantic by adding missing operand for
vector we are inserting into.

Differential Revision: https://reviews.llvm.org/D89563
The file was modifiedmlir/test/lib/Transforms/TestVectorTransforms.cpp
The file was modifiedmlir/include/mlir/Dialect/Vector/VectorOps.td
The file was modifiedmlir/lib/Dialect/Vector/VectorOps.cpp
The file was modifiedmlir/test/Dialect/Vector/vector-distribution.mlir
The file was modifiedmlir/test/Dialect/Vector/invalid.mlir
The file was modifiedmlir/lib/Dialect/Vector/VectorTransforms.cpp
The file was modifiedmlir/test/Dialect/Vector/ops.mlir
Commit 89485efc2672f79d0acc0644830d0b9975068199 by flo
[AArch64] Extend tests for insertelement improvements.

Extends the tests added in a562dc82a8d9488d35ff535302716141bc6feaa3 to
cover more vector variants.
The file was modifiedllvm/test/CodeGen/AArch64/arm64-vector-insertion.ll
Commit 0387015d7549fc2c0cc8c45d3e78114cc4fd153f by Duncan P. N. Exon Smith
SourceManager: Return non-const references in getOrCreateContentCache and related, NFC

Update a few APIs to return non-const references instead of pointers,
and remove associated `const_cast`s and non-null assertions.

Differential Revision: https://reviews.llvm.org/D90067
The file was modifiedclang/include/clang/Basic/SourceManager.h
The file was modifiedclang/lib/Basic/SourceManager.cpp
The file was modifiedclang/lib/Serialization/ASTReader.cpp
Commit b888463f8d6b1a0b003fa329c28e7348356787b5 by Louis Dionne
[libc++abi] Make sure we can run the tests in Standalone mode

The tests would previously fail if the `python` executable wasn't found,
because we were missing the mandatory find_package.
The file was modifiedlibcxxabi/CMakeLists.txt
The file was modifiedlibcxx/utils/ci/run-buildbot.sh
Commit c8f84bd0947d770a5df5e15d568a25a4f190df0b by ndesaulniers
[Clang][CodeGen] fix failed assertion

Ensure we can emit symbol aliases via function attribute
even when function signatures contain incomplete types.

Via bugreport:
https://reviews.llvm.org/D66492#2350947

Reviewed By: erichkeane

Differential Revision: https://reviews.llvm.org/D90073
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was modifiedclang/test/CodeGen/alias.c
Commit 4b83747ab1577b7899116b0ddb75f05de2471694 by zequanwu
[lldb][NativePDB] fix test load-pdb.cpp
The file was modifiedlldb/test/Shell/SymbolFile/NativePDB/load-pdb.cpp
Commit 8cd7786e489d989266154a724603673056dfecef by Louis Dionne
[libc++] NFC: Consistent indentation for buildkite-pipeline.yml
The file was modifiedlibcxx/utils/ci/buildkite-pipeline.yml
Commit ad8131bb03d0abd9e0586b9fa91d45cbf90ca83e by Stanislav.Mekhanoshin
[AMDGPU] Fix VC warning about singed/unsigned comparison. NFC.

This is the warning reported in https://reviews.llvm.org/D89599
The file was modifiedllvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
Commit a2ac64dd905422ed84e273a98d846df022a5e2ec by zequanwu
Revert "Ensure that checkInitIsICE is called exactly once for every variable"
This causing `Assertion Result && "Could not evaluate expression"' failed` at https://bugs.chromium.org/p/chromium/issues/detail?id=1142009

This reverts commit 76c0092665867a6defcd328ba0d0d976eb65d991.
The file was modifiedclang/lib/CodeGen/ItaniumCXXABI.cpp
The file was modifiedclang/lib/Serialization/ASTWriterDecl.cpp
The file was modifiedclang/test/Sema/enable_if.c
The file was modifiedclang/test/OpenMP/threadprivate_codegen.cpp
The file was modifiedclang/test/SemaCXX/constant-expression.cpp
The file was modifiedclang/include/clang/Serialization/ASTRecordWriter.h
The file was modifiedclang/lib/AST/ComparisonCategories.cpp
The file was modifiedclang/lib/AST/Decl.cpp
The file was modifiedclang/lib/Serialization/ASTReaderDecl.cpp
The file was modifiedclang/lib/Serialization/ASTWriter.cpp
The file was modifiedclang/include/clang/AST/Decl.h
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was modifiedclang/test/CodeGen/enable_if.c
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/test/SemaCXX/i-c-e-cxx.cpp
Commit e56e7bd4698d29f6197a5f756b6f0bab02d0b3c8 by zequanwu
Revert "Revert "Ensure that checkInitIsICE is called exactly once for every variable""

This reverts commit a2ac64dd905422ed84e273a98d846df022a5e2ec.
The file was modifiedclang/lib/Serialization/ASTWriter.cpp
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/lib/Serialization/ASTWriterDecl.cpp
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/test/Sema/enable_if.c
The file was modifiedclang/test/SemaCXX/constant-expression.cpp
The file was modifiedclang/test/CodeGen/enable_if.c
The file was modifiedclang/lib/CodeGen/ItaniumCXXABI.cpp
The file was modifiedclang/lib/Serialization/ASTReaderDecl.cpp
The file was modifiedclang/test/SemaCXX/i-c-e-cxx.cpp
The file was modifiedclang/lib/AST/ComparisonCategories.cpp
The file was modifiedclang/lib/AST/Decl.cpp
The file was modifiedclang/include/clang/AST/Decl.h
The file was modifiedclang/include/clang/Serialization/ASTRecordWriter.h
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was modifiedclang/test/OpenMP/threadprivate_codegen.cpp
Commit d6ab0474c6efc5a614a28ed21070f11d587467f8 by pifon
[mlir] Convert MemRefReinterpretCastOp to LLVM.

https://llvm.discourse.group/t/rfc-standard-memref-cast-ops/1454/15

Differential Revision: https://reviews.llvm.org/D90033
The file was modifiedmlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
The file was addedmlir/test/mlir-cpu-runner/memref_reinterpret_cast.mlir
The file was modifiedmlir/test/Conversion/StandardToLLVM/convert-dynamic-memref-ops.mlir
Commit 26750a1264b3df114a1efae7cde6f0784206b2ce by benny.kra
[clang-tidy] Silence unused variable warning in Release builds. NFCI.

ExpandModularHeadersPPCallbacks.cpp:55:15: warning: unused variable 'FileEntry'
    for (auto FileEntry : FilesToRecord)
              ^
The file was modifiedclang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
Commit 1e076a8d8099a6c179c8773f2e621f9408ee2402 by joeturner
Make sure Objective-C category support in IncludeSorter handles top-level imports

Currently, this would not correctly associate a category with the related include if it was top-level (i.e. no slashes in the path). This ensures that we explicitly think about that case.

Reviewed By: gribozavr2

Differential Revision: https://reviews.llvm.org/D89608
The file was modifiedclang-tools-extra/clang-tidy/utils/IncludeSorter.cpp
The file was modifiedclang-tools-extra/unittests/clang-tidy/IncludeInserterTest.cpp
Commit a28388f95beb029241b4ab221b279698a5559f82 by eleviant
[ARM][SchedModels] Move IsLDMBaseRegInListPred to ARMSchedule.td. NFC

This predicate is not specific to cortex-a57 and can be used in other processor
models as well.
The file was modifiedllvm/lib/Target/ARM/ARMSchedule.td
The file was modifiedllvm/lib/Target/ARM/ARMScheduleA57.td
Commit 139785dc98ae94717eebaed083eeaad5d775b495 by aaronpuchert
Add release tarballs for libclc

Fixes PR47917.

Reviewed By: tstellar

Differential Revision: https://reviews.llvm.org/D90100
The file was modifiedllvm/utils/release/export.sh
Commit 22e6b1863e74136908842d71b4f942313d89b273 by Duncan P. N. Exon Smith
SourceManager: Fix an SLocEntry memory regression introduced with FileEntryRef

4dc5573acc0d2e7c59d8bac2543eb25cb4b32984 added `FileEntryRef` in order to
help enable sharing of a `FileManager` between `CompilerInstance`s.

It also added a `StringRef` with the filename on `FileInfo`. This
doubled `sizeof(FileInfo)`, bloating `sizeof(SLocEntry)`, of which we
have one for each (loaded and unloaded) file and macro expansion. This
causes a memory regression in modules builds.

Move the filename down into the `ContentCache`, which is a side data
structure for `FileInfo` that does not impact `sizeof(SLocEntry)`. Once
`FileEntryRef` is used for `ContentCache::OrigEntry` this can go away.

Differential Revision: https://reviews.llvm.org/D89580
Radar-Id: rdar://59908826
The file was modifiedclang/lib/Basic/SourceManager.cpp
The file was modifiedclang/include/clang/Basic/SourceManager.h
Commit d071bba9a4477290d0b164a2d338fb22ad2d3c3d by kbobyrev
[clangd] Add back dependency on proto generated targets

Previous attempts:

* 15f6bad6d74a993e366c8fc93a9c91f213ac6bc3
* 58d0ef2d0466a893ab400f6a9829057b9d851038

The combination results in both link- and build-time dependency which is
the desired behavior.
The file was modifiedclang-tools-extra/clangd/index/remote/CMakeLists.txt
Commit 00928a1956a1618f394ffe99fc63b0d81e1f88c7 by Stanislav.Mekhanoshin
Fix SROA with a PHI mergig values from a same block

This fixes the bug 47945. It is legal to have a PHI with values
from from the same block, but values must stay the same. In this
case it is illegal to merge different values.

Differential Revision: https://reviews.llvm.org/D89978
The file was modifiedllvm/test/Transforms/SROA/phi-gep.ll
The file was modifiedllvm/lib/Transforms/Scalar/SROA.cpp
Commit 0b11d018cc2f2c6bea5dac8dc72140cdb502ca02 by ndesaulniers
[BitCode] decode nossp fn attr

I missed this in https://reviews.llvm.org/D87956.

Reviewed By: void

Differential Revision: https://reviews.llvm.org/D90177
The file was modifiedllvm/lib/Bitcode/Reader/BitcodeReader.cpp
The file was modifiedllvm/test/Bitcode/attributes.ll
Commit 56a5b4b1bfafa27dcc0fe48a3095ebc19ac26256 by dblaikie
llvm-reduce: Test reduction for D88684 ( ee6e25e4391a6d3ac0a3c89615474e512f44cda6 )
The file was modifiedllvm/test/Reduce/no-replace-intrinsic-callee-with-undef.ll
Commit 612e02ee8c3e8f204378796af2eb526cf5e348f0 by kostyak
[GWP-ASan] Refactor memory mapping functions

In preparation for Fuchsia support, this CL refactors the memory
mapping functions.

The new functions are as follows:
- for Freeslots and Metadata:
  `void *map(size_t Size, const char *Name) const;`
  `void unmap(void *Ptr, size_t Size) const;`
- for the Pool:
  `void *reservePool(size_t Size);`
  `void commitPool(void *Ptr, size_t Size) const;`
  `void decommitPool(void *Ptr, size_t Size) const;`
  `void unreservePool();`
  Note that those don't need a `Name` parameter as those are fixed per
  function. `{reserve,unreserve}Pool` are not `const` because they will
  modify platform specific class member on Fuchsia.

I added a plethora of `assert()` as the initial code was not enforcing
page alignment for sizes and addresses, which caused problem in the
initial Fuchsia draft. All sizes should now be properly rounded up to
a page.

Differential Revision: https://reviews.llvm.org/D89993
The file was modifiedcompiler-rt/lib/gwp_asan/guarded_pool_allocator.cpp
The file was modifiedcompiler-rt/lib/gwp_asan/guarded_pool_allocator.h
The file was modifiedcompiler-rt/lib/gwp_asan/platform_specific/guarded_pool_allocator_posix.cpp
Commit b03ea054db1bcf9452b3a70e21d3372b6e58759a by Louis Dionne
[libc++] NFC: Minor refactoring in filesystem_test_helper.h to ease readability

The variable declarations interleaved with logic was really difficult
to read. Instead, simply have two different implementations for _WIN32
and others.
The file was modifiedlibcxx/test/support/filesystem_test_helper.h
Commit 437d7551c50d6ea60264b7971bd61b7fd308618b by spatel
[InstCombine] reduce code duplication in icmp intrinsic folds; NFC
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
Commit 05f011b2b6e5992b1637bf306a7f61c17fde83b0 by spatel
[InstCombine] add tests for ctpop at bitwidth limit; NFC
The file was modifiedllvm/test/Transforms/InstCombine/cmp-intrinsic.ll
Commit 5a6e66ec72382d370046e04c415f8c3cb7e8b68d by spatel
[InstCombine] add folds for icmp+ctpop

https://alive2.llvm.org/ce/z/XjFPQJ

  define void @src(i64 %value) {
    %t0 = call i64 @llvm.ctpop.i64(i64 %value)
    %gt = icmp ugt i64 %t0, 63
    %lt = icmp ult i64 %t0, 64
    call void @use(i1 %gt, i1 %lt)
    ret void
  }

  define void @tgt(i64 %value) {
    %eq = icmp eq i64 %value, -1
    %ne = icmp ne i64 %value, -1
    call void @use(i1 %eq, i1 %ne)
    ret void
  }

  declare i64 @llvm.ctpop.i64(i64) #1
  declare void @use(i1, i1)
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
The file was modifiedllvm/test/Transforms/InstCombine/cmp-intrinsic.ll
Commit 3d4aebbb9d99642fcc277c8bd199ead400de2703 by Xiangling.Liao
[AIX] Also error on -G for link-only step

Error on -G on AIX for all modes(preprocess, assemble, compile, link).

Differential Revision: https://reviews.llvm.org/D90063
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/test/Driver/aix-err-options.c
The file was modifiedclang/lib/Driver/Driver.cpp
Commit ba71a0746f31a2f5f9af992f569a9418133a9a38 by tejohnson
[MemProf] Decouple memprof build from COMPILER_RT_BUILD_SANITIZERS

The MemProf compiler-rt support relies on some of the support only built
when COMPILER_RT_BUILD_SANITIZERS was enabled. This showed up in some
initial bot failures, and I addressed those by making the memprof
runtime build also conditional on COMPILER_RT_BUILD_SANITIZERS
(3ed77ecd0a5d5e5c33770f0f9d3d75cf2f80c80b). However, this resulted in
another inconsistency with how the tests were set up that was hit by
Chromium:
  https://bugs.chromium.org/p/chromium/issues/detail?id=1142191

Undo the original bot fix and address this with a more comprehensive fix
that enables memprof to be built even when COMPILER_RT_BUILD_SANITIZERS
is disabled, by also building the necessary pieces under
COMPILER_RT_BUILD_MEMPROF.

Tested by configuring with a similar command as to what was used in the
failing Chromium configure. I reproduced the Chromium failure, as well
as the original bot failure I tried to fix in
3ed77ecd0a5d5e5c33770f0f9d3d75cf2f80c80b, with that fix reverted.
Confirmed it now works.

Differential Revision: https://reviews.llvm.org/D90190
The file was modifiedcompiler-rt/include/CMakeLists.txt
The file was modifiedcompiler-rt/lib/CMakeLists.txt
Commit 89ec5091cc95e062712f544167abd692c9092f7f by Louis Dionne
[libc++] Get rid of <iostream> in a filesystem test
The file was modifiedlibcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.copy_file/copy_file_large.pass.cpp
Commit d4c667c9af0335ac20015decce204c43f03a6cee by Duncan P. N. Exon Smith
Avoid unnecessary uses of `MDNode::getTemporary`, NFC

This is a long-delayed follow-up to
5e5b85098dbeaea2cfa5d01695b5d2982634d7dd.

`TempMDNode` includes a bunch of machinery for RAUW, and should only be
used when necessary. RAUW wasn't being used in any of these cases... it
was just a placeholder for a self-reference.

Where the real node was using `MDNode::getDistinct`, just replace the
temporary argument with `nullptr`.

Where the real node was using `MDNode::get`, the `replaceOperandWith`
call was "promoting" the node to a distinct one implicitly due to
self-reference detection in `MDNode::handleChangedOperand`. The
`TempMDNode` was serving a purpose by delaying uniquing, but it's way
simpler to just call `MDNode::getDistinct` in the first place.

Note that using a self-reference at all in these places is a hold-over
from before `distinct` metadata existed. It was an old trick to create
distinct nodes. It would be intrusive to change, including bitcode
upgrades, etc., and it's harmless so I'm not sure there's much value in
removing it from existing schemas. After this commit it still has a tiny
memory cost (in the extra metadata operand) but no more overhead in
construction.

Differential Revision: https://reviews.llvm.org/D90079
The file was modifiedllvm/lib/Analysis/LoopInfo.cpp
The file was modifiedclang/lib/CodeGen/CGLoopInfo.cpp
The file was modifiedpolly/lib/CodeGen/IRBuilder.cpp
The file was modifiedllvm/lib/IR/MDBuilder.cpp
Commit 9aa7a721ce3dc84d0ad2d987af72cf14ff76d8a7 by tmsriram
Test to check backtraces with machine function splitting.

clang supports option -fsplit-machine-functions and this test checks if the
backtraces are sane when functions are split.

With -fsplit-machine-functions, a function with profiles can get split into 2
parts, the original function containing hot code and a cold part as determined
by the profile info and the cold cutoff threshold.. The cold part gets the
".cold" suffix to disambiguate its symbol from the hot part and can be placed
arbitrarily in the address space.

This test checks if the back-trace looks correct when the cold part is executed.

Differential Revision: https://reviews.llvm.org/D90081
The file was addedlldb/test/Shell/Unwind/Inputs/split-machine-functions.ll
The file was addedlldb/test/Shell/Unwind/split-machine-functions.test
Commit 357715ce97d0bc937301b0b006d145c24a9d23aa by Xiangling.Liao
[NFC] Remove max_align.c LIT testcase

Since we fixed the definition of `SuitableAlign`[https://reviews.llvm.org/D88659],
`max_align_t` and `__BIGGEST_ALIGNMENT__` are not necessarily the same always.

The original testcase was added here: https://reviews.llvm.org/D59048

Differential Revision: https://reviews.llvm.org/D90187
The file was removedclang/test/Headers/max_align.c
Commit df6d2e8ab1a4212284e4763724a2211df2c7394a by martin
[libunwind] Add -Wno-dll-attribute-on-redeclaration when building for windows

It's not worth trying to fix these warnings within libunwind, instead
silence them.

Differential Revision: https://reviews.llvm.org/D90075
The file was modifiedlibunwind/CMakeLists.txt
Commit ad1b9daa4bf40c1907794fd5de7807aad1f0553c by tmsriram
Prepend "__uniq" to symbol names hash with -funique-internal-linkage-names.

Prepend the module name hash with a fixed string ".__uniq." which helps tools
that consume sampled profiles and attribute it to functions to understand
that this symbol belongs to a unique internal linkage type symbol.

Symbols with suffixes can result from various optimizations in the compiler.
Function Multiversioning, function splitting, parameter constant propogation,
unique internal linkage names.

External tools like sampled profile aggregators combine profiles from multiple
runs of a binary. They use various heuristics with symbols that have suffixes
to try and attribute the profile to the right function instance. For instance
multi-versioned symbols like foo.avx, foo.sse4.2, etc even though different
should be attributed to the same source function if a single function is
versioned, using attribute target_clones (supported in GCC but yet to land in
LLVM). Similarly, functions that are split (split part having a .cold suffix)
could have profiles for both the original and split symbols but would be
aggregated and attributed to the original function that was split.

Unique internal linkage functions however have different source instances and
the aggregator must not put them together but attribute it to the appropriate
function instance. To be sure that we are dealing with a symbol of a unique
internal linkage function, we would like to prepend the hash with a known
string ".__uniq." which these tools can check to understand the suffix type.

Differential Revision: https://reviews.llvm.org/D89617
The file was modifiedllvm/test/Transforms/UniqueInternalLinkageNames/unique_symbol_names.ll
The file was modifiedclang/test/CodeGen/unique-internal-linkage-names.cpp
The file was modifiedllvm/lib/Transforms/Utils/UniqueInternalLinkageNames.cpp
Commit c551ba0e90bd2b49ef501d591f8362ba44e5484d by kiran.chandramohan
Run test only if X86 target is available

This fixes failures in AArch64 buildbots by running the
clang/test/CodeGen/X86/att-inline-asm-prefix.c only when the X86
target is available.
The file was modifiedclang/test/CodeGen/X86/att-inline-asm-prefix.c
Commit 038d884a50a4e72d3f65a315d28d35bda024cb4a by Stanislav.Mekhanoshin
[AMDGPU] Use flat scratch instructions where available

The support is disabled by default. So far there is instruction
selection, spilling, and frame elimination. It also changes SP
from unswizzled to swizzled as used by flat scratch instructions,
so it cannot be mixed with MUBUF stack access.

At the very least missing:

- GlobalISel;
- Some optimizations in frame elimination in between vector
  and scalar ALU;
- It shall finally allow to always materialize frame index
  as an SGPR, but that is not implemented and frame elimination
  cannot handle it yet;
- Unaligned and/or multidword flat scratch shall work, but it
  is legalized now for MUBUF;
- Operand folding cannot optimize FI like with MUBUF yet;
- It will need scaling the value of the SP/FP in the DWARF
  expression to recover the unswizzled scratch address;

Differential Revision: https://reviews.llvm.org/D89170
The file was modifiedllvm/lib/Target/AMDGPU/FLATInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIFrameLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/stack-pointer-offset-relative-frameindex.ll
The file was modifiedllvm/lib/Target/AMDGPU/BUFInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/callee-frame-setup.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fast-unaligned-load-store.private.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.td
The file was modifiedllvm/test/CodeGen/AMDGPU/load-hi16.ll
The file was addedllvm/test/CodeGen/AMDGPU/flat-scratch.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-gfx9.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/load-lo16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/sgpr-spill.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/store-hi16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/pei-scavenge-vgpr-spill.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/chain-hi-to-lo.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPU.td
The file was modifiedllvm/test/CodeGen/AMDGPU/call-preserved-registers.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIFoldOperands.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/multi-dword-vgpr-spill.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.h
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.h
The file was modifiedllvm/test/CodeGen/AMDGPU/frame-index-elimination.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/scratch-simple.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
The file was modifiedllvm/test/CodeGen/AMDGPU/memcpy-fixed-align.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/spill-scavenge-offset.ll
Commit f52b4a65f09caf46413d19417505a5f44b36b931 by antiagainst
[mlir] NFC: properly align IR in comments

Reviewed By: aartbik

Differential Revision: https://reviews.llvm.org/D90164
The file was modifiedmlir/include/mlir/Dialect/Vector/VectorTransforms.h
Commit d1afe2e25c29d040f978d0d0ac93fc5aea797901 by Louis Dionne
[libc++] Remove the reliance of several <random> tests on <iostream>
The file was modifiedlibcxx/test/std/numerics/rand/rand.eng/rand.eng.mers/default.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.eng/rand.eng.mers/discard.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.eng/rand.eng.mers/eval.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.bern/rand.dist.bern.bin/eval.pass.cpp
The file was addedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.bern/rand.dist.bern.bin/eval.PR44847.pass.cpp
Commit 4f98eaf655800720739867da7082edb829d84ffd by plotfi
[NFC] Fixing comment heading for MachineStableHash.h.

Wrong filename and description.
The file was modifiedllvm/include/llvm/CodeGen/MachineStableHash.h
Commit 7611c5bb42a96c13d0e53ade546633bf9ed56f0c by jan.kratochvil
[nfc] [lldb] Refactor DWARFUnit::GetDIE

Reduce indentation of the code by early returns for failed code paths.
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
Commit 03e6f40cdba61e6fbe0fef00e92ae1ebaf8431a7 by zinenko
[mlir] Do not print back 0 alignment in LLVM dialect 'alloca' op

The alignment attribute in the 'alloca' op treats the '0' value as 'unset'.
When parsing the custom form of the 'alloca' op, ignore the alignment attribute
with if its value is '0' instead of actually creating it and producing a
slightly different textually yet equivalent semantically form in the output.

Reviewed By: rriddle

Differential Revision: https://reviews.llvm.org/D90179
The file was modifiedmlir/lib/IR/OperationSupport.cpp
The file was modifiedmlir/include/mlir/IR/OperationSupport.h
The file was modifiedmlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
The file was modifiedmlir/test/Dialect/LLVMIR/invalid.mlir
Commit 78a7941e5cff263f20f10c51331f575234417f7e by qcolombet
[TargetRegisterInfo] Fix a couple of typos in the comments

Spotted by Nicolas Guillemot <nguillemot@apple.com>.

Thanks Nicolas!

NFC
The file was modifiedllvm/include/llvm/CodeGen/TargetRegisterInfo.h
Commit 515973222ed29abe49f241e89edb6854f44162d4 by akhuang
[CodeView] Emit static data members as S_CONSTANTs.

We used to only emit static const data members in CodeView as
S_CONSTANTS when they were used; this patch makes it so they are always emitted.

I changed CodeViewDebug.cpp to find the static const members from the
class debug info instead of creating DIGlobalVariables in the IR
whenever a static const data member is used.

Bug: https://bugs.llvm.org/show_bug.cgi?id=47580

Differential Revision: https://reviews.llvm.org/D89072
The file was modifiedclang/lib/CodeGen/CGDebugInfo.cpp
The file was modifiedllvm/test/DebugInfo/COFF/global-constants.ll
The file was modifiedllvm/lib/DebugInfo/CodeView/CodeViewRecordIO.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h
The file was modifiedclang/test/CodeGenCXX/debug-info-static-member.cpp
The file was modifiedllvm/test/DebugInfo/COFF/types-array-unsized.ll
The file was modifiedllvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
Commit db4863ffd1ff0beaf8b13a50beb81d22c8f1137d by zinenko
[MLIR] Fix AttributeInterface declaration.

Substitues `Type` by `Attribute` in the declaration of AttributeInterface. It
looks like the code was written by copy-pasting the definition of TypeInterface,
but the substitution of Type by Attribute was missing at some places.

Reviewed By: rriddle, ftynse

Differential Revision: https://reviews.llvm.org/D90138
The file was modifiedmlir/include/mlir/IR/Attributes.h
Commit b2b7cf39d596b1528cd64015575b3f5d1461c011 by Duncan P. N. Exon Smith
IR: Clarify ownership of ConstantDataSequentials, NFC

Change `ConstantDataSequential::Next` to a
`unique_ptr<ConstantDataSequential>` and update `CDSConstants` to a
`StringMap<unique_ptr<ConstantDataSequential>>`, making the ownership
more obvious.

Differential Revision: https://reviews.llvm.org/D90083
The file was modifiedllvm/lib/IR/LLVMContextImpl.cpp
The file was modifiedllvm/lib/IR/Constants.cpp
The file was modifiedllvm/lib/IR/LLVMContextImpl.h
The file was modifiedllvm/include/llvm/IR/Constants.h
Commit 905f874c449cc114d74eaeb19639664779fd0b6e by Vedant Kumar
[cmake] Add LLVM_UBSAN_FLAGS, to allow overriding UBSan flags

Allow overriding the default set of flags used to enable UBSan when
building llvm.

This can be used to test new checks or opt out of certain checks.

Differential Revision: https://reviews.llvm.org/D89439
The file was modifiedllvm/CMakeLists.txt
The file was modifiedllvm/cmake/modules/HandleLLVMOptions.cmake
The file was modifiedllvm/docs/CMake.rst
Commit 745c1671b16afd6faac84c660eeab881dd6401cf by stephen.neuendorffer
[mlir] Document 'ParentOneOf' with the HasParent trait

Differential Revision: https://reviews.llvm.org/D90197
The file was modifiedmlir/docs/Traits.md
Commit d176e13ca55353c7ee8d4da23be6eae9f82a64e1 by Stanislav.Mekhanoshin
Fixed release build after D89170
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
Commit 0b2f4cdf2bd4e48974099cd441afaabc18ead227 by rahmanl
Explicitly check for entry basic block, rather than relying on MachineBasicBlock::pred_empty.

Sometimes in unoptimized code, we have dangling unreachable basic blocks with no predecessors. Basic block sections should be emitted for those as well. Without this patch, the included test fails with a fatal error in `AsmPrinter::emitBasicBlockEnd`.

Reviewed By: tmsriram

Differential Revision: https://reviews.llvm.org/D89423
The file was modifiedllvm/include/llvm/CodeGen/AsmPrinter.h
The file was modifiedllvm/include/llvm/CodeGen/MachineBasicBlock.h
The file was addedllvm/test/CodeGen/X86/basic-block-sections-unreachable.ll
The file was modifiedllvm/lib/CodeGen/MachineBasicBlock.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
Commit 78f37b74da60ccdca200e457df195d58d76b3b8f by ravishankarm
[mlir][Linalg] Miscalleneous enhancements to cover more fusion cases.

Adds support for
- Dropping unit dimension loops for indexed_generic ops.
- Folding consecutive folding (or expanding) reshapes when the result
  (or src) is a scalar.
- Fixes to indexed_generic -> generic fusion when zero-dim tensors are
  involved.

Differential Revision: https://reviews.llvm.org/D90118
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp
The file was modifiedmlir/test/Dialect/Linalg/canonicalize.mlir
The file was modifiedmlir/test/Dialect/Linalg/fusion-tensor.mlir
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/FusionOnTensors.cpp
The file was modifiedmlir/test/Dialect/Linalg/drop-unit-extent-dims.mlir
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
Commit 5b3bf8b453b8cc00efd5269009a1e63c4442a30e by Adrian Prantl
[DebugInfo] Expose Fortran array debug info attributes through DIBuilder.

The support of a few debug info attributes specifically for Fortran
arrays have been added to LLVM recently, but there's no way to take
advantage of them through DIBuilder. This patch extends
DIBuilder::createArrayType to enable the settings of those attributes.

Patch by Chih-Ping Chen!

Differential Revision: https://reviews.llvm.org/D89817
The file was modifiedllvm/unittests/IR/DebugInfoTest.cpp
The file was modifiedllvm/lib/IR/DIBuilder.cpp
The file was modifiedllvm/include/llvm/IR/DIBuilder.h
Commit a77a739abcfa1c5734d374e1afb51cebdb6f36bd by Vedant Kumar
[profile] Suppress spurious 'expected profile to require unlock' warning

In %c (continuous sync) mode, avoid attempting to unlock an
already-unlocked profile.

The profile is only locked when profile merging is enabled.
The file was modifiedcompiler-rt/lib/profile/InstrProfilingFile.c
The file was modifiedcompiler-rt/test/profile/ContinuousSyncMode/multiple-DSOs.c
Commit 803cc3aff2ce7fe07a59289070477d0ea0c9cf09 by amy.kwan1
[PowerPC] Implement Set Boolean Condition Instructions

This patch implements the set boolean condition instructions introduced in
POWER10.

The set boolean condition instructions (set[n]bc[r]) are used during
the following situations:
- sign/zero/any extending i1 to an i32 or i64,
- reg+reg, reg+imm or floating point comparisons being sign/zero extended to i32 or i64,
- spilling CR bits (using the setnbc instruction)

Differential Revision: https://reviews.llvm.org/D87705
The file was modifiedllvm/test/CodeGen/PowerPC/testComparesi32leu.ll
The file was addedllvm/test/CodeGen/PowerPC/p10-setbc-ri.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.td
The file was addedllvm/test/CodeGen/PowerPC/p10-spill-crlt.ll
The file was addedllvm/test/CodeGen/PowerPC/p10-setboolean-ext-fp.ll
The file was addedllvm/test/CodeGen/PowerPC/p10-spill-crgt.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
The file was addedllvm/test/CodeGen/PowerPC/p10-spill-crun.ll
The file was modifiedllvm/test/CodeGen/PowerPC/testComparesi32gtu.ll
The file was addedllvm/test/CodeGen/PowerPC/p10-setbcr-ri.ll
The file was addedllvm/test/CodeGen/PowerPC/p10-spill-creq.ll
The file was addedllvm/test/CodeGen/PowerPC/p10-setnbc-ri.ll
The file was modifiedllvm/test/CodeGen/PowerPC/crbits.ll
The file was addedllvm/test/CodeGen/PowerPC/p10-setbcr-rr.ll
The file was addedllvm/test/CodeGen/PowerPC/p10-setnbcr-ri.ll
The file was modifiedllvm/test/CodeGen/PowerPC/testComparesi32ltu.ll
The file was modifiedllvm/test/CodeGen/PowerPC/CompareEliminationSpillIssue.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
The file was addedllvm/test/CodeGen/PowerPC/p10-setbc-rr.ll
The file was addedllvm/test/CodeGen/PowerPC/p10-setnbcr-rr.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrPrefix.td
The file was addedllvm/test/CodeGen/PowerPC/p10-setnbc-rr.ll
Commit a5c7b46862ec0531964eb52329cdf009862abecf by richard
Fix checking for C++98 ICEs in C++11-and-later mode to not consider use
of a reference to be acceptable.
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/test/SemaCXX/MicrosoftCompatibility.cpp
Commit b698ad00cbc76f34f48bb639ffb1cfee47a9737e by n.james93
[clang][NFC] Rearrange Comment Token and Lexer fields to reduce padding

Rearrange the fields to reduce the size of the classes

Reviewed By: gribozavr2

Differential Revision: https://reviews.llvm.org/D90127
The file was modifiedclang/lib/AST/CommentLexer.cpp
The file was modifiedclang/include/clang/AST/CommentLexer.h
Commit 779deb9750a4853485ac7beca86f518b067ad6d6 by zequanwu
[lldb][NativePDB] fix test load-pdb.cpp
The file was modifiedlldb/test/Shell/SymbolFile/NativePDB/load-pdb.cpp
Commit 17cdba61d4364ac7d89f6be770afdd4cc8daef83 by gjn
[NFC] Use [MC]Register in RegAllocPBQP & RegisterCoalescer

Differential Revision: https://reviews.llvm.org/D90008
The file was modifiedllvm/lib/CodeGen/RegAllocPBQP.cpp
The file was modifiedllvm/include/llvm/CodeGen/RegAllocPBQP.h
The file was modifiedllvm/lib/CodeGen/RegisterCoalescer.h
The file was modifiedllvm/include/llvm/CodeGen/MachineRegisterInfo.h
The file was modifiedllvm/include/llvm/MC/MCRegister.h
The file was modifiedllvm/lib/CodeGen/RegisterCoalescer.cpp
Commit aab50af8c18ab2eb2149bb516c8a0993ffc5abb7 by Duncan P. N. Exon Smith
SourceManager: Use the same fake SLocEntry whenever it fails to load

Instead of putting a fake `SLocEntry` at `LoadedSLocEntryTable[Index]`
when it fails to load in `SourceManager::loadSLocEntry`, allocate a fake
one. Unless someone is sniffing the address of the returned `SLocEntry`
(doubtful), this won't be a functionality change. Note that
`SLocEntryLoaded[Index]` wasn't being set to `true` either before or
after this change so no accessor is every going to look at
`LoadedSLocEntryTable[Index]`.

As a side effect, drop the `mutable` from `LoadedSLocEntryTable`.

Differential Revision: https://reviews.llvm.org/D89748
The file was modifiedclang/include/clang/Basic/SourceManager.h
The file was modifiedclang/lib/Basic/SourceManager.cpp
Commit 8a1ca2cd347cf80b377b36d1a7af3f31ec5b575e by riddleriver
[mlir] Add a conversion pass between PDL and the  PDL Interpreter Dialect

The conversion between PDL and the interpreter is split into several different parts.
** The Matcher:

The matching section of all incoming pdl.pattern operations is converted into a predicate tree and merged. Each pattern is first converted into an ordered list of predicates starting from the root operation. A predicate is composed of three distinct parts:
* Position
  - A position refers to a specific location on the input DAG, i.e. an
    existing MLIR entity being matched. These can be attributes, operands,
    operations, results, and types. Each position also defines a relation to
    its parent. For example, the operand `[0] -> 1` has a parent operation
    position `[0]` (the root).
* Question
  - A question refers to a query on a specific positional value. For
  example, an operation name question checks the name of an operation
  position.
* Answer
  - An answer is the expected result of a question. For example, when
  matching an operation with the name "foo.op". The question would be an
  operation name question, with an expected answer of "foo.op".

After the predicate lists have been created and ordered(based on occurrence of common predicates and other factors), they are formed into a tree of nodes that represent the branching flow of a pattern match. This structure allows for efficient construction and merging of the input patterns. There are currently only 4 simple nodes in the tree:
* ExitNode: Represents the termination of a match
* SuccessNode: Represents a successful match of a specific pattern
* BoolNode/SwitchNode: Branch to a specific child node based on the expected answer to a predicate question.

Once the matcher tree has been generated, this tree is walked to generate the corresponding interpreter operations.

** The Rewriter:
The rewriter portion of a pattern is generated in a very straightforward manor, similarly to lowerings in other dialects. Each PDL operation that may exist within a rewrite has a mapping into the interpreter dialect. The code for the rewriter is generated within a FuncOp, that is invoked by the interpreter on a successful pattern match. Referenced values defined in the matcher become inputs the generated rewriter function.

An example lowering is shown below:

```mlir
// The following high level PDL pattern:
pdl.pattern : benefit(1) {
  %resultType = pdl.type
  %inputOperand = pdl.input
  %root, %results = pdl.operation "foo.op"(%inputOperand) -> %resultType
  pdl.rewrite %root {
    pdl.replace %root with (%inputOperand)
  }
}

// is lowered to the following:
module {
  // The matcher function takes the root operation as an input.
  func @matcher(%arg0: !pdl.operation) {
    pdl_interp.check_operation_name of %arg0 is "foo.op" -> ^bb2, ^bb1
  ^bb1:
    pdl_interp.return
  ^bb2:
    pdl_interp.check_operand_count of %arg0 is 1 -> ^bb3, ^bb1
  ^bb3:
    pdl_interp.check_result_count of %arg0 is 1 -> ^bb4, ^bb1
  ^bb4:
    %0 = pdl_interp.get_operand 0 of %arg0
    pdl_interp.is_not_null %0 : !pdl.value -> ^bb5, ^bb1
  ^bb5:
    %1 = pdl_interp.get_result 0 of %arg0
    pdl_interp.is_not_null %1 : !pdl.value -> ^bb6, ^bb1
  ^bb6:
    // This operation corresponds to a successful pattern match.
    pdl_interp.record_match @rewriters::@rewriter(%0, %arg0 : !pdl.value, !pdl.operation) : benefit(1), loc([%arg0]), root("foo.op") -> ^bb1
  }
  module @rewriters {
    // The inputs to the rewriter from the matcher are passed as arguments.
    func @rewriter(%arg0: !pdl.value, %arg1: !pdl.operation) {
      pdl_interp.replace %arg1 with(%arg0)
      pdl_interp.return
    }
  }
}
```

Differential Revision: https://reviews.llvm.org/D84580
The file was addedmlir/test/Conversion/PDLToPDLInterp/pdl-to-pdl-interp-rewriter.mlir
The file was addedmlir/lib/Conversion/PDLToPDLInterp/Predicate.cpp
The file was addedmlir/lib/Conversion/PDLToPDLInterp/Predicate.h
The file was modifiedmlir/include/mlir/Conversion/Passes.h
The file was addedmlir/lib/Conversion/PDLToPDLInterp/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/PassDetail.h
The file was modifiedmlir/include/mlir/Conversion/Passes.td
The file was addedmlir/include/mlir/Conversion/PDLToPDLInterp/PDLToPDLInterp.h
The file was modifiedmlir/include/mlir/Dialect/PDLInterp/IR/PDLInterpOps.td
The file was modifiedmlir/include/mlir/Support/StorageUniquer.h
The file was addedmlir/lib/Conversion/PDLToPDLInterp/PDLToPDLInterp.cpp
The file was addedmlir/test/Conversion/PDLToPDLInterp/pdl-to-pdl-interp-matcher.mlir
The file was addedmlir/lib/Conversion/PDLToPDLInterp/PredicateTree.h
The file was modifiedmlir/lib/Conversion/CMakeLists.txt
The file was addedmlir/lib/Conversion/PDLToPDLInterp/PredicateTree.cpp
Commit b99bd771626fbbf8b9b29ce312d4151968796826 by riddleriver
[mlir][Pattern] Refactor the Pattern class into a "metadata only" class

The Pattern class was originally intended to be used for solely matching operations, but that use never materialized. All of the pattern infrastructure uses RewritePattern, and the infrastructure for pure matching(Matchers.h) is implemented inline. This means that this class isn't a useful abstraction at the moment, so this revision refactors it to solely encapsulate the "metadata" of a pattern. The metadata includes the various state describing a pattern; benefit, root operation, etc. The API on PatternApplicator is updated to now operate on `Pattern`s as nothing special from `RewritePattern` is necessary.

This refactoring is also necessary for the upcoming use of PDL patterns alongside C++ rewrite patterns.

Differential Revision: https://reviews.llvm.org/D86258
The file was modifiedmlir/docs/PatternRewriter.md
The file was modifiedmlir/lib/IR/PatternMatch.cpp
The file was modifiedmlir/lib/Transforms/DialectConversion.cpp
The file was modifiedmlir/include/mlir/IR/PatternMatch.h
The file was modifiedmlir/test/lib/Dialect/Test/TestPatterns.cpp
The file was modifiedmlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
Commit b6eb26fd0e316b36e3750f7cba7ebdb10219790c by riddleriver
[mlir][NFC] Move around the code related to PatternRewriting to improve layering

There are several pieces of pattern rewriting infra in IR/ that really shouldn't be there. This revision moves those pieces to a better location such that they are easier to evolve in the future(e.g. with PDL). More concretely this revision does the following:

* Create a Transforms/GreedyPatternRewriteDriver.h and move the apply*andFold methods there.
The definitions for these methods are already in Transforms/ so it doesn't make sense for the declarations to be in IR.

* Create a new lib/Rewrite library and move PatternApplicator there.
This new library will be focused on applying rewrites, and will also include compiling rewrites with PDL.

Differential Revision: https://reviews.llvm.org/D89103
The file was modifiedmlir/lib/Transforms/Inliner.cpp
The file was modifiedmlir/test/lib/Transforms/TestConvVectorization.cpp
The file was modifiedmlir/include/mlir/IR/PatternMatch.h
The file was modifiedmlir/test/lib/Dialect/Affine/TestAffineDataCopy.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp
The file was modifiedmlir/lib/Dialect/Quant/Transforms/ConvertSimQuant.cpp
The file was addedmlir/lib/Rewrite/CMakeLists.txt
The file was modifiedmlir/test/lib/Dialect/Test/TestPatterns.cpp
The file was modifiedmlir/test/lib/Dialect/Test/TestTraits.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
The file was modifiedmlir/lib/Dialect/Affine/Utils/Utils.cpp
The file was modifiedmlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
The file was modifiedmlir/lib/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
The file was modifiedmlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp
The file was modifiedmlir/test/lib/Transforms/TestLinalgFusionTransforms.cpp
The file was modifiedmlir/lib/Transforms/CMakeLists.txt
The file was modifiedmlir/lib/Transforms/Utils/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
The file was modifiedmlir/test/lib/Transforms/TestVectorTransforms.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
The file was modifiedmlir/test/lib/Transforms/TestExpandTanh.cpp
The file was addedmlir/include/mlir/Transforms/GreedyPatternRewriteDriver.h
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
The file was modifiedmlir/test/lib/Transforms/TestLinalgTransforms.cpp
The file was modifiedmlir/test/lib/Transforms/TestGpuRewrite.cpp
The file was modifiedmlir/lib/Dialect/Affine/Transforms/AffineDataCopyGeneration.cpp
The file was modifiedmlir/lib/Dialect/Affine/Transforms/SimplifyAffineStructures.cpp
The file was addedmlir/include/mlir/Rewrite/PatternApplicator.h
The file was modifiedmlir/lib/Transforms/Canonicalizer.cpp
The file was modifiedmlir/lib/Conversion/VectorToSCF/VectorToSCF.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/CodegenStrategy.cpp
The file was removedmlir/lib/Transforms/DialectConversion.cpp
The file was modifiedmlir/lib/IR/PatternMatch.cpp
The file was addedmlir/lib/Transforms/Utils/DialectConversion.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/FusionOnTensors.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Loops.cpp
The file was addedmlir/lib/Rewrite/PatternApplicator.cpp
The file was modifiedmlir/lib/Conversion/StandardToSPIRV/LegalizeStandardForSPIRV.cpp
The file was modifiedmlir/lib/Dialect/Shape/Transforms/RemoveShapeConstraints.cpp
The file was modifiedmlir/lib/Conversion/ShapeToStandard/ConvertShapeConstraints.cpp
The file was modifiedmlir/lib/Dialect/Quant/Transforms/ConvertConst.cpp
The file was modifiedmlir/lib/Transforms/Utils/LoopUtils.cpp
Commit 3fffffa882c0c3702e1ce4c6eaf8a380ac4ab065 by riddleriver
[mlir][Pattern] Add a new FrozenRewritePatternList class

This class represents a rewrite pattern list that has been frozen, and thus immutable. This replaces the uses of OwningRewritePatternList in pattern driver related API, such as dialect conversion. When PDL becomes more prevalent, this API will allow for optimizing a set of patterns once without the need to do this per run of a pass.

Differential Revision: https://reviews.llvm.org/D89104
The file was modifiedmlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp
The file was modifiedmlir/examples/toy/Ch7/mlir/LowerToAffineLoops.cpp
The file was modifiedmlir/lib/Transforms/Inliner.cpp
The file was modifiedmlir/lib/Conversion/SCFToGPU/SCFToGPUPass.cpp
The file was modifiedmlir/lib/Conversion/LinalgToStandard/LinalgToStandard.cpp
The file was modifiedmlir/lib/Dialect/Quant/Transforms/ConvertSimQuant.cpp
The file was modifiedmlir/include/mlir/IR/PatternMatch.h
The file was modifiedmlir/lib/Dialect/StandardOps/Transforms/ExpandAtomic.cpp
The file was modifiedmlir/include/mlir/Transforms/DialectConversion.h
The file was modifiedmlir/lib/Dialect/Affine/Transforms/SimplifyAffineStructures.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/FusionOnTensors.cpp
The file was modifiedmlir/test/lib/Dialect/Test/TestTraits.cpp
The file was modifiedmlir/lib/Dialect/SPIRV/Transforms/DecorateSPIRVCompositeTypeLayoutPass.cpp
The file was modifiedmlir/lib/Conversion/GPUCommon/ConvertLaunchFuncToRuntimeCalls.cpp
The file was modifiedmlir/test/lib/Transforms/TestLinalgFusionTransforms.cpp
The file was modifiedmlir/include/mlir/Transforms/GreedyPatternRewriteDriver.h
The file was modifiedmlir/examples/toy/Ch6/mlir/LowerToAffineLoops.cpp
The file was modifiedmlir/lib/Transforms/Canonicalizer.cpp
The file was modifiedmlir/lib/Conversion/LinalgToLLVM/LinalgToLLVM.cpp
The file was addedmlir/lib/Rewrite/FrozenRewritePatternList.cpp
The file was modifiedmlir/lib/Dialect/StandardOps/Transforms/Bufferize.cpp
The file was modifiedmlir/lib/Conversion/VectorToROCDL/VectorToROCDL.cpp
The file was modifiedmlir/test/lib/Transforms/TestGpuRewrite.cpp
The file was modifiedmlir/lib/Conversion/AsyncToLLVM/AsyncToLLVM.cpp
The file was modifiedmlir/lib/Dialect/SCF/Transforms/Bufferize.cpp
The file was modifiedmlir/test/lib/Transforms/TestVectorTransforms.cpp
The file was modifiedmlir/test/lib/Dialect/SPIRV/TestAvailability.cpp
The file was modifiedmlir/test/lib/Transforms/TestConvVectorization.cpp
The file was modifiedmlir/test/lib/Transforms/TestLinalgTransforms.cpp
The file was modifiedmlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
The file was modifiedmlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
The file was modifiedmlir/examples/toy/Ch6/mlir/LowerToLLVM.cpp
The file was modifiedmlir/lib/Conversion/SCFToStandard/SCFToStandard.cpp
The file was modifiedmlir/lib/Transforms/Utils/DialectConversion.cpp
The file was modifiedmlir/test/lib/Transforms/TestConvertCallOp.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp
The file was modifiedmlir/lib/Rewrite/PatternApplicator.cpp
The file was modifiedmlir/lib/Conversion/StandardToSPIRV/ConvertStandardToSPIRVPass.cpp
The file was modifiedmlir/lib/Dialect/Affine/Utils/Utils.cpp
The file was addedmlir/include/mlir/Rewrite/FrozenRewritePatternList.h
The file was modifiedmlir/test/lib/Dialect/Test/TestPatterns.cpp
The file was modifiedmlir/lib/Conversion/AVX512ToLLVM/ConvertAVX512ToLLVM.cpp
The file was modifiedmlir/lib/Conversion/StandardToSPIRV/LegalizeStandardForSPIRV.cpp
The file was modifiedmlir/examples/toy/Ch5/mlir/LowerToAffineLoops.cpp
The file was modifiedmlir/lib/Dialect/Shape/Transforms/RemoveShapeConstraints.cpp
The file was modifiedmlir/examples/toy/Ch7/mlir/LowerToLLVM.cpp
The file was modifiedmlir/lib/Conversion/SPIRVToLLVM/ConvertSPIRVToLLVMPass.cpp
The file was modifiedmlir/lib/Dialect/Quant/Transforms/ConvertConst.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/CodegenStrategy.cpp
The file was modifiedmlir/lib/Dialect/Affine/Transforms/AffineDataCopyGeneration.cpp
The file was modifiedmlir/lib/Dialect/Shape/Transforms/Bufferize.cpp
The file was modifiedmlir/include/mlir/Rewrite/PatternApplicator.h
The file was modifiedmlir/lib/Conversion/VectorToSCF/VectorToSCF.cpp
The file was modifiedmlir/lib/Dialect/SPIRV/Transforms/LowerABIAttributesPass.cpp
The file was modifiedmlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
The file was modifiedmlir/test/lib/Transforms/TestExpandTanh.cpp
The file was modifiedmlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
The file was modifiedmlir/lib/Conversion/LinalgToSPIRV/LinalgToSPIRVPass.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Bufferize.cpp
The file was modifiedmlir/test/lib/Transforms/TestBufferPlacement.cpp
The file was modifiedmlir/lib/Conversion/AffineToStandard/AffineToStandard.cpp
The file was modifiedmlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
The file was modifiedmlir/lib/Dialect/Shape/Transforms/ShapeToShapeLowering.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
The file was modifiedmlir/lib/Conversion/GPUToSPIRV/ConvertGPUToSPIRVPass.cpp
The file was modifiedmlir/lib/Rewrite/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/ShapeToStandard/ShapeToStandard.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Loops.cpp
The file was modifiedmlir/lib/Conversion/SPIRVToLLVM/ConvertLaunchFuncToLLVMCalls.cpp
The file was modifiedmlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
Commit 52821f6a71a568f966427b627839d40641653757 by Duncan P. N. Exon Smith
IR: Add a comment at missing std::make_unique calls from b2b7cf39d596b1528cd64015575b3f5d1461c011, NFC
The file was modifiedllvm/lib/IR/Constants.cpp
Commit 0efbfa38ae009c1d5a47ba84c3ba9b9681689996 by tu.da.wei
[NPM] Port -slsr to NPM

`-separate-const-offset-from-gep` has not yet be ported, so some tests are not updated.

Reviewed By: aeubanks

Differential Revision: https://reviews.llvm.org/D90149
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/test/Transforms/StraightLineStrengthReduce/slsr-add.ll
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/lib/Transforms/Scalar/Scalar.cpp
The file was modifiedllvm/test/Transforms/StraightLineStrengthReduce/slsr-gep.ll
The file was modifiedllvm/lib/Transforms/Scalar/StraightLineStrengthReduce.cpp
The file was modifiedllvm/test/Transforms/StraightLineStrengthReduce/AMDGPU/pr23975.ll
The file was modifiedllvm/test/Transforms/StraightLineStrengthReduce/slsr-mul.ll
The file was modifiedllvm/include/llvm/InitializePasses.h
The file was addedllvm/include/llvm/Transforms/Scalar/StraightLineStrengthReduce.h
The file was modifiedllvm/test/Transforms/StraightLineStrengthReduce/X86/no-slsr.ll
Commit 7a880ab3889227469c5d6f0d5579f32747420234 by carl.ritson
[AMDGPU] Move WQM Pass after MI Scheduler

Exec mask manipulation inserted by SIWholeQuadMode barriers to
instruction scheduling.  Move the entire pass after the machine
instruction scheduler and make changes so pass is correct for
non-SSA operation.  These changes should leave the pass still
usable pre-scheduler, although tests have be updated to reflect
post-scheduler results.

Reviewed By: nhaehnle

Differential Revision: https://reviews.llvm.org/D88081
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.o.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.softwqm.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.d16.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.a16.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/atomic_optimizations_buffer.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/atomic_optimizations_raw_buffer.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/wwm-reserved.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.gather4.a16.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/wqm.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/atomic_optimizations_struct_buffer.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.ps.live.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.a16.dim.ll
Commit aaf7ffd4e1aa81c7f4cc8da4f943982ca2e131f4 by chandlerc
Teach `-fsanitize=fuzzer` to respect `-static` and `-static-libstdc++` when adding C++ standard libraries.

Summary:
Makes linking the sanitizers follow the same logic as the rest of the
driver with respect to the static linking strategy for the C++ standard
library.

Subscribers: mcrosier, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D80488
The file was modifiedclang/test/Driver/fuzzer.c
The file was modifiedclang/lib/Driver/ToolChains/CommonArgs.cpp
Commit 470d2d1d28c6ffa45cc40ad8c35cb79851741131 by craig.topper
Update email addresses in CODE_OWNERS.
The file was modifiedllvm/CODE_OWNERS.TXT
Commit ebb4ea1d53aaccd91138bfd6afdc9b39fd784d83 by Duncan P. N. Exon Smith
IR: Simplify two loops walking ConstantDataSequential, NFC

Follow-up to b2b7cf39d596b1528cd64015575b3f5d1461c011.

Differential Revision: https://reviews.llvm.org/D90198
The file was modifiedllvm/lib/IR/Constants.cpp
Commit f057e6dc5e29751dbba700bc62d8c42c57a502b0 by Duncan P. N. Exon Smith
SourceManager: clang-format the SrcMgr namespace, NFC
The file was modifiedclang/include/clang/Basic/SourceManager.h
Commit 00e573cadb2791804fd0859d0ee05b27b702e11e by czhengsz
[LSR] fix typo in comments and rename for a new added hook.
The file was modifiedllvm/lib/Target/PowerPC/PPCTargetTransformInfo.h
The file was modifiedllvm/lib/Analysis/TargetTransformInfo.cpp
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h
The file was modifiedllvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfo.h
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfoImpl.h
The file was modifiedllvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
Commit e20d64c3d9d81cad701f31d8481367222c76c787 by tianshilei1992
[Clang][OpenMP] Fixed an issue of segment fault when using target nowait

The implementation of target nowait just wraps the target region into a task. The essential four parameters (base ptr, ptr, size, mapper) are taken as firstprivate such that they will be copied to the private location. When there is no user-defined mapper, the mapper variable will be nullptr. However, it will be still copied to the corresponding place. Therefore, a memcpy will be generated and the source pointer will be nullptr, causing a segmentation fault. The root cause is when calling `emitOffloadingArraysArgument`, the last argument `Options` has a field about whether it requires a task. It only takes depend clause into account. In this patch, the nowait clause is also included.

There're two things that will be done in another patches:
1. target data nowait has not been supported yet. D90099 added the support.
2. When there is no mapper, the mapper array can be nullptr no matter whether it requires outer task or not. It can avoid an unnecessary data copy. This is an optimization that is covered in D90101.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D89844
The file was addedopenmp/libomptarget/test/offloading/bug47654.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
Commit 67f52f35d62b25f929646e972287c7b5397a044e by riddleriver
[mlir][StorageUniquer] Refactor parametric storage to use sharded dense sets

This revisions implements sharding in the storage of parametric instances to decrease lock contention by sharding out the allocator/mutex/etc. to use for a specific storage instance based on the hash key. This is a somewhat common approach to reducing lock contention on data structures, and is used by the concurrent hashmaps provided by folly/java/etc. For several compilations tested, this removed all/most lock contention from profiles and reduced compile time by several seconds.

Differential Revision: https://reviews.llvm.org/D89659
The file was modifiedmlir/include/mlir/Support/StorageUniquer.h
The file was modifiedmlir/lib/Support/StorageUniquer.cpp
Commit eda450bb27c4638ba191deaa92526c5ad0fcb87f by riddleriver
[mlir][SymbolTable] Use Identifier instead of StringRef when looking up symbol name attributes

Using an Identifier is much more efficient for attribute lookups because it uses pointer comparison as opposed to string comparison.

Differential Revision: https://reviews.llvm.org/D89660
The file was modifiedmlir/lib/IR/SymbolTable.cpp
Commit 90c0b0d3d67caf8d64b04b3e2cfb9b7ef0fbbd74 by aeubanks
Port -objc-arc-apelim to NPM

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D90181
The file was modifiedllvm/include/llvm/Transforms/ObjCARC.h
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/lib/Transforms/ObjCARC/ObjCARCAPElim.cpp
The file was modifiedllvm/test/Transforms/ObjCARC/apelim.ll
Commit 3dd1c724581ab7aab8bae7bb6e0566c52b1f9a9d by aeubanks
Port -objc-arc-expand to NPM

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D90182
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/include/llvm/Transforms/ObjCARC.h
The file was modifiedllvm/lib/Transforms/ObjCARC/ObjCARCExpand.cpp
The file was modifiedllvm/test/Transforms/ObjCARC/expand.ll
Commit a87f618ea7950f096093953b41baba24775b397f by aeubanks
[PlaceSafepoints] Pin tests to legacy PM

This pass isn't used in tree and can be ported to the NPM later on if desired.

Differential Revision: https://reviews.llvm.org/D90189
The file was modifiedllvm/test/Transforms/PlaceSafepoints/finite-loops.ll
The file was modifiedllvm/test/Transforms/PlaceSafepoints/libcall.ll
The file was modifiedllvm/test/Transforms/PlaceSafepoints/split-backedge.ll
The file was modifiedllvm/test/Transforms/PlaceSafepoints/memset.ll
The file was modifiedllvm/test/Transforms/PlaceSafepoints/no-statepoints.ll
The file was modifiedllvm/test/Transforms/PlaceSafepoints/statepoint-coreclr.ll
The file was modifiedllvm/test/Transforms/PlaceSafepoints/statepoint-frameescape.ll
The file was modifiedllvm/test/Transforms/PlaceSafepoints/basic.ll
The file was modifiedllvm/test/Transforms/PlaceSafepoints/call-in-loop.ll
Commit 504fbec7a61cdfbb5f6e1b25cf14afe5195ccaf6 by aeubanks
[AlwaysInliner] Pass callee AAResults to InlineFunction()

Test copied from noalias-calls.ll with small changes.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D89609
The file was modifiedllvm/lib/Transforms/IPO/AlwaysInliner.cpp
The file was addedllvm/test/Transforms/Inline/noalias-calls-always.ll
Commit 2c08f1b4b69e1953044abdcdf06f78613e01cc8c by bing1.yu
[CostModel][X86] teach TTI calculate cost of chain of vector inserts/extracts more precisely and correctly:In each 128-lane, if there is at least one index is demanded and not all indices are demanded...

In each 128-lane, if there is at least one index is demanded and not all
indices are demanded and this 128-lane is not the first 128-lane of the
legalized-vector, then this 128-lane needs a extracti128;
If in each 128-lane, there is at least one index is demanded, this 128-lane
needs a inserti128.

The following cases will help you build a better understanding:
Assume we insert several elements into a v8i32 vector in avx2,
Case#1: inserting into 1th index needs vpinsrd + inserti128
Case#2: inserting into 5th index needs extracti128 + vpinsrd +
inserti128
Case#3: inserting into 4,5,6,7 index needs 4*vpinsrd + inserti128.

Reviewed By: pengfei, RKSimon

Differential Revision: https://reviews.llvm.org/D89767
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp
The file was modifiedllvm/test/Analysis/CostModel/X86/arith-fp.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/fptoui.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/fptosi.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/load_store.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/sitofp.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/masked-intrinsic-cost.ll
Commit 4af5ba17263a5103ce983f9ebccdbd9c5d9d0e33 by aeubanks
Revert "[AlwaysInliner] Pass callee AAResults to InlineFunction()"

This reverts commit 504fbec7a61cdfbb5f6e1b25cf14afe5195ccaf6.

Test failure.
The file was modifiedllvm/lib/Transforms/IPO/AlwaysInliner.cpp
The file was removedllvm/test/Transforms/Inline/noalias-calls-always.ll
Commit e5766f25c62c185632e3a75bf45b313eadab774b by aeubanks
Use uint64_t for branch weights instead of uint32_t

CallInst::updateProfWeight() creates branch_weights with i64 instead of i32.
To be more consistent everywhere and remove lots of casts from uint64_t
to uint32_t, use i64 for branch_weights.

Reviewed By: davidxl

Differential Revision: https://reviews.llvm.org/D88609
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
The file was modifiedllvm/test/Transforms/PGOProfile/criticaledge.ll
The file was modifiedllvm/test/Transforms/Util/libcalls-shrinkwrap-float.ll
The file was modifiedllvm/test/Transforms/PGOProfile/thinlto_cspgo_use.ll
The file was modifiedllvm/unittests/Analysis/ProfileSummaryInfoTest.cpp
The file was modifiedllvm/test/Instrumentation/AddressSanitizer/basic.ll
The file was modifiedllvm/include/llvm/IR/Instructions.h
The file was modifiedllvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
The file was modifiedllvm/lib/Transforms/Utils/MisExpect.cpp
The file was modifiedclang/test/Profile/cxx-class.cpp
The file was modifiedllvm/test/Transforms/SCCP/switch.ll
The file was modifiedllvm/test/Transforms/SampleProfile/profile-format.ll
The file was modifiedllvm/include/llvm/Transforms/Scalar/LowerExpectIntrinsic.h
The file was modifiedclang/test/Profile/cxx-lambda.cpp
The file was modifiedllvm/test/Transforms/PGOProfile/instr_entry_bb.ll
The file was modifiedcompiler-rt/test/profile/Linux/instrprof-cs.c
The file was modifiedllvm/test/Transforms/PGOProfile/fix_entry_count.ll
The file was modifiedllvm/test/Transforms/LoopUnroll/peel-loop-pgo.ll
The file was modifiedcompiler-rt/test/profile/instrprof-write-file.c
The file was modifiedcompiler-rt/test/profile/instrprof-write-file-only.c
The file was modifiedllvm/test/Transforms/JumpThreading/threading_prof2.ll
The file was modifiedcompiler-rt/test/profile/instrprof-set-filename-then-reset-default.c
The file was modifiedcompiler-rt/test/profile/instrprof-basic.c
The file was modifiedllvm/test/Transforms/PGOProfile/select1.ll
The file was modifiedcompiler-rt/test/profile/instrprof-hostname.c
The file was modifiedcompiler-rt/test/profile/instrprof-set-filename.c
The file was addedllvm/test/Analysis/BranchProbabilityInfo/basic_i32.ll
The file was modifiedclang/test/Profile/cxx-throws.cpp
The file was modifiedllvm/include/llvm/IR/MDBuilder.h
The file was modifiedllvm/test/Transforms/LowerExpectIntrinsic/basic.ll
The file was modifiedllvm/test/Transforms/PGOProfile/indirect_call_promotion.ll
The file was modifiedclang/test/Profile/c-captured.c
The file was modifiedllvm/test/Transforms/SampleProfile/profile-format-compress.ll
The file was modifiedclang/test/CodeGenCXX/attr-likelihood-if-vs-builtin-expect.cpp
The file was modifiedcompiler-rt/test/profile/instrprof-override-filename.c
The file was modifiedllvm/test/Analysis/BranchProbabilityInfo/basic.ll
The file was removedclang/test/Profile/c-counter-overflows.c
The file was modifiedllvm/include/llvm/Transforms/Utils/MisExpect.h
The file was modifiedclang/test/CodeGenCXX/microsoft-abi-thread-safe-statics.cpp
The file was modifiedllvm/test/Transforms/SimplifyCFG/preserve-branchweights-switch-create.ll
The file was modifiedllvm/test/Transforms/PGOProfile/cspgo_profile_summary.ll
The file was modifiedllvm/test/Transforms/PGOProfile/indirectbr.ll
The file was modifiedllvm/test/Transforms/LowerExpectIntrinsic/phi_merge.ll
The file was modifiedcompiler-rt/test/profile/instrprof-override-filename-then-reset-default.c
The file was modifiedllvm/lib/Analysis/BranchProbabilityInfo.cpp
The file was modifiedcompiler-rt/test/profile/Inputs/comdat_rename_2.cpp
The file was modifiedcompiler-rt/test/profile/instrprof-reset-counters.c
The file was modifiedclang/test/CodeGenCXX/static-initializer-branch-weights.cpp
The file was modifiedllvm/test/Transforms/PGOProfile/icp_invoke.ll
The file was modifiedllvm/test/Transforms/PGOProfile/chr.ll
The file was modifiedllvm/test/Transforms/PGOProfile/icp_covariant_call_return.ll
The file was modifiedllvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
The file was modifiedllvm/test/Transforms/PGOProfile/branch1.ll
The file was modifiedllvm/test/Transforms/PGOProfile/icp_vararg.ll
The file was modifiedllvm/test/Transforms/PGOProfile/loop1.ll
The file was modifiedclang/test/Profile/cxx-rangefor.cpp
The file was modifiedllvm/test/Transforms/CodeExtractor/MultipleExitBranchProb.ll
The file was modifiedllvm/test/Transforms/LowerExpectIntrinsic/phi_or.ll
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
The file was modifiedllvm/test/Transforms/PGOProfile/switch.ll
The file was modifiedllvm/test/Transforms/JumpThreading/update-edge-weight.ll
The file was modifiedclang/test/Profile/objc-general.m
The file was modifiedllvm/test/Transforms/PGOProfile/landingpad.ll
The file was modifiedllvm/lib/Transforms/Utils/CodeExtractor.cpp
The file was modifiedllvm/test/Transforms/SampleProfile/entry_counts_cold.ll
The file was modifiedllvm/test/Transforms/SimplifyCFG/preserve-branchweights.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/tripcount.ll
The file was modifiedllvm/test/Transforms/PGOProfile/remap.ll
The file was modifiedllvm/test/Transforms/LoopUnroll/runtime-loop-branchweight.ll
The file was modifiedllvm/test/Transforms/SimpleLoopUnswitch/basictest-profmd.ll
The file was modifiedllvm/test/Transforms/SampleProfile/indirect-call.ll
The file was modifiedllvm/lib/IR/MDBuilder.cpp
The file was modifiedllvm/test/Transforms/PGOProfile/noreturncall.ll
The file was modifiedllvm/test/Transforms/JumpThreading/threading_prof1.ll
The file was modifiedllvm/test/Transforms/PGOProfile/select2.ll
The file was modifiedllvm/test/Transforms/CorrelatedValuePropagation/profmd.ll
The file was modifiedllvm/test/Transforms/PGOProfile/branch2.ll
The file was modifiedcompiler-rt/test/profile/Inputs/comdat_rename_1.cpp
The file was modifiedllvm/test/Transforms/SampleProfile/inline-mergeprof.ll
The file was modifiedllvm/test/Transforms/LowerExpectIntrinsic/phi_tern.ll
The file was modifiedllvm/test/Transforms/SimpleLoopUnswitch/trivial-unswitch-profmd.ll
The file was modifiedllvm/test/Transforms/PGOProfile/memop_size_opt.ll
The file was modifiedllvm/test/Transforms/PGOProfile/thinlto_indirect_call_promotion.ll
The file was modifiedcompiler-rt/test/profile/instrprof-dump.c
The file was modifiedclang/test/Profile/cxx-templates.cpp
The file was modifiedclang/test/CodeGenCXX/attr-likelihood-switch-branch-weights.cpp
The file was modifiedclang/test/Profile/c-general.c
The file was modifiedllvm/test/Transforms/SampleProfile/inline-mergeprof-dup.ll
The file was modifiedllvm/test/Transforms/LoopUnroll/peel-loop-pgo-deopt.ll
The file was modifiedllvm/test/Transforms/PGOProfile/multiple_hash_profile.ll
The file was modifiedllvm/lib/Transforms/Scalar/LowerExpectIntrinsic.cpp
The file was modifiedllvm/test/Transforms/PGOProfile/indirect_call_promotion_musttail.ll
The file was modifiedllvm/test/Transforms/Util/libcalls-shrinkwrap-long-double.ll
The file was modifiedclang/test/CodeGenCXX/attr-likelihood-if-branch-weights.cpp
The file was modifiedllvm/test/Transforms/SimplifyCFG/switch-profmd.ll
The file was modifiedllvm/test/Transforms/SimplifyCFG/invoke_unwind.ll
The file was modifiedclang/test/CodeGenCXX/profile-remap.cpp
The file was modifiedcompiler-rt/test/profile/Linux/instrprof-basic.c
The file was modifiedclang/test/CodeGen/catch-undef-behavior.c
The file was modifiedllvm/test/Transforms/LowerExpectIntrinsic/expect-with-probability.ll
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
The file was modifiedllvm/test/Transforms/PGOProfile/loop2.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/check-prof-info.ll
The file was modifiedllvm/test/Transforms/PGOProfile/indirect_call_promotion_vla.ll
The file was modifiedclang/lib/CodeGen/CodeGenPGO.cpp
The file was modifiedllvm/lib/IR/Instructions.cpp
The file was modifiedllvm/test/Transforms/PGOProfile/icp_covariant_invoke_return.ll
The file was modifiedcompiler-rt/test/profile/instrprof-without-libc.c
The file was modifiedllvm/test/Transforms/LowerExpectIntrinsic/expect_nonboolean.ll
The file was modifiedclang/test/Profile/gcc-flag-compatibility.c
The file was modifiedcompiler-rt/test/profile/instrprof-override-filename-with-env.c
The file was modifiedcompiler-rt/test/profile/instrprof-write-file-atexit-explicitly.c
The file was modifiedllvm/lib/Transforms/Scalar/JumpThreading.cpp
The file was modifiedllvm/test/Transforms/Util/libcalls-shrinkwrap-double.ll
Commit 42f76e193b696219d43ceb40ee61e4e07ccf0d42 by aeubanks
Reland [AlwaysInliner] Pass callee AAResults to InlineFunction()

Test copied from noalias-calls.ll with small changes.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D89609
The file was addedllvm/test/Transforms/Inline/noalias-calls-always.ll
The file was modifiedllvm/lib/Transforms/IPO/AlwaysInliner.cpp
Commit c4ef3115b4296321090ce33987d6fdf7fa337fc1 by Jonas Devlieghere
Fix calls to (p)read on macOS when size > INT32_MAX

On macOS, the read and pread syscalls return EINVAL when the number of
bytes to read exceeds INT32_MAX:

https://github.com/apple/darwin-xnu/blob/a449c6a3b8014d9406c2ddbdc81795da24aa7443/bsd/kern/sys_generic.c#L355

rdar://68751407

Differential revision: https://reviews.llvm.org/D90201
The file was modifiedllvm/lib/Support/Unix/Path.inc
Commit d38788b357ad29083eb3b03027db908559aae2a6 by tianshilei1992
[Clang][OpenMP] Avoid unnecessary privatization of mapper array when there is no user defined mapper

In current implementation, if it requires an outer task, the mapper array will be privatized no matter whether it has mapper. In fact, when there is no mapper, the mapper array only contains number of nullptr. In the libomptarget, the use of mapper array is `if (mappers_array && mappers_array[i])`, which means we can directly set mapper array to nullptr if there is no mapper. This can avoid unnecessary data copy.

In this patch, the data privatization will not be emitted if the mapper array is nullptr. When it comes to the emit of task body, the nullptr will be used directly.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D90101
The file was modifiedclang/test/OpenMP/target_teams_codegen.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_simd_codegen.cpp
The file was modifiedclang/test/OpenMP/target_exit_data_depend_codegen.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_parallel_for_depend_codegen.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_depend_codegen.cpp
The file was modifiedclang/test/OpenMP/target_codegen.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_codegen.cpp
The file was modifiedclang/test/OpenMP/target_parallel_for_depend_codegen.cpp
The file was modifiedclang/test/OpenMP/target_enter_data_depend_codegen.cpp
The file was modifiedclang/test/OpenMP/target_parallel_for_simd_depend_codegen.cpp
The file was modifiedclang/test/OpenMP/target_parallel_depend_codegen.cpp
The file was modifiedclang/test/OpenMP/target_simd_depend_codegen.cpp
The file was modifiedclang/test/OpenMP/target_parallel_for_codegen.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_simd_depend_codegen.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_parallel_for_simd_depend_codegen.cpp
The file was modifiedclang/test/OpenMP/target_teams_depend_codegen.cpp
The file was modifiedclang/test/OpenMP/target_update_depend_codegen.cpp
Commit c6ca26c0bfedb8f80d6f8cb9adde25b1d6aac1c5 by mkazantsev
[IndVars] Remove monotonic checks with unknown exit count

Even if the exact exit count is unknown, we can still prove that this
exit will not be taken. If we can prove that the predicate is monotonic,
fulfilled on first & last iteration, and no overflow happened in between,
then the check can be removed.

Differential Revision: https://reviews.llvm.org/D87832
Reviewed By: apilipenko
The file was modifiedllvm/lib/Transforms/Scalar/IndVarSimplify.cpp
The file was modifiedllvm/test/Transforms/IndVarSimplify/predicated_ranges.ll
The file was modifiedllvm/include/llvm/Analysis/ScalarEvolution.h
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was modifiedllvm/test/Transforms/IndVarSimplify/monotonic_checks.ll
Commit b69919b537fffcc5b6aaa6d78e2c039725a81f5b by serguei.katkov
[GVN LoadPRE] Add an option to disable splitting backedge

GVN Load PRE can split the backedge causing breaking the loop structure where the latch
contains the conditional branch with for example induction variable.

Different optimizations expect this form of the loop, so it is better to preserve it for some time.
This CL adds an option to control an ability to split backedge.

Default value is true so technically it is NFC and current behavior is not changed.

Reviewers: fedor.sergeev, mkazantsev, nikic, reames, fhahn
Reviewed By: mkazasntsev
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D89854
The file was addedllvm/test/Transforms/GVN/PRE/load-pre-split-backedge.ll
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/lib/Transforms/Scalar/GVN.cpp
The file was modifiedllvm/include/llvm/Transforms/Scalar/GVN.h
Commit 2756e2ee0bceaf532d4990cbb4f2a84fe62b6b84 by zeratul976
[libTooling] Recognize sccache as a compiler wrapper in compilation database commands

sccache is a compiler caching tool similar to ccache.

Differential Revision: https://reviews.llvm.org/D88790
The file was modifiedclang/unittests/Tooling/CompilationDatabaseTest.cpp
The file was modifiedclang/lib/Tooling/JSONCompilationDatabase.cpp
Commit 245b61a330abee06b81ac7d93da4582db51b1de7 by zeratul976
[clangd] Increase the TooMany limit for index-based textual navigation to 5

Differential Revision: https://reviews.llvm.org/D90134
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
Commit fdc845b36130d162e5a66e427bf69b2c37b6c6bb by mkazantsev
[NFC] Factor away lambda's redundant parameter
The file was modifiedllvm/lib/Transforms/Scalar/IndVarSimplify.cpp
Commit e851e566d4aee6770ac4f347b80373492d46e674 by csigg
[mlir] Fix TypeID lookup in GDB pretty printers.

The TypeID instance was moved in D89153.

It wasn't caught that it broke MLIR pretty printers because pre-merge checks don't run check-debuginfo.

Avoid disabling all MLIR printers in case this happens again by catching the exception.

Reviewed By: stellaraccident

Differential Revision: https://reviews.llvm.org/D90191
The file was modifiedmlir/utils/gdb-scripts/prettyprinters.py
Commit d602e79a81adceca3ecc0259d6eda305fe9c86c0 by apollo.mobility
[X86] Encode global address in small code model

In small code model, program and its symbols are linked in the lower 2 GB of
the address space. Try encoding global address even when the range is unknown
in such case.

Differential Revision: https://reviews.llvm.org/D89341
The file was modifiedllvm/test/CodeGen/X86/pr33290.ll
The file was modifiedllvm/lib/Target/X86/X86ISelDAGToDAG.cpp
The file was modifiedllvm/test/CodeGen/X86/br-fold.ll
The file was addedllvm/test/CodeGen/X86/relocimm-small-model.ll
The file was modifiedllvm/test/CodeGen/X86/critical-edge-split-2.ll
Commit f385823e04f300c92ec03dbd660d621cc618a271 by craig.topper
[X86] Alternate implementation of D88194.

This uses PreprocessISelDAG to replace the constant before
instruction selection instead of matching opcodes after.

Reviewed By: pengfei

Differential Revision: https://reviews.llvm.org/D89178
The file was modifiedllvm/test/CodeGen/X86/cet_endbr_imm_enhance.ll
The file was modifiedllvm/lib/Target/X86/X86IndirectBranchTracking.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelDAGToDAG.cpp
Commit c6a05eb62f2ab392eba4e7a056e95c821587ae47 by sam.mccall
[Syntax] Disallow invalid Node operations

Copy/move break invariants (move could be fixed).
Node/Tree should have no public constructors, they're abstract.
Destructor is private to enforce arena allocation.

(Making the constructor of all subclasses private doesn't seem worthwhile)

Differential Revision: https://reviews.llvm.org/D90163
The file was modifiedclang/include/clang/Tooling/Syntax/Tree.h
Commit 6335446c99eb7263b8ae89a071df8a2cd66940d5 by mkazantsev
[Test] One more range check test
The file was modifiedllvm/test/Transforms/IndVarSimplify/predicated_ranges.ll
Commit 2ef2841c0d0b49a76ea9026f37207a473d7d1332 by sam.mccall
[clangd] Fix proto deps, for real this time.

This is ugly (layering violation) but we can clean it up once we know it
works in CI.
The file was modifiedclang-tools-extra/clangd/index/remote/CMakeLists.txt
Commit 0fc1aa22ee6ac337a5d51fa5666c9cd61da61b07 by kiran.chandramohan
Updating llvm.mlir test to match recent IR change

Recent change updated branch weights to use i64 instead of i32.
Updating llvm.mlir test to match this change.
https://reviews.llvm.org/D88609
The file was modifiedmlir/test/Target/llvmir.mlir
Commit 2c2dc7c392a3f28d4dbec3018e3137d5d4f8c6c8 by hokein.wu
[clang][RecoveryExpr] Add tests for ObjectiveC.

to demonstrate it works for some cases.

Differential Revision: https://reviews.llvm.org/D90140
The file was addedclang/test/AST/ast-dump-recovery.m
Commit 2618247c61c25cf9bd4cb315ee51cff2b3ab3add by tyker
Correct examples after d3205bbca3e0002d76282878986993e7e7994779
The file was modifiedclang/examples/AnnotateFunctions/AnnotateFunctions.cpp
Commit 89eab30e5cde90dd3777254f27805b31af780412 by zinenko
[mlir] use OpBuilderDAG instead of OpBuilder

A recent commit introduced a new syntax for specifying builder arguments in
ODS, which is better amenable to automated processing, and deprecated the old
form. Transition all dialects as well as Linalg ODS generator to use the new
syntax.

Add a deprecation notice to ODS generator.

Reviewed By: rriddle, jpienaar

Differential Revision: https://reviews.llvm.org/D90038
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVLogicalOps.td
The file was modifiedmlir/examples/toy/Ch6/include/toy/Ops.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVCompositeOps.td
The file was modifiedmlir/include/mlir/Dialect/Async/IR/AsyncOps.td
The file was modifiedmlir/include/mlir/Dialect/PDL/IR/PDLOps.td
The file was modifiedmlir/test/lib/Dialect/Test/TestOps.td
The file was modifiedmlir/examples/toy/Ch7/include/toy/Ops.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVAtomicOps.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVOps.td
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVControlFlowOps.td
The file was modifiedmlir/examples/toy/Ch4/include/toy/Ops.td
The file was modifiedmlir/include/mlir/Dialect/Shape/IR/ShapeOps.td
The file was modifiedmlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
The file was modifiedmlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
The file was modifiedmlir/include/mlir/Dialect/GPU/GPUOps.td
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td
The file was modifiedmlir/examples/toy/Ch2/include/toy/Ops.td
The file was modifiedmlir/include/mlir/Dialect/Vector/VectorOps.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVStructureOps.td
The file was modifiedmlir/docs/Tutorials/Toy/Ch-2.md
The file was modifiedmlir/include/mlir/Dialect/PDLInterp/IR/PDLInterpOps.td
The file was modifiedmlir/include/mlir/Dialect/SCF/SCFOps.td
The file was modifiedmlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-gen.cpp
The file was modifiedmlir/include/mlir/Dialect/StandardOps/IR/Ops.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVNonUniformOps.td
The file was modifiedmlir/include/mlir/Dialect/Affine/IR/AffineOps.td
The file was modifiedmlir/examples/toy/Ch3/include/toy/Ops.td
The file was modifiedmlir/examples/toy/Ch5/include/toy/Ops.td
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
Commit ad299364a7ee2ab1669dfe10347b0430140ee0ce by david.green
[ARM][AArch64] Add VLDN shuffled interleaving tests. NFC
The file was addedllvm/test/CodeGen/AArch64/vldn_shuffle.ll
The file was addedllvm/test/CodeGen/Thumb2/mve-vldshuffle.ll
Commit f067bc3c0ad6b8800f63066d654ad15c3dd33fd1 by flo
[LoopRotation] Allow loop header duplication if vectorization is forced.

-Oz normally does not allow loop header duplication so this loop wouldn't be
vectorized.  However the vectorization pragma should override this and allow
for loop rotation.

rdar://problem/49281061

Original patch by Adam Nemet.

Reviewed By: Meinersbur

Differential Revision: https://reviews.llvm.org/D59832
The file was addedllvm/test/Transforms/LoopVectorize/AArch64/Oz-and-forced-vectorize.ll
The file was modifiedllvm/lib/Transforms/Scalar/LoopRotation.cpp
Commit 2d59ed4e62a9842be428f32976760dbb9cf336af by grimar
[yaml2obj] - Add a way to override the sh_addralign field of a section.

Imagine the following declaration of a section:
```
Sections:
  - Name:         .dynsym
    Type:         SHT_DYNSYM
    AddressAlign: 0x1111111111111111
```

The aligment is large and yaml2obj reports an error currently:
"the desired output size is greater than permitted. Use the --max-size option to change the limit"

This patch implements the "ShAddrAlign" key, which is similar to other "Sh*" keys we have.
With it it is possible to override the `sh_addralign` field, ignoring the writing of alignment bytes.

Differential revision: https://reviews.llvm.org/D90019
The file was addedllvm/test/tools/yaml2obj/ELF/override-shaddralign.yaml
The file was modifiedllvm/lib/ObjectYAML/ELFEmitter.cpp
The file was modifiedllvm/include/llvm/ObjectYAML/ELFYAML.h
The file was modifiedllvm/lib/ObjectYAML/ELFYAML.cpp
Commit 1f933ff999f2c0373c79ddf23539873cbfa923e5 by Raphael Isemann
[lldb][NFC] Rewrite TestQuoting

TestQuoting's different test methods all build their own test binaries but
we can just reuse the same test binary by merging all asserts into one method.
This reduces the test runtime from 8 seconds to 4 seconds on my machine.
This also removes the ability to have partial failures in this test, but given
how rarely this code is touched this seems like a fair tradeoff (and we will be
able to re-add this feature once we updated our test framework).

Some other small changes:
  * Fixed that we cleanup "stdout.txt" instead of "output.txt" in the cleanup.
  * Fixed some formatting issues.
  * Call `build` instead of directly calling `buildDefault`.
The file was modifiedlldb/test/API/commands/settings/quoting/TestQuoting.py
Commit 6539ebe97d9777513015c4f8ae5fd8899094d671 by jay.foad
[AMDGPU] Use DPP instead of Ext in a couple of class names. NFC.
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.td
Commit a3aea0193d8cb164742890c2b92ee797a1432420 by medismail.bennani
[llvm/DebugInfo] Simplify DW_OP_implicit_value condition (NFC)

Signed-off-by: Med Ismail Bennani <medismail.bennani@gmail.com>
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
Commit f855a553339aa78225a309a6f9b5fcae767de8da by grimar
[llvm-readelf] - Implement --section-details option.

--section-details/-t is a GNU readelf option that produce
an output that is an alternative to --sections.

Differential revision: https://reviews.llvm.org/D89304
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/tools/llvm-readobj/ObjDumper.h
The file was addedllvm/test/tools/llvm-readobj/ELF/section-details.test
The file was modifiedllvm/docs/CommandGuide/llvm-readelf.rst
The file was modifiedllvm/test/tools/llvm-readobj/ELF/symbols.test
The file was modifiedllvm/tools/llvm-readobj/llvm-readobj.cpp
The file was modifiedllvm/test/tools/llvm-readobj/basic.test
Commit 443ab4d2e01246bf93cd410db945dc9ab6adf1b3 by mikhail.maltsev
[clang][Basic] Integrate SourceLocation with FoldingSet, NFCI

This patch removes the necessity to access the SourceLocation internal
representation in several places that use FoldingSet objects.

Reviewed By: dexonsmith

Differential Revision: https://reviews.llvm.org/D69844
The file was modifiedclang/lib/Basic/SourceLocation.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporter.cpp
The file was modifiedclang/include/clang/Basic/SourceLocation.h
The file was modifiedclang/lib/Analysis/PathDiagnostic.cpp
Commit d26dd743084a886382204ede5eeed146cd29fcd6 by kbobyrev
[clangd] Separate final_result into a different message

This is a breaking change in remote index protocol.

Reviewed By: sammccall

Differential Revision: https://reviews.llvm.org/D89851
The file was modifiedclang-tools-extra/clangd/index/remote/server/Server.cpp
The file was modifiedclang-tools-extra/clangd/index/remote/Client.cpp
The file was modifiedclang-tools-extra/clangd/index/remote/Index.proto
Commit ccb6191f048927e55bac82b92eeba8ff0f9f8fe5 by marukawa
[VE] Add missing regression test

In the previous "Add vector shift instructions", I forgot to add
regression tests for VSRL and VSRD instructions.  This patch is
adding them.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D90167
The file was addedllvm/test/MC/VE/VSRL.s
The file was addedllvm/test/MC/VE/VSRD.s
Commit c5fa6bae12ff01b34698abd0f7431c4450daece0 by marukawa
[VE] Add vector float instructions

Add VFAD/VFSB/VFMP/VFDV/VFSQRT/VFCP/VFCM/VFMAD/VFMSB/VFNMAD/VFNMSB/
VRCP/VRSQRT/VRSQRTNEX/VFIX/VFIXX/VFLT/VFLTX/VCVS/VCVD instructions.
Add regression tests too.  Also add additional AsmParser for VFIX
and VFIXX instructions to parse their mnemonic.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D90166
The file was addedllvm/test/MC/VE/VFAD.s
The file was addedllvm/test/MC/VE/VFMP.s
The file was addedllvm/test/MC/VE/VFSQRT.s
The file was addedllvm/test/MC/VE/VFDV.s
The file was modifiedllvm/lib/Target/VE/AsmParser/VEAsmParser.cpp
The file was addedllvm/test/MC/VE/VCVS.s
The file was addedllvm/test/MC/VE/VFLT.s
The file was addedllvm/test/MC/VE/VFMSB.s
The file was addedllvm/test/MC/VE/VFLTX.s
The file was addedllvm/test/MC/VE/VFMAD.s
The file was addedllvm/test/MC/VE/VFCP.s
The file was addedllvm/test/MC/VE/VRSQRT.s
The file was addedllvm/test/MC/VE/VFCM.s
The file was addedllvm/test/MC/VE/VRCP.s
The file was addedllvm/test/MC/VE/VRSQRTNEX.s
The file was addedllvm/test/MC/VE/VFSB.s
The file was addedllvm/test/MC/VE/VFNMSB.s
The file was modifiedllvm/lib/Target/VE/VEInstrVec.td
The file was addedllvm/test/MC/VE/VCVD.s
The file was addedllvm/test/MC/VE/VFIX.s
The file was addedllvm/test/MC/VE/VFIXX.s
The file was addedllvm/test/MC/VE/VFNMAD.s
Commit 6482f3239af193e00b30c0a8f1459be4f22cb141 by lebedev.ri
[NFC][InstCombine] Add more exhaustive test coverage for `(x >>? X1) << C2` pattern (PR37872)
The file was modifiedllvm/test/Transforms/InstCombine/canonicalize-lshr-shl-to-masking.ll
The file was modifiedllvm/test/Transforms/InstCombine/canonicalize-ashr-shl-to-masking.ll
Commit 90152a602c127e1572d67139b07f09fa37047ed0 by lebedev.ri
[NFC][InstCombine] Autogenerate cast.ll test
The file was modifiedllvm/test/Transforms/InstCombine/cast.ll
Commit 5e3a8953ace7f5783ef592f1786d7f10610648ad by lebedev.ri
[NFC][PhaseOrdering] Autogenerate basic.ll test
The file was modifiedllvm/test/Transforms/PhaseOrdering/basic.ll
Commit 0ac56e8eaaeb41b59a952fa465872f647c930347 by lebedev.ri
[InstCombine] Fold `(X >>? C1) << C2` patterns to shift+bitmask (PR37872)

This is essentially finalizes a revert of rL155136,
because nowadays the situation has improved, SCEV can model
all these patterns well, and we canonicalize rotate-like patterns
into a funnel shift intrinsics in InstCombine.
So this should not cause any pessimization.

I've verified the canonicalize-{a,l}shr-shl-to-masking.ll transforms
with alive, which confirms that we can freely preserve exact-ness,
and no-wrap flags.

Profs:
* base: https://rise4fun.com/Alive/gPQ
* exact-ness preservation: https://rise4fun.com/Alive/izi
* nuw preservation: https://rise4fun.com/Alive/DmD
* nsw preservation: https://rise4fun.com/Alive/SLN6N
* nuw nsw preservation: https://rise4fun.com/Alive/Qp7

Refs. https://reviews.llvm.org/D46760
The file was modifiedllvm/test/Transforms/InstCombine/cast.ll
The file was modifiedllvm/test/Transforms/InstCombine/canonicalize-lshr-shl-to-masking.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
The file was modifiedllvm/test/Transforms/InstCombine/known-signbit-shift.ll
The file was modifiedllvm/test/Transforms/InstCombine/canonicalize-ashr-shl-to-masking.ll
The file was modifiedllvm/test/Transforms/InstCombine/shift.ll
The file was modifiedllvm/test/Transforms/InstCombine/2010-11-01-lshr-mask.ll
The file was modifiedllvm/test/Transforms/InstCombine/trunc.ll
The file was modifiedllvm/test/Transforms/InstCombine/apint-shift.ll
The file was modifiedllvm/test/Transforms/InstCombine/gep-combine-loop-invariant.ll
Commit f8a3b9b06c4a46fe2a83ec52f8e396d335b44fdd by david.spickett
[lldb] Correct vFile:pread/pwrite packet docs

The statement that lldb-server can handle
decimal and hex numbers is misleading.
(it can only handle hex with 0x prefix)

Mentioning non decimal numbers at all
is just creating more confusion for anyone
who tries to use them with lldb-server.

Differential Revision: https://reviews.llvm.org/D89383
The file was modifiedlldb/docs/lldb-platform-packets.txt
Commit 673f2f702b03be8c003889cbb5923e111c3e24d0 by sebastian.neubauer
msgpack: Improve error for empty node
The file was modifiedllvm/lib/BinaryFormat/MsgPackDocument.cpp
Commit 22e4346e054a4474a68fd293324db295fffed34c by Alexander.Richardson
[ValueTracking] Add tracking of the alignment assume bundle

This patch is to add the support of the value tracking of the alignment assume bundle.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D88669
The file was addedllvm/test/Transforms/InstCombine/assume-align.ll
The file was modifiedllvm/test/Analysis/BasicAA/featuretest.ll
The file was modifiedllvm/test/Analysis/ValueTracking/assume-queries-counter.ll
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
Commit 565f4e72dafa0abd250e0435e2bb62cdd91c908f by Alexander.Richardson
[ValueTracking] Add more tests for alignment assume bundles

I noticed that alignment was no longer inferred as well after I last merged
our CHERI fork from upstream. I opened this review before seeing that D88669
already fixes the same problem, so this commit simply adds the new test that
I added as part of this change.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D89830
The file was modifiedllvm/unittests/Analysis/ValueTrackingTest.cpp
Commit d323c8f791ac1160813508f1742f845444b6459a by Alexander.Richardson
[ValueTracking][NFC] Use Log2(Align) instead of countTrailingZeroes

The latter can probably be optimized to the same final code, but this might
help -O0 builds.
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
Commit 850325348ae82cd5e26ea9edfd04219d0fbe7828 by Alexander.Richardson
[clang-format] Fix misformatted macro definitions after D86959

After D86959 the code `#define lambda [](const decltype(x) &ptr) {}`
was formatted as `#define lambda [](const decltype(x) & ptr) {}` due to
now parsing the '&' token as a BinaryOperator. The problem was caused by
the condition `Line.InPPDirective && (!Left->Previous || !Left->Previous->is(tok::identifier))) {`
being matched and therefore not performing the checks for "previous token
is one of decltype/_Atomic/etc.". This patch moves those checks after the
existing if/else chain to ensure the left-parent token classification is
always run after checking whether the contents of the parens is an
expression or not.

This change also introduces a new TokenAnnotatorTest that checks the
token kind and Role of Tokens after analyzing them. This is used to check
for TT_PointerOrReference, in addition to indirectly testing this based
on the resulting formatting.

Reviewed By: MyDeveloperDay

Differential Revision: https://reviews.llvm.org/D88956
The file was addedclang/unittests/Format/TokenAnnotatorTest.cpp
The file was modifiedclang/lib/Format/TokenAnnotator.cpp
The file was modifiedclang/unittests/Format/FormatTest.cpp
The file was modifiedclang/unittests/Format/TestLexer.h
The file was modifiedclang/unittests/Format/CMakeLists.txt
Commit 89031cffd1de0ce70106cda1bf5188f7a11726a2 by Alexander.Richardson
Fix sancov.py when objdump is llvm-objdump

The sanitizer-coverage.cpp test case was always failing for me. It turns
out the reason for this is that I was building with
-DLLVM_INSTALL_BINUTILS_SYMLINKS=ON and sancov.py's grep regex does not
handle llvm-objdump's disassembly format (hex immediates have a leading "0x").
While touching those lines also change them to use raw string literals since
invalid escape sequnces will become an error in future python versions.
Also simplify the code by using subprocess.check_output() instead of Popen().
This also works with python2.

Fixes https://bugs.llvm.org/show_bug.cgi?id=44504

Reviewed By: #sanitizers, vitalybuka

Differential Revision: https://reviews.llvm.org/D89648
The file was modifiedcompiler-rt/lib/sanitizer_common/scripts/sancov.py
Commit 2107e4b10ea5010019ed4e57989ec7cbe84dadc0 by llvmgnsyncbot
[gn build] Port 850325348ae
The file was modifiedllvm/utils/gn/secondary/clang/unittests/Format/BUILD.gn
Commit 5d0308009284a0c8b75fb683eaba89c2e0c677f6 by sven.vanhaastregt
[TargetLowering] Add i1 condition for bit comparison fold

For i1 types, boolean false is represented identically regardless of
the boolean content, so we can allow optimizations that otherwise
would not be correct for booleans with false represented as a negative
one.

Patch by Erik Hogeman.

Differential Revision: https://reviews.llvm.org/D90145
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedllvm/test/CodeGen/NVPTX/pow2_mask_cmp.ll
Commit cca049ad2b307dadedd8b5b6fbb05ca74b153a0d by djtodoro
[NFC][IntrRefLDV] Some code clean up

As reading the source code, I've found some minor nits:
  -Use using instead of typedef
  -Fix a comment
  -Refactor

Differential Revision: https://reviews.llvm.org/D90155
The file was modifiedllvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
Commit e562a40871da14cef6685efef09760bca2718269 by zahira.ammarguellat
Fix for PR47544. Clang is crashing after generating the right
diagnostic for a re-declaration of a friend method.d
https://reviews.llvm.org/D88112
The file was addedclang/test/SemaCXX/invalid-decl.cpp
The file was modifiedclang/lib/Parse/ParseCXXInlineMethods.cpp
Commit 0905bd5c2fa42bd4c0e6e0aaa08b966f165b9dfa by llvm-dev
[InstCombine] collectBitParts - add trunc support.

This should allow us to remove the rather limited matchOrConcat fold and just use recognizeBSwapOrBitReverseIdiom.
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
The file was modifiedllvm/test/Transforms/InstCombine/bswap.ll
Commit 5a855551cb6fedfb3027b4de4172a962d04834ce by llvm-dev
[X86] Regenerate vector shift tests. NFCI.

Merge prefixes where possible, use 'X86' instead of 'X32' (which we try to only use for gnux32 triple tests).
The file was modifiedllvm/test/CodeGen/X86/vshift-5.ll
The file was modifiedllvm/test/CodeGen/X86/vshift-6.ll
The file was modifiedllvm/test/CodeGen/X86/vec_shift7.ll
The file was modifiedllvm/test/CodeGen/X86/vec_shift4.ll
The file was modifiedllvm/test/CodeGen/X86/vshift-1.ll
The file was modifiedllvm/test/CodeGen/X86/vec_shift6.ll
The file was modifiedllvm/test/CodeGen/X86/vec_shift.ll
The file was modifiedllvm/test/CodeGen/X86/vshift_split2.ll
The file was modifiedllvm/test/CodeGen/X86/vshift_split.ll
The file was modifiedllvm/test/CodeGen/X86/vec_shift3.ll
The file was modifiedllvm/test/CodeGen/X86/vshift-2.ll
The file was modifiedllvm/test/CodeGen/X86/vec_shift5.ll
The file was modifiedllvm/test/CodeGen/X86/x86-shifts.ll
The file was modifiedllvm/test/CodeGen/X86/vec_shift2.ll
The file was modifiedllvm/test/CodeGen/X86/vshift-3.ll
The file was modifiedllvm/test/CodeGen/X86/vshift-4.ll
Commit 2bc2e2e9fe25c5568cfb8681e441fcc6a194daa4 by llvm-dev
[MallocChecker] Remove duplicate QCoreApplication::postEvent check. NFCI.

This appears to have been in the original patch in D14170.

Reported as "Snippet 11" in https://www.viva64.com/en/b/0771/
The file was modifiedclang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
Commit b19473cf590eca13d23a20191c820d0f9d835beb by llvm-dev
[clang] RewriteObjCClassMetaData - remove superfluous null pointer check. NFCI.

We've already dereferenced the pointer and no other getClassInterface() calls appear to bother with such a check.

Reported as "Snippet 6" in https://www.viva64.com/en/b/0771/
The file was modifiedclang/lib/Frontend/Rewrite/RewriteObjC.cpp
Commit 2a4e704c92e8ec3d9217a7333368ea53cf3a583f by thakis
Revert "Use uint64_t for branch weights instead of uint32_t"

This reverts commit e5766f25c62c185632e3a75bf45b313eadab774b.
Makes clang assert when building Chromium, see https://crbug.com/1142813
for a repro.
The file was modifiedllvm/lib/Analysis/BranchProbabilityInfo.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
The file was modifiedllvm/test/Analysis/BranchProbabilityInfo/basic.ll
The file was modifiedcompiler-rt/test/profile/Inputs/comdat_rename_1.cpp
The file was modifiedllvm/test/Transforms/LoopUnroll/peel-loop-pgo.ll
The file was modifiedllvm/test/Transforms/PGOProfile/icp_invoke.ll
The file was modifiedllvm/unittests/Analysis/ProfileSummaryInfoTest.cpp
The file was modifiedllvm/test/Transforms/Util/libcalls-shrinkwrap-double.ll
The file was modifiedclang/lib/CodeGen/CodeGenPGO.cpp
The file was modifiedllvm/test/Transforms/PGOProfile/indirect_call_promotion_musttail.ll
The file was modifiedllvm/test/Transforms/PGOProfile/icp_covariant_call_return.ll
The file was modifiedllvm/test/Transforms/SimpleLoopUnswitch/trivial-unswitch-profmd.ll
The file was modifiedcompiler-rt/test/profile/instrprof-without-libc.c
The file was modifiedllvm/include/llvm/IR/Instructions.h
The file was modifiedllvm/test/Transforms/LoopUnroll/runtime-loop-branchweight.ll
The file was modifiedllvm/test/Transforms/PGOProfile/indirect_call_promotion.ll
The file was modifiedcompiler-rt/test/profile/instrprof-reset-counters.c
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
The file was modifiedllvm/test/Transforms/CorrelatedValuePropagation/profmd.ll
The file was modifiedcompiler-rt/test/profile/Linux/instrprof-cs.c
The file was modifiedllvm/test/Transforms/SimplifyCFG/preserve-branchweights-switch-create.ll
The file was modifiedllvm/test/Transforms/Util/libcalls-shrinkwrap-float.ll
The file was modifiedllvm/test/Transforms/LowerExpectIntrinsic/expect-with-probability.ll
The file was modifiedcompiler-rt/test/profile/Linux/instrprof-basic.c
The file was modifiedllvm/lib/Transforms/Scalar/LowerExpectIntrinsic.cpp
The file was modifiedcompiler-rt/test/profile/instrprof-dump.c
The file was modifiedllvm/lib/IR/Instructions.cpp
The file was modifiedllvm/test/Transforms/PGOProfile/loop2.ll
The file was modifiedllvm/test/Transforms/PGOProfile/cspgo_profile_summary.ll
The file was modifiedllvm/test/Transforms/SCCP/switch.ll
The file was modifiedclang/test/CodeGenCXX/microsoft-abi-thread-safe-statics.cpp
The file was modifiedllvm/test/Transforms/JumpThreading/update-edge-weight.ll
The file was modifiedllvm/test/Transforms/PGOProfile/branch2.ll
The file was modifiedllvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
The file was modifiedllvm/test/Transforms/LowerExpectIntrinsic/phi_or.ll
The file was modifiedllvm/test/Transforms/SimplifyCFG/switch-profmd.ll
The file was modifiedllvm/include/llvm/Transforms/Scalar/LowerExpectIntrinsic.h
The file was modifiedllvm/lib/Transforms/Scalar/JumpThreading.cpp
The file was modifiedllvm/include/llvm/Transforms/Utils/MisExpect.h
The file was modifiedcompiler-rt/test/profile/instrprof-override-filename-then-reset-default.c
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
The file was modifiedcompiler-rt/test/profile/instrprof-set-filename-then-reset-default.c
The file was modifiedclang/test/Profile/cxx-class.cpp
The file was modifiedclang/test/Profile/cxx-templates.cpp
The file was modifiedllvm/test/Transforms/LoopVectorize/tripcount.ll
The file was modifiedllvm/test/Transforms/PGOProfile/select2.ll
The file was modifiedclang/test/Profile/objc-general.m
The file was modifiedcompiler-rt/test/profile/Inputs/comdat_rename_2.cpp
The file was modifiedclang/test/Profile/gcc-flag-compatibility.c
The file was modifiedllvm/test/Transforms/PGOProfile/indirectbr.ll
The file was modifiedllvm/test/Transforms/PGOProfile/multiple_hash_profile.ll
The file was modifiedclang/test/CodeGenCXX/profile-remap.cpp
The file was modifiedllvm/test/Transforms/PGOProfile/remap.ll
The file was modifiedllvm/test/Transforms/PGOProfile/loop1.ll
The file was modifiedllvm/lib/IR/MDBuilder.cpp
The file was modifiedclang/test/Profile/c-general.c
The file was modifiedllvm/test/Transforms/PGOProfile/select1.ll
The file was modifiedllvm/test/Transforms/SampleProfile/indirect-call.ll
The file was modifiedclang/test/CodeGenCXX/static-initializer-branch-weights.cpp
The file was modifiedclang/test/Profile/c-captured.c
The file was modifiedllvm/test/Transforms/PGOProfile/fix_entry_count.ll
The file was modifiedclang/test/CodeGen/catch-undef-behavior.c
The file was modifiedllvm/test/Transforms/PGOProfile/landingpad.ll
The file was modifiedllvm/test/Transforms/LowerExpectIntrinsic/basic.ll
The file was modifiedllvm/test/Transforms/PGOProfile/memop_size_opt.ll
The file was modifiedllvm/test/Transforms/LowerExpectIntrinsic/expect_nonboolean.ll
The file was modifiedcompiler-rt/test/profile/instrprof-override-filename-with-env.c
The file was modifiedclang/test/CodeGenCXX/attr-likelihood-if-vs-builtin-expect.cpp
The file was modifiedcompiler-rt/test/profile/instrprof-override-filename.c
The file was modifiedllvm/test/Transforms/SimpleLoopUnswitch/basictest-profmd.ll
The file was modifiedclang/test/CodeGenCXX/attr-likelihood-if-branch-weights.cpp
The file was modifiedllvm/test/Transforms/PGOProfile/thinlto_cspgo_use.ll
The file was modifiedclang/test/Profile/cxx-throws.cpp
The file was modifiedllvm/test/Transforms/SampleProfile/profile-format.ll
The file was modifiedllvm/test/Transforms/PGOProfile/icp_covariant_invoke_return.ll
The file was modifiedllvm/test/Transforms/SampleProfile/profile-format-compress.ll
The file was modifiedllvm/test/Transforms/SimplifyCFG/invoke_unwind.ll
The file was modifiedllvm/test/Transforms/SampleProfile/inline-mergeprof.ll
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
The file was modifiedllvm/test/Transforms/JumpThreading/threading_prof1.ll
The file was modifiedcompiler-rt/test/profile/instrprof-hostname.c
The file was modifiedcompiler-rt/test/profile/instrprof-basic.c
The file was modifiedllvm/test/Transforms/PGOProfile/criticaledge.ll
The file was modifiedcompiler-rt/test/profile/instrprof-set-filename.c
The file was modifiedllvm/test/Transforms/LowerExpectIntrinsic/phi_merge.ll
The file was modifiedllvm/test/Transforms/PGOProfile/chr.ll
The file was modifiedllvm/lib/Transforms/Utils/CodeExtractor.cpp
The file was modifiedcompiler-rt/test/profile/instrprof-write-file.c
The file was modifiedllvm/test/Transforms/LoopVectorize/check-prof-info.ll
The file was modifiedllvm/test/Transforms/PGOProfile/thinlto_indirect_call_promotion.ll
The file was modifiedllvm/test/Transforms/Util/libcalls-shrinkwrap-long-double.ll
The file was modifiedllvm/test/Transforms/CodeExtractor/MultipleExitBranchProb.ll
The file was modifiedllvm/test/Transforms/LowerExpectIntrinsic/phi_tern.ll
The file was modifiedcompiler-rt/test/profile/instrprof-write-file-only.c
The file was modifiedllvm/test/Transforms/PGOProfile/branch1.ll
The file was modifiedllvm/test/Transforms/PGOProfile/noreturncall.ll
The file was modifiedclang/test/Profile/cxx-rangefor.cpp
The file was modifiedllvm/test/Transforms/JumpThreading/threading_prof2.ll
The file was modifiedcompiler-rt/test/profile/instrprof-write-file-atexit-explicitly.c
The file was modifiedclang/test/CodeGenCXX/attr-likelihood-switch-branch-weights.cpp
The file was modifiedclang/test/Profile/cxx-lambda.cpp
The file was modifiedllvm/test/Transforms/PGOProfile/instr_entry_bb.ll
The file was modifiedllvm/test/Transforms/PGOProfile/switch.ll
The file was modifiedllvm/test/Transforms/LoopUnroll/peel-loop-pgo-deopt.ll
The file was modifiedllvm/test/Transforms/SampleProfile/inline-mergeprof-dup.ll
The file was modifiedllvm/test/Transforms/PGOProfile/indirect_call_promotion_vla.ll
The file was modifiedllvm/test/Transforms/SimplifyCFG/preserve-branchweights.ll
The file was addedclang/test/Profile/c-counter-overflows.c
The file was removedllvm/test/Analysis/BranchProbabilityInfo/basic_i32.ll
The file was modifiedllvm/include/llvm/IR/MDBuilder.h
The file was modifiedllvm/lib/Transforms/Utils/MisExpect.cpp
The file was modifiedllvm/test/Instrumentation/AddressSanitizer/basic.ll
The file was modifiedllvm/test/Transforms/PGOProfile/icp_vararg.ll
The file was modifiedllvm/test/Transforms/SampleProfile/entry_counts_cold.ll
Commit 3bc5824181e9cdbd027b44245026b6faa8a9e228 by llvm-dev
[X86] Regenerate all-ones vector tests with common prefixes.
The file was modifiedllvm/test/CodeGen/X86/all-ones-vector.ll
Commit 35f7cbf9dfeced33561c811fb1a3b750a2e35640 by benny.kra
[X86] Don't crash on CVTPS2PH with wide vector inputs.
The file was modifiedllvm/test/CodeGen/X86/vector-half-conversions.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit bce770ffa68f11ca67ab8747b1d84567a9934552 by llvm-dev
Revert rG0905bd5c2fa42bd4c "[InstCombine] collectBitParts - add trunc support."

This reverts commit 0905bd5c2fa42bd4c0e6e0aaa08b966f165b9dfa.

Causing failures in multistage buildbots that I need to investigate
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
The file was modifiedllvm/test/Transforms/InstCombine/bswap.ll
Commit 0d092303b446bf75746ea594d291b82670fed48e by michael.hliao
[amdgpu] Enable use of AA during codegen.

- Add an internal option `-amdgpu-use-aa-in-codegen` to enable or
  disable this feature. By Default, it's enabled.

Differential Revision: https://reviews.llvm.org/D89320
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/undefined-subreg-liverange.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
The file was modifiedllvm/test/CodeGen/AMDGPU/insert_vector_elt.v2i16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/schedule-regpressure-limit.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/schedule-regpressure-limit2.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/memcpy-fixed-align.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/memory_clause.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/ds-combine-with-dependence.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/global_smrd.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/private-element-size.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/schedule-regpressure-limit3.ll
Commit 75a1790f4bf052b0a615ed0270a7b4b1c4c88818 by Alexander.Richardson
Fix use-after-scope introduced in 850325348ae82cd5e26ea9edfd04219d0fbe7828
The file was modifiedclang/unittests/Format/MacroExpanderTest.cpp
The file was modifiedclang/unittests/Format/TestLexer.h