[all-commits] [llvm/llvm-project] b68660: [BOLT] Skip instruction shortening (#93032)

Fangrui Song via All-commits all-commits at lists.llvm.org
Mon Jul 22 09:47:55 PDT 2024


  Branch: refs/heads/users/MaskRay/spr/aarch64elf-allow-implicit-dx-at-section-beginning-1
  Home:   https://github.com/llvm/llvm-project
  Commit: b686600a57f37a938d5ede54b789d6b3543561b0
      https://github.com/llvm/llvm-project/commit/b686600a57f37a938d5ede54b789d6b3543561b0
  Author: Daniel Hill <dhhillaz at gmail.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M bolt/lib/Rewrite/BinaryPassManager.cpp

  Log Message:
  -----------
  [BOLT] Skip instruction shortening (#93032)

Add the ability to disable the instruction shortening pass through
--shorten-instructions=false


  Commit: b172f4aabe7918362cbac54e394657c37627238c
      https://github.com/llvm/llvm-project/commit/b172f4aabe7918362cbac54e394657c37627238c
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/lib/SandboxIR/SandboxIR.cpp

  Log Message:
  -----------
  [SandboxIR] Fix -Wunused-variable in SandboxIR.cpp (NFC)

/llvm-project/llvm/lib/SandboxIR/SandboxIR.cpp:584:8:
error: unused variable 'Pair' [-Werror,-Wunused-variable]
  auto Pair = LLVMValueToValueMap.insert({VPtr->Val, std::move(VPtr)});
       ^
1 error generated.


  Commit: 7f563232d685f0070d2c6bc74a134e4019dcadc1
      https://github.com/llvm/llvm-project/commit/7f563232d685f0070d2c6bc74a134e4019dcadc1
  Author: Itis-hard2name <chenwei at xfusion.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M bolt/docs/OptimizingClang.md

  Log Message:
  -----------
  [bolt][Docs] fix missing option in cmake of stage3 in OptimizingClang.md (#93684)

Fixes #93681


  Commit: 1ee8238f0eab75386522a002c2cbb6146284c0c1
      https://github.com/llvm/llvm-project/commit/1ee8238f0eab75386522a002c2cbb6146284c0c1
  Author: klensy <klensy at users.noreply.github.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M bolt/test/AArch64/update-debug-reloc.test
    M bolt/test/AArch64/veneer-gold.s
    M bolt/test/X86/dwarf5-df-types-modify-dwo-name-mixed.test
    M bolt/test/X86/dwarf5-one-loclists-two-bases.test
    M bolt/test/X86/dwarf5-two-loclists.test
    M bolt/test/X86/dwarf5-two-rnglists.test

  Log Message:
  -----------
  [BOLT][test] Fix Filecheck typos (#93979)

Fixes few FileCheck typos in tests and add missing(?) filecheck call in
test.

Co-authored-by: klensy <nightouser at gmail.com>


  Commit: 8bc02bf5c6e94489a79c8d924e5d9866fcc18417
      https://github.com/llvm/llvm-project/commit/8bc02bf5c6e94489a79c8d924e5d9866fcc18417
  Author: Eisuke Kawashima <e.kawaschima+github at gmail.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M bolt/docs/generate_doc.py
    M bolt/test/perf2bolt/lit.local.cfg

  Log Message:
  -----------
  fix(bolt/**.py): fix comparison to None (#94012)

from PEP8
(https://peps.python.org/pep-0008/#programming-recommendations):

> Comparisons to singletons like None should always be done with is or
is not, never the equality operators.

Co-authored-by: Eisuke Kawashima <e-kwsm at users.noreply.github.com>


  Commit: be7f1827ff180df7d3f585432048e784eaa932ee
      https://github.com/llvm/llvm-project/commit/be7f1827ff180df7d3f585432048e784eaa932ee
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp

  Log Message:
  -----------
  [LV] Use llvm::all_of in LoopVectorizationCostModel::getMaximizedVFForTarget. NFC (#99585)


  Commit: 05f0e86cc895181b3d2210458c78938f83353002
      https://github.com/llvm/llvm-project/commit/05f0e86cc895181b3d2210458c78938f83353002
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M lldb/include/lldb/Target/Thread.h
    M lldb/source/Plugins/Process/Utility/StopInfoMachException.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/scripted/ScriptedThread.cpp
    M lldb/source/Target/StopInfo.cpp
    M lldb/source/Target/Thread.cpp
    M lldb/test/API/functionalities/breakpoint/consecutive_breakpoints/TestConsecutiveBreakpoints.py
    M lldb/test/API/functionalities/breakpoint/step_over_breakpoint/TestStepOverBreakpoint.py

  Log Message:
  -----------
  [lldb] Change lldb's breakpoint handling behavior (#96260)

lldb today has two rules: When a thread stops at a BreakpointSite, we
set the thread's StopReason to be "breakpoint hit" (regardless if we've
actually hit the breakpoint, or if we've merely stopped *at* the
breakpoint instruction/point and haven't tripped it yet). And second,
when resuming a process, any thread sitting at a BreakpointSite is
silently stepped over the BreakpointSite -- because we've already
flagged the breakpoint hit when we stopped there originally.

In this patch, I change lldb to only set a thread's stop reason to
breakpoint-hit when we've actually executed the instruction/triggered
the breakpoint. When we resume, we only silently step past a
BreakpointSite that we've registered as hit. We preserve this state
across inferior function calls that the user may do while stopped, etc.

Also, when a user adds a new breakpoint at $pc while stopped, or changes
$pc to be the address of a BreakpointSite, we will silently step past
that breakpoint when the process resumes. This is purely a UX call, I
don't think there's any person who wants to set a breakpoint at $pc and
then hit it immediately on resuming.

One non-intuitive UX from this change, but I'm convinced it is
necessary: If you're stopped at a BreakpointSite that has not yet
executed, you `stepi`, you will hit the breakpoint and the pc will not
yet advance. This thread has not completed its stepi, and the thread
plan is still on the stack. If you then `continue` the thread, lldb will
now stop and say, "instruction step completed", one instruction past the
BreakpointSite. You can continue a second time to resume execution. I
discussed this with Jim, and trying to paper over this behavior will
lead to more complicated scenarios behaving non-intuitively. And mostly
it's the testsuite that was trying to instruction step past a breakpoint
and getting thrown off -- and I changed those tests to expect the new
behavior.

The bugs driving this change are all from lldb dropping the real stop
reason for a thread and setting it to breakpoint-hit when that was not
the case. Jim hit one where we have an aarch64 watchpoint that triggers
one instruction before a BreakpointSite. On this arch we are notified of
the watchpoint hit after the instruction has been unrolled -- we disable
the watchpoint, instruction step, re-enable the watchpoint and collect
the new value. But now we're on a BreakpointSite so the watchpoint-hit
stop reason is lost.

Another was reported by ZequanWu in
https://discourse.llvm.org/t/lldb-unable-to-break-at-start/78282 we
attach to/launch a process with the pc at a BreakpointSite and
misbehave. Caroline Tice mentioned it is also a problem they've had with
putting a breakpoint on _dl_debug_state.

The change to each Process plugin that does execution control is that

1. If we've stopped at a BreakpointSite that has not been executed yet,
we will call Thread::SetThreadStoppedAtUnexecutedBP(pc) to record
that.  When the thread resumes, if the pc is still at the same site, we
will continue, hit the breakpoint, and stop again.

2. When we've actually hit a breakpoint (enabled for this thread or not),
the Process plugin should call Thread::SetThreadHitBreakpointSite().
When we go to resume the thread, we will push a step-over-breakpoint
ThreadPlan before resuming.

The biggest set of changes is to StopInfoMachException where we
translate a Mach Exception into a stop reason. The Mach exception codes
differ in a few places depending on the target (unambiguously), and I
didn't want to duplicate the new code for each target so I've tested
what mach exceptions we get for each action on each target, and
reorganized StopInfoMachException::CreateStopReasonWithMachException to
document these possible values, and handle them without specializing
based on the target arch.

rdar://123942164


  Commit: 6747f12931b770f2c0d48ba4b01a55c36ab35e7c
      https://github.com/llvm/llvm-project/commit/6747f12931b770f2c0d48ba4b01a55c36ab35e7c
  Author: Sayhaan Siddiqui <49014204+sayhaan at users.noreply.github.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M bolt/lib/Rewrite/DWARFRewriter.cpp

  Log Message:
  -----------
  [BOLT][DWARF][NFC] Split processUnitDIE into two lambdas (#99225)

Split processUnitDIE into two lambdas to separate the processing of DWO
CUs and CUs in the main binary.


  Commit: 4a739fb53cacdb850d27b164dd6f173d21d5f083
      https://github.com/llvm/llvm-project/commit/4a739fb53cacdb850d27b164dd6f173d21d5f083
  Author: Max Winkler <max.enrico.winkler at gmail.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M clang/docs/MSVCCompatibility.rst

  Log Message:
  -----------
  [Clang] [docs] [MSVC] Add sections on `__forceinline` and intrinsic behaviour differences between Clang and MSVC (#99426)

We have had quite a few issues created around how Clang treats
intrinsics vs how MSVC treats intrinsics.

While I was writing this I also added some sections on behaviour changes
that caught me while porting my MSVC codebase to clang-cl.

Hopefully we can point issues around intrinsics to this doc and
hopefully it is useful to others who run into similar behaviour
differences.
The behaviour differences highlighted here are differences, as far as I
am aware, that we do not intend to change or fix for MSVC.


  Commit: a3ebb669d1027700a2f12bd5e075ad3fde3d4f70
      https://github.com/llvm/llvm-project/commit/a3ebb669d1027700a2f12bd5e075ad3fde3d4f70
  Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M libc/src/math/docs/add_math_function.md

  Log Message:
  -----------
  [libc][math]: updated math docs for newhdrgen (#99715)


  Commit: 52c08d7ffd380f4abd819c20bec76252272f6337
      https://github.com/llvm/llvm-project/commit/52c08d7ffd380f4abd819c20bec76252272f6337
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M lldb/include/lldb/Target/Thread.h
    M lldb/source/Plugins/Process/Utility/StopInfoMachException.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/scripted/ScriptedThread.cpp
    M lldb/source/Target/StopInfo.cpp
    M lldb/source/Target/Thread.cpp
    M lldb/test/API/functionalities/breakpoint/consecutive_breakpoints/TestConsecutiveBreakpoints.py
    M lldb/test/API/functionalities/breakpoint/step_over_breakpoint/TestStepOverBreakpoint.py

  Log Message:
  -----------
  Revert "[lldb] Change lldb's breakpoint handling behavior (#96260)"

This reverts commit 05f0e86cc895181b3d2210458c78938f83353002.

The debuginfo dexter tests are failing, probably because the way
stepping over breakpoints has changed with my patches.  And there
are two API tests fails on the ubuntu-arm (32-bit) bot. I'll need
to investigate both of these, neither has an obvious failure reason.


  Commit: cfc22605f61baf83035dba2e7c6db547a3fb7c62
      https://github.com/llvm/llvm-project/commit/cfc22605f61baf83035dba2e7c6db547a3fb7c62
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    M llvm/test/Instrumentation/InstrProfiling/runtime-counter-relocation.ll

  Log Message:
  -----------
  InstrProf: Mark BiasLI as invariant. (#95588)

Bias doesn't change after startup.

The test is enhanced for optimized sequences and atomic ops.


  Commit: abaf13ad589d72b356a8788a5095f869d9d038d0
      https://github.com/llvm/llvm-project/commit/abaf13ad589d72b356a8788a5095f869d9d038d0
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    R a-abfdec1d.o.tmp
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Frontend/FrontendOptions.h
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/test/Driver/ftime-trace-sections.cpp
    M clang/test/Driver/ftime-trace.cpp
    M clang/tools/driver/cc1_main.cpp
    M clang/unittests/Support/TimeProfilerTest.cpp
    M llvm/include/llvm/Support/TimeProfiler.h
    M llvm/lib/Support/TimeProfiler.cpp

  Log Message:
  -----------
  Revert "Reapply "Add source file name for template instantiations in -ftime-trace"" (#99731)

Reverts llvm/llvm-project#99545

There were a couple of issues reported in the PR: a sanitizer warning
(https://lab.llvm.org/buildbot/#/builders/164/builds/1246/steps/14/logs/stdio)
and a tmp file accidentally included in the commit.


  Commit: d4dc8e4a85c4a88a9080ac7b4e478498cb5edd33
      https://github.com/llvm/llvm-project/commit/d4dc8e4a85c4a88a9080ac7b4e478498cb5edd33
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/test/Instrumentation/InstrProfiling/runtime-counter-relocation.ll

  Log Message:
  -----------
  Fixup for #95588, don't assume `align 8`.

This shall fix aarch64 builders.


  Commit: 2d756d9d4c89ac50404f942f2db2f4a402aa0e00
      https://github.com/llvm/llvm-project/commit/2d756d9d4c89ac50404f942f2db2f4a402aa0e00
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M lld/test/MachO/reproduce-thin-archive-objc.s

  Log Message:
  -----------
  [lld-macho,test] Adjust reproduce-thin-archive-objc.s

When `cd %t` is used, it's conventional to move it above and omit `-o /dev/null`.

We don't check the string before `warning:` since (a) the string is not
very useful and (b) downstream might customize `ctx->e.logName`
(argv[0]).

count 0 is better than `--allow-empty`. In addition, without `2>&1` the
previous test was effective.


  Commit: 740161a9b98c9920dedf1852b5f1c94d0a683af5
      https://github.com/llvm/llvm-project/commit/740161a9b98c9920dedf1852b5f1c94d0a683af5
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M lld/COFF/Driver.cpp
    M lld/ELF/Driver.cpp
    M lld/wasm/Driver.cpp
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    R llvm/include/llvm/CodeGen/RuntimeLibcallUtil.h
    A llvm/include/llvm/CodeGen/RuntimeLibcalls.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    R llvm/include/llvm/IR/RuntimeLibcalls.h
    M llvm/include/llvm/LTO/LTO.h
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    M llvm/lib/CodeGen/DwarfEHPrepare.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/IR/CMakeLists.txt
    R llvm/lib/IR/RuntimeLibcalls.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Object/IRSymtab.cpp
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/ARM/ARMFastISel.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMLegalizerInfo.h
    M llvm/lib/Target/ARM/ARMSelectionDAGInfo.h
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Lanai/LanaiISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.h
    M llvm/tools/lto/lto.cpp

  Log Message:
  -----------
  Revert "[LLVM][LTO] Factor out RTLib calls and allow them to be dropped (#98512)"

This reverts commit c05126bdfc3b02daa37d11056fa43db1a6cdef69.
(llvmorg-19-init-17714-gc05126bdfc3b)
See #99610


  Commit: e2965fe512162baeb5bdb66f1a675a47c7fab5ca
      https://github.com/llvm/llvm-project/commit/e2965fe512162baeb5bdb66f1a675a47c7fab5ca
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/lib/IR/CMakeLists.txt

  Log Message:
  -----------
  Revert "[LLVM][LTO] Add missing dependency"

This reverts commit bb604ae9b8adbc0a0852eb68545eff685902f41b.
(llvmorg-19-init-17804-gbb604ae9b8ad)
See #99610


  Commit: 168ecd706904d6ce221dc5107da92c56aea7c8e9
      https://github.com/llvm/llvm-project/commit/168ecd706904d6ce221dc5107da92c56aea7c8e9
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  Revert "[bazel] Fix llvm:Core build (#99054)"

This reverts commit 5b54f36fb607d21c18f9eb56dcf481a9841dee8e.
(llvmorg-19-init-17774-g5b54f36fb607)
See #99610


  Commit: 5893b1e297f3a333b30a9d32d0909b77a9fcd31c
      https://github.com/llvm/llvm-project/commit/5893b1e297f3a333b30a9d32d0909b77a9fcd31c
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/RuntimeLibcalls.h
    M llvm/include/llvm/LTO/LTO.h
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp

  Log Message:
  -----------
  Reformat


  Commit: 72d8c2737bb557af9d0c735b9fa30b1b03485627
      https://github.com/llvm/llvm-project/commit/72d8c2737bb557af9d0c735b9fa30b1b03485627
  Author: Haowei <haowei at google.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M clang/cmake/caches/Fuchsia.cmake

  Log Message:
  -----------
  [Fuchsia] Remove linker flags from stage2 pass through (#99722)

This patch removes CMAKE_XXX_LINKER_FLAGS from list of flags that passed
through to stage2 build.


  Commit: 672cc8bce0a9306b07680b340617b8afd862adf5
      https://github.com/llvm/llvm-project/commit/672cc8bce0a9306b07680b340617b8afd862adf5
  Author: darkbuck <michael.hliao at gmail.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/InstructionSelect.h
    M llvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp

  Log Message:
  -----------
  [GlobalISel] Allow customizing instruction-select pass

- Allow customizing instruction-select pass to add additional analysis
  dependencies.

Reviewers: aemerson, arsenm, aeubanks

Reviewed By: arsenm

Pull Request: https://github.com/llvm/llvm-project/pull/95724


  Commit: 96fb0ea4df27c46b7127dace37fc47718db52779
      https://github.com/llvm/llvm-project/commit/96fb0ea4df27c46b7127dace37fc47718db52779
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_interceptors.cpp

  Log Message:
  -----------
  [compiler-rt] remove unneeded comma for pthread_atfork declaration (#99739)


  Commit: 37be437b1237ee1e02e72eb59c915be16ad8ee53
      https://github.com/llvm/llvm-project/commit/37be437b1237ee1e02e72eb59c915be16ad8ee53
  Author: alx32 <103613512+alx32 at users.noreply.github.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M lld/MachO/ObjC.cpp
    A lld/test/MachO/objc-category-merging-erase-objc-name-test.s

  Log Message:
  -----------
  [lld-macho] Fix erasing category names for ObjC categories (#99400)

We were already not deleting category names for Swift classes as those
names can be reused by other parts. However, I have come across a corner
case where this also happens for ObjC categories - so we can't delete
category names for them either. TODO remains to optimize this behavior
for both ObjC and Swift.


  Commit: 06d2176d81cab1d3ed8d0c17f78c1d3ef65cbab8
      https://github.com/llvm/llvm-project/commit/06d2176d81cab1d3ed8d0c17f78c1d3ef65cbab8
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M clang/lib/AST/Interp/Pointer.cpp

  Log Message:
  -----------
  [clang][Interp][NFC] Move global variable init case to the top

of the respective functions. Previously, we did not properly mark
global zero sized arrays as initialized.


  Commit: b201ab8adc812f025490388ef89d5547e63b9d1e
      https://github.com/llvm/llvm-project/commit/b201ab8adc812f025490388ef89d5547e63b9d1e
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/lib/MC/MCWinCOFFStreamer.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFStreamer.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFStreamer.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFStreamer.cpp

  Log Message:
  -----------
  [MC] Move setIncrementalLinkerCompatible() calls to MCWinCOFFStreamer

Similar to setRelaxAll (45b59cb1d42b57a40c79a61afc8d1b8892826480).


  Commit: 79a8279edc2e873fea2de3e736eaa0bfccfb6d1d
      https://github.com/llvm/llvm-project/commit/79a8279edc2e873fea2de3e736eaa0bfccfb6d1d
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/TargetRegistry.h
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFStreamer.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFStreamer.h
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.h
    M llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFStreamer.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.h
    M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFStreamer.cpp

  Log Message:
  -----------
  [MC] Remove IncrementalLinkerCompatible parameters from create*WinCOFFStreamer

Follow-up to b201ab8adc812f025490388ef89d5547e63b9d1e.
Similar to RelaxAll (4e340356163aaaf2de83cd73f74bca8db735471b).


  Commit: c2019a37bdb1375e9f72b2549361cc50ea7729db
      https://github.com/llvm/llvm-project/commit/c2019a37bdb1375e9f72b2549361cc50ea7729db
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/unittests/CodeGen/AArch64SelectionDAGTest.cpp
    M llvm/unittests/CodeGen/SelectionDAGAddressAnalysisTest.cpp
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp

  Log Message:
  -----------
  SelectionDAG: Avoid using MachineFunction::getMMI (#99696)


  Commit: 867ff2d4268ca7eed89a24f100b67b68f5329439
      https://github.com/llvm/llvm-project/commit/867ff2d4268ca7eed89a24f100b67b68f5329439
  Author: Vincent Lee <thevinster at users.noreply.github.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/docs/CommandGuide/lit.rst
    M llvm/utils/lit/lit/cl_arguments.py
    M llvm/utils/lit/lit/main.py
    A llvm/utils/lit/tests/Inputs/time-tests/a.txt
    A llvm/utils/lit/tests/Inputs/time-tests/lit.cfg
    A llvm/utils/lit/tests/time-tests.py

  Log Message:
  -----------
  [lit] Add a flag to disable lit time tests (#98270)

LLVM lit assumes control of the test parallelism when running a test
suite. This style of testing doesn't play nicely with build systems like
Buck or Bazel since it prefers finer grained actions on a per-test
level. In order for external build systems to control the test
parallelism, add an option to disable `.lit_test_times.txt` under the
`--skip-test-time-recording` flag, thus allowing other build systems 
to determine the parallelism and avoid race conditions when writing 
to that file. I went for `--skip-test-time-recording` instead of `--time-tests` in 
order to preserve the original functionality of writing to `.lit_test_times.txt`
as the default behavior and only opt-in for those who do _not_ want
`.lit_test_times.txt` file.


  Commit: d386a5582b286bbd8a52f2fd3dbc5c8f70a8f60d
      https://github.com/llvm/llvm-project/commit/d386a5582b286bbd8a52f2fd3dbc5c8f70a8f60d
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M libc/include/assert.h.def

  Log Message:
  -----------
  [libc] Make static_assert available even if NDEBUG is set (#99742)

This addresses an issue introduced in #98826 where static_assert was
made defined only when NDEBUG is not set which is different from all
other C libraries and breaks any code that uses static_assert and
doesn't guard it with NDEBUG.


  Commit: 0d26f65414afe496b00ee803cc24722a9bf3f41d
      https://github.com/llvm/llvm-project/commit/0d26f65414afe496b00ee803cc24722a9bf3f41d
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M clang/lib/AST/Interp/EvalEmitter.cpp
    M clang/test/AST/Interp/cxx11.cpp

  Log Message:
  -----------
  [clang][Interp] Emit diagnostics if final ltor conversion fails


  Commit: bbd4af5da2b741672a8e6f625eb12ea5c2d6220f
      https://github.com/llvm/llvm-project/commit/bbd4af5da2b741672a8e6f625eb12ea5c2d6220f
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Transforms/test-legalize-type-conversion.mlir

  Log Message:
  -----------
  [mlir][Transforms] Dialect conversion: Simplify handling of dropped arguments (#97213)

This commit simplifies the handling of dropped arguments and updates
some dialect conversion documentation that is outdated.

When converting a block signature, a `BlockTypeConversionRewrite` object
and potentially multiple `ReplaceBlockArgRewrite` are created. During
the "commit" phase, uses of the old block arguments are replaced with
the new block arguments, but the old implementation was written in an
inconsistent way: some block arguments were replaced in
`BlockTypeConversionRewrite::commit` and some were replaced in
`ReplaceBlockArgRewrite::commit`. The new
`BlockTypeConversionRewrite::commit` implementation is much simpler and
no longer modifies any IR; that is done only in `ReplaceBlockArgRewrite`
now. The `ConvertedArgInfo` data structure is no longer needed.

To that end, materializations of dropped arguments are now built in
`applySignatureConversion` instead of `materializeLiveConversions`; the
latter function no longer has to deal with dropped arguments.

Other minor improvements:
- Add more comments to `applySignatureConversion`.

Note: Error messages around failed materializations for dropped basic
block arguments changed slightly. That is because those materializations
are now built in `legalizeUnresolvedMaterialization` instead of
`legalizeConvertedArgumentTypes`.

This commit is in preparation of decoupling argument/source/target
materializations from the dialect conversion.

This is a re-upload of #96207.


  Commit: 62aa596ba19af26f73c292c00d9c7f50df71d836
      https://github.com/llvm/llvm-project/commit/62aa596ba19af26f73c292c00d9c7f50df71d836
  Author: Carl Ritson <carl.ritson at amd.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/MIMGInstructions.td
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.noret.ll

  Log Message:
  -----------
  [AMDGPU] Add no return image_sample intrinsics and instructions (#97542)

An appropriately configured image resource descriptor can trigger
image_sample instructions to store outputs directly to a linked memory
location instead of returning to VGPRs.

This is opaque to the backend as instruction encoding is unchanged;
however, a mechanism is require to allow frontends to communicate that
these instructions do not require destination VGPRs and store to memory.
Flagging these as stores means they will not be optimized away.


  Commit: 155f6b49d90357d4062aa97f035f42617565ee26
      https://github.com/llvm/llvm-project/commit/155f6b49d90357d4062aa97f035f42617565ee26
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M clang/lib/AST/Interp/Interp.cpp
    M clang/test/AST/Interp/new-delete.cpp

  Log Message:
  -----------
  [clang][Interp] Fix reporting invalid new/delete expressions

This should be a CCEDiag call and we do *not* abort because of it.


  Commit: a8a7d62d0497cf0f9a8b343e0a2e5098f363ae23
      https://github.com/llvm/llvm-project/commit/a8a7d62d0497cf0f9a8b343e0a2e5098f363ae23
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp

  Log Message:
  -----------
  AArch64: Avoid using MachineFunction::getMMI


  Commit: b4f3a9662d308c869ac97e4f147edb38bc4f0626
      https://github.com/llvm/llvm-project/commit/b4f3a9662d308c869ac97e4f147edb38bc4f0626
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86MCInstLower.cpp

  Log Message:
  -----------
  X86: Avoid using MachineFunction::getMMI


  Commit: f65d7fdcf81f1fb01df3446b254f3304589f19c4
      https://github.com/llvm/llvm-project/commit/f65d7fdcf81f1fb01df3446b254f3304589f19c4
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M libcxx/include/vector
    M libcxx/test/std/containers/sequences/vector/vector.capacity/shrink_to_fit.pass.cpp

  Log Message:
  -----------
  [libc++][vector] Fixes shrink_to_fit. (#97895)

This assures shrink_to_fit does not increase the allocated size.

Partly addresses https://github.com/llvm/llvm-project/issues/95161

---------

Co-authored-by: Mital Ashok <mital.vaja at googlemail.com>


  Commit: a03935b9841c4e30b27dd9399e0b93191ad443f3
      https://github.com/llvm/llvm-project/commit/a03935b9841c4e30b27dd9399e0b93191ad443f3
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/lib/Target/M68k/M68kFrameLowering.cpp

  Log Message:
  -----------
  M68k: Remove hasDebugInfo check when deciding to emit CFI (#99750)

No other target checks this, and this is untested. I am trying
to remove the MachineModuleInfo reference from MachineFunction,
and this is the stickiest blocker.


  Commit: d8116cfbd6708a79a19ae2e4d15f2d602407972b
      https://github.com/llvm/llvm-project/commit/d8116cfbd6708a79a19ae2e4d15f2d602407972b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfCFIException.cpp

  Log Message:
  -----------
  AsmPrinter: Avoid use of MachineFunction::getMMI (#99751)


  Commit: 54de554ab8654c7a1f39199c1a491bc80edbba53
      https://github.com/llvm/llvm-project/commit/54de554ab8654c7a1f39199c1a491bc80edbba53
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/gpu-libc-headers.c

  Log Message:
  -----------
  [Clang] Fix C library wrappers for offloading (#99716)

Summary:
This block of code wraps around the standard C library includes.
However, the order C library includes are presented is actually
important. If they are visible before the `libc++` headers then it will
cause errors. This patch simply moves the logic to just before it is
normally done. A more optimal solution would be to put this in the
toolchain, however doing it correctly would require knowing the
offloading kind and that would require rewriting the function signature
in all 30 or so ToolChains.


  Commit: 710dab6e18ad9ed22c2529b9125d7b8813165ede
      https://github.com/llvm/llvm-project/commit/710dab6e18ad9ed22c2529b9125d7b8813165ede
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/pr73894.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/vplan-force-tail-with-evl.ll
    M llvm/test/Transforms/LoopVectorize/X86/divs-with-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/X86/x86-predication.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
    M llvm/test/Transforms/LoopVectorize/if-pred-non-void.ll
    M llvm/test/Transforms/LoopVectorize/interleave-and-scalarize-only.ll
    M llvm/test/Transforms/LoopVectorize/pr45679-fold-tail-by-masking.ll
    M llvm/test/Transforms/LoopVectorize/select-cmp-multiuse.ll
    M llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll

  Log Message:
  -----------
  [VPlan] Remove VPPredInstPHIRecipes without users after region merging.

After merging replicate regions, VPPredInstPHIRecipes may become unused.
Remove them directly instead of moving them to the merged region.


  Commit: e77a01d79a48e15c94c89e4aa4bd27424a96b49b
      https://github.com/llvm/llvm-project/commit/e77a01d79a48e15c94c89e4aa4bd27424a96b49b
  Author: yronglin <yronglin777 at gmail.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticLexKinds.td
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Lex/Token.h
    M clang/include/clang/Parse/Parser.h
    M clang/lib/Basic/IdentifierTable.cpp
    M clang/lib/Frontend/PrintPreprocessedOutput.cpp
    M clang/lib/Lex/PPLexerChange.cpp
    M clang/lib/Lex/Preprocessor.cpp
    M clang/lib/Lex/TokenConcatenation.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/Parser.cpp
    A clang/test/CXX/cpp/cpp.module/p2.cppm
    M clang/test/CXX/module/basic/basic.link/module-declaration.cpp
    M clang/test/CXX/module/dcl.dcl/dcl.module/dcl.module.import/p1.cppm
    M clang/test/SemaCXX/modules.cppm
    M clang/www/cxx_status.html

  Log Message:
  -----------
  [Clang] Implement P3034R1 Module Declarations Shouldn’t be Macros (#90574)

This PR implement [P3034R1 Module Declarations Shouldn’t be
Macros](https://wg21.link/P3034R1), and refactor the convoluted state
machines in module name lexical analysis.

---------

Signed-off-by: yronglin <yronglin777 at gmail.com>
Co-authored-by: Aaron Ballman <aaron at aaronballman.com>
Co-authored-by: cor3ntin <corentinjabot at gmail.com>


  Commit: 7d80ee5bdabbcb25b15fe54297d3f13793e4d8c2
      https://github.com/llvm/llvm-project/commit/7d80ee5bdabbcb25b15fe54297d3f13793e4d8c2
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/CFGuardLongjmp.cpp
    M llvm/lib/CodeGen/EHContGuardCatchret.cpp
    M llvm/lib/CodeGen/KCFI.cpp
    M llvm/lib/Target/X86/X86AsmPrinter.cpp
    M llvm/lib/Target/X86/X86FrameLowering.cpp
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86IndirectBranchTracking.cpp
    M llvm/lib/Target/X86/X86ReturnThunks.cpp

  Log Message:
  -----------
  CodeGen: Use IR function to query Module instead of MachineModuleInfo (#99755)


  Commit: 56a9f7ce611ba21f51043d91c965b59e116013f2
      https://github.com/llvm/llvm-project/commit/56a9f7ce611ba21f51043d91c965b59e116013f2
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M clang/lib/AST/Interp/Boolean.h
    M clang/lib/AST/Interp/Disasm.cpp
    M clang/lib/AST/Interp/EvalEmitter.cpp
    M clang/lib/AST/Interp/EvaluationResult.cpp
    M clang/lib/AST/Interp/Floating.h
    M clang/lib/AST/Interp/FunctionPointer.h
    M clang/lib/AST/Interp/Integral.h
    M clang/lib/AST/Interp/IntegralAP.h
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/MemberPointer.cpp
    M clang/lib/AST/Interp/MemberPointer.h
    M clang/lib/AST/Interp/Pointer.cpp
    M clang/lib/AST/Interp/Pointer.h
    M clang/unittests/AST/Interp/toAPValue.cpp

  Log Message:
  -----------
  [clang][Interp] Pass ASTContext to toAPValue()

Not yet needed, but we need to ASTContext in a later patch when we start
computing proper values for the APValue offset.


  Commit: 639560353408f82ca101e12cf4edafa9a492116b
      https://github.com/llvm/llvm-project/commit/639560353408f82ca101e12cf4edafa9a492116b
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
    M llvm/test/MC/X86/x86-32-coverage.s

  Log Message:
  -----------
  [X86][MC] Check AdSize16 for 16-bit addressing (#99761)

Fixes: #99735


  Commit: 615b7eeaa94d7c2d2c782fcdc21de5b62f3c168e
      https://github.com/llvm/llvm-project/commit/615b7eeaa94d7c2d2c782fcdc21de5b62f3c168e
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M lld/COFF/Driver.cpp
    M lld/ELF/Driver.cpp
    M lld/wasm/Driver.cpp
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    A llvm/include/llvm/CodeGen/RuntimeLibcallUtil.h
    R llvm/include/llvm/CodeGen/RuntimeLibcalls.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    A llvm/include/llvm/IR/RuntimeLibcalls.h
    M llvm/include/llvm/LTO/LTO.h
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    M llvm/lib/CodeGen/DwarfEHPrepare.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/IR/CMakeLists.txt
    A llvm/lib/IR/RuntimeLibcalls.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Object/IRSymtab.cpp
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/ARM/ARMFastISel.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMLegalizerInfo.h
    M llvm/lib/Target/ARM/ARMSelectionDAGInfo.h
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Lanai/LanaiISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.h
    M llvm/tools/lto/lto.cpp

  Log Message:
  -----------
  Reapply "[LLVM][LTO] Factor out RTLib calls and allow them to be dropped (#98512)"

This reverts commit 740161a9b98c9920dedf1852b5f1c94d0a683af5.

I moved the `ISD` dependencies into the CodeGen portion of the handling,
it's a little awkward but it's the easiest solution I can think of for
now.


  Commit: 3c6ea7b7168fdb4d4396bcf67ea0d69495a558b8
      https://github.com/llvm/llvm-project/commit/3c6ea7b7168fdb4d4396bcf67ea0d69495a558b8
  Author: James Y Knight <jyknight at google.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M clang/lib/Headers/prfchwintrin.h
    M clang/test/CodeGen/attr-target-x86.c
    M compiler-rt/lib/builtins/cpu_model/x86.c
    M llvm/include/llvm/TargetParser/X86TargetParser.def
    M llvm/lib/TargetParser/X86TargetParser.cpp

  Log Message:
  -----------
  Remove 3DNow! from X86TargetParser. (#99352)

This addresses the spurious inclusion of (now unsupported) target
features '-3dnow' and '-3dnowa' when disabling mmx (when then caused log
output from `clang -mno-mmx`).

It should've been part of PR #96246, but was missed.

Also tweaks the warning in prfchwintrin.h to not recommend the
deprecated mm3dnow.h header.


  Commit: 5303ca1496fc5f604f37c071d37821597788e83e
      https://github.com/llvm/llvm-project/commit/5303ca1496fc5f604f37c071d37821597788e83e
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M clang/lib/AST/Interp/Pointer.cpp
    A clang/test/AST/Interp/codegen.cpp

  Log Message:
  -----------
  [clang][Interp] Start computing APValue offsets

For array elements, arrays roots and fields.


  Commit: af0d731b12983a649e07f25037ee0e16a68ca470
      https://github.com/llvm/llvm-project/commit/af0d731b12983a649e07f25037ee0e16a68ca470
  Author: PaulXiCao <paul.luckner at rwth-aachen.de>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M libcxx/docs/ImplementationDefinedBehavior.rst
    M libcxx/docs/Status/Cxx17.rst
    M libcxx/docs/Status/Cxx17Papers.csv
    A libcxx/docs/Status/SpecialMath.rst
    A libcxx/docs/Status/SpecialMathProjects.csv
    M libcxx/docs/index.rst
    M libcxx/include/CMakeLists.txt
    A libcxx/include/__math/special_functions.h
    M libcxx/include/cmath
    M libcxx/include/module.modulemap
    M libcxx/modules/std/cmath.inc
    A libcxx/test/std/numerics/c.math/hermite.pass.cpp
    M libcxx/utils/libcxx/test/modules.py

  Log Message:
  -----------
  [libc++][math] Mathematical Special Functions: Hermite Polynomial (#89982)

Implementing the Hermite polynomials which are part of C++17's
mathematical special functions. The goal is to get early feedback which
will make implementing the other functions easier. Integration of
functions in chunks (e.g. `std::hermite` at first, then `std::laguerre`,
etc.) might make sense as well (also see note on boost.math below).

I started out from this abandoned merge request:
https://reviews.llvm.org/D58876 .

The C++23 standard defines them in-terms of `/* floating-point type */`
arguments. I have not looked into that.

Note, there is still an ongoing discussion on discourse whether
importing boost.math is an option.


  Commit: 4d8e42ea6a89c73f90941fd1b6e899912e31dd34
      https://github.com/llvm/llvm-project/commit/4d8e42ea6a89c73f90941fd1b6e899912e31dd34
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    A llvm/test/CodeGen/NVPTX/addr-mode.ll
    M llvm/test/Transforms/SeparateConstOffsetFromGEP/NVPTX/split-gep.ll

  Log Message:
  -----------
  [NVPTX] enforce signed 32 bit type for immediate offset (#99682)

The NVPTX ISA states that an immOff must fit in a signed 32-bit integer
(https://docs.nvidia.com/cuda/parallel-thread-execution/#addresses-as-operands):

> `[reg+immOff]`
>
> a sum of register `reg` containing a byte address plus a constant
> integer byte offset (signed, 32-bit).
> 
> `[var+immOff]`
>
> a sum of address of addressable variable `var` containing a byte
> address plus a constant integer byte offset (signed, 32-bit).

Currently we do not consider this constraint, meaning that in some edge
cases we generate invalid PTX when a value is offset by a very large
immediate.


  Commit: afbfb16d294af2fd4f6fb3c37bb07b274adef8bc
      https://github.com/llvm/llvm-project/commit/afbfb16d294af2fd4f6fb3c37bb07b274adef8bc
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M libcxx/docs/Status/FormatPaper.csv
    M libcxx/include/__chrono/convert_to_tm.h
    M libcxx/include/__chrono/formatter.h
    M libcxx/include/__chrono/ostream.h
    M libcxx/include/chrono
    A libcxx/test/std/time/time.syn/formatter.zoned_time.pass.cpp
    M libcxx/test/std/time/time.zone/time.zone.zonedtime/test_offset_time_zone.h
    A libcxx/test/std/time/time.zone/time.zone.zonedtime/time.zone.zonedtime.nonmembers/ostream.pass.cpp

  Log Message:
  -----------
  [libc++][TZDB] Implements zoned_time formatters. (#98347)

Implements parts of:
- P0355 Extending to chrono Calendars and Time Zones
- P1361 Integration of chrono with text formatting
- P2372 Fixing locale handling in chrono formatters


  Commit: 29be889c2c9c9a92e7ed89bd71d141961517d7e5
      https://github.com/llvm/llvm-project/commit/29be889c2c9c9a92e7ed89bd71d141961517d7e5
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M libc/config/config.json
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/configure.rst
    M libc/docs/dev/undefined_behavior.rst
    M libc/spec/posix.td
    M libc/src/__support/OSUtil/CMakeLists.txt
    M libc/src/__support/OSUtil/linux/CMakeLists.txt
    A libc/src/__support/OSUtil/linux/pid.cpp
    A libc/src/__support/OSUtil/pid.h
    M libc/src/__support/threads/CMakeLists.txt
    M libc/src/__support/threads/linux/CMakeLists.txt
    M libc/src/__support/threads/linux/rwlock.h
    M libc/src/__support/threads/linux/thread.cpp
    M libc/src/__support/threads/thread.h
    A libc/src/__support/threads/tid.h
    M libc/src/unistd/CMakeLists.txt
    M libc/src/unistd/getpid.h
    A libc/src/unistd/gettid.cpp
    A libc/src/unistd/gettid.h
    M libc/src/unistd/linux/CMakeLists.txt
    M libc/src/unistd/linux/fork.cpp
    M libc/src/unistd/linux/getpid.cpp
    M libc/startup/linux/CMakeLists.txt
    M libc/startup/linux/do_start.cpp
    M libc/test/integration/src/unistd/CMakeLists.txt
    M libc/test/integration/src/unistd/fork_test.cpp
    M libc/test/src/unistd/CMakeLists.txt
    A libc/test/src/unistd/gettid_test.cpp

  Log Message:
  -----------
  reland "[libc] implement cached process/thread identity (#98989)" (#99765)


  Commit: aa86f4f18549583f9227276cd116dbaf5625aa78
      https://github.com/llvm/llvm-project/commit/aa86f4f18549583f9227276cd116dbaf5625aa78
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/TargetRegistry.h
    M llvm/lib/CodeGen/LLVMTargetMachine.cpp
    M llvm/lib/MC/MCMachOStreamer.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp

  Log Message:
  -----------
  [MC] Remove unnecessary DWARFMustBeAtTheEnd check

36a15cb975334403216e6145d4abece3026af17a introduced the
DWARFMustBeAtTheEnd check to ensure DWARF sections were placed after all
text sections to help avoid out-of-range branches for Darwin ARM. The
commit removed a Darwin ARM hack from
20e5f5ed7930efdf2bd34bf099f24ac88798c5ea (2009), likely due to a
no-longer-relevant assembler limitation.

However, this check is no longer relevant due to the following:

* Our CodeGen approach reliably places DWARF sections at the end.
* Darwin AArch32 is less relevant today.

Removing this check also addresses a minor clang cc1as crash that could
occur when text sections were placed after DWARF sections
(e9ad54b3ee905ea3a77c35ca7d6e843b2c552e0b (2015)).


  Commit: d1578848e99a9190ec9d1a5e56a5a88cb0d2649c
      https://github.com/llvm/llvm-project/commit/d1578848e99a9190ec9d1a5e56a5a88cb0d2649c
  Author: Kevin Gleason <gleasonk at google.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M mlir/lib/Bytecode/Writer/BytecodeWriter.cpp

  Log Message:
  -----------
  Add logging for emit functions in BytecodeWriter.cpp (#99558)

Recently there was a change to materializing unrealized conversion
casts, which inserted conversion that previously did not exist during
legalization (https://github.com/llvm/llvm-project/pull/97903), after
these cases are inserted and then washed away after transformation
completes, it caused the use-list ordering of an op to change in some
cases: `my.add %arg0(use1), %arg0(use2) --> my.add %arg0(use2),
%arg0(use1)`, which subtly changes the bytecode emitted since this is
considered a custom use-list.

When investigating why the bytecode had changed I added the following
logging which helped track down the difference, in my case it showed
extra bytes with "use-list section". With
`-debug-only=mlir-bytecode-writer` emits logs like the following,
detailing the source of written bytes:

```
emitBytes(4b)	bytecode header
emitVarInt(6)	bytecode version
emitByte(13)	bytecode version
emitBytes(17b)	bytecode producer
emitByte(0)	null terminator
emitVarInt(2)	dialects count
...
emitByte(5)	dialect version
emitVarInt(4)	op names count
emitByte(9)	op names count
emitVarInt(0)	dialect number
...
emitVarInt(2)	dialect writer
emitByte(5)	dialect writer
emitVarInt(9259963783827161088)	dialect APInt
...
emitVarInt(3)	attr/type offset
emitByte(7)	attr/type offset
emitByte(3)	section code
emitVarInt(18)	section size
...
```

Note: this uses string constants and `StringLiteral`, I'm not sure if
these are washed away during compilation / OK to have these around for
debuggin, or if there's a better way to do this? Alternative was adding
many braces and `LLVM_DEBUG` calls at each callsite, but this felt more
error prone / likely to miss some callsites.


  Commit: f9dd885cb6e6b70deff935689bb0dfb7d5b6a1a4
      https://github.com/llvm/llvm-project/commit/f9dd885cb6e6b70deff935689bb0dfb7d5b6a1a4
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M libcxx/include/__configuration/abi.h
    M libcxx/include/__type_traits/datasizeof.h
    M libcxx/include/__utility/pair.h
    M libcxx/test/libcxx/utilities/utility/pairs/pairs.pair/abi.trivial_copy_move.pass.cpp
    M libcxx/test/libcxx/utilities/utility/pairs/pairs.pair/abi.trivially_copyable.compile.pass.cpp

  Log Message:
  -----------
  [libc++] Make std::pair trivially copyable if its members are (#89652)

This makes `std::pair` trivially copyable if its members are and we have
a way to do so. We need either C++20 with requires clauses or support
for `__attribute__((enable_if))`. Only Clang has support for this
attribute, so it's effectively clang or C++20.

Co-authored-by: Christopher Di Bella <cjdb at google.com>


  Commit: 91bf0a073951aa1ca4c357967ed5aff891941785
      https://github.com/llvm/llvm-project/commit/91bf0a073951aa1ca4c357967ed5aff891941785
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M libc/src/__support/HashTable/randomness.h
    M libc/src/__support/threads/thread.h
    M libc/src/stdio/fopencookie.cpp
    M libc/src/sys/auxv/linux/getauxval.cpp
    M libc/src/sys/stat/linux/kernel_statx.h

  Log Message:
  -----------
  [libc] Added static casts to fix implicit conversion warnings in 32-bit systems

This patch fixes:

randomness.h and getauxval.cpp were passing ssize_t as size_t
kernel_statx.h was assigning an uint64_t to uintptr_t
fopencookie.cpp was trying to create a FileIOResult using ssize_t but the constructor expected a size_t
thread.h was trying to call free_stack (which takes a size_t) with an unsigned long long. free_stack does the calculations using uintptr_t, so I changed the passing values to size_t


  Commit: 18f7ee5f13037acfc96d8324822b7a9d6c7a4f8b
      https://github.com/llvm/llvm-project/commit/18f7ee5f13037acfc96d8324822b7a9d6c7a4f8b
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/TargetRegistry.h
    M llvm/lib/MC/MCXCOFFStreamer.cpp
    M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVMCTargetDesc.cpp

  Log Message:
  -----------
  [MC] Remove unused Register*Streamer

Object streamers that do not need lib/Target customization do not need
Register*Streamer.


  Commit: 2308c7f5c5b5dbb4b9a5a693b122f794fdaf00cd
      https://github.com/llvm/llvm-project/commit/2308c7f5c5b5dbb4b9a5a693b122f794fdaf00cd
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/src/__support/File/file.cpp
    M libc/src/__support/File/file.h
    M libc/test/src/__support/File/platform_file_test.cpp

  Log Message:
  -----------
  [libc] Enable most of the libc entrypoitns for riscv (#99771)

This patch enables most of the libc entrypoints for riscv, except for fstatvfs, statvfs, dmull and fmull which are currently failing compilation. float16 is also not added, as rv32 doesn't seem to support it yet.

This patch also fixes the call to seek, which should take an off_t, and was missed in PR #68269.


  Commit: c59ee7ec627533e00f654d052ade51c9daf7e722
      https://github.com/llvm/llvm-project/commit/c59ee7ec627533e00f654d052ade51c9daf7e722
  Author: AdityaK <hiraditya at msn.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/HotColdSplitting.cpp
    A llvm/test/Transforms/HotColdSplit/pr40056.ll

  Log Message:
  -----------
  Fix 40056: Prevent outlining of blocks with token type instructions (#99759)

Hot cold splitting should not outline:
1. Basic blocks with token type instructions
1. Functions with scoped EH personality (As suggested by Vedant in
https://github.com/llvm/llvm-project/issues/40056#issuecomment-981009129)

Fixes: #40056


  Commit: 1492e5f1d5a6d302f32ab95910c75b960b611128
      https://github.com/llvm/llvm-project/commit/1492e5f1d5a6d302f32ab95910c75b960b611128
  Author: dyung <douglas.yung at sony.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M cross-project-tests/lit.cfg.py

  Log Message:
  -----------
  Replace distutils.version with looseversion since the former was deprecated in python 3.10 and removed in 3.12. (#99549)

Python deprecated the distutils package in 3.10, and removed it in 3.12
causing problems when trying to run the lit tests with 3.12.

https://docs.python.org/3.10/library/distutils.html

Replace usage with the looseversion package which should be a drop-in
replacement for the original usage.

If your testing fails after this commit, you need to install the looseversion package.


  Commit: 98c0e55d9d31ea0a7b8a1e5395257f10a6a27cc6
      https://github.com/llvm/llvm-project/commit/98c0e55d9d31ea0a7b8a1e5395257f10a6a27cc6
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/unittests/CodeGen/AArch64SelectionDAGTest.cpp
    M llvm/unittests/CodeGen/SelectionDAGAddressAnalysisTest.cpp
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp

  Log Message:
  -----------
  Revert "SelectionDAG: Avoid using MachineFunction::getMMI" (#99777)

Reverts llvm/llvm-project#99696

https://lab.llvm.org/buildbot/#/builders/164/builds/1262


  Commit: ce1a87437cc143889665c41046107e84cdf6246e
      https://github.com/llvm/llvm-project/commit/ce1a87437cc143889665c41046107e84cdf6246e
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp

  Log Message:
  -----------
  [clang-format] Fix a bug in annotating `*` in `#define`s (#99433)

Fixes #99271.


  Commit: cc2fb58639a6b87f155e6052f5ef2bbe05d5c378
      https://github.com/llvm/llvm-project/commit/cc2fb58639a6b87f155e6052f5ef2bbe05d5c378
  Author: Dmitriy Chestnykh <dm.chestnykh at gmail.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/lib/MC/MCParser/AsmParser.cpp
    M llvm/test/MC/AsmParser/directive_abort.s

  Log Message:
  -----------
  [MC,ELF] Use loc from the directive for `.abort` (#99648)


  Commit: 569814e862a7ce1de3144e76d0a97253ac161d05
      https://github.com/llvm/llvm-project/commit/569814e862a7ce1de3144e76d0a97253ac161d05
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M libc/src/sys/epoll/linux/epoll_pwait2.cpp

  Log Message:
  -----------
  [libc] Implement pwait2 using pwait (#99781)

This patch implements pwait2 using pwait. The implementation is an
approximation of pwait2, since pwait only only supports timeouts in
milliseconds, not nanoseconds, as required by pwait2.


  Commit: 1f00c4244602e66f98a608bd20d6fb62f11079de
      https://github.com/llvm/llvm-project/commit/1f00c4244602e66f98a608bd20d6fb62f11079de
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp

  Log Message:
  -----------
  [VPlan] Assert masked interleave accesses are allowed if needed (NFC)

Add assertion at interleave group construction.


  Commit: 28045ceab08d41a8a42d93ebc445e8fe906f884c
      https://github.com/llvm/llvm-project/commit/28045ceab08d41a8a42d93ebc445e8fe906f884c
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/custom-section-type.s

  Log Message:
  -----------
  [ELF] Support (TYPE=<value>) beside output section address

Support `preinit_array . (TYPE=SHT_PREINIT_ARRAY) : { QUAD(16) }`

Follow-up to https://reviews.llvm.org/D118840

peek2() could be eliminated by a future change.


  Commit: 52a46bc31de238f9d5ee3a8be2388781b2af56e4
      https://github.com/llvm/llvm-project/commit/52a46bc31de238f9d5ee3a8be2388781b2af56e4
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [SandboxIR] Implement StoreInst (#99707)

This patch adds the SandboxIR StoreInst instruction which mirrors
llvm::StoreInst.


  Commit: a23efcc703ce2a4ac534af4fcc2b38765cac9f8f
      https://github.com/llvm/llvm-project/commit/a23efcc703ce2a4ac534af4fcc2b38765cac9f8f
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp

  Log Message:
  -----------
  [VPlan] Move VPInterleaveRecipe::execute to VPlanRecipes.cpp (NFC).

Move ::exeute and ::print to VPlanRecipes.cpp in line with other recipe
definitions.


  Commit: c93554b82aa77cf5fc43fb01a87498e0302f7b36
      https://github.com/llvm/llvm-project/commit/c93554b82aa77cf5fc43fb01a87498e0302f7b36
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptLexer.cpp

  Log Message:
  -----------
  [ELF] Simplify ScriptLexer::consume. NFC


  Commit: efa833dd0f47a4f65df8c64dc145e06d8fb286f2
      https://github.com/llvm/llvm-project/commit/efa833dd0f47a4f65df8c64dc145e06d8fb286f2
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp

  Log Message:
  -----------
  [ELF] Simplify readExpr. NFC


  Commit: 2572a76f230575611678e787fd9ccf6838a4cfe7
      https://github.com/llvm/llvm-project/commit/2572a76f230575611678e787fd9ccf6838a4cfe7
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M cross-project-tests/lit.cfg.py

  Log Message:
  -----------
  Revert "Replace distutils.version with looseversion since the former was deprecated in python 3.10 and removed in 3.12." (#99786)

Reverts llvm/llvm-project#99549 because it breaks a bunch of build bots.


  Commit: 16c24a850d6c60f02bc897e159d24a86aae09555
      https://github.com/llvm/llvm-project/commit/16c24a850d6c60f02bc897e159d24a86aae09555
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M libc/config/linux/riscv/entrypoints.txt

  Log Message:
  -----------
  [libc] Disable bind test for riscv

Currently it's returning ENXIO on bind and the build bots are failing


  Commit: ae2012d701827f224df04d0ae57e89472c1322d2
      https://github.com/llvm/llvm-project/commit/ae2012d701827f224df04d0ae57e89472c1322d2
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M libc/test/src/sys/epoll/linux/epoll_create_test.cpp

  Log Message:
  -----------
  [libc] Disable epoll_create fail test when SYS_epoll_create1 is used internally (#99785)

The fail test case only makes sense if SYS_epoll_create is used internally to implement epoll_create, since the only argument to epoll_create (size) is dropped if SYS_epoll_create1 is used.


  Commit: 7cbd89921bed66e2422ce0b387fa8070b78152e1
      https://github.com/llvm/llvm-project/commit/7cbd89921bed66e2422ce0b387fa8070b78152e1
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M compiler-rt/lib/lsan/lsan_interceptors.cpp

  Log Message:
  -----------
  [compiler-rt] lsan remove unneeded comma for pthread_atfork declaration. (#99788)


  Commit: ba9b5ff4f745b2c604e13656cdca0e66835dc99a
      https://github.com/llvm/llvm-project/commit/ba9b5ff4f745b2c604e13656cdca0e66835dc99a
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M lld/test/ELF/defsym.s

  Log Message:
  -----------
  [ELF,test] Fix RUN line issue in defsym.s


  Commit: b828c13f3ceb336bf517fab0223b966ccace100e
      https://github.com/llvm/llvm-project/commit/b828c13f3ceb336bf517fab0223b966ccace100e
  Author: Hongyu Chen <hongyc4 at uci.edu>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptLexer.cpp
    M lld/ELF/ScriptLexer.h
    M lld/ELF/ScriptParser.cpp

  Log Message:
  -----------
   [ELF] Delete peek2 in Lexer (#99790)

Thanks to Fangrui's change

https://github.com/llvm/llvm-project/commit/28045ceab08d41a8a42d93ebc445e8fe906f884c
so peek2 can be removed.


  Commit: 1d5d18924d185a4267462479307f1ff9911cb112
      https://github.com/llvm/llvm-project/commit/1d5d18924d185a4267462479307f1ff9911cb112
  Author: hev <wangrui at loongson.cn>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/test/CodeGen/LoongArch/andn-icmp.ll

  Log Message:
  -----------
  Revert "[LoongArch] Remove spurious mask operations from andn->icmp on 16 and 8 bit values" (#99792)

Reverts llvm/llvm-project#99272


  Commit: c8e69fa4a0bd158fbd63cdb4794dd1232184f155
      https://github.com/llvm/llvm-project/commit/c8e69fa4a0bd158fbd63cdb4794dd1232184f155
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M libc/utils/gpu/server/rpc_server.cpp

  Log Message:
  -----------
  [libc] Fix GPU 'printf' on strings with padding

Summary:
We get the `strlen` to know how much memory to allocate here, but it
wasn't taking into account if the padding was larger than the string
itself. This patch sets it to an empty string so we always add the
minimum size. This implementation is slightly wasteful with memory, but
I am not concerned with a few extra bytes here and there for some memory
that gets immediately free'd.


  Commit: d69eb7b7ffb33d0be716759a38a235868671705d
      https://github.com/llvm/llvm-project/commit/d69eb7b7ffb33d0be716759a38a235868671705d
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/TargetRegistry.h
    M llvm/lib/MC/TargetRegistry.cpp

  Log Message:
  -----------
  [MC] Move createMC{Object,Asm}Streamer to .cpp

Currently, the template arguments are incomplete types and unique_ptr&&
has to be used. Moving the implementation to .cpp allows us to
use complete types and unique_ptr.

In addition, add a createMCObjectStreamer overload without unused bool
parameters. The existing createMCObjectStreamer overload, with unused
and confusing bool parameters, will be deprecated.


  Commit: b8220b986dcc8c5d0c44a125642009d8175fc11d
      https://github.com/llvm/llvm-project/commit/b8220b986dcc8c5d0c44a125642009d8175fc11d
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M clang/tools/driver/cc1as_main.cpp
    M llvm/lib/CodeGen/LLVMTargetMachine.cpp
    M llvm/lib/DWARFLinker/Classic/DWARFStreamer.cpp
    M llvm/lib/DWARFLinker/Parallel/DWARFEmitterImpl.cpp
    M llvm/tools/llvm-dwp/llvm-dwp.cpp
    M llvm/tools/llvm-mc-assemble-fuzzer/llvm-mc-assemble-fuzzer.cpp
    M llvm/tools/llvm-mc/llvm-mc.cpp
    M llvm/tools/llvm-ml/llvm-ml.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFExpressionCopyBytesTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DwarfGenerator.cpp
    M llvm/unittests/MC/DwarfLineTableHeaders.cpp
    M mlir/lib/Target/LLVM/ROCDL/Target.cpp

  Log Message:
  -----------
  [MC] Remove unused bool arguments from createMCObjectStreamer callers


  Commit: 6c9086d13fa7e1069e75ed2d139aae30ee3863c8
      https://github.com/llvm/llvm-project/commit/6c9086d13fa7e1069e75ed2d139aae30ee3863c8
  Author: antangelo <contact at antangelo.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64CallingConvention.td
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.h
    M llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    A llvm/test/CodeGen/AArch64/preserve_nonecc_varargs_aapcs.ll
    A llvm/test/CodeGen/AArch64/preserve_nonecc_varargs_darwin.ll
    A llvm/test/CodeGen/AArch64/preserve_nonecc_varargs_win64.ll

  Log Message:
  -----------
  [AArch64] Support varargs for preserve_nonecc (#99434)

Adds varargs support for preserve_none by falling back to C argument
passing for the target platform for varargs functions.

Fixes #95093


  Commit: 86e21e1af24f35bab4c34a3e0b7b5846126c3e9f
      https://github.com/llvm/llvm-project/commit/86e21e1af24f35bab4c34a3e0b7b5846126c3e9f
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/lib/Core/BinaryContext.cpp

  Log Message:
  -----------
  [BOLT] Remove unused bool arguments from createMCObjectStreamer callers


  Commit: f1422a86c4a812a7ccd744082741841e596ccea0
      https://github.com/llvm/llvm-project/commit/f1422a86c4a812a7ccd744082741841e596ccea0
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/TargetRegistry.h

  Log Message:
  -----------
  [MC] Deprecate createMCObjectStreamer with 3 unused trailing bool


  Commit: aefe411dae156350721268161e6cac36a8d29333
      https://github.com/llvm/llvm-project/commit/aefe411dae156350721268161e6cac36a8d29333
  Author: WANG Rui <wangrui at loongson.cn>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/LoongArch/andn-icmp.ll

  Log Message:
  -----------
  [LoongArch] Add a test for spurious mask removal. NFC

Link: https://github.com/llvm/llvm-project/pull/99272#issuecomment-2241348794


  Commit: 52e79ed1e078f69103dcd9234c2494e7dd64b5f7
      https://github.com/llvm/llvm-project/commit/52e79ed1e078f69103dcd9234c2494e7dd64b5f7
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M clang/tools/driver/cc1as_main.cpp
    M llvm/lib/CodeGen/LLVMTargetMachine.cpp
    M llvm/lib/DWARFLinker/Classic/DWARFStreamer.cpp
    M llvm/lib/DWARFLinker/Parallel/DWARFEmitterImpl.cpp
    M llvm/lib/MC/MCAsmStreamer.cpp
    M llvm/tools/llvm-mc/llvm-mc.cpp
    M llvm/tools/llvm-ml/llvm-ml.cpp

  Log Message:
  -----------
  [MC] MCAsmStreamer: use MCTargetOptions

Some bool parameters duplicate MCTargetOptions and might cause
inconsistency/confusion.


  Commit: 9e69e6b8c32a3a06ba9e8eafcba3045974ef34be
      https://github.com/llvm/llvm-project/commit/9e69e6b8c32a3a06ba9e8eafcba3045974ef34be
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-20 (Sat, 20 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/TargetRegistry.h
    M llvm/lib/MC/MCAsmStreamer.cpp
    M llvm/lib/MC/TargetRegistry.cpp

  Log Message:
  -----------
  [MC] createAsmStreamer: add overload without unused bool parameters

The bool parameters have been made ineffective in favor of
MCTargetOptions options to resolve inconsistency issues. New clients
should not pass the unused bool arguments. The existing overload will be
removed.


  Commit: 0caf0c93e759816663af52e8632d1c3953dbc715
      https://github.com/llvm/llvm-project/commit/0caf0c93e759816663af52e8632d1c3953dbc715
  Author: Tim Creech <timothy.m.creech at intel.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    A llvm/test/tools/llvm-profgen/Inputs/cmov_3.perfbin
    A llvm/test/tools/llvm-profgen/Inputs/cmov_3.perfscript
    A llvm/test/tools/llvm-profgen/Inputs/ip-duplication.perfscript
    A llvm/test/tools/llvm-profgen/Inputs/noprobe-skid.perfscript
    A llvm/test/tools/llvm-profgen/event-filtering.test
    A llvm/test/tools/llvm-profgen/iponly-nodupfactor.test
    A llvm/test/tools/llvm-profgen/iponly.test
    M llvm/tools/llvm-profgen/PerfReader.cpp
    M llvm/tools/llvm-profgen/ProfileGenerator.cpp

  Log Message:
  -----------
  [llvm-profgen] Support creating profiles of arbitrary events (#99026)

This change introduces two options which may be used to create profiles
of arbitrary PMU events.

1. `--leading-ip-only` provides a simple sample-IP-based profile mode.
This is not useful for building a profile of execution frequency, but it
is useful for building new types of profiles.

   For example, to build a profile of unpredictable branches:

perf record -b -e branch-misses:upp -o perf.data ... llvm-profgen
--perfdata perf.data --leading-ip-only ...

2. `--perf-event=event` enables the creation of a profile concerned with
a specific event or set of events. The names given should match the
"event" field as emitted by perf-script(1).

This option has two spellings: `--perf-event` and `--perf-events`. The
plural spelling accepts a comma-separated list. The singular spelling
appends a single event name to the set of events which will be used.
This is meant to accommodate event names containing commas.

Combined, these options allow generating multiple kinds of profiles from
a single `perf record` collection. For example, to generate both
execution frequency and branch mispredict profiles:

perf record -c 1000003 -b -e
br_inst_retired.near_taken:upp,br_misp_retired.all_branches:upp ...
llvm-profgen --output execution.prof
--perf-event=br_inst_retired.near_taken:upp ...
llvm-profgen --leading-ip-only --output unpredictable.prof
--perf-event=br_misp_retired.all_branches:upp ...

These additions are in support of more general HWPGO[^1], allowing
feedback from a wider range of hardware events.

[^1]:
https://llvm.org/devmtg/2024-04/slides/TechnicalTalks/Xiao-EnablingHW-BasedPGO.pdf

---------

Co-authored-by: Tim Creech <tcreech at tcreech.com>


  Commit: 05f986e143d3d258e52e1c61b827ca4243cef842
      https://github.com/llvm/llvm-project/commit/05f986e143d3d258e52e1c61b827ca4243cef842
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/X86/predicate-switch.ll
    A llvm/test/Transforms/LoopVectorize/predicate-switch.ll

  Log Message:
  -----------
  [LV] Add tests for loops with switches.


  Commit: a41a4ac78294c728fb70a51623c602ea7f3e308a
      https://github.com/llvm/llvm-project/commit/a41a4ac78294c728fb70a51623c602ea7f3e308a
  Author: Piyou Chen <piyou.chen at sifive.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/riscv/feature_bits.c

  Log Message:
  -----------
  [compiler-rt][RISCV] Implement __init_riscv_feature_bits (#85790)

Base on https://github.com/riscv-non-isa/riscv-c-api-doc/pull/74, this
patch defines the `__riscv_feature_bits` and
`__riscv_vendor_feature_bits` structures to store the enabled feature
bits at runtime.

It also introduces the `__init_riscv_feature_bits` function to update
these structures based on the platform query mechanism.

Additionally, the groupid/bitmask definitions from
https://github.com/riscv-non-isa/riscv-c-api-doc/pull/74 are declared
and used to update the `__riscv_feature_bits` and
`__riscv_vendor_feature_bits` structures.

---------

Co-authored-by: Kito Cheng <kito.cheng at gmail.com>


  Commit: 14ec4746cc342b3f62fcdd378e409aa1b0e39c3c
      https://github.com/llvm/llvm-project/commit/14ec4746cc342b3f62fcdd378e409aa1b0e39c3c
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/include/__memory/unique_ptr.h
    M libcxx/include/memory
    M libcxx/include/optional
    A libcxx/test/std/utilities/memory/unique.ptr/noexcept_operator_star.compile.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference_const.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference_const_rvalue.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference_rvalue.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/op_arrow.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/op_arrow_const.pass.cpp
    M libcxx/test/std/utilities/smartptr/unique.ptr/unique.ptr.class/unique.ptr.observers/dereference.single.pass.cpp

  Log Message:
  -----------
  [libc++] Makes `unique_ptr operator*() noexcept. (#98047)

This implements
 - LWG2762  unique_ptr operator*() should be noexcept.

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


  Commit: cbebacef5e12c985ca32c894bcfddec9adb2fc85
      https://github.com/llvm/llvm-project/commit/cbebacef5e12c985ca32c894bcfddec9adb2fc85
  Author: David Green <david.green at arm.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/fpclamptosat_vec.ll
    M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll
    M llvm/test/CodeGen/AArch64/qmovn.ll

  Log Message:
  -----------
  [AArch64] Add UQXTN2 patterns

Similar to the existing UQXTN and SQXTN2 patterns, we can generate a UQXTN2
from concat(Vd, trunc(min(X, 255)))


  Commit: f6eb89cdd02d73a3c9a0da858c3100986282aceb
      https://github.com/llvm/llvm-project/commit/f6eb89cdd02d73a3c9a0da858c3100986282aceb
  Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M lldb/source/Host/windows/Host.cpp
    M lldb/test/API/functionalities/gdb_remote_client/TestPlatformKill.py

  Log Message:
  -----------
  [lldb][Windows] Fixed Host::Kill() (#99721)

HostProcessWindows::Terminate() correctly uses m_process which type is
process_t (HANDLE) to call ::TerminateProcess(). But Host::Kill() uses a
cast from pid, which is wrong.

This patch fixes #51793


  Commit: c8c0b18b5d58415b79ea13b62eee70c130c26a0a
      https://github.com/llvm/llvm-project/commit/c8c0b18b5d58415b79ea13b62eee70c130c26a0a
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/interleaved_cost.ll
    M llvm/test/Transforms/LoopVectorize/ARM/interleaved_cost.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-interleaved-cost.ll
    M llvm/test/Transforms/LoopVectorize/SystemZ/load-scalarization-cost-0.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-scalable-vf1.ll

  Log Message:
  -----------
  [LV] Update tests to not have dead interleave groups.

Update existing tests with dead interleave groups by adding users. This
ensures the tests keep testing what they were intended to test with a
planned change to skip unused instructions in cost computations.


  Commit: af0f58cf14329f5e0fe56fed7c9eb4cd3107a1ce
      https://github.com/llvm/llvm-project/commit/af0f58cf14329f5e0fe56fed7c9eb4cd3107a1ce
  Author: Job Henandez Lara <hj93 at protonmail.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/spec/llvm_libc_ext.td
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    A libc/src/math/fsqrt.h
    A libc/src/math/fsqrtf128.h
    A libc/src/math/fsqrtl.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/fsqrt.cpp
    A libc/src/math/generic/fsqrtf128.cpp
    A libc/src/math/generic/fsqrtl.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/fsqrt_test.cpp
    A libc/test/src/math/fsqrtl_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/fsqrt_test.cpp
    A libc/test/src/math/smoke/fsqrtf128_test.cpp
    A libc/test/src/math/smoke/fsqrtl_test.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.cpp

  Log Message:
  -----------
  [libc][math][c23] Add entrypoints and tests for fsqrt{,l,f128} (#99669)


  Commit: 7f17b6b740bd49b84430a46b366381bfc8b74fb0
      https://github.com/llvm/llvm-project/commit/7f17b6b740bd49b84430a46b366381bfc8b74fb0
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M clang/tools/driver/cc1as_main.cpp
    M llvm/lib/CodeGen/LLVMTargetMachine.cpp
    M llvm/lib/DWARFLinker/Classic/DWARFStreamer.cpp
    M llvm/lib/DWARFLinker/Parallel/DWARFEmitterImpl.cpp
    M llvm/tools/llvm-mc-assemble-fuzzer/llvm-mc-assemble-fuzzer.cpp
    M llvm/tools/llvm-mc/llvm-mc.cpp
    M llvm/tools/llvm-ml/llvm-ml.cpp

  Log Message:
  -----------
  [MC] Migrate to new createAsmStreamer that avoids unused bool parameters


  Commit: 14a543ea2a1ae0d9e772a34a4e5a87dcc33d5e0f
      https://github.com/llvm/llvm-project/commit/14a543ea2a1ae0d9e772a34a4e5a87dcc33d5e0f
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M mlir/test/Dialect/Vector/vector-transfer-collapse-inner-most-dims.mlir

  Log Message:
  -----------
  [mlir][test] Add comments in a test (nfc) (#99810)

Documents which patterns are tested in:
  * vector-transfer-collapse-inner-most-dims.mlir.


  Commit: 867faeec054abb4c035673189c1169fef45f54c8
      https://github.com/llvm/llvm-project/commit/867faeec054abb4c035673189c1169fef45f54c8
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M bolt/lib/Passes/AsmDump.cpp
    M llvm/include/llvm/MC/TargetRegistry.h
    M llvm/lib/MC/MCAsmStreamer.cpp
    M llvm/lib/MC/TargetRegistry.cpp

  Log Message:
  -----------
  [MC] Migrate to createAsmStreamer without unused bool parameters

In bolt/lib/Passes/AsmDump.cpp, the MCInstPrinter is created with false
AsmVerbose. The AsmVerbose argument to createAsmStreamer is unused.

Deprecate the legacy Target::createAsmStreamer overload, which might be
used by downstream.


  Commit: 233cca169237b91d16092c82bd55ee6a283afe98
      https://github.com/llvm/llvm-project/commit/233cca169237b91d16092c82bd55ee6a283afe98
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp

  Log Message:
  -----------
  [ARM,Hexagon] Ignore IsVerboseAsm parameter in favor of MCStreamer::isVerboseAsm()

... to improve consistency. Most targets don't use VerboseAsm. When they
do (X86, SystemZ), they use MCStreamer::isVerboseAsm().


  Commit: 8f14e39e59c9dc0ea93b098cf8d03fc23c23a7ec
      https://github.com/llvm/llvm-project/commit/8f14e39e59c9dc0ea93b098cf8d03fc23c23a7ec
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/TargetRegistry.h
    M llvm/lib/MC/TargetRegistry.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.cpp
    M llvm/lib/Target/ARC/MCTargetDesc/ARCMCTargetDesc.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.h
    M llvm/lib/Target/AVR/MCTargetDesc/AVRMCTargetDesc.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCTargetDesc.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCTargetDesc.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp
    M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVMCTargetDesc.cpp
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp
    M llvm/lib/Target/VE/MCTargetDesc/VEMCTargetDesc.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.h
    M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFTargetStreamer.cpp
    M llvm/lib/Target/XCore/MCTargetDesc/XCoreMCTargetDesc.cpp
    M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCTargetDesc.cpp

  Log Message:
  -----------
  [MC] Remove unnecessary isVerboseAsm from Target::AsmTargetStreamerCtorTy

The parameter is confusing as it duplicates MCStreamer::isVeboseAsm
(initialized from MCTargetOptions::AsmVerbose). After
233cca169237b91d16092c82bd55ee6a283afe98, no in-tree target uses the
parameter.


  Commit: e9c851484bfeb270368bc71e9d7a4bec986f91e7
      https://github.com/llvm/llvm-project/commit/e9c851484bfeb270368bc71e9d7a4bec986f91e7
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/TargetRegistry.h
    M llvm/lib/MC/TargetRegistry.cpp
    M llvm/tools/llvm-exegesis/lib/SnippetFile.cpp
    M llvm/tools/llvm-mca/CodeRegionGenerator.cpp

  Log Message:
  -----------
  [MC] Remove unnecessary isVerboseAsm from createAsmTargetStreamer


  Commit: 7f017f0ab4fa9c46ca4c07320a61796b1ca64a63
      https://github.com/llvm/llvm-project/commit/7f017f0ab4fa9c46ca4c07320a61796b1ca64a63
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCSymbol.h
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCELFStreamer.cpp

  Log Message:
  -----------
  [MC] Drop unnecessary MCSymbol::setExternal calls for ELF

Similar to e4c360a897fe062914519d331e8f1e28b2b1fbfd (2020).


  Commit: e299b163c78d34cf6fb90f9d928291419b5dcaaf
      https://github.com/llvm/llvm-project/commit/e299b163c78d34cf6fb90f9d928291419b5dcaaf
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCSymbol.h
    M llvm/include/llvm/MC/MCSymbolMachO.h
    M llvm/lib/MC/MCMachOStreamer.cpp
    M llvm/lib/MC/MachObjectWriter.cpp

  Log Message:
  -----------
  [MC] Move isPrivateExtern to MCSymbolMachO


  Commit: 6717dc5c47632372e07365e2453b46569bf24e28
      https://github.com/llvm/llvm-project/commit/6717dc5c47632372e07365e2453b46569bf24e28
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUAsmBackend.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRAsmBackend.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.cpp

  Log Message:
  -----------
  *AsmBackend.cpp: Include StringSwitch.h

They currently get the header from MCLinkerOptimizationHint.h, which
will be removed from MCAssembler.h.


  Commit: a2af375556486d8027d229f3fae956af8371aa86
      https://github.com/llvm/llvm-project/commit/a2af375556486d8027d229f3fae956af8371aa86
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCAssembler.h
    M llvm/include/llvm/MC/MCMachObjectWriter.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCMachOStreamer.cpp
    M llvm/lib/MC/MachObjectWriter.cpp

  Log Message:
  -----------
  [MC] Move LOHContainer to MachObjectwriter


  Commit: ecaacd14c35996ad6ee53da6af6c9f4cf36d9110
      https://github.com/llvm/llvm-project/commit/ecaacd14c35996ad6ee53da6af6c9f4cf36d9110
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Frontend/FrontendOptions.h
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/test/Driver/ftime-trace-sections.cpp
    M clang/test/Driver/ftime-trace.cpp
    M clang/tools/driver/cc1_main.cpp
    M clang/unittests/Support/TimeProfilerTest.cpp
    M llvm/include/llvm/Support/TimeProfiler.h
    M llvm/lib/Support/TimeProfiler.cpp

  Log Message:
  -----------
  Reapply "Add source file name for template instantiations in -ftime-trace" (#99757)

Reverts https://github.com/llvm/llvm-project/pull/99731

Remove accidentally added temporary file.
Also, fix the uninitialized read of line number.


  Commit: 6db2465ce74141f378a290cfa3b56eb69dc379cb
      https://github.com/llvm/llvm-project/commit/6db2465ce74141f378a290cfa3b56eb69dc379cb
  Author: serge-sans-paille <serge.guelton at telecom-bretagne.eu>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M flang/runtime/derived.cpp

  Log Message:
  -----------
  [Flang][Runtime] Fix implicit conversion warning when targeting 32bit… (#99465)

… architecture

On 32 bit systems, TypeParameterValue is 64bit wide while CFI_index_t is
32bit wide.


  Commit: 9539a7796094ff5fb59d9c685140ea2e214b945c
      https://github.com/llvm/llvm-project/commit/9539a7796094ff5fb59d9c685140ea2e214b945c
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCAssembler.h
    M llvm/include/llvm/MC/MCWinCOFFObjectWriter.h
    M llvm/include/llvm/MC/MCWinCOFFStreamer.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCWinCOFFStreamer.cpp
    M llvm/lib/MC/WinCOFFObjectWriter.cpp
    M llvm/lib/MC/XCOFFObjectWriter.cpp

  Log Message:
  -----------
  [MC] Export llvm::WinCOFFObjectWriter and access it from MCWinCOFFStreamer

Similar to commit 28fcafb50274be2520117eacb0a886adafefe59d (2011) for
MachObjectWriter. MCWinCOFFStreamer can now access WinCOFFObjectWriter
directly without holding object file format specific inforamtion in
MCAssembler (e.g. IncrementalLinkerCompatible).


  Commit: ffcd7e98d93cda157b4ab9dddd0aa42f364db576
      https://github.com/llvm/llvm-project/commit/ffcd7e98d93cda157b4ab9dddd0aa42f364db576
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCSPIRVObjectWriter.h
    M llvm/lib/MC/SPIRVObjectWriter.cpp
    M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp

  Log Message:
  -----------
  [MC] Export llvm::SPIRVObjectTargetWriter and drop reliance on Mach-o specific VersionInfo


  Commit: c1562374c8f24e5f873490639420b9c732b7e33d
      https://github.com/llvm/llvm-project/commit/c1562374c8f24e5f873490639420b9c732b7e33d
  Author: Job Henandez Lara <hj93 at protonmail.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/darwin/x86_64/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/spec/llvm_libc_ext.td
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    A libc/src/math/dsqrtf128.h
    A libc/src/math/dsqrtl.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/dsqrtf128.cpp
    A libc/src/math/generic/dsqrtl.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/dsqrtl_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/dsqrtf128_test.cpp
    A libc/test/src/math/smoke/dsqrtl_test.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.cpp

  Log Message:
  -----------
  [libc][math][c23] Add entrypoints and tests for dsqrt{l,f128} (#99815)


  Commit: 09a399a1ddbef1e5e51b77fd6bd1792d34697187
      https://github.com/llvm/llvm-project/commit/09a399a1ddbef1e5e51b77fd6bd1792d34697187
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCAssembler.h
    M llvm/include/llvm/MC/MCMachObjectWriter.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCMachOStreamer.cpp
    M llvm/lib/MC/MachObjectWriter.cpp

  Log Message:
  -----------
  [MC] Move VersionInfo to MachObjectWriter


  Commit: 5c83498984dd5d278c40d6650d3f9205b5131550
      https://github.com/llvm/llvm-project/commit/5c83498984dd5d278c40d6650d3f9205b5131550
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/LoopUnroll.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp

  Log Message:
  -----------
  [Transforms] Use range-based for loops (NFC) (#99607)


  Commit: dcebe297367f48a71a5ecea3bcdd54671195da1b
      https://github.com/llvm/llvm-project/commit/dcebe297367f48a71a5ecea3bcdd54671195da1b
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp

  Log Message:
  -----------
  [clang-format] Fix a bug in annotating StartOfName (#99791)

Fixes #99758.


  Commit: 568845ae50650420532f4e2c6b22f5b302fcec38
      https://github.com/llvm/llvm-project/commit/568845ae50650420532f4e2c6b22f5b302fcec38
  Author: Alexander Belyaev <32522095+pifon2a at users.noreply.github.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M mlir/include/mlir/IR/BuiltinTypes.h
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/include/mlir/IR/CommonTypeConstraints.td

  Log Message:
  -----------
  [mlir] Add a ValueSemantics trait. (#99493)

We need to distinguish ShapedTypes with and without value semantics.
This is needed for downstream users to define their custom vector and
tensor
types that can work with the arith/math dialect.

RFC https://discourse.llvm.org/t/rfc-mlir-types-with-encoding/80189


  Commit: a964f2e8a1e98d5ac1fa379ec52b6713ae5cb48a
      https://github.com/llvm/llvm-project/commit/a964f2e8a1e98d5ac1fa379ec52b6713ae5cb48a
  Author: jameshu15869 <55058507+jameshu15869 at users.noreply.github.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M libc/benchmarks/gpu/CMakeLists.txt
    M libc/benchmarks/gpu/LibcGpuBenchmark.cpp
    M libc/benchmarks/gpu/LibcGpuBenchmark.h

  Log Message:
  -----------
  [libc] Improve Benchmark UI (#99796)

This PR changes the output to resemble Google Benchmark. e.g.

```
Running Suite: LlvmLibcIsAlNumGpuBenchmark
Benchmark            |  Cycles |     Min |     Max | Iterations |   Time (ns) |   Stddev |  Threads |
-----------------------------------------------------------------------------------------------------
IsAlnum              |      92 |      76 |     482 |         23 |       86500 |       76 |       64 |
IsAlnumSingleThread  |      87 |      76 |     302 |         20 |       72000 |       49 |        1 |
IsAlnumSingleWave    |      87 |      76 |     302 |         20 |       72000 |       49 |       32 |
IsAlnumCapital       |      89 |      76 |     299 |         17 |       78500 |       52 |       64 |
IsAlnumNotAlnum      |      87 |      76 |     303 |         20 |       76000 |       49 |       64 |
```


  Commit: 0387cd052b081d6bc9856ef756942a5df1a2a301
      https://github.com/llvm/llvm-project/commit/0387cd052b081d6bc9856ef756942a5df1a2a301
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp

  Log Message:
  -----------
  [clang-format] Fix a bug in annotating FunctionAnnotationRParen (#99802)

Fixes #37906.


  Commit: 1a47f3f3db66589c11f8ddacfeaecc03fb80c510
      https://github.com/llvm/llvm-project/commit/1a47f3f3db66589c11f8ddacfeaecc03fb80c510
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmBackend.h
    M llvm/include/llvm/MC/MCAssembler.h
    M llvm/include/llvm/MC/MCSection.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCSection.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp

  Log Message:
  -----------
  [MC] Compute fragment offsets eagerly

This builds on top of commit 9d0754ada5dbbc0c009bcc2f7824488419cc5530
("[MC] Relax fragments eagerly") and relaxes fragments eagerly to
eliminate MCSection::HasLayout and `getFragmentOffset` overhead.

Note: The removed `#ifndef NDEBUG` code (disabled by default) in
X86AsmBackend::finishLayout was problematic, as (a) !NDEBUG and NDEBUG
builds evaluated fragment offsets at different times before this patch
(b) one iteration might not be sufficient to converge. There might be
some edge cases that it did not handle. Anyhow, this patch probably
makes it work for more cases.


  Commit: 74a1ca504bf60f02431140ee72dbe1c158556237
      https://github.com/llvm/llvm-project/commit/74a1ca504bf60f02431140ee72dbe1c158556237
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M libc/config/linux/riscv/entrypoints.txt
    M libc/src/__support/FPUtil/BasicOperations.h
    M libc/src/__support/FPUtil/CMakeLists.txt
    M libc/src/__support/FPUtil/generic/FMA.h
    M libc/src/__support/FPUtil/generic/add_sub.h
    M libc/src/__support/FPUtil/generic/div.h
    M libc/src/__support/FPUtil/generic/mul.h
    M libc/test/src/math/smoke/AddTest.h
    M libc/test/src/math/smoke/DivTest.h
    M libc/test/src/math/smoke/MulTest.h
    M libc/test/src/math/smoke/SubTest.h

  Log Message:
  -----------
  [libc][math] Update getpayload and fmul/fadd/fsub/ffma with NaN inputs. (#99812)


  Commit: eaa07c00b10b2105fabed61a95d2a5e0971bc02e
      https://github.com/llvm/llvm-project/commit/eaa07c00b10b2105fabed61a95d2a5e0971bc02e
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/riscv/headers.txt
    M libc/test/src/sys/statvfs/linux/fstatvfs_test.cpp
    M libc/test/src/sys/statvfs/linux/statvfs_test.cpp

  Log Message:
  -----------
  [libc] Fix statvfs test case when SYS_statfs64 is used (#99827)

When SYS_statfs64 is used, struct statfs64 is used instead of struct statfs. This patch adds a define to select the appropriate struct, similar to how it's done internally.

This patch also enables fstatvfs and statvfs on riscv, which would not be compiled without this change.


  Commit: 43213002b99e32d618f2afbbaaeb2ff8dfc84e33
      https://github.com/llvm/llvm-project/commit/43213002b99e32d618f2afbbaaeb2ff8dfc84e33
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/test/Driver/fpatchable-function-entry.c
    M clang/test/Sema/patchable-function-entry-attr.cpp
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    A llvm/test/CodeGen/PowerPC/patchable-function-entry.ll

  Log Message:
  -----------
  [PowerPC] Support -fpatchable-function-entry (#92997)

For now only PPC big endian Linux 32 and 64 bit are supported.

PPC little endian Linux has XRAY support for 64-bit.
PPC AIX has different patchable function entry implementations.

Fixes #63220
Fixes #57031


  Commit: d15ada24b1fbbd72776022383a5c557a1a056413
      https://github.com/llvm/llvm-project/commit/d15ada24b1fbbd72776022383a5c557a1a056413
  Author: Oliver Hunt <oliver at apple.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M clang/lib/CodeGen/CGExprConstant.cpp
    A clang/test/CodeGenCXX/ptrauth-global-constant-initializers.cpp

  Log Message:
  -----------
  [PAC] Incorrect codegen for constant global init with polymorphic MI (#99741)

Fixes an error where we use the wrong authentication schema for
secondary vtable pointers in constant initialized globals of types with
multiple polymorphic base classes.


  Commit: 197b14223238716a84b423315242f8b10d8922dd
      https://github.com/llvm/llvm-project/commit/197b14223238716a84b423315242f8b10d8922dd
  Author: jameshu15869 <55058507+jameshu15869 at users.noreply.github.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M libc/benchmarks/gpu/LibcGpuBenchmark.cpp
    M libc/benchmarks/gpu/LibcGpuBenchmark.h

  Log Message:
  -----------
  [libc] Add N Threads Benchmark Helper (#99834)

This PR adds a `BENCHMARK_N_THREADS()` helper to register benchmarks
with a specific number of threads. This PR replaces the flags used
originally to allow any amount of threads.


  Commit: 324fea9baa902b2bff7b644fade080f98a8c543b
      https://github.com/llvm/llvm-project/commit/324fea9baa902b2bff7b644fade080f98a8c543b
  Author: donald chen <chenxunyu1993 at gmail.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M mlir/docs/Canonicalization.md

  Log Message:
  -----------
  [mlir][docs] Update documentation for canonicalize. (#99753)

Update canonicalize docs.


  Commit: 76321b9f08ef31a2b8ca26f7522aee511a05f7a8
      https://github.com/llvm/llvm-project/commit/76321b9f08ef31a2b8ca26f7522aee511a05f7a8
  Author: Connor Sughrue <55301806+cpsughrue at users.noreply.github.com>
  Date:   2024-07-21 (Sun, 21 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Support/raw_socket_stream.h
    M llvm/lib/Support/raw_socket_stream.cpp
    M llvm/unittests/Support/raw_socket_stream_test.cpp

  Log Message:
  -----------
  [llvm][Support] Implement raw_socket_stream::read with optional timeout (#92308)

This PR implements `raw_socket_stream::read`, which overloads the base
class `raw_fd_stream::read`. `raw_socket_stream::read` provides a way to
timeout the underlying `::read`. The timeout functionality was not added
to `raw_fd_stream::read` to avoid needlessly increasing compile times
and allow for convenient code reuse with `raw_socket_stream::accept`,
which also requires timeout functionality. This PR supports the module
build daemon and will help guarantee it never becomes a zombie process.


  Commit: 248fcab2fc9b3fc1bde5cd5b1fe8615791225c9e
      https://github.com/llvm/llvm-project/commit/248fcab2fc9b3fc1bde5cd5b1fe8615791225c9e
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/select-binop-cmp.ll
    M llvm/test/Transforms/InstCombine/select.ll

  Log Message:
  -----------
   [InstCombine] Do not use operand info in `replaceInInstruction` (#99492)

Consider the following case:
```
%cmp = icmp eq ptr %p, null
%load = load i32, ptr %p, align 4
%sel = select i1 %cmp, i32 %load, i32 0
```
`foldSelectValueEquivalence` converts `load i32, ptr %p, align 4` into
`load i32, ptr null, align 4`, which causes immediate UB. `%load` is
speculatable, but it doesn't hold after operand substitution.

This patch introduces a new helper
`isSafeToSpeculativelyExecuteWithVariableReplaced`. It ignores operand
info in these instructions since their operands will be replaced later.

Fixes #99436.

---------

Co-authored-by: Nikita Popov <github at npopov.com>


  Commit: 57ccd42393b2e9e341d730ec8a6f39a5c89d126d
      https://github.com/llvm/llvm-project/commit/57ccd42393b2e9e341d730ec8a6f39a5c89d126d
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp

  Log Message:
  -----------
  [PowerPC]fix XRAY failures in https://lab.llvm.org/buildbot/#/builders/145/builds/726

Regression caused by 43213002b99e32d618f2afbbaaeb2ff8dfc84e33.


  Commit: 7b28cc0c59d2f8a4427e5f0677ff69c7b319c9bb
      https://github.com/llvm/llvm-project/commit/7b28cc0c59d2f8a4427e5f0677ff69c7b319c9bb
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp

  Log Message:
  -----------
  AMDGPU: Query MachineModuleInfo from PM instead of MachineFunction (#99679)


  Commit: c91e85278cb87a35924d86463d3c0a379c64e9d1
      https://github.com/llvm/llvm-project/commit/c91e85278cb87a35924d86463d3c0a379c64e9d1
  Author: yronglin <yronglin777 at gmail.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticLexKinds.td
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Lex/Token.h
    M clang/include/clang/Parse/Parser.h
    M clang/lib/Basic/IdentifierTable.cpp
    M clang/lib/Frontend/PrintPreprocessedOutput.cpp
    M clang/lib/Lex/PPLexerChange.cpp
    M clang/lib/Lex/Preprocessor.cpp
    M clang/lib/Lex/TokenConcatenation.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/Parser.cpp
    R clang/test/CXX/cpp/cpp.module/p2.cppm
    M clang/test/CXX/module/basic/basic.link/module-declaration.cpp
    M clang/test/CXX/module/dcl.dcl/dcl.module/dcl.module.import/p1.cppm
    M clang/test/SemaCXX/modules.cppm
    M clang/www/cxx_status.html

  Log Message:
  -----------
  Revert "[Clang] Implement P3034R1 Module Declarations Shouldn’t be Macros" (#99838)

Reverts llvm/llvm-project#90574


  Commit: 9d2f81ea85e410da9d79b9dfad9b9769525e4387
      https://github.com/llvm/llvm-project/commit/9d2f81ea85e410da9d79b9dfad9b9769525e4387
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_procmaps_bsd.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_printer.cpp

  Log Message:
  -----------
  [compiler-rt] fix couple of netbsd build warnings. (#99745)


  Commit: 58854facb30f7c660c1fd05376f8a4722eeefb9e
      https://github.com/llvm/llvm-project/commit/58854facb30f7c660c1fd05376f8a4722eeefb9e
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/RISCV/arith-fp.ll
    M llvm/test/Analysis/CostModel/RISCV/rvv-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    M llvm/test/Transforms/VectorCombine/RISCV/vpintrin-scalarization.ll

  Log Message:
  -----------
  [RISCV] Don't cost vector arithmetic fp ops as cheaper than scalar (#99594)

I was comparing some SPEC CPU 2017 benchmarks across rva22u64 and
rva22u64_v, and noticed that in a few cases that rva22u64_v was
considerably slower.

One of them was 519.lbm_r, which has a large loop that was being
unprofitably vectorized. It has an if/else in the loop which requires
large amounts of predication when vectorized, but despite the loop
vectorizer taking this into account the vector cost came out as cheaper
than the scalar.

It looks like the reason for this is because we cost scalar floating
point ops as 2, but their vector equivalents as 1 (for LMUL 1). This
comes from how we use BasicTTIImpl for scalars which treats floats as
twice as expensive as integers.

This patch doubles the cost of vector floating point arithmetic ops so
that they're at least as expensive as their scalar counterparts, which
gives a 13% speedup on 519.lbm_r at -O3 on the spacemit-x60.

Fixes #62576 (the last point there about scalar fsub/fmul)


  Commit: f18fd6e3f9c38560bc26253cae77ac3935149602
      https://github.com/llvm/llvm-project/commit/f18fd6e3f9c38560bc26253cae77ac3935149602
  Author: Daniel Bertalan <dani at danielbertalan.dev>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M lld/MachO/Writer.cpp

  Log Message:
  -----------
  [lld-macho] Use parallel algorithms in favor of `ThreadPool` (#99471)

In https://reviews.llvm.org/D115416, it was decided that an explicit
thread pool should be used instead of the simpler fork-join model of the
`parallelFor*` family of functions. Since then, more parallelism has
been added to LLD, but these changes always used the latter strategy,
similarly to other ports of LLD.

This meant that we ended up spawning twice the requested amount of
threads; one set for the `llvm/Support/Parallel.h` executor, and one for
the thread pool.

Since that decision, 3b4d800911 has landed, which allows us to
explicitly enqueue jobs on the executor pool of the parallel algorithms,
which should be enough to achieve sharded output writing and
parallelized input file parsing. Now only the construction of the map
file is left that should be done *concurrently* with different linking
steps, this commit proposes explicitly spawning a dedicated worker
thread for it.


  Commit: f4d4ce1a3189730ef09ee04207004f500a71070d
      https://github.com/llvm/llvm-project/commit/f4d4ce1a3189730ef09ee04207004f500a71070d
  Author: Piyou Chen <piyou.chen at sifive.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/include/llvm/TargetParser/RISCVTargetParser.h
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/TargetParser/RISCVTargetParser.cpp
    M llvm/test/TableGen/riscv-target-def.td
    M llvm/utils/TableGen/RISCVTargetDefEmitter.cpp

  Log Message:
  -----------
  [RISCV] Add groupid/bitmask for RISC-V extension (#94440)

Base on https://github.com/riscv-non-isa/riscv-c-api-doc/pull/74.

This patch defines the groupid/bitmask in RISCVFeatures.td and generates
the corresponding table in RISCVTargetParserDef.inc.

The groupid/bitmask of extensions provides an abstraction layer between
the compiler and runtime functions.


  Commit: 2873edd2867c151871f7ec3865819ff0f874c95a
      https://github.com/llvm/llvm-project/commit/2873edd2867c151871f7ec3865819ff0f874c95a
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M lld/ELF/Arch/RISCV.cpp

  Log Message:
  -----------
  [lld][RISCV] Add break to nested switch in `mergeAtomic` (#99762)

This prevent the warnings from compiler.


  Commit: 8dafbb5fdd4099df72d24af2ceb7ecade8216820
      https://github.com/llvm/llvm-project/commit/8dafbb5fdd4099df72d24af2ceb7ecade8216820
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/TargetParser/RISCVTargetParser.cpp

  Log Message:
  -----------
  [RISCV] Remove unused function (NFC)

/llvm-project/llvm/lib/TargetParser/RISCVTargetParser.cpp:148:1:
error: unused function 'getExtensionBitmask' [-Werror,-Wunused-function]
getExtensionBitmask(StringRef ExtName) {
^
1 error generated.


  Commit: 6b9ac2a4951453fa61fbda285a23be1b32bbff49
      https://github.com/llvm/llvm-project/commit/6b9ac2a4951453fa61fbda285a23be1b32bbff49
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/lib/CodeGen/BranchFolding.cpp

  Log Message:
  -----------
  [BranchFolding] Add a hook to override tail merge size (#99025)

A new hook `TargetInstrInfo::getTailMergeSize()` is added so that
targets can override it.

This removes an existing TODO.


  Commit: 10d720b5b4383c9900caaed7edf38ae31e8b9ac4
      https://github.com/llvm/llvm-project/commit/10d720b5b4383c9900caaed7edf38ae31e8b9ac4
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/DeadStoreElimination/memoryssa-scan-limit.ll

  Log Message:
  -----------
  [DeadStoreElimination] Add test for recent worklist revision (NFC)

As d5c89cc proved not to be NFC, prior to this change, duplicate
`MemoryAccess` entries were being added to the worklist in
`isWriteAtEndOfFunction`, prematurely reaching the exploration
limit. When `MemorySSAScanLimit` cutoff is set to 4, the store
was previously not eliminated. Introduce a regression test for
additional validation. The test is a simplified variant of function
`ntlmssp_create_session_key`, coming from @dtcxzyw/llvm-opt-benchmark,
bench/wireshark/original/packet-ntlmssp.c.ll.


  Commit: 36d384b4ddb54d40866614df5128be60f36d92a2
      https://github.com/llvm/llvm-project/commit/36d384b4ddb54d40866614df5128be60f36d92a2
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp

  Log Message:
  -----------
  [mlir][Transforms][NFC] Dialect conversion: Simplify `EraseBlockRewrite` constructor (#99805)


  Commit: 4c73b1a986bb4f3af6c5d5e9e705934dbcc36262
      https://github.com/llvm/llvm-project/commit/4c73b1a986bb4f3af6c5d5e9e705934dbcc36262
  Author: hev <wangrui at loongson.cn>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/test/CodeGen/LoongArch/andn-icmp.ll

  Log Message:
  -----------
  [LoongArch] Recommit "Remove spurious mask operations from andn->icmp on 16 and 8 bit values" (#99798)

recommit of #99272


  Commit: b15aa7f88c21d126bac4cf77eb05c522e0f1870d
      https://github.com/llvm/llvm-project/commit/b15aa7f88c21d126bac4cf77eb05c522e0f1870d
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/MemoryFlags.h
    M llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
    A llvm/unittests/ExecutionEngine/Orc/MemoryFlagsTest.cpp

  Log Message:
  -----------
  [ORC] Add unit test for MemoryFlags APIs, don't dereference end() iterator.

In AllocGroupSmallMap::find(AllocGroup) we were calling lower_bound(...) and
then unconditionally dereferencing the resulting iterator, however
lower_bound(...) may return end() if the value being searched for is higher
than any value present in the map. This patch adds a check for end() before
the dereference to guard against dereference of end().

This commit also adds some basic unit tests for MemProt and AllocGroupSmallMap.

rdar://129662981


  Commit: 12762b8648d88e6823aedc82f663a596fa2eef76
      https://github.com/llvm/llvm-project/commit/12762b8648d88e6823aedc82f663a596fa2eef76
  Author: yronglin <yronglin777 at gmail.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M clang/lib/AST/Interp/Compiler.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/Opcodes.td
    M clang/test/SemaCXX/builtin_vectorelements.cpp

  Log Message:
  -----------
  [Clang][Interp] Diagnose use sizeless vector type as the argument of `__builtin_vectorelements` (#99794)

This PR implement an opcode to diagnose use sizeless vector type as the
argument of `__builtin_vectorelements`.

---------

Signed-off-by: yronglin <yronglin777 at gmail.com>


  Commit: 56ad7cc0126f9899fd884391cfa10b6359206c01
      https://github.com/llvm/llvm-project/commit/56ad7cc0126f9899fd884391cfa10b6359206c01
  Author: AtariDreams <gfunni234 at gmail.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
    M llvm/lib/Transforms/Scalar/StraightLineStrengthReduce.cpp

  Log Message:
  -----------
  [IR] Remove non-canonical matchings (#96763)


  Commit: c7bfc41860a6abe5c92dc5afb47348b0c9e69963
      https://github.com/llvm/llvm-project/commit/c7bfc41860a6abe5c92dc5afb47348b0c9e69963
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/test/AST/ast-dump-ctad-alias.cpp
    M clang/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.call/p3-0x.cpp
    M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
    M clang/test/SemaTemplate/deduction-guide.cpp

  Log Message:
  -----------
  [Clang][NFCI] Prefer non-canonical template arguments for synthesized CTAD guides (#99840)

This seems to be low-hanging fruit: We could remove all calls to
`Context.getCanonicalTemplateArgument()` and gain a better
diagnostic/AST.

The non-canonical template arguments shouldn't make a difference when
synthesizing a CTAD guide, so this is intended to be an NFC.

Closes https://github.com/llvm/llvm-project/issues/79798


  Commit: 20d38158ffbe1e01b74e39d36d4b3bc5e7a63d66
      https://github.com/llvm/llvm-project/commit/20d38158ffbe1e01b74e39d36d4b3bc5e7a63d66
  Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M clang/lib/Parse/ParseExpr.cpp
    M clang/test/Preprocessor/embed_weird.cpp

  Log Message:
  -----------
  [clang] Fix assertion failure in `injectEmbedTokens` (#99624)

It seems for C++ lexer has some caching ability which doesn't expect
injecting "new" tokens in the middle of the cache. Technically #embed
tokens are not completely new since they have already been read from the
file and there was #embed annotation token in this place, so set
`reinject` flag for them to silence assertion.


  Commit: 7eb59a1ef98dd135a88190f9c6bcd113e0a7016f
      https://github.com/llvm/llvm-project/commit/7eb59a1ef98dd135a88190f9c6bcd113e0a7016f
  Author: Dmitry Chernenkov <dmitryc at google.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [Bazel] Fix libc Bazel build for 29be889c2c9c9a92e7ed89bd71d141961517d7e5


  Commit: 4db11c1f6cd6cd12b51a3220a54697b90e2e8821
      https://github.com/llvm/llvm-project/commit/4db11c1f6cd6cd12b51a3220a54697b90e2e8821
  Author: Max Beck-Jones <max.beck-jones at arm.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/sve-i1-add-reduce.ll

  Log Message:
  -----------
  [AArch64] Lower scalable i1 vector add reduction to cntp (#99031)

Doing an add reduction on a vector of i1 elements is the same as
counting the number of set elements so such a reduction can be lowered
to a cntp instruction. This saves a number of instructions over
performing a UADDV. This patch only handles straightforward cases (i.e.
when vectors are not split).


  Commit: f138b33ddd482fc68bc8622a150e279c1449fadf
      https://github.com/llvm/llvm-project/commit/f138b33ddd482fc68bc8622a150e279c1449fadf
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCContext.h
    M llvm/lib/MC/MCContext.cpp
    M llvm/lib/MC/MCObjectFileInfo.cpp
    M llvm/lib/MC/MCSectionXCOFF.cpp
    M llvm/lib/MC/XCOFFObjectWriter.cpp
    M llvm/test/DebugInfo/XCOFF/empty.ll
    M llvm/test/DebugInfo/XCOFF/explicit-section.ll
    M llvm/test/DebugInfo/XCOFF/function-sections.ll

  Log Message:
  -----------
  [XCOFF] refactor the XCOFF BeginSymName handling

Fixes #96810


  Commit: 01d783643aa750aa160bdcd097176fcde934dbd1
      https://github.com/llvm/llvm-project/commit/01d783643aa750aa160bdcd097176fcde934dbd1
  Author: Tim Creech <timothy.m.creech at intel.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    A llvm/test/tools/llvm-profgen/period-scaling.test
    M llvm/tools/llvm-profgen/PerfReader.cpp

  Log Message:
  -----------
  [llvm-profgen] Add --sample-period to estimate absolute counts (#99826)

Without `--sample-period`, no assumptions are made about perf profile
sample frequencies. This is useful for comparing relative hotness of
different program locations within the same profile.

With `--sample-period`, LBR- and IP-based profile hit counts are
adjusted to estimate the absolute total event count for each program
location. This makes it reasonable to compare hit counts between
different profiles, e.g., between two LBR-based execution frequency
profiles with different sampling periods or between LBR-based execution
frequency profiles and IP-based branch mispredict profiles.

This functionality is in support of HWPGO[^1], which aims to enable
feedback from a wider range of hardware events.

[^1]:
https://llvm.org/devmtg/2024-04/slides/TechnicalTalks/Xiao-EnablingHW-BasedPGO.pdf


  Commit: 2e789900433834b3b5cd6a55ccf64da6a9ec4505
      https://github.com/llvm/llvm-project/commit/2e789900433834b3b5cd6a55ccf64da6a9ec4505
  Author: Max Beck-Jones <max.beck-jones at arm.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    R llvm/test/CodeGen/AArch64/sve-i1-add-reduce.ll

  Log Message:
  -----------
  Revert "[AArch64] Lower scalable i1 vector add reduction to cntp" (#99853)

Reverts llvm/llvm-project#99031


  Commit: 2bc38dc30bc9baad610925d7e90e724a9d09ee7d
      https://github.com/llvm/llvm-project/commit/2bc38dc30bc9baad610925d7e90e724a9d09ee7d
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp
    M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
    M clang/test/Analysis/out-of-bounds-diagnostics.c

  Log Message:
  -----------
  [analyzer] Improve bug report hashing, merge similar reports (#98621)

Previously there were certain situations where
alpha.security.ArrayBoundV2 produced lots of very similar and redundant
reports that only differed in their full `Description` that contained
the (negative) byte offset value. (See
https://github.com/llvm/llvm-project/issues/86969 for details.)

This change updates the `Profile()` method of `PathSensitiveBugReport`
to ensure that it uses `getShortDescription()` instead of the full
`Description` so the standard report deduplication eliminates most of
these redundant reports.

Note that the effects of this change are very limited because there are
very few checkers that specify a separate short description, and so
`getShortDescription()` practically always defaults to returning the
full `Description`.

For the sake of consistency `BasicBugReport::Profile()` is also updated
to use the short description. (Right now there are no checkers that use
`BasicBugReport` with separate long and short descriptions.)

This commit also includes some small code quality improvements in
`ArrayBoundV2` that are IMO too trivial to be moved into a separate
commit.


  Commit: 16e05919d94888e222d4954086f6d860839117dd
      https://github.com/llvm/llvm-project/commit/16e05919d94888e222d4954086f6d860839117dd
  Author: AtariDreams <gfunni234 at gmail.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/cmp-chains.ll
    M llvm/test/CodeGen/AArch64/cmp-select-sign.ll

  Log Message:
  -----------
  [AArch64] Use isKnownNonZero to optimize eligible compares to cmn and ccmn (#96349)

The problematic case for unsigned comparisons occurs only when the
second argument is zero.

The problematic case for signed comparisons occurs only when the second
argument is the signed minimum value.

We can use KnownBits to know when we don't have to worry about this.

Source: https://devblogs.microsoft.com/oldnewthing/20210607-00/?p=105288


  Commit: 46223b5eae1ae25ad0d8ca47ea210c1781cb03fc
      https://github.com/llvm/llvm-project/commit/46223b5eae1ae25ad0d8ca47ea210c1781cb03fc
  Author: Romaric Jodin <rjodin at chromium.org>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M libclc/generic/lib/common/sign.cl

  Log Message:
  -----------
  libclc: add half version of 'sign' (#99841)


  Commit: 85e74285626191108a78e797179374219b3a67d4
      https://github.com/llvm/llvm-project/commit/85e74285626191108a78e797179374219b3a67d4
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M mlir/test/Dialect/Vector/vector-transfer-flatten.mlir

  Log Message:
  -----------
  [mlir][vector] Refactor vector-transfer-flatten.mlir (nfc) (3/n) (#95745)

The main goal of this and subsequent PRs is to unify and categorize
tests in:
  * vector-transfer-flatten.mlir

This should make it easier to identify the edge cases being tested (and
how they differ), remove duplicates and to add tests for scalable
vectors.

The main contributions of this PR:

1. For consistency with other tests,
   `@transfer_read_flattenable_with_dynamic_dims_and_indices` is renamed
   as `@transfer_read_leading_dynamic_dims`. It is also moved near other
   tests for `xfer_read`, variable names are updated to match other
   `xfer_read` tests

2. `@transfer_write_dims_mismatch_non_zero_indices_trailing_dynamic_dim`
   is renamed as `@negative_transfer_read_dynamic_dim_to_flatten` to
   better highlight that it's a negative test and to contrast it with
   `@transfer_read_leading_dynamic_dims` (and to emphasise the
   difference between the two).

3. Similar changes for tests for `xfer_write`.

4. Make sure that we consistently use `%idx_N` (as opposed to `%idxN`).

Follow-up for #95743 and #95744


  Commit: 45c0decdda5eee6b4d13d4bf241a45c56e412c05
      https://github.com/llvm/llvm-project/commit/45c0decdda5eee6b4d13d4bf241a45c56e412c05
  Author: Vikash Gupta <Vikash.Gupta at amd.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M lld/COFF/Symbols.h

  Log Message:
  -----------
  [LLD] [COFF] Zero-intialization & proper constructor invocation in COFF's Symbol (#98447)

It happened due to lld's COFF linker multiple regression tests failure.
It got reliably reproduced after the needed intialization of
isUsedinRegularObject bit in the Symbol's ctor, but not handled at
replaceSymbol API properly while creating a specific symbol to insert in
symbol table.

So, now while creating the specific symbol using replaceSymbol, by
explicitly setting the value of isUsedinRegularObject to newly created
symbol around the ctor call of symbol would solve the regression failure


  Commit: ef2af7f85616b48029dce55069c3faa949d46454
      https://github.com/llvm/llvm-project/commit/ef2af7f85616b48029dce55069c3faa949d46454
  Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/aarch64/sme-libc-mem-routines.S
    M compiler-rt/lib/builtins/aarch64/sme-libc-routines.c

  Log Message:
  -----------
  [AArch64][SME] Make use of Arm Optimised Routines in compiler-rt (#99326)

A number of streaming-compatible versions of standard C functions
were added to compiler-rt, however there are already optimised
versions of most of these in libc which are valid in streaming-SVE
mode. This patch replaces the implementations of __arm_sc_mem* with
these versions where possible.


  Commit: f406d83d9553c0ade8f9b2dea961e5a8caa220f3
      https://github.com/llvm/llvm-project/commit/f406d83d9553c0ade8f9b2dea961e5a8caa220f3
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

  Log Message:
  -----------
  [DAG] widenCtPop - reuse existing SDLoc. NFC.


  Commit: 102d16809b2cf79b5e1ff4728ef6164cd92f90d5
      https://github.com/llvm/llvm-project/commit/102d16809b2cf79b5e1ff4728ef6164cd92f90d5
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/Analysis/Loads.cpp
    M llvm/test/Transforms/LoopVectorize/load-deref-pred-align.ll

  Log Message:
  -----------
  [Analysis] Bail out for negative offsets in isDereferenceableAndAlignedInLoop (#99490)

This patch now bails out explicitly for negative offsets so that it's
more consistent with the unsigned remainder and add calculations,
and it fixes a genuine bug as shown with the new test.


  Commit: bf08d0e1182c94b6fe14b8915df6a7e5e755e5f2
      https://github.com/llvm/llvm-project/commit/bf08d0e1182c94b6fe14b8915df6a7e5e755e5f2
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M flang/lib/Optimizer/CodeGen/PreCGRewrite.cpp
    M flang/test/Fir/declare-codegen.fir

  Log Message:
  -----------
  [flang] fix cg-rewrite DCE (#99653)

cg-rewrite runs regionDCE to get rid of the unused fir.shape/shift/slice
before codegen since those operations have no codegen.
I came across an issue where unreachable code would cause the pass to
fail with `error: loc(...): null operand found`.

It turns out `mlir::RegionDCE` does not work properly in presence of
unreachable code because it delete operations in reachable code that are
unused in reachable code, but still used in unreachable code (like the
constant in the added test case). It seems `mlir::RegionDCE` is always
run after `mlir::eraseUnreachableBlock` outside of this pass.

A solution could be to run `mlir::eraseUnreachableBlock` here or to try
modifying `mlir::RegionDCE`. But the current behavior may be
intentional, and both of these calls are actually quite expensive. For
instance, RegionDCE will does liveness analysis, and removes unused
block arguments, which is way more than what is needed here. I am not
very found of having this rather heavy transformation inside this pass
(they should be run after or before if they matter in the overall
pipeline).

Do a naïve backward deletion of the trivially dead operations instead.
It is cheaper, and works with unreachable code.


  Commit: 462d084241616627be1ac2b967a7fcba9b0facfe
      https://github.com/llvm/llvm-project/commit/462d084241616627be1ac2b967a7fcba9b0facfe
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M flang/lib/Lower/ConvertCall.cpp
    A flang/test/Lower/HLFIR/calls-poly-to-nonpoly.f90

  Log Message:
  -----------
  [flang] fix sequence association of polymorphic actual arguments (#99294)

When passing a polymorphic actual array argument to an non polymorphic
explicit or assumed shape argument, copy-in/copy-out may be required and
should be made according to the dummy dynamic type.

The code that was creating the descriptor to drive this copy-in/out was
not handling properly the case where the dummy and actual rank do not
match (possible according to sequence association rules), it tried to
make the copy-in/out according to the dummy argument shape (which we may
not even know if the dummy is assumed-size). Fix this by using the
actual shape when creating this new descriptor with the dummy argument
dynamic type.


  Commit: dc82c774a74ad7e94d4c555e4cae1025e30f3876
      https://github.com/llvm/llvm-project/commit/dc82c774a74ad7e94d4c555e4cae1025e30f3876
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/arm_neon.td
    M clang/include/clang/Basic/arm_neon_incl.td
    A clang/test/Sema/aarch64-neon-without-target-feature.cpp
    M clang/utils/TableGen/NeonEmitter.cpp

  Log Message:
  -----------
  [Clang][NEON] Add neon target guard to intrinsics (#98624)

This patch improves reported error when NEON intrinsics are used without
neon target feature.


  Commit: 15b41d207e15c96cf6f6a7e72cbf3c0044762df5
      https://github.com/llvm/llvm-project/commit/15b41d207e15c96cf6f6a7e72cbf3c0044762df5
  Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/Passes.h
    M llvm/include/llvm/CodeGen/RegAllocCommon.h
    M llvm/include/llvm/CodeGen/RegAllocFast.h
    M llvm/include/llvm/Passes/PassBuilder.h
    M llvm/lib/CodeGen/RegAllocBase.h
    M llvm/lib/CodeGen/RegAllocBasic.cpp
    M llvm/lib/CodeGen/RegAllocFast.cpp
    M llvm/lib/CodeGen/RegAllocGreedy.cpp
    M llvm/lib/CodeGen/RegAllocGreedy.h
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/lib/Target/X86/X86TargetMachine.cpp

  Log Message:
  -----------
  [CodeGen] change prototype of regalloc filter function (#93525)

[CodeGen] Change the prototype of regalloc filter function

Change the prototype of the filter function so that we can
filter not just by RegClass. We need to implement more
complicated filter based upon some other info associated
with each register.

Patch provided by: Gang Chen (gangc at amd.com)


  Commit: c1622cae10c953f327c7ef24d57508eebd84f244
      https://github.com/llvm/llvm-project/commit/c1622cae10c953f327c7ef24d57508eebd84f244
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/arm_neon.td
    M clang/include/clang/Basic/arm_neon_incl.td
    R clang/test/Sema/aarch64-neon-without-target-feature.cpp
    M clang/utils/TableGen/NeonEmitter.cpp

  Log Message:
  -----------
  Revert "[Clang][NEON] Add neon target guard to intrinsics" (#99864)

Reverts llvm/llvm-project#98624


  Commit: f39bd0a24e8aaa55c957c179607c071a86590ec1
      https://github.com/llvm/llvm-project/commit/f39bd0a24e8aaa55c957c179607c071a86590ec1
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/test/CodeGen/AMDGPU/resource-optimization-remarks.ll

  Log Message:
  -----------
  [AMDGPU] Do not print `kernel-resource-usage` information on non-kernels (#99720)

Summary:
This pass is used to get helpful information about the kernel resources
without needing to insepct the binary. However, it currently prints on
every function. These values will always be zero, so it's just spam on
the terminal, at best an indication that a function wasn't internalized
/ optimized out. This patch makes it only print for kernels to make it
more useful in practice.


  Commit: cffe1153f4466b1602d4778e57c3bd8663cef5ec
      https://github.com/llvm/llvm-project/commit/cffe1153f4466b1602d4778e57c3bd8663cef5ec
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/Object/COFFImportFile.cpp
    M llvm/test/tools/llvm-dlltool/arm64ec.test

  Log Message:
  -----------
  [llvm-dlltool] Use EXPORTAS name type for renamed imports on ARM64EC. (#99346)

Renamed entries are more tricky on ARM64EC than on other targets due
to additional symbols (we need `__imp_aux_*` in addition to `__imp_*`
and both mangled and unmangled symbol thunks). While we could extend
weak aliases to add them, it seems cleaner to just always use EXPORTAS
name type on ARM64EC targets. Unlike other targets, linkers supporting
ARM64EC need to support EXPORTAS, so there is no compatibility problem
with that.


  Commit: 5b8479bc28a8641f02be3d64f87770b9e0b1a427
      https://github.com/llvm/llvm-project/commit/5b8479bc28a8641f02be3d64f87770b9e0b1a427
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M libc/test/src/math/performance_testing/CMakeLists.txt

  Log Message:
  -----------
  [libc][CMake] Set library type of libc_diff_test_utils to STATIC (#99869)

Fixes linker errors due to hidden symbols when running CMake with
-DBUILD_SHARED_LIBS=ON.


  Commit: 2f5dc596b5719e5ed7f6978dafbce994f425a033
      https://github.com/llvm/llvm-project/commit/2f5dc596b5719e5ed7f6978dafbce994f425a033
  Author: kadir çetinkaya <kadircet at google.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M clang-tools-extra/clangd/IncludeCleaner.cpp
    M clang-tools-extra/clangd/unittests/IncludeCleanerTests.cpp
    M clang-tools-extra/include-cleaner/lib/Analysis.cpp
    M clang-tools-extra/include-cleaner/unittests/AnalysisTest.cpp

  Log Message:
  -----------
  [IncludeCleaner] Also check for spellings of physical headers (#99843)

Some physical headers can have "conflicting" spellings, when same
filename exists under two different include search paths. e.g.
<stdlib.h>
can be provided by both standard library and underlying libc headers. In
such scenarios if the usage is from the latter include-search path,
users can't spell it directly.

This patch ensures we also consider spellings of such includes, in
addition to their physical files to prevent conflicting suggestions.


  Commit: a7fb25dd1fcc2e5afcc65cccfa83b7b381b48906
      https://github.com/llvm/llvm-project/commit/a7fb25dd1fcc2e5afcc65cccfa83b7b381b48906
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/fast-isel-select.ll

  Log Message:
  -----------
  [AArch64] Fix broken check lines (NFC)


  Commit: 0284b4b4b603192ce9eb29d3a34c23ea7378bee1
      https://github.com/llvm/llvm-project/commit/0284b4b4b603192ce9eb29d3a34c23ea7378bee1
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/arm_neon.td
    M clang/include/clang/Basic/arm_neon_incl.td
    A clang/test/Sema/aarch64-neon-without-target-feature.cpp
    M clang/utils/TableGen/NeonEmitter.cpp

  Log Message:
  -----------
  [Clang][NEON] Add neon target guard to intrinsics (#99870)

This patch improves reported error when NEON intrinsics are used without
neon target feature.


  Commit: 65e86a8f3fb44dc09dc2e08526d69e3a57f63995
      https://github.com/llvm/llvm-project/commit/65e86a8f3fb44dc09dc2e08526d69e3a57f63995
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/pmul.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-8.ll
    M llvm/test/CodeGen/X86/widen_bitcnt.ll

  Log Message:
  -----------
  [X86] combineConcatVectorOps - concat(bitcast(),bitcast()) -> bitcast(concat())

When concatenating subvector ops together, try to use the pre-bitcasted subop to help expose further combines.


  Commit: 05671cec6f736c65b7df29234db828116e6d95dd
      https://github.com/llvm/llvm-project/commit/05671cec6f736c65b7df29234db828116e6d95dd
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/combine-pmadd.ll

  Log Message:
  -----------
  [X86] Add tests showing failure to push freeze through SSE PMADD nodes

PMADD guarantee inbounds/saturated ext-multiply-add results

Test to help with regression identified on #84924


  Commit: e9974f02a30280eab868cdab0a90a5372b1799cd
      https://github.com/llvm/llvm-project/commit/e9974f02a30280eab868cdab0a90a5372b1799cd
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/combine-pmadd.ll

  Log Message:
  -----------
  [X86] canCreateUndefOrPoisonForTargetNode - PMADDWD/PMADDUBSW nodes don't create poison

Help with regression identified on #84924


  Commit: cb528e59de6bb16493e7e2314d2a9d0486b91152
      https://github.com/llvm/llvm-project/commit/cb528e59de6bb16493e7e2314d2a9d0486b91152
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn

  Log Message:
  -----------
  [gn] port a41a4ac78294


  Commit: aa99192bc65071c0a008faefedd90874fbe053dd
      https://github.com/llvm/llvm-project/commit/aa99192bc65071c0a008faefedd90874fbe053dd
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M flang/lib/Lower/DirectivesCommon.h
    A flang/test/Lower/OpenMP/Todo/atomic-character.f90
    A flang/test/Lower/OpenMP/Todo/atomic-complex.f90
    M flang/test/Lower/OpenMP/atomic-read.f90

  Log Message:
  -----------
  [flang][OpenMP] Add TODO messages for partially implemented atomic types (#99817)

There is ongoing work for fir.complex but this looks unlikely to land
before the LLVM branch. Adding a TODO message gives cleaner output to
users. Currently fir.complex leads to a compiler assertion failure.

Some uses of character types lead to invalid fir.convert type
conversions, others make it far enough to hit the same assertion failure
as for fir.complex.


  Commit: bc4c3bf1b75fec183e2616d6688aa155d6aada74
      https://github.com/llvm/llvm-project/commit/bc4c3bf1b75fec183e2616d6688aa155d6aada74
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M libc/test/src/__support/blockstore_test.cpp

  Log Message:
  -----------
  [libc] Remove special case handing around test case that was fixed

Summary:
I needed to hack something around this for a previous backend bug, it's
since been fixed as far as I'm aware.


  Commit: 3c459cfcaebdaf7cabac33a0e18bf6588cef4cdb
      https://github.com/llvm/llvm-project/commit/3c459cfcaebdaf7cabac33a0e18bf6588cef4cdb
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaExpr.cpp
    M clang/test/CXX/expr/expr.unary/expr.unary.op/p4.cpp

  Log Message:
  -----------
  [Clang] Fix handling of qualified id-expressions in unevaluated contexts (#99807)

In #89713, we made qualified, parenthesized id-expression ill-formed in
and address of expressions.

The expected behavior should instead be to form a pointer (rather than a
pointer to member)

The fix has been suggested by @zwuis and the tests by
@hubert-reinterpretcast.

It is worth pointing out that some of these tests seem rejected by all
compilers, however the tests do seem correct.

Fixes #89713
Fixes #40906

---------

Co-authored-by: YanzuoLiu <zwuis at outlook.com>


  Commit: 6ae4014befbc16c63c31922d8462afcaae51e260
      https://github.com/llvm/llvm-project/commit/6ae4014befbc16c63c31922d8462afcaae51e260
  Author: David Green <david.green at arm.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    A llvm/test/CodeGen/AArch64/sve-stack-frame-layout.ll

  Log Message:
  -----------
  [AArch64] Add a test for stack-frame-layout analysis of Scalable objects. NFC


  Commit: 8ebe7e60f50c234f5d187fcc470d92f4d2a6a925
      https://github.com/llvm/llvm-project/commit/8ebe7e60f50c234f5d187fcc470d92f4d2a6a925
  Author: Bjorn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/RISCV/double-convert.ll
    M llvm/test/CodeGen/RISCV/double-round-conv-sat.ll

  Log Message:
  -----------
  [DAGCombiner] Push freeze through SETCC and SELECT_CC (#64718)

Allow pushing freeze through SETCC and SELECT_CC even if there are
multiple "maybe poison" operands. In the past we have limited it to
a single "maybe poison" operand, but it seems profitable to also
allow the multiple operand scenario.

One goal here is to avoid some regressions seen in review of
  https://github.com/llvm/llvm-project/pull/84924
when solving the select->and miscompiles described in
  https://github.com/llvm/llvm-project/issues/84653


  Commit: 8417f490be0343ea4a183a9a9e02c6015275b291
      https://github.com/llvm/llvm-project/commit/8417f490be0343ea4a183a9a9e02c6015275b291
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 04760bfadb39


  Commit: 6f915f48c1362fa3273e57e4a152830e3c8dd77e
      https://github.com/llvm/llvm-project/commit/6f915f48c1362fa3273e57e4a152830e3c8dd77e
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [gn build] Port af0d731b1298


  Commit: 091ec15bbebf5be42d10f05a393489732ce651e4
      https://github.com/llvm/llvm-project/commit/091ec15bbebf5be42d10f05a393489732ce651e4
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/unittests/ExecutionEngine/Orc/BUILD.gn

  Log Message:
  -----------
  [gn build] Port b15aa7f88c21


  Commit: 32cd18975d2e1de5a783e9b1c3c21a234d5723b4
      https://github.com/llvm/llvm-project/commit/32cd18975d2e1de5a783e9b1c3c21a234d5723b4
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/lib/Analysis/Loads.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/GVN/condprop.ll

  Log Message:
  -----------
  [GVN] Look through select/phi when determining underlying object (#99509)

This addresses an optimization regression in Rust we have observed after
https://github.com/llvm/llvm-project/pull/82458. We now only perform
pointer replacement if they have the same underlying object. However,
getUnderlyingObject() by default only looks through linear chains, not
selects/phis. In particular, this means that we miss cases involving
involving pointer induction variables.

This patch fixes this by introducing a new helper
getUnderlyingObjectAggressive() which basically does what
getUnderlyingObjects() does, just specialized to the case where we must
arrive at a single underlying object in the end, and with a limit on the
number of inspected values.

Doing this more expensive underlying object check has no measurable
compile-time impact on CTMark.


  Commit: 83c2bfdacb0593b3a72e93098a55afdcd93d865f
      https://github.com/llvm/llvm-project/commit/83c2bfdacb0593b3a72e93098a55afdcd93d865f
  Author: Samira Bazuzi <bazuzi at google.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
    M clang/unittests/Analysis/FlowSensitive/DataflowEnvironmentTest.cpp

  Log Message:
  -----------
  [clang][dataflow] Handle this-capturing lambdas in field initializers. (#99519)

We previously would assume these lambdas appeared inside a method
definition and end up crashing.


  Commit: d8e0b0d6854757c4fc0c120995cf76457c347a1e
      https://github.com/llvm/llvm-project/commit/d8e0b0d6854757c4fc0c120995cf76457c347a1e
  Author: premanandrao <premanand.m.rao at intel.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaAvailability.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    A clang/test/SemaTemplate/alias-template-deprecated.cpp

  Log Message:
  -----------
  [clang] Diagnose use of deprecated template alias (#97619)

Issue a warning diagnostic when a template alias with a deprecated
attribute is used.


  Commit: 613d2c393992eee470405f1859aaf5fd1837e36c
      https://github.com/llvm/llvm-project/commit/613d2c393992eee470405f1859aaf5fd1837e36c
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M clang/lib/AST/Interp/Pointer.cpp

  Log Message:
  -----------
  [clang][Interp][NFC] Avoid hitting an assertion in invalid code


  Commit: ca3d4dfe0c8844a8010751c51600a3bd3f6f80a4
      https://github.com/llvm/llvm-project/commit/ca3d4dfe0c8844a8010751c51600a3bd3f6f80a4
  Author: AtariDreams <gfunni234 at gmail.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/IR/Metadata.cpp

  Log Message:
  -----------
  [Metadata] Make range boundary variables unsigned (NFC) (#99338)

They should be unsigned because the source and target value are too.


  Commit: 2e6558b8bcdaa4c0924f1f49a9200cb2dea44bd4
      https://github.com/llvm/llvm-project/commit/2e6558b8bcdaa4c0924f1f49a9200cb2dea44bd4
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    A flang/test/Lower/OpenMP/lastprivate-allocatable.f90

  Log Message:
  -----------
  [flang][OpenMP] fix lastprivate for allocatables (#99686)

Don't use `copyHostAssociateVar` for allocatable variables. It isn't
clear to me whether or not this should be addressed in
`copyHostAssociateVar` instead of inside OpenMP. I opted for OpenMP
to minimise how many things I effected. `copyHostAssociateVar` will
not update the destination variable if the destination variable
was unallocated. This is incorrect because assignment inside of the
openmp block can cause the allocation status of the variable to
change. Furthermore, `copyHostAssociateVar` seems to only copy the
variable address not other metadata like the size of the allocation.
Reallocation by assignment could cause this to change.


  Commit: 7ddcf7acf22ac2b490f17d0aea4c2b7f99911d63
      https://github.com/llvm/llvm-project/commit/7ddcf7acf22ac2b490f17d0aea4c2b7f99911d63
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M libc/include/llvm-libc-types/fsblkcnt_t.h
    M libc/include/llvm-libc-types/fsfilcnt_t.h

  Log Message:
  -----------
  [libc] Change fsfilcnt_t and fsblkcnt_t to be 64-bits long (#99876)

In 32-bit systems with 64-bit offsets, both fsfilcnt_t and fsblkcnt_t are 64-bit long, just like 64-bit systems. This patch changes both types to be 64-bit long for all platforms and follows the reasoning used to change off_t: the standard only requires it to be an unsigned int, so making it 64-bit long doesn't violate this property.

It should be NFC for 64-bit systems.


  Commit: 28e6095082d97c753eadbbf080fe8c36892b56f7
      https://github.com/llvm/llvm-project/commit/28e6095082d97c753eadbbf080fe8c36892b56f7
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/riscv/headers.txt

  Log Message:
  -----------
  [libc] Add working entrypoints to riscv (#99885)

Added new fsqrt entrypoints and updated headers.txt, which I missed in PR #99771


  Commit: 280b04f65a169f09249031e5e12a30584ce2e8e0
      https://github.com/llvm/llvm-project/commit/280b04f65a169f09249031e5e12a30584ce2e8e0
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M clang/lib/Parse/ParseAST.cpp
    M clang/unittests/Support/TimeProfilerTest.cpp

  Log Message:
  -----------
  Record mainfile name in the Frontend time trace (#99866)


  Commit: 65825cd5431c64b3b2c0537e4ff01517d0b32061
      https://github.com/llvm/llvm-project/commit/65825cd5431c64b3b2c0537e4ff01517d0b32061
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M libc/src/__support/libc_assert.h
    M libc/src/__support/threads/linux/raw_mutex.h

  Log Message:
  -----------
  [libc] Use `<assert.h>` in overlay mode for LIBC_ASSERT (#99875)

Summary:
This uses `internal::exit` which is not built in overlay mode, leading
to linker errors. Fix this to just use `assert.h`.


  Commit: cda5b2b4b843635f0824c228f14f747361727a5e
      https://github.com/llvm/llvm-project/commit/cda5b2b4b843635f0824c228f14f747361727a5e
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M libc/src/__support/OSUtil/linux/fcntl.cpp

  Log Message:
  -----------
  [libc] Change fcntl cmd when only fcntl64 is available (#99675)

In some systems like rv32, only fcntl64 is available and it employs a different structure for file locking and the correspoding F_GETLK64, F_SETLK64, and F_SETLKW64 commands.

So if we use fcntl64, the F_GETLK, F_SETLK, and F_SETLKW commands need to be changed to their 64 versions. This patch adds new cases to the swich(cmd) in our implementation of fcntl to do that.

The default case was moved to outside the switch, so we don't need to change anything, the F_GETLK, F_SETLK, and F_SETLKW commands will just go through the old implementation.


  Commit: 2b78303e3f78c1eeb4b1362933290c490ce5fff6
      https://github.com/llvm/llvm-project/commit/2b78303e3f78c1eeb4b1362933290c490ce5fff6
  Author: Björn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-predicated-scalable.ll
    M llvm/test/CodeGen/AArch64/fast-isel-select.ll
    M llvm/test/CodeGen/AArch64/intrinsic-cttz-elts-sve.ll
    M llvm/test/CodeGen/AArch64/sve-fp-int-min-max.ll
    M llvm/test/CodeGen/AMDGPU/div_i128.ll
    M llvm/test/CodeGen/AMDGPU/divergence-driven-trunc-to-i1.ll
    M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll
    M llvm/test/CodeGen/AMDGPU/rem_i128.ll
    M llvm/test/CodeGen/NVPTX/i128.ll
    M llvm/test/CodeGen/RISCV/pr84653_pr85190.ll
    M llvm/test/CodeGen/SystemZ/pr60413.ll
    M llvm/test/CodeGen/VE/Scalar/max.ll
    M llvm/test/CodeGen/VE/Scalar/min.ll
    M llvm/test/CodeGen/X86/combine-pmadd.ll
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-signed.ll
    M llvm/test/CodeGen/X86/pr64589.ll
    M llvm/test/CodeGen/X86/vector-compare-all_of.ll
    M llvm/test/CodeGen/X86/vector-compare-any_of.ll

  Log Message:
  -----------
  [DAGCombiner] Freeze maybe poison operands when folding select to logic (#84924)

Just like for regular IR we need to treat SELECT as conditionally
blocking poison in SelectionDAG. So (unless the condition itself is
poison) the result is only poison if the selected true/false value is
poison.
Thus, when doing DAG combines that turn SELECT into arithmetic/logical
operations (e.g. AND/OR) we need to make sure that the new operations
aren't more poisonous. One way to do that is to use FREEZE to make
sure the operands aren't posion.

This patch aims at fixing the kind of miscompiles reported in
  https://github.com/llvm/llvm-project/issues/84653
and
  https://github.com/llvm/llvm-project/issues/85190

Solution is to make sure that we insert FREEZE, if needed to make
the fold sound, when using the foldBoolSelectToLogic and
foldVSelectToSignBitSplatMask DAG combines.


  Commit: 5ea38b86a3011b31f2b2a0de330e32971de4a067
      https://github.com/llvm/llvm-project/commit/5ea38b86a3011b31f2b2a0de330e32971de4a067
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/utils/lit/tests/Inputs/shtest-env/env-calls-env.txt

  Log Message:
  -----------
  [lit][NFC] Avoid unintended -EMPTY suffix in check prefix (#99690)

FileCheck has special handline for the `-EMPTY` suffix, that should
match empty lines. Overloading the suffix can be a source of confusion
when reading tests. Additionally, the current implementation seems to
match the following expressions, which appears to be a bug in FileCheck.


  Commit: e9709899db7d4a8b1c36475e90e4a934335f3d95
      https://github.com/llvm/llvm-project/commit/e9709899db7d4a8b1c36475e90e4a934335f3d95
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M clang/lib/Sema/SemaOpenMP.cpp

  Log Message:
  -----------
  [clang][OpenMP] Avoid names that hide existing variables, NFC


  Commit: a5447613de6ce572e5b5e71821a1cb0d3ee890f3
      https://github.com/llvm/llvm-project/commit/a5447613de6ce572e5b5e71821a1cb0d3ee890f3
  Author: Michael Klemm <michael.klemm at amd.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M flang/runtime/CMakeLists.txt

  Log Message:
  -----------
  [Flang][runtime] Add dependency to build FortranRuntime after flang-new (#99737)

Makefile-based builds did not have proper dependencies to built the
FortranRuntime target after Flang new is available. This PR introduces a
dependency to ensure that this is the case. Relates to PR #95388.

---------

Co-authored-by: Michael Kruse <github at meinersbur.de>


  Commit: 9da221d15ff7baa786031a855f1aa40de63dd8cb
      https://github.com/llvm/llvm-project/commit/9da221d15ff7baa786031a855f1aa40de63dd8cb
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/gather-extractelements-different-bbs.ll

  Log Message:
  -----------
  [SLP][NFC]Remove incorrect attribure from the test, NFC.


  Commit: d7e185cca98411e82655feecc297906cb7ed0850
      https://github.com/llvm/llvm-project/commit/d7e185cca98411e82655feecc297906cb7ed0850
  Author: Pranav Bhandarkar <pranav.bhandarkar at amd.com>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/omptarget-depend.mlir
    A offload/test/offloading/fortran/target-depend.f90

  Log Message:
  -----------
  [OMPIRBuilder] - Handle dependencies in `createTarget` (#93977)

This patch handles dependencies specified by the `depend` clause on an
OpenMP target construct. It does this much the same way clang does it by
materializing an OpenMP `task` that is tagged with the dependencies.

The following functions are relevant to this patch -
1) `createTarget` - This function itself is largely unchanged except
that it now accepts a vector of `DependData` objects that it simply
forwards to `emitTargetCall`
2) `emitTargetCall` - This function has changed now to check if an outer
target-task needs to be materialized (i.e if `target` construct has
`nowait` or has `depend` clause). If yes, it calls `emitTargetTask` to
do all the heavy lifting for creating and dispatching the task.
3) `emitTargetTask` - Bulk of the change is here. See the large comment
explaining what it does at the beginning of this function


  Commit: 4010ddf780d90c42877c9ab8d28b7e084cfe197e
      https://github.com/llvm/llvm-project/commit/4010ddf780d90c42877c9ab8d28b7e084cfe197e
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M lld/test/ELF/aarch64-cortex-a53-843419-abs-mapsyms.s
    M lld/test/ELF/aarch64-gnu-ifunc.s
    M lld/test/ELF/aarch64-reloc-pauth.s
    M lld/test/ELF/aarch64-thunk-script.s
    M lld/test/ELF/basic-aarch64.s
    M lld/test/ELF/pack-dyn-relocs.s
    M llvm/include/llvm/MC/MCContext.h
    M llvm/lib/MC/MCContext.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
    M llvm/test/CodeGen/AArch64/callbr-asm-obj-file.ll
    M llvm/test/CodeGen/AArch64/inlineasm-ldr-pseudo.ll
    M llvm/test/DebugInfo/Symbolize/ELF/aarch64-mapping-symbol.s
    M llvm/test/MC/AArch64/CheckDataSymbol.s
    M llvm/test/MC/AArch64/mapping-across-sections.s
    M llvm/test/MC/AArch64/mapping-within-section.s
    M llvm/test/MC/AArch64/size-directive.s
    M llvm/test/MC/ELF/AArch64/cfi.s
    M llvm/test/tools/llvm-objdump/ELF/AArch64/elf-aarch64-mapping-symbols.test

  Log Message:
  -----------
  [MC,AArch64] Create mapping symbols with non-unique names

Add `createLocalSymbol` to create a local, non-temporary symbol.
Different from `createRenamableSymbol`, the `Used` bit is ignored,
therefore multiple local symbols might share the same name.

Utilizing `createLocalSymbol` in AArch64 allows for efficient mapping
symbol creation with non-unique names, saving .strtab space.
The behavior matches GNU assembler.

Pull Request: https://github.com/llvm/llvm-project/pull/99836


  Commit: db2a337dda76f461b4698d82217e5454beb5df5c
      https://github.com/llvm/llvm-project/commit/db2a337dda76f461b4698d82217e5454beb5df5c
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    R a-abfdec1d.o.tmp
    M bolt/docs/OptimizingClang.md
    M bolt/docs/generate_doc.py
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Passes/AsmDump.cpp
    M bolt/lib/Rewrite/BinaryPassManager.cpp
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    M bolt/test/AArch64/update-debug-reloc.test
    M bolt/test/AArch64/veneer-gold.s
    M bolt/test/X86/dwarf5-df-types-modify-dwo-name-mixed.test
    M bolt/test/X86/dwarf5-one-loclists-two-bases.test
    M bolt/test/X86/dwarf5-two-loclists.test
    M bolt/test/X86/dwarf5-two-rnglists.test
    M bolt/test/perf2bolt/lit.local.cfg
    M clang-tools-extra/clangd/IncludeCleaner.cpp
    M clang-tools-extra/clangd/unittests/IncludeCleanerTests.cpp
    M clang-tools-extra/include-cleaner/lib/Analysis.cpp
    M clang-tools-extra/include-cleaner/unittests/AnalysisTest.cpp
    M clang/cmake/caches/Fuchsia.cmake
    M clang/docs/MSVCCompatibility.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/arm_neon.td
    M clang/include/clang/Basic/arm_neon_incl.td
    M clang/lib/AST/Interp/Boolean.h
    M clang/lib/AST/Interp/Compiler.cpp
    M clang/lib/AST/Interp/Disasm.cpp
    M clang/lib/AST/Interp/EvalEmitter.cpp
    M clang/lib/AST/Interp/EvaluationResult.cpp
    M clang/lib/AST/Interp/Floating.h
    M clang/lib/AST/Interp/FunctionPointer.h
    M clang/lib/AST/Interp/Integral.h
    M clang/lib/AST/Interp/IntegralAP.h
    M clang/lib/AST/Interp/Interp.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/MemberPointer.cpp
    M clang/lib/AST/Interp/MemberPointer.h
    M clang/lib/AST/Interp/Opcodes.td
    M clang/lib/AST/Interp/Pointer.cpp
    M clang/lib/AST/Interp/Pointer.h
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Headers/prfchwintrin.h
    M clang/lib/Parse/ParseAST.cpp
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Sema/SemaAvailability.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp
    M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
    A clang/test/AST/Interp/codegen.cpp
    M clang/test/AST/Interp/cxx11.cpp
    M clang/test/AST/Interp/new-delete.cpp
    M clang/test/AST/ast-dump-ctad-alias.cpp
    M clang/test/Analysis/out-of-bounds-diagnostics.c
    M clang/test/CXX/expr/expr.unary/expr.unary.op/p4.cpp
    M clang/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.call/p3-0x.cpp
    M clang/test/CodeGen/attr-target-x86.c
    A clang/test/CodeGenCXX/ptrauth-global-constant-initializers.cpp
    M clang/test/Driver/fpatchable-function-entry.c
    M clang/test/Driver/gpu-libc-headers.c
    M clang/test/Preprocessor/embed_weird.cpp
    A clang/test/Sema/aarch64-neon-without-target-feature.cpp
    M clang/test/Sema/patchable-function-entry-attr.cpp
    M clang/test/SemaCXX/builtin_vectorelements.cpp
    M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
    A clang/test/SemaTemplate/alias-template-deprecated.cpp
    M clang/test/SemaTemplate/deduction-guide.cpp
    M clang/tools/driver/cc1as_main.cpp
    M clang/unittests/AST/Interp/toAPValue.cpp
    M clang/unittests/Analysis/FlowSensitive/DataflowEnvironmentTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    M clang/unittests/Support/TimeProfilerTest.cpp
    M clang/utils/TableGen/NeonEmitter.cpp
    M compiler-rt/lib/asan/asan_interceptors.cpp
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/aarch64/sme-libc-mem-routines.S
    M compiler-rt/lib/builtins/aarch64/sme-libc-routines.c
    M compiler-rt/lib/builtins/cpu_model/x86.c
    A compiler-rt/lib/builtins/riscv/feature_bits.c
    M compiler-rt/lib/lsan/lsan_interceptors.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_procmaps_bsd.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_printer.cpp
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/DirectivesCommon.h
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/lib/Optimizer/CodeGen/PreCGRewrite.cpp
    M flang/runtime/CMakeLists.txt
    M flang/runtime/derived.cpp
    M flang/test/Fir/declare-codegen.fir
    A flang/test/Lower/HLFIR/calls-poly-to-nonpoly.f90
    A flang/test/Lower/OpenMP/Todo/atomic-character.f90
    A flang/test/Lower/OpenMP/Todo/atomic-complex.f90
    M flang/test/Lower/OpenMP/atomic-read.f90
    A flang/test/Lower/OpenMP/lastprivate-allocatable.f90
    M libc/benchmarks/gpu/CMakeLists.txt
    M libc/benchmarks/gpu/LibcGpuBenchmark.cpp
    M libc/benchmarks/gpu/LibcGpuBenchmark.h
    M libc/config/config.json
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/darwin/x86_64/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/riscv/headers.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/configure.rst
    M libc/docs/dev/undefined_behavior.rst
    M libc/docs/math/index.rst
    M libc/include/assert.h.def
    M libc/include/llvm-libc-types/fsblkcnt_t.h
    M libc/include/llvm-libc-types/fsfilcnt_t.h
    M libc/spec/llvm_libc_ext.td
    M libc/spec/posix.td
    M libc/spec/stdc.td
    M libc/src/__support/FPUtil/BasicOperations.h
    M libc/src/__support/FPUtil/CMakeLists.txt
    M libc/src/__support/FPUtil/generic/FMA.h
    M libc/src/__support/FPUtil/generic/add_sub.h
    M libc/src/__support/FPUtil/generic/div.h
    M libc/src/__support/FPUtil/generic/mul.h
    M libc/src/__support/File/file.cpp
    M libc/src/__support/File/file.h
    M libc/src/__support/HashTable/randomness.h
    M libc/src/__support/OSUtil/CMakeLists.txt
    M libc/src/__support/OSUtil/linux/CMakeLists.txt
    M libc/src/__support/OSUtil/linux/fcntl.cpp
    A libc/src/__support/OSUtil/linux/pid.cpp
    A libc/src/__support/OSUtil/pid.h
    M libc/src/__support/libc_assert.h
    M libc/src/__support/threads/CMakeLists.txt
    M libc/src/__support/threads/linux/CMakeLists.txt
    M libc/src/__support/threads/linux/raw_mutex.h
    M libc/src/__support/threads/linux/rwlock.h
    M libc/src/__support/threads/linux/thread.cpp
    M libc/src/__support/threads/thread.h
    A libc/src/__support/threads/tid.h
    M libc/src/math/CMakeLists.txt
    M libc/src/math/docs/add_math_function.md
    A libc/src/math/dsqrtf128.h
    A libc/src/math/dsqrtl.h
    A libc/src/math/fsqrt.h
    A libc/src/math/fsqrtf128.h
    A libc/src/math/fsqrtl.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/dsqrtf128.cpp
    A libc/src/math/generic/dsqrtl.cpp
    A libc/src/math/generic/fsqrt.cpp
    A libc/src/math/generic/fsqrtf128.cpp
    A libc/src/math/generic/fsqrtl.cpp
    M libc/src/stdio/fopencookie.cpp
    M libc/src/sys/auxv/linux/getauxval.cpp
    M libc/src/sys/epoll/linux/epoll_pwait2.cpp
    M libc/src/sys/stat/linux/kernel_statx.h
    M libc/src/unistd/CMakeLists.txt
    M libc/src/unistd/getpid.h
    A libc/src/unistd/gettid.cpp
    A libc/src/unistd/gettid.h
    M libc/src/unistd/linux/CMakeLists.txt
    M libc/src/unistd/linux/fork.cpp
    M libc/src/unistd/linux/getpid.cpp
    M libc/startup/linux/CMakeLists.txt
    M libc/startup/linux/do_start.cpp
    M libc/test/integration/src/unistd/CMakeLists.txt
    M libc/test/integration/src/unistd/fork_test.cpp
    M libc/test/src/__support/File/platform_file_test.cpp
    M libc/test/src/__support/blockstore_test.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/dsqrtl_test.cpp
    A libc/test/src/math/fsqrt_test.cpp
    A libc/test/src/math/fsqrtl_test.cpp
    M libc/test/src/math/performance_testing/CMakeLists.txt
    M libc/test/src/math/smoke/AddTest.h
    M libc/test/src/math/smoke/CMakeLists.txt
    M libc/test/src/math/smoke/DivTest.h
    M libc/test/src/math/smoke/MulTest.h
    M libc/test/src/math/smoke/SubTest.h
    A libc/test/src/math/smoke/dsqrtf128_test.cpp
    A libc/test/src/math/smoke/dsqrtl_test.cpp
    A libc/test/src/math/smoke/fsqrt_test.cpp
    A libc/test/src/math/smoke/fsqrtf128_test.cpp
    A libc/test/src/math/smoke/fsqrtl_test.cpp
    M libc/test/src/sys/epoll/linux/epoll_create_test.cpp
    M libc/test/src/sys/statvfs/linux/fstatvfs_test.cpp
    M libc/test/src/sys/statvfs/linux/statvfs_test.cpp
    M libc/test/src/unistd/CMakeLists.txt
    A libc/test/src/unistd/gettid_test.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.cpp
    M libc/utils/gpu/server/rpc_server.cpp
    M libclc/generic/lib/common/sign.cl
    M libcxx/docs/ImplementationDefinedBehavior.rst
    M libcxx/docs/Status/Cxx17.rst
    M libcxx/docs/Status/Cxx17Papers.csv
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/docs/Status/FormatPaper.csv
    A libcxx/docs/Status/SpecialMath.rst
    A libcxx/docs/Status/SpecialMathProjects.csv
    M libcxx/docs/index.rst
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__chrono/convert_to_tm.h
    M libcxx/include/__chrono/formatter.h
    M libcxx/include/__chrono/ostream.h
    M libcxx/include/__configuration/abi.h
    A libcxx/include/__math/special_functions.h
    M libcxx/include/__memory/unique_ptr.h
    M libcxx/include/__type_traits/datasizeof.h
    M libcxx/include/__utility/pair.h
    M libcxx/include/chrono
    M libcxx/include/cmath
    M libcxx/include/memory
    M libcxx/include/module.modulemap
    M libcxx/include/optional
    M libcxx/include/vector
    M libcxx/modules/std/cmath.inc
    M libcxx/test/libcxx/utilities/utility/pairs/pairs.pair/abi.trivial_copy_move.pass.cpp
    M libcxx/test/libcxx/utilities/utility/pairs/pairs.pair/abi.trivially_copyable.compile.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.capacity/shrink_to_fit.pass.cpp
    A libcxx/test/std/numerics/c.math/hermite.pass.cpp
    A libcxx/test/std/time/time.syn/formatter.zoned_time.pass.cpp
    M libcxx/test/std/time/time.zone/time.zone.zonedtime/test_offset_time_zone.h
    A libcxx/test/std/time/time.zone/time.zone.zonedtime/time.zone.zonedtime.nonmembers/ostream.pass.cpp
    A libcxx/test/std/utilities/memory/unique.ptr/noexcept_operator_star.compile.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference_const.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference_const_rvalue.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference_rvalue.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/op_arrow.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/op_arrow_const.pass.cpp
    M libcxx/test/std/utilities/smartptr/unique.ptr/unique.ptr.class/unique.ptr.observers/dereference.single.pass.cpp
    M libcxx/utils/libcxx/test/modules.py
    M lld/COFF/Symbols.h
    M lld/ELF/Arch/RISCV.cpp
    M lld/ELF/ScriptLexer.cpp
    M lld/ELF/ScriptLexer.h
    M lld/ELF/ScriptParser.cpp
    M lld/MachO/ObjC.cpp
    M lld/MachO/Writer.cpp
    M lld/test/ELF/aarch64-cortex-a53-843419-abs-mapsyms.s
    M lld/test/ELF/aarch64-gnu-ifunc.s
    M lld/test/ELF/aarch64-reloc-pauth.s
    M lld/test/ELF/aarch64-thunk-script.s
    M lld/test/ELF/basic-aarch64.s
    M lld/test/ELF/defsym.s
    M lld/test/ELF/linkerscript/custom-section-type.s
    M lld/test/ELF/pack-dyn-relocs.s
    A lld/test/MachO/objc-category-merging-erase-objc-name-test.s
    M lld/test/MachO/reproduce-thin-archive-objc.s
    M lldb/source/Host/windows/Host.cpp
    M lldb/test/API/functionalities/gdb_remote_client/TestPlatformKill.py
    M llvm/docs/CommandGuide/lit.rst
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/include/llvm/CodeGen/GlobalISel/InstructionSelect.h
    M llvm/include/llvm/CodeGen/Passes.h
    M llvm/include/llvm/CodeGen/RegAllocCommon.h
    M llvm/include/llvm/CodeGen/RegAllocFast.h
    M llvm/include/llvm/CodeGen/RuntimeLibcallUtil.h
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/MemoryFlags.h
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/include/llvm/IR/RuntimeLibcalls.h
    M llvm/include/llvm/MC/MCAsmBackend.h
    M llvm/include/llvm/MC/MCAssembler.h
    M llvm/include/llvm/MC/MCContext.h
    M llvm/include/llvm/MC/MCMachObjectWriter.h
    M llvm/include/llvm/MC/MCSPIRVObjectWriter.h
    M llvm/include/llvm/MC/MCSection.h
    M llvm/include/llvm/MC/MCSymbol.h
    M llvm/include/llvm/MC/MCSymbolMachO.h
    M llvm/include/llvm/MC/MCWinCOFFObjectWriter.h
    M llvm/include/llvm/MC/MCWinCOFFStreamer.h
    M llvm/include/llvm/MC/TargetRegistry.h
    M llvm/include/llvm/Passes/PassBuilder.h
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/include/llvm/Support/TimeProfiler.h
    M llvm/include/llvm/Support/raw_socket_stream.h
    M llvm/include/llvm/TargetParser/RISCVTargetParser.h
    M llvm/include/llvm/TargetParser/X86TargetParser.def
    M llvm/lib/Analysis/Loads.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfCFIException.cpp
    M llvm/lib/CodeGen/BranchFolding.cpp
    M llvm/lib/CodeGen/CFGuardLongjmp.cpp
    M llvm/lib/CodeGen/EHContGuardCatchret.cpp
    M llvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp
    M llvm/lib/CodeGen/KCFI.cpp
    M llvm/lib/CodeGen/LLVMTargetMachine.cpp
    M llvm/lib/CodeGen/RegAllocBase.h
    M llvm/lib/CodeGen/RegAllocBasic.cpp
    M llvm/lib/CodeGen/RegAllocFast.cpp
    M llvm/lib/CodeGen/RegAllocGreedy.cpp
    M llvm/lib/CodeGen/RegAllocGreedy.h
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/DWARFLinker/Classic/DWARFStreamer.cpp
    M llvm/lib/DWARFLinker/Parallel/DWARFEmitterImpl.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/CMakeLists.txt
    M llvm/lib/IR/Metadata.cpp
    M llvm/lib/IR/RuntimeLibcalls.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/MC/MCAsmStreamer.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCContext.cpp
    M llvm/lib/MC/MCMachOStreamer.cpp
    M llvm/lib/MC/MCObjectFileInfo.cpp
    M llvm/lib/MC/MCParser/AsmParser.cpp
    M llvm/lib/MC/MCSection.cpp
    M llvm/lib/MC/MCSectionXCOFF.cpp
    M llvm/lib/MC/MCWinCOFFStreamer.cpp
    M llvm/lib/MC/MCXCOFFStreamer.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/MC/SPIRVObjectWriter.cpp
    M llvm/lib/MC/TargetRegistry.cpp
    M llvm/lib/MC/WinCOFFObjectWriter.cpp
    M llvm/lib/MC/XCOFFObjectWriter.cpp
    M llvm/lib/Object/COFFImportFile.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/Support/raw_socket_stream.cpp
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64CallingConvention.td
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.h
    M llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.h
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFStreamer.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFStreamer.h
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUAsmBackend.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
    M llvm/lib/Target/AMDGPU/MIMGInstructions.td
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/lib/Target/ARC/MCTargetDesc/ARCMCTargetDesc.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.h
    M llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFStreamer.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRAsmBackend.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRMCTargetDesc.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCTargetDesc.cpp
    M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCELFStreamer.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/M68k/M68kFrameLowering.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCTargetDesc.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVMCTargetDesc.cpp
    M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp
    M llvm/lib/Target/VE/MCTargetDesc/VEMCTargetDesc.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.h
    M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFStreamer.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFTargetStreamer.cpp
    M llvm/lib/Target/X86/X86AsmPrinter.cpp
    M llvm/lib/Target/X86/X86FrameLowering.cpp
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86IndirectBranchTracking.cpp
    M llvm/lib/Target/X86/X86MCInstLower.cpp
    M llvm/lib/Target/X86/X86ReturnThunks.cpp
    M llvm/lib/Target/X86/X86TargetMachine.cpp
    M llvm/lib/Target/XCore/MCTargetDesc/XCoreMCTargetDesc.cpp
    M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCTargetDesc.cpp
    M llvm/lib/TargetParser/RISCVTargetParser.cpp
    M llvm/lib/TargetParser/X86TargetParser.cpp
    M llvm/lib/Transforms/IPO/HotColdSplitting.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    M llvm/lib/Transforms/Scalar/StraightLineStrengthReduce.cpp
    M llvm/lib/Transforms/Utils/LoopUnroll.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Analysis/CostModel/RISCV/arith-fp.ll
    M llvm/test/Analysis/CostModel/RISCV/rvv-intrinsics.ll
    M llvm/test/CodeGen/AArch64/callbr-asm-obj-file.ll
    M llvm/test/CodeGen/AArch64/cmp-chains.ll
    M llvm/test/CodeGen/AArch64/cmp-select-sign.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-predicated-scalable.ll
    M llvm/test/CodeGen/AArch64/fast-isel-select.ll
    M llvm/test/CodeGen/AArch64/fpclamptosat_vec.ll
    M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll
    M llvm/test/CodeGen/AArch64/inlineasm-ldr-pseudo.ll
    M llvm/test/CodeGen/AArch64/intrinsic-cttz-elts-sve.ll
    A llvm/test/CodeGen/AArch64/preserve_nonecc_varargs_aapcs.ll
    A llvm/test/CodeGen/AArch64/preserve_nonecc_varargs_darwin.ll
    A llvm/test/CodeGen/AArch64/preserve_nonecc_varargs_win64.ll
    M llvm/test/CodeGen/AArch64/qmovn.ll
    M llvm/test/CodeGen/AArch64/sve-fp-int-min-max.ll
    A llvm/test/CodeGen/AArch64/sve-stack-frame-layout.ll
    M llvm/test/CodeGen/AMDGPU/div_i128.ll
    M llvm/test/CodeGen/AMDGPU/divergence-driven-trunc-to-i1.ll
    M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.noret.ll
    M llvm/test/CodeGen/AMDGPU/rem_i128.ll
    M llvm/test/CodeGen/AMDGPU/resource-optimization-remarks.ll
    M llvm/test/CodeGen/LoongArch/andn-icmp.ll
    A llvm/test/CodeGen/NVPTX/addr-mode.ll
    M llvm/test/CodeGen/NVPTX/i128.ll
    A llvm/test/CodeGen/PowerPC/patchable-function-entry.ll
    M llvm/test/CodeGen/RISCV/double-convert.ll
    M llvm/test/CodeGen/RISCV/double-round-conv-sat.ll
    M llvm/test/CodeGen/RISCV/pr84653_pr85190.ll
    M llvm/test/CodeGen/SystemZ/pr60413.ll
    M llvm/test/CodeGen/VE/Scalar/max.ll
    M llvm/test/CodeGen/VE/Scalar/min.ll
    M llvm/test/CodeGen/X86/combine-pmadd.ll
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-signed.ll
    M llvm/test/CodeGen/X86/pmul.ll
    M llvm/test/CodeGen/X86/pr64589.ll
    M llvm/test/CodeGen/X86/vector-compare-all_of.ll
    M llvm/test/CodeGen/X86/vector-compare-any_of.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-8.ll
    M llvm/test/CodeGen/X86/widen_bitcnt.ll
    M llvm/test/DebugInfo/Symbolize/ELF/aarch64-mapping-symbol.s
    M llvm/test/DebugInfo/XCOFF/empty.ll
    M llvm/test/DebugInfo/XCOFF/explicit-section.ll
    M llvm/test/DebugInfo/XCOFF/function-sections.ll
    M llvm/test/Instrumentation/InstrProfiling/runtime-counter-relocation.ll
    M llvm/test/MC/AArch64/CheckDataSymbol.s
    M llvm/test/MC/AArch64/mapping-across-sections.s
    M llvm/test/MC/AArch64/mapping-within-section.s
    M llvm/test/MC/AArch64/size-directive.s
    M llvm/test/MC/AsmParser/directive_abort.s
    M llvm/test/MC/ELF/AArch64/cfi.s
    M llvm/test/MC/X86/x86-32-coverage.s
    M llvm/test/TableGen/riscv-target-def.td
    M llvm/test/Transforms/DeadStoreElimination/memoryssa-scan-limit.ll
    M llvm/test/Transforms/GVN/condprop.ll
    A llvm/test/Transforms/HotColdSplit/pr40056.ll
    M llvm/test/Transforms/InstCombine/select-binop-cmp.ll
    M llvm/test/Transforms/InstCombine/select.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/interleaved_cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/pr73894.ll
    M llvm/test/Transforms/LoopVectorize/ARM/interleaved_cost.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-interleaved-cost.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/vplan-force-tail-with-evl.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/SystemZ/load-scalarization-cost-0.ll
    M llvm/test/Transforms/LoopVectorize/X86/divs-with-tail-folding.ll
    A llvm/test/Transforms/LoopVectorize/X86/predicate-switch.ll
    M llvm/test/Transforms/LoopVectorize/X86/x86-predication.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-scalable-vf1.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
    M llvm/test/Transforms/LoopVectorize/if-pred-non-void.ll
    M llvm/test/Transforms/LoopVectorize/interleave-and-scalarize-only.ll
    M llvm/test/Transforms/LoopVectorize/load-deref-pred-align.ll
    M llvm/test/Transforms/LoopVectorize/pr45679-fold-tail-by-masking.ll
    A llvm/test/Transforms/LoopVectorize/predicate-switch.ll
    M llvm/test/Transforms/LoopVectorize/select-cmp-multiuse.ll
    M llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll
    M llvm/test/Transforms/SLPVectorizer/X86/gather-extractelements-different-bbs.ll
    M llvm/test/Transforms/SeparateConstOffsetFromGEP/NVPTX/split-gep.ll
    M llvm/test/Transforms/VectorCombine/RISCV/vpintrin-scalarization.ll
    M llvm/test/tools/llvm-dlltool/arm64ec.test
    M llvm/test/tools/llvm-objdump/ELF/AArch64/elf-aarch64-mapping-symbols.test
    A llvm/test/tools/llvm-profgen/Inputs/cmov_3.perfbin
    A llvm/test/tools/llvm-profgen/Inputs/cmov_3.perfscript
    A llvm/test/tools/llvm-profgen/Inputs/ip-duplication.perfscript
    A llvm/test/tools/llvm-profgen/Inputs/noprobe-skid.perfscript
    A llvm/test/tools/llvm-profgen/event-filtering.test
    A llvm/test/tools/llvm-profgen/iponly-nodupfactor.test
    A llvm/test/tools/llvm-profgen/iponly.test
    A llvm/test/tools/llvm-profgen/period-scaling.test
    M llvm/tools/llvm-dwp/llvm-dwp.cpp
    M llvm/tools/llvm-exegesis/lib/SnippetFile.cpp
    M llvm/tools/llvm-mc-assemble-fuzzer/llvm-mc-assemble-fuzzer.cpp
    M llvm/tools/llvm-mc/llvm-mc.cpp
    M llvm/tools/llvm-mca/CodeRegionGenerator.cpp
    M llvm/tools/llvm-ml/llvm-ml.cpp
    M llvm/tools/llvm-profgen/PerfReader.cpp
    M llvm/tools/llvm-profgen/ProfileGenerator.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFExpressionCopyBytesTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DwarfGenerator.cpp
    M llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
    A llvm/unittests/ExecutionEngine/Orc/MemoryFlagsTest.cpp
    M llvm/unittests/MC/DwarfLineTableHeaders.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/Support/raw_socket_stream_test.cpp
    M llvm/utils/TableGen/RISCVTargetDefEmitter.cpp
    M llvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/ExecutionEngine/Orc/BUILD.gn
    M llvm/utils/lit/lit/cl_arguments.py
    M llvm/utils/lit/lit/main.py
    M llvm/utils/lit/tests/Inputs/shtest-env/env-calls-env.txt
    A llvm/utils/lit/tests/Inputs/time-tests/a.txt
    A llvm/utils/lit/tests/Inputs/time-tests/lit.cfg
    A llvm/utils/lit/tests/time-tests.py
    M mlir/docs/Canonicalization.md
    M mlir/include/mlir/IR/BuiltinTypes.h
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/include/mlir/IR/CommonTypeConstraints.td
    M mlir/lib/Bytecode/Writer/BytecodeWriter.cpp
    M mlir/lib/Target/LLVM/ROCDL/Target.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Dialect/Vector/vector-transfer-collapse-inner-most-dims.mlir
    M mlir/test/Dialect/Vector/vector-transfer-flatten.mlir
    A mlir/test/Target/LLVMIR/omptarget-depend.mlir
    M mlir/test/Transforms/test-legalize-type-conversion.mlir
    A offload/test/offloading/fortran/target-depend.f90
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  rebase after $x.1 => $x

Created using spr 1.3.5-bogner


Compare: https://github.com/llvm/llvm-project/compare/49f040dcf034...db2a337dda76

To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list