Changes

Summary

  1. [lldb] Actually let the matrix bot test something (details)
  2. [NFC] Reformat sanitizer workers (details)
  3. Reassign sanitizer builders/workers (details)
  4. Less builds for sanitizer-buildbot{2,8} (details)
Commit 478f6eb87c8780f5713c8526a32bb6f7e95caab1 by Raphael Isemann
[lldb] Actually let the matrix bot test something

Since https://reviews.llvm.org/D69401 landed the bot has been setting unused
CMake variables for specifying test compilers which meant this bot hasn't
been testing anything since 2019. Reenabling the tests so that we can start
fixing the failing tests.
The file was modifiedzorg/jenkins/monorepo_build.py (diff)
Commit a07e9a35bda576c7fd123a81c3793c26d3644c3f by Vitaly Buka
[NFC] Reformat sanitizer workers
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit 5d0847ab1e6cccf3f654cf9844f209471865c9fb by Vitaly Buka
Reassign sanitizer builders/workers
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit 536b364f914d8b597c304c5f3927f5b3a2446231 by Vitaly Buka
Less builds for sanitizer-buildbot{2,8}
The file was modifiedbuildbot/osuosl/master/config/workers.py (diff)

Summary

  1. [ConstantFolding] Separate conditions in GEP evaluation (NFC) (details)
  2. [Clang][OpenMP] Monotonic does not apply to SIMD (details)
  3. [ADT] Add StringRef consume_front_lower and consume_back_lower (details)
  4. [lldb] Bumb Clang version requirement for TestBasicEntryValues.py to 11 (details)
  5. [lld/mac] Add explicit "no unwind info" entries for functions without unwind info (details)
  6. [lldb] Adjust Clang version requirements for tail_call_frames tests (details)
  7. [SCEV] Retain AddExpr flags when subtracting a foldable constant. (details)
  8. [mlir][memref] Add memref.copy operation (details)
  9. [LLDB] Skip TestExitDuringExpression on aarch64/linux buildbot (details)
  10. Add norm sub-target feature to table gen for ARC (details)
  11. [lldb][NFC] Use SubsystemRAII in XcodeSDKModuleTests (details)
  12. [AMDGPU][Libomptarget] Move allow_access_to_all_gpu_agents to rtl.cpp (details)
  13. [mlir] Fix invalid handling of AllocOp symbolOperands by SimplifyAllocConst. (details)
  14. [OpenMP] libomp: fix dynamic loop dispatcher (details)
  15. [ConstantFold] Skip bitcast -> GEP transform for opaque pointers (details)
  16. [ConstantFold] Delay fetching pointer element type (details)
  17. [BitcodeReader] Validate Strtab before accessing. (details)
  18. [Libomptarget] Introduce new globalization runtime calls (details)
  19. [clang] Remove unused capture in closure (details)
  20. [SLP][AArch64] Add SLP vectorizer tests for XOR and AND reductions. NFC (details)
  21. [lldb][NFC] Remove an outdated comment in HostInfoBase (details)
  22. [OpenMP] Simplify GPU memory globalization (details)
  23. [SCEV] Reduce code to handle predicates in applyLoopGuards (NFC). (details)
  24. [SimpleLoopUnswich] Fixa a bug on ComputeUnswitchedCost with partial unswitch (details)
  25. [lldb] Remove more redundant SetStatus(eReturnStatusFailed) (details)
  26. [AArch64LoadStoreOptimizer] Recommit: Generate more STPs by renaming registers earlier (details)
  27. [OpaquePtr] Handle addrspacecasts in InstCombine (details)
  28. [Libomptarget] Improve device runtime implementation for globalized variables. (details)
  29. [OpenMP] Replace GPU globalization calls with shared memory in the middle-end (details)
  30. [llvm-diff] Constify APIs so that there aren't conflicts (details)
  31. [llvm-objcopy] Fix some namespace style issues (details)
  32. [llvm] Fix lto tests that requires ld64 (details)
  33. [OpenMP] Internalize functions in OpenMPOpt to improve IPO passes (details)
  34. [NFC][OpenMP][Offloading] Unified the construction of mapping table entry (details)
  35. [clang][c++20] Fix false warning for unused private fields when a class has only defaulted comparison operators. (details)
  36. [libc++] Change forward_list::swap to use propagate_on_container_swap for noexcept specification (details)
  37. AMDGPU: Move zeroed FP high bits optimization to patterns (details)
  38. [gn build] manually port c747b7d1d9a2 (config.osx_sysroot) (details)
  39. [libcxx][ranges] Add `ranges::iter_swap`. (details)
  40. Improve the diagnostic of DiagnosticInfoResourceLimit (and warn-stack-size in particular) (details)
  41. [AMDGPU] Use performOptimizedStructLayout for LDS sort (details)
  42. [AIX][XCOFF] generate eh_info when vector registers are saved according to the traceback table. (details)
  43. ThinLTO: Fix inline assembly references to static functions with CFI (details)
  44. [gn build] Port 40d6d2c49dd1 (details)
  45. AMDGPU: Fix high 16-bit optimization on gfx9 (details)
  46. [MCA] [In-order pipeline] Fix for 0 latency instruction causing assertion to fail. (details)
  47. [OpenMP] Add new OpenMP globalization functions to library info (details)
  48. [OpenMP] Enable HeapToStack conversion in OpenMPOpt for new RTL globalization calls (details)
  49. AMDGPU: Add baseline test for instructions zeroing high bits (details)
  50. [libc++] Enable `explicit` conversion operators, even in C++03 mode. (details)
  51. AMDGPU: Try to eliminate clearing of high bits of 16-bit instructions (details)
  52. [libc++] NFC: Add missing all.h to the modulemap (details)
  53. [lldb] Add missing string include to lldb-server's main (details)
  54. [ARM] Change some Gather/Scatter interface types to Instructions. NFC (details)
  55. [Attributor] Add interface to emit remarks in Attributor (details)
  56. [InstCombine][test] add tests for FP min/max with negated op; NFC (details)
  57. [InstCombine][test] add tests for FP min/max with negated op; NFC (details)
  58. [InstCombine] reduce code duplication for FP min/max with casts fold; NFC (details)
  59. Improve clang -Wframe-larger-than= diagnostic (details)
  60. Revert "[LLD] [COFF] Avoid doing repeated fuzzy symbol lookup for each iteration. NFC." (details)
  61. [Attributor] Add an option to increase the max number of iterations (details)
  62. [OpenMP][NFC] Add new optimizations to OpenMPOpt comment header (details)
  63. [CodeGen] Don't create fake FunctionDecls when generating block/byref (details)
  64. [compiler-rt][CMake] Drop flags that are set by default for Fuchsia (details)
  65. [compiler-rt] Make use of undefined symbols configurable (details)
  66. [libcxx][docs] updates the ranges status paper (details)
  67. [CMake] Fix the option declaration (details)
  68. [libcxx][doc] corrects LWG links in the One Ranges section (details)
Commit 04395fd6cb0949dfe628353cd61bcec3625b8c0d by nikita.ppv
[ConstantFolding] Separate conditions in GEP evaluation (NFC)

Handle to gep p, 0-v case separately, and not as part of the loop
that ensures all indices are constant integers. Those two things
are not really related.
The file was modifiedllvm/lib/Analysis/ConstantFolding.cpp
Commit c6a91ee6aaaacbda0c37973112b2e0d609c82321 by graham.hunter
[Clang][OpenMP] Monotonic does not apply to SIMD

The codegen for simd constructs was affected by the presence (or
absence) of the 'monotonic' schedule modifier for worksharing
loops. The modifier is only intended to apply to the scheduling of
chunks for a thread, not iterations of a loop inside a chunk.

In addition, the monotonic modifier was applied to worksharing loops
by default if no schedule clause was present; the referenced part of
the OpenMP 4.5 spec in the code (section 2.7.1) only applies if the
user specified a schedule clause with a static kind but no modifier.
Without a user-specified schedule clause we should default to
nonmonotonic scheduling.

Reviewed By: ABataev

Differential Revision: https://reviews.llvm.org/D103793
The file was modifiedclang/test/OpenMP/teams_distribute_simd_codegen.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_simd_dist_schedule_codegen.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_parallel_for_simd_schedule_codegen.cpp
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
The file was modifiedclang/test/OpenMP/parallel_for_simd_codegen.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_simd_codegen.cpp
The file was modifiedclang/test/OpenMP/distribute_parallel_for_simd_codegen.cpp
The file was modifiedclang/test/OpenMP/schedule_codegen.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_simd_dist_schedule_codegen.cpp
The file was modifiedclang/test/OpenMP/target_parallel_for_simd_codegen.cpp
The file was modifiedclang/test/OpenMP/for_simd_codegen.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_parallel_for_simd_schedule_codegen.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_parallel_for_simd_if_codegen.cpp
The file was modifiedclang/lib/CodeGen/CodeGenFunction.h
The file was modifiedclang/test/OpenMP/distribute_simd_codegen.cpp
Commit 703b0ed8e208e5e6cf001689ea0a92296552f032 by martin
[ADT] Add StringRef consume_front_lower and consume_back_lower

These serve as a convenient combination of consume_front/back and
startswith_lower/endswith_lower, consistent with other existing
case insensitive methods named <operation>_lower.

Differential Revision: https://reviews.llvm.org/D104218
The file was modifiedllvm/unittests/ADT/StringRefTest.cpp
The file was modifiedllvm/include/llvm/ADT/StringRef.h
The file was modifiedllvm/lib/ToolDrivers/llvm-dlltool/DlltoolDriver.cpp
The file was modifiedllvm/tools/llvm-rc/llvm-rc.cpp
Commit 35cf5b109769ceb356a9013ca0c0f60fbd230080 by Raphael Isemann
[lldb] Bumb Clang version requirement for TestBasicEntryValues.py to 11

The test only passes with Clang>=11 so adjust the decorator.

Failure output for Clang 10 is:

--- FileCheck trace (code=1) ---
FileCheck main.cpp -check-prefix=FUNC1-GNU

FileCheck input:
      Address: a.out[0x0000000000401127] (a.out.PT_LOAD[1]..text + 263)
      Summary: a.out`func1(int&) + 23 at main.cpp:25:1
       Module: file = "functionalities/param_entry_vals/basic_entry_values/BasicEntryValues_GNU.test_dwo/a.out", arch = "x86_64"
  CompileUnit: id = {0x00000000}, file = "functionalities/param_entry_vals/basic_entry_values/main.cpp", language = "c++11"
     Function: id = {0x400000000000010a}, name = "func1(int&)", mangled = "_Z5func1Ri", range = [0x0000000000401110-0x0000000000401129)
     FuncType: id = {0x400000000000010a}, byte-size = 0, decl = main.cpp:13, compiler_type = "void (int &)"
       Blocks: id = {0x400000000000010a}, range = [0x00401110-0x00401129)
    LineEntry: [0x0000000000401127-0x0000000000401130): functionalities/param_entry_vals/basic_entry_values/main.cpp:25:1
       Symbol: id = {0x0000002c}, range = [0x0000000000401110-0x0000000000401129), name="func1(int&)", mangled="_Z5func1Ri"

FileCheck output:

functionalities/param_entry_vals/basic_entry_values/main.cpp:23:16: error: FUNC1-GNU: expected string not found in input
// FUNC1-GNU: name = "sink", type = "int &", location = DW_OP_GNU_entry_value
The file was modifiedlldb/test/API/functionalities/param_entry_vals/basic_entry_values/TestBasicEntryValues.py
Commit d6565a2dbcbe0932cd5cbb95bf2fc06855dfe938 by thakis
[lld/mac] Add explicit "no unwind info" entries for functions without unwind info

Fixes PR50529. With this, lld-linked Chromium base_unittests passes on arm macs.

Surprisingly, no measurable impact on link time.

Differential Revision: https://reviews.llvm.org/D104681
The file was modifiedlld/test/MachO/compact-unwind.s
The file was modifiedlld/test/MachO/tools/validate-unwind-info.py
The file was modifiedlld/MachO/UnwindInfoSection.cpp
Commit 98e2b1a8dd8ff03b6289a40a16fe749834257494 by Raphael Isemann
[lldb] Adjust Clang version requirements for tail_call_frames tests

Those tests are all failing for older Clang versions. This is adding the
respective test decorators for the passing Clang versions to get the recently
revived matrix bot green.
The file was modifiedlldb/test/API/functionalities/tail_call_frames/unambiguous_sequence/TestUnambiguousTailCalls.py
The file was modifiedlldb/test/API/functionalities/tail_call_frames/cross_object/TestCrossObjectTailCalls.py
The file was modifiedlldb/test/API/functionalities/tail_call_frames/inlining_and_tail_calls/TestInliningAndTailCalls.py
The file was modifiedlldb/test/API/functionalities/tail_call_frames/disambiguate_call_site/TestDisambiguateCallSite.py
The file was modifiedlldb/test/API/functionalities/tail_call_frames/cross_dso/TestCrossDSOTailCalls.py
The file was modifiedlldb/test/API/functionalities/tail_call_frames/disambiguate_tail_call_seq/TestDisambiguateTailCallSeq.py
The file was modifiedlldb/test/API/functionalities/tail_call_frames/sbapi_support/TestTailCallFrameSBAPI.py
The file was modifiedlldb/test/API/functionalities/tail_call_frames/thread_step_out_message/TestArtificialFrameStepOutMessage.py
The file was modifiedlldb/test/API/functionalities/tail_call_frames/disambiguate_paths_to_common_sink/TestDisambiguatePathsToCommonSink.py
Commit d17798823ca2213af353e125f6f5233522dda7ce by flo
[SCEV] Retain AddExpr flags when subtracting a foldable constant.

Currently we drop wrapping flags for expressions like (A + C1)<flags> - C2.

But we can retain flags under certain conditions:

* Adding a smaller constant is NUW if the original AddExpr was NUW.

* Adding a constant with the same sign and small magnitude is NSW, if the
  original AddExpr was NSW.

This can improve results after using `SimplifyICmpOperands`, which may
subtract one in order to use stricter predicates, as is the case for
`isKnownPredicate`.

Reviewed By: efriedma

Differential Revision: https://reviews.llvm.org/D104319
The file was modifiedllvm/test/Analysis/LoopAccessAnalysis/reverse-memcheck-bounds.ll
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was modifiedllvm/test/Transforms/IndVarSimplify/eliminate-exit-no-dl.ll
Commit bb6afc69b212b756b51b165672bd3531032afa01 by herhut
[mlir][memref] Add memref.copy operation

As the name suggests, it copies from one memref to another.

Differential Revision: https://reviews.llvm.org/D104657
The file was modifiedmlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
The file was modifiedmlir/test/Dialect/MemRef/ops.mlir
The file was modifiedmlir/test/Dialect/MemRef/invalid.mlir
Commit 28058d4cd10dac8129a5d5760597e832ea6eef81 by omair.javaid
[LLDB] Skip TestExitDuringExpression on aarch64/linux buildbot

TestExitDuringExpression test_exit_before_one_thread_no_unwind fails
sporadically on both Arm and AArch64 linux buildbots. This seems like
manifesting itself on a fully loaded machine. I have not found a reliable
timeout value so marking it skip for now.
The file was modifiedlldb/test/API/functionalities/thread/exit_during_expression/TestExitDuringExpression.py
Commit 2ef1fbfe0e341c3d4706f54ae15b8a5a8eee7b16 by danila
Add norm sub-target feature to table gen for ARC

This adds the `norm` sub-target feature (without backing implementation for now) to table gen.

Differential Revision: https://reviews.llvm.org/D104558
The file was modifiedllvm/lib/Target/ARC/ARC.td
The file was modifiedllvm/lib/Target/ARC/ARCSubtarget.h
Commit c462048cc4c088f6d12e6a55c1ceb54fd731a2b3 by Raphael Isemann
[lldb][NFC] Use SubsystemRAII in XcodeSDKModuleTests
The file was modifiedlldb/unittests/SymbolFile/DWARF/XcodeSDKModuleTests.cpp
Commit 9d110f915918fc6c2338837a15856c92a79f7b94 by Pushpinder.Singh
[AMDGPU][Libomptarget] Move allow_access_to_all_gpu_agents to rtl.cpp

Moving this method helps eliminate a use of g_atl_machine.

Reviewed By: JonChesterfield

Differential Revision: https://reviews.llvm.org/D104691
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/system.cpp
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/internal.h
The file was modifiedopenmp/libomptarget/plugins/amdgpu/src/rtl.cpp
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/data.cpp
Commit 82c1fb575034f81f861a299d8280a5668854a2bc by ivan.butygin
[mlir] Fix invalid handling of AllocOp symbolOperands by SimplifyAllocConst.

symbolOperands were completely ignored by SimplifyAllocConst. Also, slightly improved diagnostic message for verifyAllocLikeOp.

Differential Revision: https://reviews.llvm.org/D104260
The file was modifiedmlir/test/Transforms/canonicalize.mlir
The file was modifiedmlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
The file was modifiedmlir/test/Dialect/MemRef/canonicalize.mlir
Commit 5dd4d0d46fb892975bbb3a086da5a3a9996ced4d by Andrey.Churbanov
[OpenMP] libomp: fix dynamic loop dispatcher

Restructured dynamic loop dispatcher code.
Fixed use of dispatch buffers for nonmonotonic dynamic (static_steal) schedule:
- eliminated possibility of stealing iterations of the wrong loop when victim
  thread changed its buffer to work on another loop;
- fixed race when victim thread changed its buffer to work in nested parallel;
- eliminated "static" property of the schedule, that is now a single thread can
  execute whole loop.

Differential Revision: https://reviews.llvm.org/D103648
The file was modifiedopenmp/runtime/src/kmp_dispatch.h
The file was modifiedopenmp/runtime/src/kmp_dispatch.cpp
The file was modifiedopenmp/runtime/test/env/kmp_set_dispatch_buf.c
The file was addedopenmp/runtime/test/worksharing/for/omp_par_in_loop.c
The file was modifiedopenmp/runtime/test/worksharing/for/omp_for_schedule_runtime.c
The file was modifiedopenmp/runtime/src/kmp.h
The file was modifiedopenmp/runtime/src/kmp_dispatch_hier.h
The file was modifiedopenmp/runtime/src/kmp_settings.cpp
The file was modifiedopenmp/runtime/test/worksharing/for/kmp_set_dispatch_buf.c
Commit 87bdde4962ea926e81a3534119ac8f02901b75b9 by nikita.ppv
[ConstantFold] Skip bitcast -> GEP transform for opaque pointers

Same as with the InstCombine transform, this is not possible for
bitcasts involving opaque pointers, as GEP preserves opaqueness.
The file was modifiedllvm/lib/IR/ConstantFold.cpp
The file was modifiedllvm/test/Transforms/InstCombine/opaque-ptr.ll
Commit e638a290f7d0bb85dbf81ba34eaaeef8c8d1b42d by nikita.ppv
[ConstantFold] Delay fetching pointer element type

Don't do this while stipping pointer casts, instead fetch it at
the end. This improves compatibility with opaque pointers for the
case where the base object is not opaque.
The file was modifiedllvm/test/Transforms/InstCombine/opaque-ptr.ll
The file was modifiedllvm/lib/Analysis/ConstantFolding.cpp
Commit 34cccdaed7e7952a9191231ffa62b1b22eac35c8 by flo
[BitcodeReader] Validate Strtab before accessing.

This fixes a crash with invalid bitcode files that have records
referencing names in Strtab, but Strtab is not present or the index is
out-of-bounds.

This fixes the following clusterfuzz issue:
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=29895

Reviewed By: arsenm

Differential Revision: https://reviews.llvm.org/D95554
The file was addedllvm/test/Bitcode/invalid-record-strtab.ll.bc
The file was addedllvm/test/Bitcode/invalid-record-strtab.ll
The file was modifiedllvm/lib/Bitcode/Reader/BitcodeReader.cpp
Commit 952a0f23852ce9448b10458449b0aa39061ffee5 by huberjn
[Libomptarget] Introduce new globalization runtime calls

Summary:
This patch introduces the new globalization runtime to be used by D97680. These
runtime calls will replace the __kmpc_data_sharing_push_stack and
__kmpc_data_sharing_pop_stack functions.

Reviewed By: tianshilei1992

Differential Revision: https://reviews.llvm.org/D102532
The file was modifiedopenmp/libomptarget/deviceRTLs/common/src/omptarget.cu
The file was modifiedopenmp/libomptarget/deviceRTLs/interface.h
The file was modifiedopenmp/libomptarget/deviceRTLs/common/src/data_sharing.cu
Commit a83ce95b097689f4ebd2c3b45c0778d0b6946d00 by graham.hunter
[clang] Remove unused capture in closure

c6a91ee6aaaa removed uses of IsMonotonic from OpenMP SIMD codegen,
but that left a capture of the variable unused which upset buildbots
using -Werror.
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
Commit b2f48cc9142012aeac16b8a28070f630e6711d5d by rosie.sumpter
[SLP][AArch64] Add SLP vectorizer tests for XOR and AND reductions. NFC

These regression tests show missed SLP vectorization opportunities,
which will be fixed in a future commit (see:
https://reviews.llvm.org/D104538).

Differential Revision: https://reviews.llvm.org/D104708
The file was addedllvm/test/Transforms/SLPVectorizer/AArch64/slp-and-reduction.ll
The file was addedllvm/test/Transforms/SLPVectorizer/AArch64/slp-xor-reduction.ll
Commit 48e2d3a5c23f7a11972c30f92d48d85a6a6bf1bd by Raphael Isemann
[lldb][NFC] Remove an outdated comment in HostInfoBase

We should *never* use static local variables in this file as this makes
unittesting the plugin code impossible (and this whole 'testing' thing has
turned out to be rather useful so far).
The file was modifiedlldb/source/Host/common/HostInfoBase.cpp
Commit 68d133a3e8c961965eff9a66b36742a7fcb30165 by huberjn
[OpenMP] Simplify GPU memory globalization

Summary:
Memory globalization is required to maintain OpenMP standard semantics for data sharing between
worker and master threads. The GPU cannot share data between its threads so must allocate global or
shared memory to store the data in. Currently this is implemented fully in the frontend using the
`__kmpc_data_sharing_push_stack` and __kmpc_data_sharing_pop_stack` functions to emulate standard
CPU stack sharing. The front-end scans the target region for variables that escape the region and
must be shared between the threads. Each variable then has a field created for it in a global record
type.

This patch replaces this functinality with a single allocation command, effectively mimicing an
alloca instruction for the variables that must be shared between the threads. This will be much
slower than the current solution, but makes it much easier to optimize as we can analyze each
variable independently and determine if it is not captured. In the future, we can replace these
calls with an `alloca` and small allocations can be pushed to shared memory.

Reviewed By: tianshilei1992

Differential Revision: https://reviews.llvm.org/D97680
The file was modifiedclang/test/OpenMP/nvptx_target_parallel_reduction_codegen_tbaa_PR46146.cpp
The file was modifiedclang/test/OpenMP/nvptx_target_teams_distribute_parallel_for_codegen.cpp
The file was modifiedclang/test/OpenMP/nvptx_target_parallel_proc_bind_codegen.cpp
The file was modifiedclang/test/OpenMP/nvptx_target_teams_codegen.cpp
The file was modifiedclang/test/OpenMP/nvptx_target_teams_distribute_codegen.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
The file was modifiedclang/test/OpenMP/nvptx_target_parallel_codegen.cpp
The file was modifiedclang/test/OpenMP/nvptx_parallel_for_codegen.cpp
The file was modifiedclang/test/OpenMP/nvptx_parallel_codegen.cpp
The file was modifiedclang/test/OpenMP/nvptx_target_parallel_num_threads_codegen.cpp
The file was modifiedllvm/test/Transforms/OpenMP/globalization_remarks.ll
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntimeGPU.h
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMPKinds.def
The file was modifiedllvm/lib/Transforms/IPO/OpenMPOpt.cpp
The file was modifiedclang/test/OpenMP/nvptx_target_codegen.cpp
The file was modifiedclang/test/OpenMP/assumes_include_nvptx.cpp
The file was modifiedclang/test/OpenMP/nvptx_data_sharing.cpp
The file was modifiedclang/test/OpenMP/nvptx_target_parallel_reduction_codegen.cpp
The file was modifiedclang/test/OpenMP/nvptx_distribute_parallel_generic_mode_codegen.cpp
The file was modifiedclang/test/OpenMP/nvptx_target_teams_distribute_parallel_for_simd_codegen.cpp
The file was modifiedclang/test/OpenMP/nvptx_lambda_capturing.cpp
The file was modifiedclang/test/OpenMP/nvptx_teams_codegen.cpp
The file was modifiedclang/test/OpenMP/nvptx_nested_parallel_codegen.cpp
The file was modifiedclang/test/OpenMP/nvptx_teams_reduction_codegen.cpp
The file was modifiedclang/test/OpenMP/target_parallel_debug_codegen.cpp
The file was modifiedclang/test/OpenMP/declare_target_codegen_globalization.cpp
The file was modifiedclang/test/OpenMP/nvptx_multi_target_parallel_codegen.cpp
The file was modifiedllvm/test/Transforms/PhaseOrdering/openmp-opt-module.ll
Commit 6c782e6eb0390097a02ae20bed7c502b8ee15696 by flo
[SCEV] Reduce code to handle predicates in applyLoopGuards (NFC).

Hoist out common recurrence check and sink updating the map, to reduce
the code required to support additional predicates.
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
Commit 873ff5a72864fdf60614cca8adbd0d869fc9a9a2 by jingu.kang
[SimpleLoopUnswich] Fixa a bug on ComputeUnswitchedCost with partial unswitch

There was a bug from cost calculation for partially invariant unswitch.

The costs of non-duplicated blocks are substracted from the total LoopCost, so
anything that is duplicated should not be counted.

Differential Revision: https://reviews.llvm.org/D103816
The file was modifiedllvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
The file was modifiedllvm/test/Transforms/SimpleLoopUnswitch/partial-unswitch.ll
Commit a8dd7094d364f6fb4921627a36b920e5098e88c3 by david.spickett
[lldb] Remove more redundant SetStatus(eReturnStatusFailed)

Mostly by converting uses of GetErrorStream to AppendError,
so that the call to SetStatus is implicit.

Some remain where it isn't certain that you'll have a message
to set, or you want the output to be on stdout.

One place in CommandObjectWatchpoint previously didn't set
the status to failed at all. However it's pretty obvious
that it should do so.

Reviewed By: teemperor

Differential Revision: https://reviews.llvm.org/D104697
The file was modifiedlldb/source/Commands/CommandObjectTarget.cpp
The file was modifiedlldb/source/Commands/CommandObjectWatchpoint.cpp
The file was modifiedlldb/source/Interpreter/CommandObject.cpp
The file was modifiedlldb/source/Commands/CommandObjectReproducer.cpp
The file was modifiedlldb/source/Commands/CommandObjectVersion.cpp
The file was modifiedlldb/source/Commands/CommandObjectPlatform.cpp
Commit ea011ec5ed53599305de62ca5fcfd31f4b3448c3 by meera.nakrani
[AArch64LoadStoreOptimizer] Recommit: Generate more STPs by renaming registers earlier

This is a recommit that fixes unwanted STP generation by checking that
the base register has not been modified or used elsewhere.

Our initial motivating case was memcpy's with alignments > 16. The
loads/stores, to which small memcpy's expand, are kept together in
several places so that we get a sequence like this for a 64 bit copy:
LD w0
LD w1
ST w0
ST w1
The load/store optimiser can generate a LDP/STP w0, w1 from this because
the registers read/written are consecutive. In our case however, the
sequence is optimised during ISel, resulting in:
LD w0
ST w0
LD w0
ST w0
This instruction reordering allows reuse of registers. Since the registers
are no longer consecutive (i.e. they are the same), it inhibits LDP/STP
creation. The approach here is to perform renaming:
LD w0
ST w0
LD w1
ST w1
to enable the folding of the stores into a STP. We do not yet generate
the LDP due to a limitation in the renaming implementation, but plan to
look at that in a follow-up so that we fully support this case. While
this was initially motivated by certain memcpy's, this is a general
approach and thus is beneficial for other cases too, as can be seen
in some test changes.

Differential Revision: https://reviews.llvm.org/D103597
The file was modifiedllvm/test/CodeGen/AArch64/stp-opt-with-renaming.mir
The file was modifiedllvm/test/CodeGen/AArch64/consthoist-gep.ll
The file was modifiedllvm/test/CodeGen/AArch64/ldst-opt.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/byval-call.ll
Commit e790d3667ed4d8f8df0b55f7c93fee0045c0e626 by nikita.ppv
[OpaquePtr] Handle addrspacecasts in InstCombine

This adds support for addrspace casts involving opaque pointers to
InstCombine, as well as the isEliminableCastPair() helper
(otherwise the assertion failure would just move there).

Add PointerType::hasSameElementTypeAs() to hide the element type
details.

Differential Revision: https://reviews.llvm.org/D104668
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
The file was modifiedllvm/lib/IR/Instructions.cpp
The file was modifiedllvm/test/Transforms/InstCombine/opaque-ptr.ll
The file was modifiedllvm/include/llvm/IR/DerivedTypes.h
Commit 244e98ff480859e969a99d07064745b075f3a892 by huberjn
[Libomptarget] Improve device runtime implementation for globalized variables.

Currently the runtime implementation of `__kmpc_alloc_shared` is extremely slow because it allocated memory for each thread individually. This patch adds a small buffer for the threads to share data and will greatly improve performance for builds where all globalization could not be optimized out. If the shared buffer is full, then memory will not only be allocated per-warp rather than per-thread.

Depends on D97680

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D104666
The file was modifiedopenmp/libomptarget/deviceRTLs/common/omptarget.h
The file was modifiedopenmp/libomptarget/deviceRTLs/common/src/omp_data.cu
The file was modifiedopenmp/libomptarget/deviceRTLs/common/src/omptarget.cu
The file was modifiedopenmp/libomptarget/deviceRTLs/common/src/data_sharing.cu
The file was modifiedopenmp/libomptarget/deviceRTLs/interface.h
Commit 6fc51c9f7d6647ba78e5a235e7d8bfcf3ab2ede0 by huberjn
[OpenMP] Replace GPU globalization calls with shared memory in the middle-end

Summary:
The changes introduced in D97680 create a simpler interface to code that needs
to be globalized. This interface is used to simplify the globalization calls in
the middle end. We can check any globalization call that is only called by a
single thread in the team and replace it with a static shared memory buffer.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D97818
The file was addedllvm/test/Transforms/OpenMP/replace_globalization.ll
The file was modifiedllvm/lib/Transforms/IPO/OpenMPOpt.cpp
Commit dd1b121c99de6bd7186e23e2bf34edb02db7c076 by isanbard
[llvm-diff] Constify APIs so that there aren't conflicts

Some APIs work with const variables while others don't. This can cause
conflicts when calling one from the other.

This is NFC.

Differential Revision: https://reviews.llvm.org/D104719
The file was modifiedllvm/tools/llvm-diff/DifferenceEngine.h
The file was modifiedllvm/tools/llvm-diff/DiffConsumer.cpp
The file was modifiedllvm/tools/llvm-diff/DiffLog.h
The file was modifiedllvm/tools/llvm-diff/DiffConsumer.h
The file was modifiedllvm/tools/llvm-diff/DiffLog.cpp
The file was modifiedllvm/tools/llvm-diff/DifferenceEngine.cpp
Commit 3accff2553c00c3237876edd6066e1701c52e66c by i
[llvm-objcopy] Fix some namespace style issues

https://llvm.org/docs/CodingStandards.html#use-namespace-qualifiers-to-implement-previously-declared-functions

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D104693
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.cpp
The file was modifiedllvm/tools/llvm-objcopy/ConfigManager.cpp
The file was modifiedllvm/tools/llvm-objcopy/ELF/ELFObjcopy.cpp
Commit c747b7d1d9a2c9e4ba82ce93c9273c1662d6994a by Steven Wu
[llvm] Fix lto tests that requires ld64

Since Xcode 13, ld64 requires linking libSystem for all the executable.
Fix the tests that needs to run ld64 by linking libSystem from sysroot.

rdar://77332728

Reviewed By: fhahn

Differential Revision: https://reviews.llvm.org/D104332
The file was modifiedllvm/test/tools/lto/no-bitcode.s
The file was modifiedllvm/test/tools/lto/hide-linkonce-odr.ll
The file was modifiedllvm/test/tools/lto/print-stats.ll
The file was modifiedllvm/test/lit.cfg.py
The file was modifiedllvm/test/tools/lto/opt-level.ll
The file was modifiedllvm/test/lit.site.cfg.py.in
Commit 03d7e61c87eb94083d22ff55cf30c0a378ab6824 by huberjn
[OpenMP] Internalize functions in OpenMPOpt to improve IPO passes

Summary:
Currently the attributor needs to give up if a function has external linkage.
This means that the optimization introduced in D97818 will only apply to static
functions. This change uses the Attributor to internalize OpenMP device
routines by making a copy of each function with private linkage and replacing
the uses in the module with it. This allows for the optimization to be applied
to any regular function.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D102824
The file was modifiedclang/test/OpenMP/remarks_parallel_in_target_state_machine.c
The file was modifiedllvm/lib/Transforms/IPO/OpenMPOpt.cpp
The file was modifiedclang/test/OpenMP/remarks_parallel_in_multiple_target_state_machines.c
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
The file was modifiedllvm/test/Transforms/OpenMP/single_threaded_execution.ll
The file was modifiedllvm/test/Transforms/OpenMP/replace_globalization.ll
Commit 002905907432b19c1ce303d2cd8e3896dd360683 by tianshilei1992
[NFC][OpenMP][Offloading] Unified the construction of mapping table entry

This patch unifies construction of mapping table entry to use `emplace`.

Reviewed By: grokos

Differential Revision: https://reviews.llvm.org/D104580
The file was modifiedopenmp/libomptarget/src/device.cpp
Commit 78d404a11dd33c8349fd9b6ef5876d523c457f0e by hans
[clang][c++20] Fix false warning for unused private fields when a class has only defaulted comparison operators.

Fixes bug 50263

When "unused-private-field" flag is on if you have a struct with private
members and only defaulted comparison operators clang will warn about
unused private fields.

If you where to write the comparison operators by hand no warning is
produced.

This is a bug since defaulting a comparison operator uses all private
members .

The fix is simple, in CheckExplicitlyDefaultedFunction just clear the
list of unused private fields if the defaulted function is a comparison
function.

Differential revision: https://reviews.llvm.org/D102186
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was modifiedclang/test/SemaCXX/warn-unused-private-field.cpp
Commit 7adf713a5e22b44c7cc746bcd379d844277a19f2 by Louis Dionne
[libc++] Change forward_list::swap to use propagate_on_container_swap for noexcept specification

The current implementation of `std::forward_list::swap` uses
`propagate_on_container_move_assignment` for `noexcept` specification.
This patch changes it to use `propagate_on_container_swap`, as it should.

Fixes https://llvm.org/PR50224.

Differential Revision: https://reviews.llvm.org/D101899
The file was modifiedlibcxx/include/forward_list
Commit a7786badb75b8c7cd425fefaeefc0a99fe8b49d8 by Matthew.Arsenault
AMDGPU: Move zeroed FP high bits optimization to patterns
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstrInfo.td
The file was modifiedllvm/lib/Target/AMDGPU/SIInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.td
Commit 47553356ef0d3cda501af056baeba346002c62b3 by thakis
[gn build] manually port c747b7d1d9a2 (config.osx_sysroot)
The file was modifiedllvm/utils/gn/secondary/llvm/test/BUILD.gn
Commit 40d6d2c49dd16641a6fd40916e1cc9a58513ed15 by zoecarver
[libcxx][ranges] Add `ranges::iter_swap`.

Differential Revision: https://reviews.llvm.org/D102809
The file was modifiedlibcxx/include/iterator
The file was modifiedlibcxx/test/std/iterators/iterator.requirements/iterator.cust/iterator.cust.move/iter_move.pass.cpp
The file was modifiedlibcxx/include/CMakeLists.txt
The file was addedlibcxx/test/std/iterators/iterator.requirements/iterator.cust/iterator.cust.swap.pass.cpp
The file was modifiedlibcxx/test/std/iterators/iterator.requirements/iterator.cust/unqualified_lookup_wrapper.h
The file was addedlibcxx/include/__iterator/iter_swap.h
The file was modifiedlibcxx/include/module.modulemap
Commit f53d791520d85c5404381ff3ad92cb918256029d by i
Improve the diagnostic of DiagnosticInfoResourceLimit (and warn-stack-size in particular)

Before: `warning: stack size limit exceeded (888) in main`
After: `warning: stack frame size (888) exceeds limit (100) in function 'main'` (the -Wframe-larger-than limit will be mentioned)

Reviewed By: nickdesaulniers

Differential Revision: https://reviews.llvm.org/D104667
The file was modifiedllvm/lib/IR/DiagnosticInfo.cpp
The file was modifiedllvm/test/CodeGen/ARM/warn-stack.ll
The file was modifiedclang/test/Misc/backend-stack-frame-diagnostics-fallback.cpp
The file was modifiedllvm/test/CodeGen/X86/warn-stack.ll
The file was modifiedclang/test/Misc/backend-resource-limit-diagnostics.cl
The file was modifiedllvm/lib/CodeGen/PrologEpilogInserter.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/exceed-max-sgprs.ll
The file was modifiedllvm/include/llvm/IR/DiagnosticInfo.h
The file was modifiedllvm/test/CodeGen/AMDGPU/stack-size-overflow.ll
Commit d797a7f8da18e39d8ce1913175601faf2002a005 by Stanislav.Mekhanoshin
[AMDGPU] Use performOptimizedStructLayout for LDS sort

This gives better packing.

Differential Revision: https://reviews.llvm.org/D104331
The file was modifiedllvm/test/CodeGen/AMDGPU/lower-module-lds-constantexpr.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/lower-module-lds-global-alias.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/update-lds-alignment.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/lower-module-lds-global-uses.ll
Commit bd240b3d77c4157a99d029fa9fa431c53b748ef1 by zhijian
[AIX][XCOFF] generate eh_info when vector registers are saved according to the traceback table.

Summary:

generate eh_info when vector registers are saved according to the traceback table.

struct eh_info_t {

unsigned version;       /* EH info version 0 */
#if defined(64BIT)

char _pad[4];           /* padding */
#endif

unsigned long lsda;     /* Pointer to Language Specific Data Area */
unsigned long personality; /* Pointer to the personality routine */
};

the value of lsda and personality is zero when the number of vector registers saved is large zero and there is not personality of the function

Reviewers: Jason Liu
Differential Revision: https://reviews.llvm.org/D103651
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AIXException.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/aix-emit-tracebacktable-clobber-register.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
Commit 4474958d3a97dede2caa0920f7c4a4dc7aac57d3 by samitolvanen
ThinLTO: Fix inline assembly references to static functions with CFI

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

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

Reviewed By: pcc

Differential Revision: https://reviews.llvm.org/D104058
The file was modifiedllvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
The file was addedllvm/test/Transforms/ThinLTOBitcodeWriter/cfi-icall-static-inline-asm.ll
Commit 805e1a58965b52e9473c6c2a2db2a4d089511200 by llvmgnsyncbot
[gn build] Port 40d6d2c49dd1
The file was modifiedllvm/utils/gn/secondary/libcxx/include/BUILD.gn
Commit 9ad8a1f6fb2aea775736cd59129b7299be443c5c by Matthew.Arsenault
AMDGPU: Fix high 16-bit optimization on gfx9

We can do this optimization in the majority of cases, but we currently
don't have a way to do it. We do not track/model which instructions
have which behavior, the control bit to change the high bit behavior,
or making use of preserved bits at all. This is a bit fuzzy since we
don't know precisely how the source instruction will be lowered, but
that only really matters in one case (for fma_mixlo).

We do need to fixup some of these cases after selection, but the
pattern helps eliminate many of these zexts.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIInstructions.td
The file was modifiedllvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/preserve-hi16.ll
Commit d03736455ceeeb8ce639b65b4965436297cf24a4 by patrickeholland
[MCA] [In-order pipeline] Fix for 0 latency instruction causing assertion to fail.

0 latency instructions now get processed and retired properly within the in-order pipeline. Had to fix a bug within TimelineView.cpp as well that would show up when a 0 latency instruction was the first instruction in the source.

Differential Revision: https://reviews.llvm.org/D104675
The file was modifiedllvm/lib/MCA/Stages/InOrderIssueStage.cpp
The file was modifiedllvm/tools/llvm-mca/Views/TimelineView.cpp
Commit 2662351e3b75052f3ab273b36ee7d64b5cb7cb85 by huberjn
[OpenMP] Add new OpenMP globalization functions to library info

Summary:
The changes to globalization introduced in D97680 created two new functions to
push / pop shareably memory on the GPU, __kmpc_alloc_shared and
__kmpc_free_shared. This patch adds these new runtime functions to the
library info so they can be used by the HeapToStack attributor interface. This
optimization replaces malloc / free pairs with stack memory if legal.

Reviewed By: tianshilei1992

Differential Revision: https://reviews.llvm.org/D102087
The file was modifiedllvm/include/llvm/Analysis/TargetLibraryInfo.def
The file was modifiedllvm/lib/Analysis/TargetLibraryInfo.cpp
The file was modifiedllvm/unittests/Analysis/TargetLibraryInfoTest.cpp
The file was modifiedllvm/lib/Analysis/MemoryBuiltins.cpp
Commit 7d69da71dd35f91a5d4310b16940405e7f0c2f20 by huberjn
[OpenMP] Enable HeapToStack conversion in OpenMPOpt for new RTL globalization calls

Summary:
The changes to globalization introduced in D97680 introduce a large amount of overhead by default. The old globalization method would always ignore globalization code if executing in SPMD mode. This wasn't strictly correct as data sharing is still possible in SPMD mode. The new interface is correct but introduces globalization code even when unnecessary. This optimization will use the existing HeapToStack transformation in the attributor to allow for unneeded globalization to be replaced with thread-private stack memory. This is done using the newly introduced library instances for the RTL functions added in D102087.

Depends on D97818

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D102197
The file was modifiedllvm/test/Transforms/PhaseOrdering/openmp-opt-module.ll
The file was modifiedllvm/lib/Transforms/IPO/OpenMPOpt.cpp
The file was modifiedllvm/test/Transforms/OpenMP/gpu_state_machine_function_ptr_replacement.ll
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMPKinds.def
The file was addedllvm/test/Transforms/OpenMP/remove_globalization.ll
Commit 2e120920acd2241658f87a995c3a685603e992f3 by Matthew.Arsenault
AMDGPU: Add baseline test for instructions zeroing high bits
The file was addedllvm/test/CodeGen/AMDGPU/high-bits-zeroed-16-bit-ops.mir
Commit 317e92a3e82f88f111e04132195d9daa6b97f1ab by arthur.j.odwyer
[libc++] Enable `explicit` conversion operators, even in C++03 mode.

C++03 didn't support `explicit` conversion operators;
but Clang's C++03 mode does, as an extension, so we can use it.
This lets us make the conversion explicit in `std::function` (even in '03),
and remove some silly metaprogramming in `std::basic_ios`.

Drive-by improvements to the tests for these operators, in addition
to making sure all these tests also run in `c++03` mode.

Differential Revision: https://reviews.llvm.org/D104682
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/op_bool.pass.cpp
The file was modifiedlibcxx/include/__memory/unique_ptr.h
The file was modifiedlibcxx/include/ostream
The file was modifiedlibcxx/test/std/language.support/support.exception/propagation/exception_ptr.pass.cpp
The file was modifiedlibcxx/include/__config
The file was modifiedlibcxx/include/exception
The file was modifiedlibcxx/include/ios
The file was modifiedlibcxx/include/system_error
The file was modifiedlibcxx/include/__functional_03
The file was modifiedlibcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.cap/operator_bool.pass.cpp
The file was modifiedlibcxx/test/std/input.output/iostreams.base/ios/iostate.flags/bool.pass.cpp
The file was modifiedlibcxx/test/std/diagnostics/syserr/syserr.errcode/syserr.errcode.observers/bool.pass.cpp
The file was modifiedlibcxx/include/__memory/shared_ptr.h
The file was modifiedlibcxx/include/functional
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.obs/op_bool.pass.cpp
The file was modifiedlibcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.obs/op_bool.pass.cpp
The file was modifiedlibcxx/include/istream
The file was modifiedlibcxx/include/__mutex_base
The file was removedlibcxx/test/std/diagnostics/syserr/syserr.errcode/syserr.errcode.observers/bool.compile.fail.cpp
Commit 39f8a792f0ac4efed11ac906ba76137fc0c9f6a8 by Matthew.Arsenault
AMDGPU: Try to eliminate clearing of high bits of 16-bit instructions

These used to consistently be zeroed pre-gfx9, but gfx9 made the
situation complicated since now some still do and some don't. This
also manages to pick up a few cases that the pattern fails to optimize
away.

We handle some cases with instruction patterns, but some get
through. In particular this improves the integer cases.
The file was modifiedllvm/lib/Target/AMDGPU/GCNSubtarget.h
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.frexp.exp.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/high-bits-zeroed-16-bit-ops.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/preserve-hi16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/strict_fma.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fmin3.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/strict_fsub.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/strict_fadd.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/usubsat.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/strict_fmul.f16.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/fmax_legacy.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.minnum.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fmax3.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.maxnum.f16.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIFoldOperands.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fmin_legacy.f16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/uaddsat.ll
Commit 87dbe6c4ef4fdaac093ff82a7bd2b2ca2cf5bc3a by Louis Dionne
[libc++] NFC: Add missing all.h to the modulemap
The file was modifiedlibcxx/include/module.modulemap
Commit 709f8186a45e28c0640c999a8b779433dc0eb525 by Raphael Isemann
[lldb] Add missing string include to lldb-server's main
The file was modifiedlldb/test/API/tools/lldb-server/main.cpp
Commit 015c27caa2c9de22a0a2181675101412ec777cf8 by david.green
[ARM] Change some Gather/Scatter interface types to Instructions. NFC

These returned Values are cast to an Instruction already, this just
cleans up the interface a little to match the expected types.
The file was modifiedllvm/lib/Target/ARM/MVEGatherScatterLowering.cpp
Commit 30e36c9b3c6a6889ea54c0a4cca60768dfc64421 by huberjn
[Attributor] Add interface to emit remarks in Attributor

Summary:
This patch adds support for the Attributor to emit remarks on behalf of some
other pass. The attributor can now optionally take a callback function that
returns an OptimizationRemarkEmitter object when given a Function pointer. If
this is availible then a remark will be emitted for the corresponding pass
name.

Depends on D102197

Reviewed By: sstefan1 thegameg

Differential Revision: https://reviews.llvm.org/D102444
The file was modifiedllvm/test/Transforms/OpenMP/replace_globalization.ll
The file was modifiedllvm/test/Transforms/OpenMP/remove_globalization.ll
The file was modifiedllvm/lib/Transforms/IPO/AttributorAttributes.cpp
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
The file was modifiedllvm/lib/Transforms/IPO/OpenMPOpt.cpp
Commit 4e78bd3836ce7352c5c5e1818e88a781498f216e by spatel
[InstCombine][test] add tests for FP min/max with negated op; NFC
The file was modifiedllvm/test/Transforms/InstCombine/maxnum.ll
The file was modifiedllvm/test/Transforms/InstCombine/minnum.ll
Commit bfd172999be779cb441f40472f97646e4f73c2e7 by spatel
[InstCombine][test] add tests for FP min/max with negated op; NFC
The file was modifiedllvm/test/Transforms/InstCombine/maximum.ll
The file was modifiedllvm/test/Transforms/InstCombine/minimum.ll
Commit b1f6ef92ec795d877a94e099e86363c39cbd359a by spatel
[InstCombine] reduce code duplication for FP min/max with casts fold; NFC
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
Commit 948016228fdfb647ad7bcc978fde173504e3df82 by i
Improve clang -Wframe-larger-than= diagnostic

Match the style in D104667.

This commit is for non-LTO diagnostics, while D104667 is for LTO and llc diagnostics.
The file was modifiedclang/lib/CodeGen/CodeGenAction.cpp
The file was modifiedclang/test/Misc/backend-stack-frame-diagnostics.cpp
The file was modifiedclang/test/Misc/backend-stack-frame-diagnostics-fallback.cpp
The file was modifiedclang/test/Frontend/backend-diagnostic.c
The file was modifiedclang/include/clang/Basic/DiagnosticFrontendKinds.td
Commit 8d84751ac488ad11e0964704e9ea5366731355f7 by rnk
Revert "[LLD] [COFF] Avoid doing repeated fuzzy symbol lookup for each iteration. NFC."

This reverts commit e1adf90826a57b674eee79b071fb46c1f5683cd0.

This appears to affect the way that C++ mangled symbols appear in the
import library when using a .def file that names a C++ free function
with no name decoration. I will follow up with a reduced test case
shortly.
The file was modifiedlld/COFF/Driver.cpp
Commit b54ccab5096dc186fbc8343e1af75b5ccb09821b by huberjn
[Attributor] Add an option to increase the max number of iterations

Right now the Attributor defaults to 32 fixed point iterations unless it is set
explicitly by a command line flag. This patch allows this to be configured when
the attributor instance is created. The maximum is then increased in OpenMPOpt
if the target is a kernel. This is because the globalization analysis can result
in larger iteration counts due to many dependent instances running at once.

Depends on D102444

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D104416
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
The file was modifiedllvm/lib/Transforms/IPO/OpenMPOpt.cpp
Commit ca1560da7251494ae099d8a74b38b89e605e19cb by huberjn
[OpenMP][NFC] Add new optimizations to OpenMPOpt comment header

Summary:
Adds mentions to the new globalization optimizations added to the OpenMPOpt comment header.
The file was modifiedllvm/lib/Transforms/IPO/OpenMPOpt.cpp
Commit f4c06bcb67a1eba13a7f164961586dddaf8ebd5f by Akira
[CodeGen] Don't create fake FunctionDecls when generating block/byref
copy/dispose helper functions

We found out that these fake functions would cause clang to crash if the
changes proposed in https://reviews.llvm.org/D98799 were made.

Differential Revision: https://reviews.llvm.org/D104082
The file was modifiedclang/test/CodeGenObjC/debug-info-blocks.m
The file was modifiedclang/lib/CodeGen/CGBlocks.cpp
The file was modifiedclang/test/CodeGenObjC/debug-info-block-helper.m
The file was modifiedclang/test/CodeGenCXX/debug-info-blocks.cpp
Commit fa5f425209c7f977326923262f8309f070b2553d by phosek
[compiler-rt][CMake] Drop flags that are set by default for Fuchsia

-Wl,-z,now is set by the Fuchsia driver, -Wl,-z,relro is the default
in LLD.
The file was modifiedcompiler-rt/CMakeLists.txt
Commit b9792638b0bfb308e0c7c125ac78f4ebf910c11b by phosek
[compiler-rt] Make use of undefined symbols configurable

We want to disable the use of undefined symbols on Fuchsia, but there
are cases where it might be desirable so may it configurable.

Differential Revision: https://reviews.llvm.org/D104728
The file was modifiedcompiler-rt/CMakeLists.txt
Commit e7091da10b3012e29cd4a11c29b620dd08ee6dee by cjdb
[libcxx][docs] updates the ranges status paper

* indicates whether work has been started or completed
* consolidates content that was split for dependency reasons (iff
  everything has been merged)
* makes things a lot more fine-grained
* turns sub-CSVs into lists
* puts links into description section and removes patch column
* adds links to c++draft on occasion

These changes heavily prioritise the the reader of the generated HTML
file, not the source.

Differential Revision: https://reviews.llvm.org/D103295
The file was modifiedlibcxx/docs/OneRangesProposalStatus.csv
Commit ed7086ad46f99f639b85ea6c8bda7c1a71be7c53 by phosek
[CMake] Fix the option declaration

This addresses build issue introduced in
b9792638b0bfb308e0c7c125ac78f4ebf910c11b.
The file was modifiedcompiler-rt/CMakeLists.txt
Commit e4ec61308326c1f4c960577e8494e1d6024b0130 by cjdb
[libcxx][doc] corrects LWG links in the One Ranges section
The file was modifiedlibcxx/docs/RangesIssuePaperStatus.csv

Summary

  1. [lldb] Actually let the matrix bot test something (details)
  2. [NFC] Reformat sanitizer workers (details)
  3. Reassign sanitizer builders/workers (details)
  4. Less builds for sanitizer-buildbot{2,8} (details)
Commit 478f6eb87c8780f5713c8526a32bb6f7e95caab1 by Raphael Isemann
[lldb] Actually let the matrix bot test something

Since https://reviews.llvm.org/D69401 landed the bot has been setting unused
CMake variables for specifying test compilers which meant this bot hasn't
been testing anything since 2019. Reenabling the tests so that we can start
fixing the failing tests.
The file was modifiedzorg/jenkins/monorepo_build.py
Commit a07e9a35bda576c7fd123a81c3793c26d3644c3f by Vitaly Buka
[NFC] Reformat sanitizer workers
The file was modifiedbuildbot/osuosl/master/config/builders.py
Commit 5d0847ab1e6cccf3f654cf9844f209471865c9fb by Vitaly Buka
Reassign sanitizer builders/workers
The file was modifiedbuildbot/osuosl/master/config/builders.py
Commit 536b364f914d8b597c304c5f3927f5b3a2446231 by Vitaly Buka
Less builds for sanitizer-buildbot{2,8}
The file was modifiedbuildbot/osuosl/master/config/workers.py