[all-commits] [llvm/llvm-project] 94ca85: [clang-tidy] Add support for determining constness...

Wang Pengcheng via All-commits all-commits at lists.llvm.org
Tue Mar 5 22:44:39 PST 2024


  Branch: refs/heads/users/wangpc-pp/spr/clangriscv-add-assumptions-to-vsetvlivsetvlimax
  Home:   https://github.com/llvm/llvm-project
  Commit: 94ca854d3c874322b1d4b5606c5762adcd3b8e05
      https://github.com/llvm/llvm-project/commit/94ca854d3c874322b1d4b5606c5762adcd3b8e05
  Author: Clement Courbet <courbet at google.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitialization.cpp
    M clang-tools-extra/clang-tidy/utils/DeclRefExprUtils.cpp
    M clang-tools-extra/clang-tidy/utils/DeclRefExprUtils.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-copy-initialization.cpp
    M clang-tools-extra/unittests/clang-tidy/DeclRefExprUtilsTest.cpp

  Log Message:
  -----------
  [clang-tidy] Add support for determining constness of more expressions. (#82617)

This uses a more systematic approach for determining whcich
`DeclRefExpr`s mutate the underlying object: Instead of using a few
matchers, we walk up the AST until we find a parent that we can prove
cannot change the underlying object.

This allows us to handle most address taking and dereference, bindings
to value and const& variables, and track constness of pointee (see
changes in DeclRefExprUtilsTest.cpp).

This allows supporting more patterns in
`performance-unnecessary-copy-initialization`.

Those two patterns are relatively common:

```
const auto e = (*vector_ptr)[i]
```

and

```
const auto e = vector_ptr->at(i);
```

In our codebase, we have around 25% additional findings from
`performance-unnecessary-copy-initialization` with this change. I did
not see any additional false positives.


  Commit: 60677110a2e0b7ba9f5bf2fcfc1b3f8888eb7f58
      https://github.com/llvm/llvm-project/commit/60677110a2e0b7ba9f5bf2fcfc1b3f8888eb7f58
  Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/include/llvm/IR/DebugInfo.h
    M llvm/lib/IR/DebugInfo.cpp

  Log Message:
  -----------
  [RemoveDIs] Fix DPLabel crash reported in #82854


  Commit: 3356818eed3224c50012f8ed2bfa046f2bc8e154
      https://github.com/llvm/llvm-project/commit/3356818eed3224c50012f8ed2bfa046f2bc8e154
  Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/include/llvm/IR/DebugProgramInstruction.h
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/DebugProgramInstruction.cpp

  Log Message:
  -----------
  Reapply [RemoveDIs] Enable DPLabels conversion [3b/3] (#82639)

Enables conversion between llvm.dbg.label and DPLabel.


  Commit: cb2dd0282cf2f5dfc58d5a060dd2aa73c3b4c08e
      https://github.com/llvm/llvm-project/commit/cb2dd0282cf2f5dfc58d5a060dd2aa73c3b4c08e
  Author: Nathan Sidwell <nathan at acm.org>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/lib/CodeGen/CGRecordLayoutBuilder.cpp

  Log Message:
  -----------
  [clang][NFC] constify or staticify some CGRecordLowering fns (#82874)

Some CGRecordLowering functions either do not need the object or do not mutate it.  Thus marking static or const as appropriate.


  Commit: 8cfb71613c452dd45a84a74affe8464bfd33de02
      https://github.com/llvm/llvm-project/commit/8cfb71613c452dd45a84a74affe8464bfd33de02
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M mlir/lib/Dialect/ArmSME/Transforms/VectorLegalization.cpp
    M mlir/test/Dialect/ArmSME/vector-legalization.mlir

  Log Message:
  -----------
  [mlir][ArmSME] Replace use of `isa` with `isa_and_present` (#82798)

`op` can be null here, in which case this should just return a null
value back.


  Commit: e521752c04a479e3751003645a728667f3199d24
      https://github.com/llvm/llvm-project/commit/e521752c04a479e3751003645a728667f3199d24
  Author: Michael Halkenhäuser <MichaelGerald.Halkenhauser at amd.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M openmp/libomptarget/include/OpenMP/OMPT/Interface.h
    M openmp/libomptarget/src/OpenMP/OMPT/Callback.cpp
    M openmp/libomptarget/src/device.cpp
    M openmp/libomptarget/test/ompt/callbacks.h
    M openmp/libomptarget/test/ompt/target_memcpy.c
    A openmp/libomptarget/test/ompt/target_memcpy_emi.c

  Log Message:
  -----------
  [OpenMP][OMPT] Add OMPT callback for device data exchange 'Device-to-Device' (#81991)

Since there's no `ompt_target_data_transfer_tofrom_device` (within
ompt_target_data_op_t enum) or something other that conveys the meaning
of inter-device data exchange we decided to indicate a Device-to-Device
transfer by using: optype == ompt_target_data_transfer_from_device (=3)

Hence, a device transfer may be identified e.g. by checking for: (optype
== 3) &&
(src_device_num < omp_get_num_devices()) &&
(dest_device_num < omp_get_num_devices())

Fixes: #66478


  Commit: a5ccf8522b96c56fc6bda54cf68a64c5d65b75cb
      https://github.com/llvm/llvm-project/commit/a5ccf8522b96c56fc6bda54cf68a64c5d65b75cb
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/test/AST/Interp/complex.cpp

  Log Message:
  -----------
  [clang][Interp] Not all RVO call expressions are initializing

We do not necessarily prepare storage for the return value when
we are returning a complex value.


  Commit: 73f11f9579a3206608ad9a07b5793ba451676087
      https://github.com/llvm/llvm-project/commit/73f11f9579a3206608ad9a07b5793ba451676087
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M lldb/test/API/lldbtest.py

  Log Message:
  -----------
  [lldb][test] Correct results regex for Windows

On Windows the line has \r\n at the end.


  Commit: 53697a5dcdc4d83cbe0cb6d88e33c3f1bb3ea487
      https://github.com/llvm/llvm-project/commit/53697a5dcdc4d83cbe0cb6d88e33c3f1bb3ea487
  Author: Diana Picus <Diana-Magda.Picus at amd.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/unittests/Target/AMDGPU/AMDGPUUnitTests.cpp

  Log Message:
  -----------
  [AMDGPU] Refactor unit test. NFC (#82976)

I'm about to add more tests here (downstream for now).

Change-Id: Ibd5edb398f544c90e6e8b5e49b1777a407f0594a


  Commit: d0c99f4b1ddc55f3af2ee2d084bc8c97a2ab1acf
      https://github.com/llvm/llvm-project/commit/d0c99f4b1ddc55f3af2ee2d084bc8c97a2ab1acf
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M libcxx/include/__type_traits/invoke.h

  Log Message:
  -----------
  [libc++] Remove __member_pointer_traits_imp (#82081)

They aren't ever used, so they can be removed.


  Commit: d0b1fec9e1510d01dad2c9c429573eaa75f0963c
      https://github.com/llvm/llvm-project/commit/d0b1fec9e1510d01dad2c9c429573eaa75f0963c
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M lldb/test/API/functionalities/thread/state/TestThreadStates.py

  Log Message:
  -----------
  [lldb][test][Windows] Remove expected fail for a thread state test

No idea why but this is now passing (though if it randomly fails
I won't be surprised).

See https://github.com/llvm/llvm-project/issues/25034 for background
on the original expected fail.


  Commit: bb87c914fec6526fbda81991ce0d35e60040ab9f
      https://github.com/llvm/llvm-project/commit/bb87c914fec6526fbda81991ce0d35e60040ab9f
  Author: CarolineConcatto <caroline.concatto at arm.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/test/MC/AArch64/SVE/cntb-diagnostics.s
    M llvm/test/MC/AArch64/SVE/ptrue-diagnostics.s

  Log Message:
  -----------
  [AArch64][SVE]Add error message in the AsmParser for SVEPattern (#82668)

All assembly instructions that have an operand using sve_pred_enum and
mistakenly use '#' in front of it would fail without an error message.


  Commit: b4b490496ab8994fee41005471d075812bdb3a65
      https://github.com/llvm/llvm-project/commit/b4b490496ab8994fee41005471d075812bdb3a65
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp

  Log Message:
  -----------
  [RISCV] Fix insert_subvector with fixed vector type creating invalid node (#82975)

If the vector type is a fixed vector type, we convert it to a container
scalable vector type to compute its reg class. But we need to keep the
old
fixed type so we create a result node with the same type.

This code path is currently dead so I haven't been able to create a test
case
for it. But I have an upcoming patch for insert_subvector lowering that
will
exercise this.


  Commit: 954a048d0d03d874d214cbe9ce0da456a0da35d3
      https://github.com/llvm/llvm-project/commit/954a048d0d03d874d214cbe9ce0da456a0da35d3
  Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/branch-fold-dbg.ll

  Log Message:
  -----------
  [RemoveDIs] Fix SimplifyCFG behaviour to match existing behaviour (#82981)

llvm.dbg.labels are deleted in SpeculativelyExecuteBB so DPLabels should
be too.

Modify existing test to check this (NB I couldn't find a dedicated
debug-info test that checks this behaviour).


  Commit: 3d084e37ab038200df5f5ef371fdea2fcda05680
      https://github.com/llvm/llvm-project/commit/3d084e37ab038200df5f5ef371fdea2fcda05680
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-concat.ll

  Log Message:
  -----------
  [RISCV] Add tests for fixed length concat_vector. NFC

These shufflevector chains will get combined into a n-ary concat_vectors node.


  Commit: 28233408a2c8670d7d94ae1bf18a2bb5f7194c32
      https://github.com/llvm/llvm-project/commit/28233408a2c8670d7d94ae1bf18a2bb5f7194c32
  Author: Jack Styles <99514724+Stylie777 at users.noreply.github.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/Passes.h
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/lib/CodeGen/CMakeLists.txt
    M llvm/lib/CodeGen/CodeGen.cpp
    A llvm/lib/CodeGen/InitUndef.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.h
    M llvm/lib/Target/ARM/ARMBaseRegisterInfo.h
    M llvm/lib/Target/ARM/ARMInstrInfo.td
    M llvm/lib/Target/ARM/ARMSubtarget.h
    M llvm/lib/Target/RISCV/CMakeLists.txt
    M llvm/lib/Target/RISCV/RISCV.h
    M llvm/lib/Target/RISCV/RISCVInstrInfo.h
    R llvm/lib/Target/RISCV/RISCVRVVInitUndef.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.h
    M llvm/lib/Target/RISCV/RISCVSubtarget.h
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/CodeGen/ARM/O3-pipeline.ll
    M llvm/test/CodeGen/LoongArch/opt-pipeline.ll
    M llvm/test/CodeGen/PowerPC/O3-pipeline.ll
    M llvm/test/CodeGen/RISCV/O0-pipeline.ll
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll
    M llvm/test/CodeGen/RISCV/rvv/handle-noreg-with-implicit-def.mir
    M llvm/test/CodeGen/RISCV/rvv/subregister-undef-early-clobber.mir
    M llvm/test/CodeGen/RISCV/rvv/undef-earlyclobber-chain.mir
    M llvm/test/CodeGen/Thumb2/mve-intrinsics/vcaddq.ll
    M llvm/test/CodeGen/Thumb2/mve-laneinterleaving-cost.ll
    M llvm/test/CodeGen/Thumb2/mve-satmul-loops.ll
    M llvm/test/CodeGen/Thumb2/mve-vmull-splat.ll
    M llvm/test/CodeGen/X86/opt-pipeline.ll
    M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/BUILD.gn

  Log Message:
  -----------
  [CodeGen] [ARM] Make RISC-V Init Undef Pass Target Independent and add support for the ARM Architecture.  (#77770)

When using Greedy Register Allocation, there are times where
early-clobber values are ignored, and assigned the same register. This
is illeagal behaviour for these intructions. To get around this, using
Pseudo instructions for early-clobber registers gives them a definition
and allows Greedy to assign them to a different register. This then
meets the ARM Architecture Reference Manual and matches the defined
behaviour.

This patch takes the existing RISC-V patch and makes it target
independent, then adds support for the ARM Architecture. Doing this will
ensure early-clobber restraints are followed when using the ARM
Architecture. Making the pass target independent will also open up
possibility that support other architectures can be added in the future.


  Commit: af971396a9c77a57eb66fcb7eac3f671a7084680
      https://github.com/llvm/llvm-project/commit/af971396a9c77a57eb66fcb7eac3f671a7084680
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/test/SemaCXX/cxx1z-lambda-star-this.cpp

  Log Message:
  -----------
  [clang][Interp] Handle missing Lambda field initializer


  Commit: 8779cf68e80dcc0b15e8034f39e6ce18b08352b6
      https://github.com/llvm/llvm-project/commit/8779cf68e80dcc0b15e8034f39e6ce18b08352b6
  Author: Oliver Stannard <oliver.stannard at arm.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    A llvm/test/CodeGen/ARM/ldst-opt-lr-restored.ll

  Log Message:
  -----------
  Pre-commit test showing bug #80287

This test shows the bug where LR is used as a general-purpose register
on a code path where it is not spilled to the stack.


  Commit: 749384c08e042739342c88b521c8ba5dac1b9276
      https://github.com/llvm/llvm-project/commit/749384c08e042739342c88b521c8ba5dac1b9276
  Author: ostannard <oliver.stannard at arm.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMFrameLowering.cpp
    M llvm/lib/Target/ARM/ARMFrameLowering.h
    M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
    M llvm/test/CodeGen/ARM/ldst-opt-lr-restored.ll

  Log Message:
  -----------
  [ARM] Update IsRestored for LR based on all returns (#82745)

PR #75527 fixed ARMFrameLowering to set the IsRestored flag for LR based
on all of the return instructions in the function, not just one.
However, there is also code in ARMLoadStoreOptimizer which changes
return instructions, but it set IsRestored based on the one instruction
it changed, not the whole function.

The fix is to factor out the code added in #75527, and also call it from
ARMLoadStoreOptimizer if it made a change to return instructions.

Fixes #80287.


  Commit: 76dd4bc036f4709f7c28e38e5ae12ade8f07e8c5
      https://github.com/llvm/llvm-project/commit/76dd4bc036f4709f7c28e38e5ae12ade8f07e8c5
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/include/llvm/IR/Instruction.h
    M llvm/include/llvm/IR/Instructions.h
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/IR/Instructions.cpp

  Log Message:
  -----------
  [RemoveDIs] Add iterator-taking constructors and Create methods (#82778)

Part of removing debug-intrinsics from LLVM requires using iterators
whenever we insert an instruction into a block. That means we need all
instruction constructors and factory functions to have an iterator
taking option, which this patch adds.

The whole of this patch should be NFC: it's adding new flavours of
existing constructors, and plumbing those through to the Instruction
constructor that takes iterators. It's almost entirely boilerplate
copy-and-paste too.


  Commit: f290c000d87bfc72a31b151dffa2d190596ebe91
      https://github.com/llvm/llvm-project/commit/f290c000d87bfc72a31b151dffa2d190596ebe91
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/test/CodeGen/tbaa-struct.cpp

  Log Message:
  -----------
  [TBAA] Add additional bitfield tests.

Additional test for https://github.com/llvm/llvm-project/pull/82922/.


  Commit: 433f8e741e7d4a5b7dad3e078dd847efa6afee5e
      https://github.com/llvm/llvm-project/commit/433f8e741e7d4a5b7dad3e078dd847efa6afee5e
  Author: Petar Avramovic <Petar.Avramovic at amd.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineSSAUpdater.h
    M llvm/lib/CodeGen/MachineSSAUpdater.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-structurizer.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-structurizer.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-i1.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-i1.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergent-control-flow.ll

  Log Message:
  -----------
  MachineSSAUpdater: use all vreg attributes instead of reg class only (#78431)

When initializing MachineSSAUpdater save all attributes of current
virtual register and create new virtual registers with same attributes.
Now new virtual registers have same both register class or bank and LLT.
Previously new virtual registers had same register class but LLT was not
set (LLT was set to default/empty LLT).
Required by GlobalISel for AMDGPU, new 'lane mask' virtual registers
created by MachineSSAUpdater need to have both register class and LLT.

patch 4 from: https://github.com/llvm/llvm-project/pull/73337


  Commit: 58aa995baf66fffb1284ecb289dc9f02c70de4fa
      https://github.com/llvm/llvm-project/commit/58aa995baf66fffb1284ecb289dc9f02c70de4fa
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/lib/AST/Interp/Interp.h

  Log Message:
  -----------
  [clang][Interp][NFC] Fix comment typo


  Commit: a35599b9ae5e7ad924b78c65f6348e0b711bad5d
      https://github.com/llvm/llvm-project/commit/a35599b9ae5e7ad924b78c65f6348e0b711bad5d
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/lib/AST/Interp/Context.cpp
    M clang/lib/AST/Interp/InterpBuiltin.cpp
    M clang/test/AST/Interp/atomic.c

  Log Message:
  -----------
  [clang][Interp] Implement a few _is_lock_free builtins

Implementation looks similar to the one in the current interpreter.
Except for three static assertions, test/Sema/atomic-ops.c works.


  Commit: 60e7ae3f30e99423cf779c9d05513d2ae18df5aa
      https://github.com/llvm/llvm-project/commit/60e7ae3f30e99423cf779c9d05513d2ae18df5aa
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.h
    M llvm/lib/Target/AMDGPU/MIMGInstructions.td

  Log Message:
  -----------
  [AMDGPU] Only try DecoderTables for the current subtarget. NFCI. (#82992)

Speed up disassembly by only calling tryDecodeInst for DecoderTables
that make sense for the current subtarget.

This gives a 1.3x speed-up on check-llvm-mc-disassembler-amdgpu in my
Release+Asserts build.


  Commit: 96e536ecf5e6202089ee10ca81c38fbce70851d7
      https://github.com/llvm/llvm-project/commit/96e536ecf5e6202089ee10ca81c38fbce70851d7
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/DataflowValues.h

  Log Message:
  -----------
  [clang][NFC] Prefer usings over typedefs (#82920)


  Commit: c4e94633e8a48ee33115d5d3161ee142fc1c9700
      https://github.com/llvm/llvm-project/commit/c4e94633e8a48ee33115d5d3161ee142fc1c9700
  Author: Samira Bazuzi <bazuzi at google.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
    M clang/lib/Analysis/FlowSensitive/Transfer.cpp
    M clang/unittests/Analysis/FlowSensitive/TestingSupport.h
    M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp

  Log Message:
  -----------
  Revert "[clang][dataflow] Correctly handle `InitListExpr` of union type." (#82856)

Reverts llvm/llvm-project#82348, which caused crashes when analyzing
empty InitListExprs for unions, e.g.

```cc
union U {
  double double_value;
  int int_value;
};

void target() {
  U value;
  value = {};
}
```

Co-authored-by: Samira Bazuzi <bazuzi at users.noreply.github.com>


  Commit: d41615e91a108bd1ae41361be97c569691ab9ebb
      https://github.com/llvm/llvm-project/commit/d41615e91a108bd1ae41361be97c569691ab9ebb
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/DSInstructions.td

  Log Message:
  -----------
  [AMDGPU] Rename a DS class template argument. NFC.

The name hasGDS better reflects what it is used for.


  Commit: 9c5ca6b0ce2fc91561708542163fae1db88c59e8
      https://github.com/llvm/llvm-project/commit/9c5ca6b0ce2fc91561708542163fae1db88c59e8
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/test/Other/new-pm-defaults.ll
    M llvm/test/Other/new-pm-thinlto-postlink-defaults.ll
    M llvm/test/Other/new-pm-thinlto-postlink-pgo-defaults.ll
    M llvm/test/Other/new-pm-thinlto-postlink-samplepgo-defaults.ll
    M llvm/test/Other/new-pm-thinlto-prelink-defaults.ll
    M llvm/test/Other/new-pm-thinlto-prelink-pgo-defaults.ll
    M llvm/test/Other/new-pm-thinlto-prelink-samplepgo-defaults.ll

  Log Message:
  -----------
  Revert "Enable JumpTableToSwitch pass by default (#82546)"

This reverts commit 1069823ce7d154aa8ef87ae5a0fd34b527eca2a0.

This has caused second stage timeouts when building Flang on
AArch64:
https://lab.llvm.org/buildbot/#/builders/179/builds/9442


  Commit: 046682ef88a254443e8620bfd48b35bfa0a83809
      https://github.com/llvm/llvm-project/commit/046682ef88a254443e8620bfd48b35bfa0a83809
  Author: Hirofumi Nakamura <k.nakamura.hirofumi at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/include/clang/Format/Format.h
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/WhitespaceManager.cpp
    M clang/lib/Format/WhitespaceManager.h
    M clang/unittests/Format/FormatTestTableGen.cpp

  Log Message:
  -----------
  [clang-format] Add AlignConsecutiveTableGenCondOperatorColons option. (#82878)

To align colons inside TableGen !cond operators.


  Commit: 440b1743ee0c8bfb7bf0c4b503bde5ab9af88dc0
      https://github.com/llvm/llvm-project/commit/440b1743ee0c8bfb7bf0c4b503bde5ab9af88dc0
  Author: Egor Zhdan <e_zhdan at apple.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/CMakeLists.txt
    A clang/lib/Sema/SemaAPINotes.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaDeclObjC.cpp
    M clang/lib/Sema/SemaObjCProperty.cpp
    M clang/lib/Sema/SemaTemplate.cpp

  Log Message:
  -----------
  [APINotes] Upstream Sema logic to apply API Notes to decls

This upstreams more of the Clang API Notes functionality that is
currently implemented in the Apple fork:
https://github.com/apple/llvm-project/tree/next/clang/lib/APINotes

This was extracted from a larger PR:
https://github.com/llvm/llvm-project/pull/73017


  Commit: 285bff39fd283b3a9a27c06525111d8d4f474e6e
      https://github.com/llvm/llvm-project/commit/285bff39fd283b3a9a27c06525111d8d4f474e6e
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M lldb/test/API/functionalities/thread/state/TestThreadStates.py

  Log Message:
  -----------
  [lldb][test][Windows] Skip thread state test on Windows

This actually passes on Windows but I don't know how to convey
that with an xfail without clashing with the xfail for all
platforms.

At least this avoids a UPASS.


  Commit: 8ce81e5924935436d49e0b4e835fa107531505b5
      https://github.com/llvm/llvm-project/commit/8ce81e5924935436d49e0b4e835fa107531505b5
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbtest.py

  Log Message:
  -----------
  [lldb][test][Windows] Don't assert that module cache is empty

For whatever reason on Windows, it is not at this point.

The copy of unit test we used to use would ignore failures during
teardown but Python's does not.


  Commit: 668cd1ca15a8b9c60a87e5244db9c97b3ba2e624
      https://github.com/llvm/llvm-project/commit/668cd1ca15a8b9c60a87e5244db9c97b3ba2e624
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Scope.h
    M clang/lib/Sema/SemaStmt.cpp
    M clang/test/SemaOpenACC/no-branch-in-out.c
    A clang/test/SemaOpenACC/no-branch-in-out.cpp

  Log Message:
  -----------
  [OpenACC] Implement 'return' branch-out of Compute Construct (#82814)

Like with 'break'/'continue', returning out of a compute construct is
ill-formed, so this implements the diagnostic. However, unlike the
OpenMP implementation of this same diagnostic, OpenACC doesn't have a
concept of 'capture region', so this is implemented as just checking the
'scope'.


  Commit: 7c52d0c98187b55d2f513122c21daf49d88169a6
      https://github.com/llvm/llvm-project/commit/7c52d0c98187b55d2f513122c21daf49d88169a6
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/test/AST/Interp/atomic.c

  Log Message:
  -----------
  [clang][Interp] Try to atomic.c on Mac

This test was broken on MacOS, see the discussion in
https://github.com/llvm/llvm-project/commit/a35599b9ae5e7ad924b78c65f6348e0b711bad5d


  Commit: ce78dfa4f0470d79979818e322e76050fb082f4e
      https://github.com/llvm/llvm-project/commit/ce78dfa4f0470d79979818e322e76050fb082f4e
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 28233408a2c8


  Commit: 62e88bc89a718ed557784afb2572e1e664cfd94e
      https://github.com/llvm/llvm-project/commit/62e88bc89a718ed557784afb2572e1e664cfd94e
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Sema/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 440b1743ee0c


  Commit: f887fad547c7103c05f33be81fecc03782216ce6
      https://github.com/llvm/llvm-project/commit/f887fad547c7103c05f33be81fecc03782216ce6
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/AST/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 8c5e9cf73713


  Commit: ac86a76ed5ac968914dd13fc6b6b76c337728098
      https://github.com/llvm/llvm-project/commit/ac86a76ed5ac968914dd13fc6b6b76c337728098
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    R utils/bazel/crash-f7dbdb2b330aad91f520099159e736e91bb9ddbf

  Log Message:
  -----------
  [libc][NFC] Delete unused file (#82980)

Indentified in
https://github.com/llvm/llvm-project/pull/77741#pullrequestreview-1893531270


  Commit: 83feb846482f0100cb29d460d3d8de2690fc32ad
      https://github.com/llvm/llvm-project/commit/83feb846482f0100cb29d460d3d8de2690fc32ad
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/DSInstructions.td

  Log Message:
  -----------
  [AMDGPU] Reduce duplication in DS Real instruction definitions. NFC. (#83007)

For renamed instructions, there is no need to mention the new name twice
on every line defining a Real.


  Commit: 9cfb138eccb83b5876928b08be346fde5ca78b47
      https://github.com/llvm/llvm-project/commit/9cfb138eccb83b5876928b08be346fde5ca78b47
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    A clang/test/CXX/except/except.spec/p13.cpp
    M clang/test/SemaTemplate/class-template-noexcept.cpp

  Log Message:
  -----------
  [Clang][Sema] Defer instantiation of exception specification until after partial ordering when determining primary template (#82417)

Consider the following:
```
struct A {
  static constexpr bool x = true;
};

template<typename T, typename U>
void f(T, U) noexcept(T::y); // #1, error: no member named 'y' in 'A'

template<typename T, typename U>
void f(T, U*) noexcept(T::x); // #2

template<>
void f(A, int*) noexcept; // explicit specialization of #2
```

We currently instantiate the exception specification of all candidate
function template specializations when deducting template arguments for
an explicit specialization, which results in a error despite `#1` not
being selected by partial ordering as the most specialized template.
According to [except.spec] p13:
> An exception specification is considered to be needed when: 
> - [...]
> - the exception specification is compared to that of another
declaration (e.g., an explicit specialization or an overriding virtual
function);

Assuming that "comparing declarations" means "determining whether the
declarations correspond and declare the same entity" (per [basic.scope.scope] p4 and
[basic.link] p11.1, respectively), the exception specification does _not_ need to be
instantiated until _after_ partial ordering, at which point we determine
whether the implicitly instantiated specialization and the explicit
specialization declare the same entity (the determination of whether two
functions/function templates correspond does not consider the exception
specifications).

This patch defers the instantiation of the exception specification until
a single function template specialization is selected via partial
ordering, matching the behavior of GCC, EDG, and
MSVC: see https://godbolt.org/z/Ebb6GTcWE.


  Commit: 969d7ecf0b1d51e04e774b0695ffc1d04af81bde
      https://github.com/llvm/llvm-project/commit/969d7ecf0b1d51e04e774b0695ffc1d04af81bde
  Author: Francesco Petrogalli <francesco.petrogalli at apple.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/ValueTypes.td
    M llvm/lib/CodeGen/ValueTypes.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp

  Log Message:
  -----------
  [llvm][CodeGen] Add ValueType v3i1. [NFCI] (#82338)


  Commit: 1253e535bd421b955cce1c67ed4304f2ae9bcdfd
      https://github.com/llvm/llvm-project/commit/1253e535bd421b955cce1c67ed4304f2ae9bcdfd
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp

  Log Message:
  -----------
  [RemoveDIs] Use iterators for moving PHIs in loop-unroll-and-jam (#83003)

With no debug intrinsics, correctly identifying the start of a block
with iterators becomes important. We need to use the iterator-returning
methods here in loop-unroll-and-jam where we're shifting PHIs around.
Otherwise they can be inserted after debug-info records, leading to
debug-info attached to PHIs, which is ill formed.

Fixes #83000


  Commit: b5048700fc31f3bf6dd32ace7730815d4cfef411
      https://github.com/llvm/llvm-project/commit/b5048700fc31f3bf6dd32ace7730815d4cfef411
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/test/AST/Interp/c.c

  Log Message:
  -----------
  [clang][Interp] Fix lvalue CompoundLiteralExprs

We need to leave a pointer on the stack for them, even if their
type is primitive.


  Commit: 252f1cdebfffd846afe969d3f6e4684ed39536ad
      https://github.com/llvm/llvm-project/commit/252f1cdebfffd846afe969d3f6e4684ed39536ad
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    R lldb/third_party/Python/module/progress/progress.py
    R lldb/third_party/Python/module/unittest2/unittest2/__init__.py
    R lldb/third_party/Python/module/unittest2/unittest2/__main__.py
    R lldb/third_party/Python/module/unittest2/unittest2/case.py
    R lldb/third_party/Python/module/unittest2/unittest2/collector.py
    R lldb/third_party/Python/module/unittest2/unittest2/compatibility.py
    R lldb/third_party/Python/module/unittest2/unittest2/loader.py
    R lldb/third_party/Python/module/unittest2/unittest2/main.py
    R lldb/third_party/Python/module/unittest2/unittest2/result.py
    R lldb/third_party/Python/module/unittest2/unittest2/runner.py
    R lldb/third_party/Python/module/unittest2/unittest2/signals.py
    R lldb/third_party/Python/module/unittest2/unittest2/suite.py
    R lldb/third_party/Python/module/unittest2/unittest2/test/__init__.py
    R lldb/third_party/Python/module/unittest2/unittest2/test/dummy.py
    R lldb/third_party/Python/module/unittest2/unittest2/test/support.py
    R lldb/third_party/Python/module/unittest2/unittest2/test/test_assertions.py
    R lldb/third_party/Python/module/unittest2/unittest2/test/test_break.py
    R lldb/third_party/Python/module/unittest2/unittest2/test/test_case.py
    R lldb/third_party/Python/module/unittest2/unittest2/test/test_discovery.py
    R lldb/third_party/Python/module/unittest2/unittest2/test/test_functiontestcase.py
    R lldb/third_party/Python/module/unittest2/unittest2/test/test_loader.py
    R lldb/third_party/Python/module/unittest2/unittest2/test/test_new_tests.py
    R lldb/third_party/Python/module/unittest2/unittest2/test/test_program.py
    R lldb/third_party/Python/module/unittest2/unittest2/test/test_result.py
    R lldb/third_party/Python/module/unittest2/unittest2/test/test_runner.py
    R lldb/third_party/Python/module/unittest2/unittest2/test/test_setups.py
    R lldb/third_party/Python/module/unittest2/unittest2/test/test_skipping.py
    R lldb/third_party/Python/module/unittest2/unittest2/test/test_suite.py
    R lldb/third_party/Python/module/unittest2/unittest2/test/test_unittest2_with.py
    R lldb/third_party/Python/module/unittest2/unittest2/util.py

  Log Message:
  -----------
  [lldb][test] Remove vendored packages `unittest2` and `progress` (#82670)

The `unittest2` package is unused since
5b386158aacac4b41126983a5379d36ed413d0ea.

The `progress` package was only used internally by `unittest2`, so it
can be deleted as well.


  Commit: 264d828ea6399c31c210b67a050fbf084634da6a
      https://github.com/llvm/llvm-project/commit/264d828ea6399c31c210b67a050fbf084634da6a
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/lib/AST/Interp/InterpBuiltin.cpp
    M clang/test/CodeGen/ms-intrinsics-other.c

  Log Message:
  -----------
  [clang][Interp][NFC] Redo returning values from builtin functions

Instead of having retInt/retLong/retSizeT/etc., just add retInteger,
which takes an APSInt and returns it in form of the given QualType.
This makes the code a little neater, but is also necessary since
some builtins have a different return type with -fms-extensions.


  Commit: f54004475110bb0a4033261041594266c8296242
      https://github.com/llvm/llvm-project/commit/f54004475110bb0a4033261041594266c8296242
  Author: mmoadeli <mahmoud.moadeli at codeplay.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/lib/Basic/Targets/AMDGPU.h
    M clang/lib/CodeGen/Targets/NVPTX.cpp
    M clang/test/CodeGenSYCL/address-space-conversions.cpp
    A clang/test/CodeGenSYCL/amd-address-space-conversions.cpp
    A clang/test/CodeGenSYCL/cuda-address-space-conversions.cpp

  Log Message:
  -----------
  [NVPTX][AMDGPU][CodeGen] Fix `local_space nullptr` handling for NVPTX and local/private `nullptr` value for AMDGPU. (#78759)

- Address space cast of nullptr in local_space into a generic_space for
the CUDA backend. The reason for this cast was having invalid local
memory base address for the associated variable.
- In the context of AMD GPU, assigns a NULL value as ~0 for the address
spaces of sycl_local and sycl_private to match the ones for opencl_local
and opencl_private.


  Commit: ebb64d8370f9f425f10c4b084aa62adc2926e2dd
      https://github.com/llvm/llvm-project/commit/ebb64d8370f9f425f10c4b084aa62adc2926e2dd
  Author: Owen Anderson <resistor at mac.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-select.mir
    M llvm/test/CodeGen/AArch64/cmp-chains.ll

  Log Message:
  -----------
  [GlobalISel] Make the Combiner insert G_FREEZE when converting G_SELECT to binary operations. (#82733)

This is needed because the binary operators (G_OR and G_AND) do
not have the poison-suppressing semantics of G_SELECT.

Fixes https://github.com/llvm/llvm-project/issues/72475


  Commit: c27d7085d4d5c640aba4992f5d01c0ffd1da9860
      https://github.com/llvm/llvm-project/commit/c27d7085d4d5c640aba4992f5d01c0ffd1da9860
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/test/CodeGen/ms-intrinsics-other.c

  Log Message:
  -----------
  [clang][test] Undo an accidental test change

This was introduced in 264d828ea6399c31c210b67a050fbf084634da6a.


  Commit: 2730a5c68c6986bc8f01d047f8f31bcfd9316333
      https://github.com/llvm/llvm-project/commit/2730a5c68c6986bc8f01d047f8f31bcfd9316333
  Author: Samira Bazuzi <bazuzi at google.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/lib/Analysis/FlowSensitive/Transfer.cpp
    M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp

  Log Message:
  -----------
  [clang][dataflow] Skip array types when handling InitListExprs. (#83013)

Crashes resulted from single-element InitListExprs for arrays with
elements of a record type after #80970.


  Commit: b2ebd8b89777a1c5ba6acc4ad9f195ea2ad5f0de
      https://github.com/llvm/llvm-project/commit/b2ebd8b89777a1c5ba6acc4ad9f195ea2ad5f0de
  Author: Krasimir Georgiev <krasimir at google.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/unittests/Serialization/ModuleCacheTest.cpp
    M clang/unittests/Serialization/VarDeclConstantInitTest.cpp

  Log Message:
  -----------
  clang serialization unittests: fix some leaks (#82773)

No functional changes intended.

Fixes some leaks found by running under asan with `--gtest_repeat=2`.


  Commit: 82acec15afeb2bcba534a333c89cea33da7ffa47
      https://github.com/llvm/llvm-project/commit/82acec15afeb2bcba534a333c89cea33da7ffa47
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaChecking.cpp
    A clang/test/CodeGenHLSL/builtins/dot-builtin.hlsl
    A clang/test/CodeGenHLSL/builtins/dot.hlsl
    A clang/test/SemaHLSL/BuiltIns/dot-errors.hlsl
    M clang/test/SemaHLSL/OverloadResolutionBugs.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td

  Log Message:
  -----------
  [HLSL] Implementation of dot intrinsic (#81190)

This change implements https://github.com/llvm/llvm-project/issues/70073

HLSL has a dot intrinsic defined here:

https://learn.microsoft.com/en-us/windows/win32/direct3dhlsl/dx-graphics-hlsl-dot

The intrinsic itself is defined as a HLSL_LANG LangBuiltin in
Builtins.td.
This is used to associate all the dot product typdef defined
hlsl_intrinsics.h
with a single intrinsic check in CGBuiltin.cpp & SemaChecking.cpp.

In IntrinsicsDirectX.td we define the llvmIR for the dot product.
A few goals were in mind for this IR. First it should operate on only
vectors. Second the return type should be the vector element type. Third
the second parameter vector should be of the same size as the first
parameter. Finally `a dot b` should be the same as `b dot a`.

In CGBuiltin.cpp hlsl has built on top of existing clang intrinsics via
EmitBuiltinExpr. Dot
product though is language specific intrinsic and so is guarded behind
getLangOpts().HLSL.
The call chain looks like this: EmitBuiltinExpr -> EmitHLSLBuiltinExp

EmitHLSLBuiltinExp dot product intrinsics makes a destinction
between vectors and scalars. This is because HLSL supports dot product
on scalars which simplifies down to multiply.

Sema.h & SemaChecking.cpp saw the addition of
CheckHLSLBuiltinFunctionCall, a language specific semantic validation
that can be expanded for other hlsl specific intrinsics.

Fixes #70073


  Commit: 45732b64542e37f4908ced2477a25b7a0d703893
      https://github.com/llvm/llvm-project/commit/45732b64542e37f4908ced2477a25b7a0d703893
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

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

  Log Message:
  -----------
  [mlir][Transforms] Fix compile time regression in dialect conversion (#83023)

The dialect conversion does not directly erase ops that are
replaced/erased with a rewriter. Instead, the op stays in place and is
erased at the end if the dialect conversion succeeds. However, ops that
were replaced/erased are ignored from that point on.

#81757 introduced a compile time regression that made the check whether
an op is ignored or not more expensive. Whether an op is ignored or not
is queried many times throughout a dialect conversion, so the check must
be fast.

After this change, replaced ops are stored in the `ignoredOps` set. This
also simplifies the dialect conversion a bit.


  Commit: 1d2eced0067bea989e98efc9265725b3aeca0af9
      https://github.com/llvm/llvm-project/commit/1d2eced0067bea989e98efc9265725b3aeca0af9
  Author: Tom Honermann <tom.honermann at intel.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/docs/GettingStarted.rst

  Log Message:
  -----------
  [llvm][docs] Update the Python version requirement to 3.8.0 for lit testing on Windows with substitute (virtual) drives. (#81663)

Following the changes made for:
- https://reviews.llvm.org/D154130: [lit][clang] Avoid realpath on Windows due to MAX_PATH limitations
in commit:
- 05d613ea931b6de1b46dfe04b8e55285359047f4

Python 3.8.0 or newer is now required by at least the following tests
when they are run on Windows from a substitute (virtual) drive. A
substitute drive is often used as a workaround for `MAX_PATH`
limitations on Windows. These tests are impacted because they use the
lit `%{?:real}` path expansion syntax to expand symbolic links and
substitute drives. This path expansion is implemented with Python's
`os.path.realpath()` function which changed behavior in Python 3.8.0
with regard to expansion of substitute drives. The changes mentioned
above rely on the newer Python behavior.
- `clang/test/Lexer/case-insensitive-include-absolute.c`
- `clang/test/Lexer/case-insensitive-include-win.c`

This change updates the LLVM Getting Started guide to note this newer
Python version dependency for this relatively niche case. Python 3.6.0
remains the minimum required Python version otherwise.


  Commit: 4bc3b3501ff994fb3504ed2b973342821a9c8cea
      https://github.com/llvm/llvm-project/commit/4bc3b3501ff994fb3504ed2b973342821a9c8cea
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    A lld/docs/ELF/large_section_layout_nopic.png
    A lld/docs/ELF/large_section_layout_pic.png
    A lld/docs/ELF/large_sections.rst
    A lld/docs/ELF/section_layout.png
    M lld/docs/index.rst

  Log Message:
  -----------
  [lld/ELF] Add documentation on large sections (#82560)

Fixes #82438


  Commit: f70d5c0bc822f8932e8aadfbed7fe9c6cd8c3758
      https://github.com/llvm/llvm-project/commit/f70d5c0bc822f8932e8aadfbed7fe9c6cd8c3758
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/stdbit.rst
    M libc/include/llvm-libc-macros/stdbit-macros.h
    M libc/spec/stdc.td
    M libc/src/stdbit/CMakeLists.txt
    A libc/src/stdbit/stdc_count_zeros_uc.cpp
    A libc/src/stdbit/stdc_count_zeros_uc.h
    A libc/src/stdbit/stdc_count_zeros_ui.cpp
    A libc/src/stdbit/stdc_count_zeros_ui.h
    A libc/src/stdbit/stdc_count_zeros_ul.cpp
    A libc/src/stdbit/stdc_count_zeros_ul.h
    A libc/src/stdbit/stdc_count_zeros_ull.cpp
    A libc/src/stdbit/stdc_count_zeros_ull.h
    A libc/src/stdbit/stdc_count_zeros_us.cpp
    A libc/src/stdbit/stdc_count_zeros_us.h
    M libc/test/include/stdbit_test.cpp
    M libc/test/src/stdbit/CMakeLists.txt
    A libc/test/src/stdbit/stdc_count_zeros_uc_test.cpp
    A libc/test/src/stdbit/stdc_count_zeros_ui_test.cpp
    A libc/test/src/stdbit/stdc_count_zeros_ul_test.cpp
    A libc/test/src/stdbit/stdc_count_zeros_ull_test.cpp
    A libc/test/src/stdbit/stdc_count_zeros_us_test.cpp

  Log Message:
  -----------
  [libc][stdbit] implement stdc_count_zeros (C23) (#82437)


  Commit: 78275ef0a33a808d30285603585300ce57d7ef26
      https://github.com/llvm/llvm-project/commit/78275ef0a33a808d30285603585300ce57d7ef26
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

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

  Log Message:
  -----------
  [clang][Interp] Pick the right APInt constructor on Windows

The second parameter needs to be a uint64_t and nothing else.
This broke windows builders, see
https://github.com/llvm/llvm-project/commit/264d828ea6399c31c210b67a050fbf084634da6a


  Commit: be024307075c37f057fd51d4de0e9c2443b51686
      https://github.com/llvm/llvm-project/commit/be024307075c37f057fd51d4de0e9c2443b51686
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h
    M clang/lib/Analysis/ThreadSafetyCommon.cpp

  Log Message:
  -----------
  Thread safety analysis: provide printSCFG definition. (#80277)

I called this function when investigating the issue
(https://github.com/llvm/llvm-project/issues/78131), and I was surprised
to see the definition is commented out.

I think it makes sense to provide the definition even though the
implementation is not stable.


  Commit: d8406d48a8c94f88613e5613a7e0d6526a520428
      https://github.com/llvm/llvm-project/commit/d8406d48a8c94f88613e5613a7e0d6526a520428
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/stdbit.rst
    M libc/include/llvm-libc-macros/stdbit-macros.h
    M libc/spec/stdc.td
    M libc/src/stdbit/CMakeLists.txt
    A libc/src/stdbit/stdc_count_ones_uc.cpp
    A libc/src/stdbit/stdc_count_ones_uc.h
    A libc/src/stdbit/stdc_count_ones_ui.cpp
    A libc/src/stdbit/stdc_count_ones_ui.h
    A libc/src/stdbit/stdc_count_ones_ul.cpp
    A libc/src/stdbit/stdc_count_ones_ul.h
    A libc/src/stdbit/stdc_count_ones_ull.cpp
    A libc/src/stdbit/stdc_count_ones_ull.h
    A libc/src/stdbit/stdc_count_ones_us.cpp
    A libc/src/stdbit/stdc_count_ones_us.h
    M libc/test/include/stdbit_test.cpp
    M libc/test/src/stdbit/CMakeLists.txt
    A libc/test/src/stdbit/stdc_count_ones_uc_test.cpp
    A libc/test/src/stdbit/stdc_count_ones_ui_test.cpp
    A libc/test/src/stdbit/stdc_count_ones_ul_test.cpp
    A libc/test/src/stdbit/stdc_count_ones_ull_test.cpp
    A libc/test/src/stdbit/stdc_count_ones_us_test.cpp

  Log Message:
  -----------
  [libc][stdbit] implement stdc_count_ones (C23) (#82444)


  Commit: e2d80a3d025875766ac879d3d0c480cd03994d35
      https://github.com/llvm/llvm-project/commit/e2d80a3d025875766ac879d3d0c480cd03994d35
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M flang/lib/Lower/ConvertVariable.cpp
    A flang/test/Lower/CUDA/cuda-mod.cuf
    A flang/test/Lower/CUDA/cuda-module-use.cuf

  Log Message:
  -----------
  [flang][cuda] Make sure CUDA attribute are imported when using module variable (#82844)

CUDA attribute are correctly propagated to the module file but were not
imported currently so they did not appear on the hlfir.declare and
fir.global operations for module variables.


  Commit: 695b630ae16a1b243d9c72cc275b00cf0c8af2df
      https://github.com/llvm/llvm-project/commit/695b630ae16a1b243d9c72cc275b00cf0c8af2df
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/include/llvm/LTO/LTO.h
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/LTO/LTOCodeGenerator.cpp
    M llvm/lib/LTO/ThinLTOCodeGenerator.cpp

  Log Message:
  -----------
  [ThinLTO] NFC: Merge duplicated functions together (#82421)


  Commit: b876596a76cdc183439b36455d26883b67f8ee51
      https://github.com/llvm/llvm-project/commit/b876596a76cdc183439b36455d26883b67f8ee51
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/lib/Driver/ToolChain.cpp
    A clang/test/Driver/Inputs/resource_dir/lib/aarch64-unknown-linux/libclang_rt.hwasan.a
    A clang/test/Driver/Inputs/resource_dir/lib/aarch64-unknown-linux/libclang_rt.hwasan.a.syms
    A clang/test/Driver/Inputs/resource_dir/lib/i386-unknown-linux/libclang_rt.asan.a
    A clang/test/Driver/Inputs/resource_dir/lib/i386-unknown-linux/libclang_rt.asan.a.syms
    A clang/test/Driver/Inputs/resource_dir/lib/i686-unknown-linux/clang_rt.crtbegin.o
    A clang/test/Driver/Inputs/resource_dir/lib/i686-unknown-linux/clang_rt.crtend.o
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.asan-i386.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.asan-x86_64.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.hwasan-aarch64.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.hwasan-x86_64.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.msan-x86_64.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.msan_cxx-x86_64.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.tsan-x86_64.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.tsan_cxx-x86_64.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.ubsan-i386.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.ubsan-x86_64.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.ubsan_cxx-i386.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.ubsan_cxx-x86_64.a.syms
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/clang_rt.crtbegin.o
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/clang_rt.crtend.o
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.asan.a
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.asan.a.syms
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.hwasan.a
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.hwasan.a.syms
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.msan.a
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.msan.a.syms
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.msan_cxx.a
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.msan_cxx.a.syms
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.tsan.a
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.tsan.a.syms
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.tsan_cxx.a
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.tsan_cxx.a.syms
    M clang/test/Driver/arch-specific-libdir.c
    M clang/test/Driver/arm-compiler-rt.c
    M clang/test/Driver/baremetal-sysroot.cpp
    M clang/test/Driver/baremetal.cpp
    M clang/test/Driver/compiler-rt-unwind.c
    M clang/test/Driver/coverage-ld.c
    M clang/test/Driver/fuchsia.c
    M clang/test/Driver/instrprof-ld.c
    M clang/test/Driver/linux-ld.c
    M clang/test/Driver/print-libgcc-file-name-clangrt.c
    M clang/test/Driver/sanitizer-ld.c

  Log Message:
  -----------
  [Driver] Improve error when a compiler-rt library is not found (#81037)

BSD, Linux, and z/OS enable `LLVM_ENABLE_PER_TARGET_RUNTIME_DIR` by
default.
When a compiler-rt library is not found, we currently report an
incorrect filename `libclang_rt.XXX-$arch.a`
```
% /tmp/Debug/bin/clang++ a.cc -fsanitize=address -o a
ld.lld: error: cannot open /tmp/Debug/lib/clang/19/lib/linux/libclang_rt.asan-x86_64.a: No such file or directory
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
```

With this change, we will correctly report:
```
% /tmp/Debug/bin/clang++ a.cc -fsanitize=address -o a
ld.lld: error: cannot open /tmp/Debug/lib/clang/19/lib/x86_64-unknown-linux-gnu/libclang_rt.asan.a: No such file or directory
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
```

Link: https://discourse.llvm.org/t/runtime-directory-fallback/76860


  Commit: f9f331652d4f0aff9ece3570abe8c686cdfefff4
      https://github.com/llvm/llvm-project/commit/f9f331652d4f0aff9ece3570abe8c686cdfefff4
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M lldb/include/lldb/Utility/ArchSpec.h
    M lldb/source/Target/Target.cpp
    M lldb/source/Utility/ArchSpec.cpp
    A lldb/test/API/macosx/arm64e-attach/Makefile
    A lldb/test/API/macosx/arm64e-attach/TestArm64eAttach.py
    A lldb/test/API/macosx/arm64e-attach/main.c

  Log Message:
  -----------
  Replace ArchSpec::PiecewiseCompare() with Triple::operator==()

Looking ast the definition of both functions this is *almost* an NFC
change, except that Triple also looks at the SubArch (important) and
ObjectFormat (less so).

This fixes a bug that only manifests with how Xcode uses the SBAPI to
attach to a process by name: it guesses the architecture based on the
system. If the system is arm64 and the Process is arm64e Target fails
to update the triple because it deemed the two to be equivalent.

rdar://123338218


  Commit: 01450dd1c69d1edb0d01159352a56c99988839f4
      https://github.com/llvm/llvm-project/commit/01450dd1c69d1edb0d01159352a56c99988839f4
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M lldb/source/Target/Target.cpp
    M lldb/test/API/macosx/arm64e-attach/Makefile
    M lldb/test/API/macosx/arm64e-attach/TestArm64eAttach.py
    M lldb/tools/debugserver/source/DNB.cpp
    M lldb/tools/debugserver/source/DNB.h
    M lldb/tools/debugserver/source/MacOSX/MachProcess.h
    M lldb/tools/debugserver/source/MacOSX/MachProcess.mm
    M lldb/tools/debugserver/source/RNBRemote.cpp

  Log Message:
  -----------
  Change debugserver to report the cpu(sub)type of process, not the host.

This way debugserver can correctly report qProcessInfo for arm64
processes on arm64e-capable hosts.

Patch implemented with help from Jason Molenda!


  Commit: a4dcfbcb786f69ab8bab35f41e725e592fbac3fb
      https://github.com/llvm/llvm-project/commit/a4dcfbcb786f69ab8bab35f41e725e592fbac3fb
  Author: Xing Xue <xingxue at outlook.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M openmp/runtime/test/tasking/hidden_helper_task/capacity_mix_threads.cpp
    M openmp/runtime/test/tasking/hidden_helper_task/capacity_nthreads.cpp

  Log Message:
  -----------
  [OpenMP][AIX] XFAIL capacity tests on AIX in 32-bit (#83014)

This patch XFAILs two capacity tests on AIX in 32-bit because running
out resource with `4 x omp_get_max_threads()` in 32-bit mode.


  Commit: 9de78c4e243e9b1dffb289173a94d6a50421c463
      https://github.com/llvm/llvm-project/commit/9de78c4e243e9b1dffb289173a94d6a50421c463
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/lib/Target/AMDGPU/VOPInstructions.td

  Log Message:
  -----------
  AMDGPU: Simplify FP8 conversion definitions. NFC. (#83043)

Reals should inherit predicates from the corresponding Pseudo.


  Commit: 3aec947b671bf3a2c00ef7d29557db687af8ff7c
      https://github.com/llvm/llvm-project/commit/3aec947b671bf3a2c00ef7d29557db687af8ff7c
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M libc/src/__support/memory_size.h
    M libc/test/src/__support/memory_size_test.cpp

  Log Message:
  -----------
  [libc][__support/memory_size] fix missing branch and add related tests (#83016)

fix #82644.


  Commit: 0b398256b3f72204ad1f7c625efe4990204e898a
      https://github.com/llvm/llvm-project/commit/0b398256b3f72204ad1f7c625efe4990204e898a
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/IR/PrintPasses.h
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/IRPrintingPasses.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/IRPrinter/IRPrintingPasses.cpp
    M llvm/test/DebugInfo/Generic/inline-alloca-ordering.ll
    M llvm/test/DebugInfo/Generic/inline-dbg-values.ll
    M llvm/test/DebugInfo/dpvalue-print-nocrash.ll
    A llvm/test/DebugInfo/print-non-instruction-debug-info.ll
    M llvm/test/Transforms/Attributor/ArgumentPromotion/pr33641_remove_arg_dbgvalue.ll
    M llvm/test/Transforms/CallSiteSplitting/callsite-split-preserve-debug.ll
    M llvm/test/Transforms/CodeGenPrepare/debug-info-on-skipped-selects.ll
    M llvm/test/Transforms/DeadArgElim/2010-04-30-DbgInfo.ll
    M llvm/test/Transforms/IROutliner/outlining-debug-statements.ll
    M llvm/test/Transforms/LoopRotate/dbgvalue.ll
    M llvm/test/Transforms/LoopRotate/delete-dbg-values.ll
    M llvm/test/Transforms/ObjCARC/ensure-that-exception-unwind-path-is-visited.ll
    M llvm/test/Transforms/SROA/dbg-inline.ll

  Log Message:
  -----------
  [RemoveDIs] Print non-intrinsic debug info in textual IR output (#79281)

This patch adds support for printing the proposed non-instruction debug
info ("RemoveDIs") out to textual IR. This patch does not add any
bitcode support, parsing support, or documentation.

Printing of the new format is controlled by a flag added in this patch,
`--write-experimental-debuginfo`, which defaults to false. The new
format will be printed *iff* this flag is true, so whether we use the IR
format is completely independent of whether we use non-instruction debug
info during LLVM passes (which is controlled by the
`--try-experimental-debuginfo-iterators` flag).

Even with the flag disabled, some existing tests need to be updated, as this
patch causes debug intrinsic declarations to be changed in a round trip,
such that they always appear at the end of a module and have no attributes
(this has no functional change on the module).

The design of this new IR format was proposed previously on
Discourse, and any further discussion about the design can still be
contributed there:

https://discourse.llvm.org/t/rfc-debuginfo-proposed-changes-to-the-textual-ir-representation-for-debug-values/73491


  Commit: 257cbea20d3ce6c6a3848ebd0ea0662d3cdb46b5
      https://github.com/llvm/llvm-project/commit/257cbea20d3ce6c6a3848ebd0ea0662d3cdb46b5
  Author: David Green <david.green at arm.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

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

  Log Message:
  -----------
  [DAG] Format DAGCombiner::mayAlias. NFC


  Commit: f1bb88bee248fb30e3145a2a19373233b7a59882
      https://github.com/llvm/llvm-project/commit/f1bb88bee248fb30e3145a2a19373233b7a59882
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/test/CodeGen/RISCV/fpclamptosat.ll
    M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
    M llvm/test/CodeGen/RISCV/rvv/get_vector_length.ll

  Log Message:
  -----------
  [RISCV] Use PromoteSetCCOperands to promote operands for UMAX/UMIN during type legalization. (#82716)

For RISC-V, we were always choosing to sign extend when promoting
i32->i64. If the promoted inputs happen to be zero extended already, we
should use zero extend instead. This is what we do for SETCC.


  Commit: dc06d75ab27b4dcae2940fc386fadd06f70faffe
      https://github.com/llvm/llvm-project/commit/dc06d75ab27b4dcae2940fc386fadd06f70faffe
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/IR/PrintPasses.h
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/IRPrintingPasses.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/IRPrinter/IRPrintingPasses.cpp
    M llvm/test/DebugInfo/Generic/inline-alloca-ordering.ll
    M llvm/test/DebugInfo/Generic/inline-dbg-values.ll
    M llvm/test/DebugInfo/dpvalue-print-nocrash.ll
    R llvm/test/DebugInfo/print-non-instruction-debug-info.ll
    M llvm/test/Transforms/Attributor/ArgumentPromotion/pr33641_remove_arg_dbgvalue.ll
    M llvm/test/Transforms/CallSiteSplitting/callsite-split-preserve-debug.ll
    M llvm/test/Transforms/CodeGenPrepare/debug-info-on-skipped-selects.ll
    M llvm/test/Transforms/DeadArgElim/2010-04-30-DbgInfo.ll
    M llvm/test/Transforms/IROutliner/outlining-debug-statements.ll
    M llvm/test/Transforms/LoopRotate/dbgvalue.ll
    M llvm/test/Transforms/LoopRotate/delete-dbg-values.ll
    M llvm/test/Transforms/ObjCARC/ensure-that-exception-unwind-path-is-visited.ll
    M llvm/test/Transforms/SROA/dbg-inline.ll

  Log Message:
  -----------
  Revert "[RemoveDIs] Print non-intrinsic debug info in textual IR output (#79281)"

Reverted due to failures on buildbots, where a new cl flag was placed
in the wrong file, resulting in link errors.

https://lab.llvm.org/buildbot/#/builders/198/builds/8548

This reverts commit 0b398256b3f72204ad1f7c625efe4990204e898a.


  Commit: 6398baa425349ce67f39aaa67af86ec2aec96c7c
      https://github.com/llvm/llvm-project/commit/6398baa425349ce67f39aaa67af86ec2aec96c7c
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M flang/test/Driver/linker-flags.f90
    A flang/test/Lower/Intrinsics/cabs_real16.f90
    M flang/test/Lower/Intrinsics/missing-math-runtime.f90
    A flang/test/Lower/Intrinsics/sin_real16.f90
    A flang/test/Lower/Intrinsics/sqrt_real16.f90
    M flang/test/lit.cfg.py
    M flang/test/lit.site.cfg.py.in

  Log Message:
  -----------
  [flang] Fixes for LIT testing of FLANG_RUNTIME_F128_MATH_LIB build. (#82832)

Follow-up for #81971 to fix the disabled LIT test and add
LIT tests for lowering of the added math intrinsics.


  Commit: 5cdb8c0c8854d08ac7ca131ce3e8d78a32eb6716
      https://github.com/llvm/llvm-project/commit/5cdb8c0c8854d08ac7ca131ce3e8d78a32eb6716
  Author: Hsiangkai Wang <hsiangkai.wang at arm.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Dialect/Vector/canonicalize.mlir

  Log Message:
  -----------
  [mlir][vector] Add a pattern to fuse extract(constant_mask) (#81057)

This pattern will rewrite
ExtractOp(ConstantMaskOp) -> ConstantMaskOp
or
ExtractOp(ConstantMaskOp) -> Constant


  Commit: ce4740d3e31e936aa93c115f63bf223c74c9dc20
      https://github.com/llvm/llvm-project/commit/ce4740d3e31e936aa93c115f63bf223c74c9dc20
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaExpr.cpp
    M clang/test/SemaTemplate/ms-lookup-template-base-classes.cpp

  Log Message:
  -----------
  [Clang][Sema] Fix crash when MS dependent base class lookup occurs in an incomplete context (#83024)

When compiling the following with `-fms-compatibility`:
```
template<typename T> struct C;

// Test lookup with incomplete lookup context
template<typename T>
auto C<T>::f() -> decltype(x) { }
```
An assert fails because `CXXRecordDecl::hasAnyDependentBases` is called
on an incomplete class. This patch ensures we don't perform unqualified
lookup into dependent base classes when the lookup context is
incomplete.


  Commit: 1865c7ea8561407626fe5489ae07647035413d7c
      https://github.com/llvm/llvm-project/commit/1865c7ea8561407626fe5489ae07647035413d7c
  Author: ChiaHungDuan <chiahungduan at google.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/allocator_common.h
    M compiler-rt/lib/scudo/standalone/primary32.h
    M compiler-rt/lib/scudo/standalone/primary64.h
    M compiler-rt/lib/scudo/standalone/tests/primary_test.cpp

  Log Message:
  -----------
  [scudo] Store more blocks in each TransferBatch (#70390)

Instead of always storing the same number of blocks as cached, we prefer
increasing the utilization by saving more blocks in a single
TransferBatch. This may slightly impact the performance, but it will
save a lot of memory used by BatchClassId (especially for larger
blocks).


  Commit: 911055e34f2b1530d9900e23873e300b77ea8d96
      https://github.com/llvm/llvm-project/commit/911055e34f2b1530d9900e23873e300b77ea8d96
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/test/Transforms/LoopVectorize/AArch64/tail-folding-styles.ll
    M llvm/test/Transforms/LoopVectorize/X86/small-size.ll

  Log Message:
  -----------
  [VPlan] Consistently use (Part, 0) for first lane scalar values (#80271)

At the moment, some VPInstructions create only a single scalar value,
but use VPTransformatState's 'vector' storage for this value. Those
values are effectively uniform-per-VF (or in some cases
uniform-across-VF-and-UF). Using the vector/per-part storage doesn't
interact well with other recipes, that more accurately using (Part,
Lane) to look up scalar values and prevents VPInstructions creating
scalars from interacting with other recipes working with scalars.

This PR tries to unify handling of scalars by using (Part, 0) for scalar
values where only the first lane is demanded. This allows using
VPInstructions with other recipes like VPScalarCastRecipe and is also
needed when using VPInstructions in more cases otuside the vector loop
region to generate scalars.

Depends on https://github.com/llvm/llvm-project/pull/80269


  Commit: 38515580c4c5068e204ff69494ad11bbfacc89b4
      https://github.com/llvm/llvm-project/commit/38515580c4c5068e204ff69494ad11bbfacc89b4
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M lldb/tools/debugserver/source/CMakeLists.txt

  Log Message:
  -----------
  [lldb] Remove LLDB_DEBUGSERVER_CODESIGN_IDENTITY (NFC)

This property was previously used by the test suite.


  Commit: 1f8b7e3c0b0743dbc899278f016b710f18240b9b
      https://github.com/llvm/llvm-project/commit/1f8b7e3c0b0743dbc899278f016b710f18240b9b
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M libcxx/include/scoped_allocator
    A libcxx/test/std/utilities/allocator.adaptor/base-is-uglified.compile.pass.cpp

  Log Message:
  -----------
  [libc++] Fix non-uglified name in scoped_allocator_adaptor (#80706)

As mentioned in #78754, the 'base' typedef in scoped_allocator_adaptor
was not uglified properly.


  Commit: deaf53e632f37be1e4f7a57959c35fcae161b141
      https://github.com/llvm/llvm-project/commit/deaf53e632f37be1e4f7a57959c35fcae161b141
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M libcxx/include/__availability

  Log Message:
  -----------
  [libc++][NFC] Reorder availability macros in introduction order (#82531)

Reorder the availability macros in __availability to respect the order
in which they were introduced in the dylib. This simple refactor will
greatly simplify an upcoming change I am working on.


  Commit: 5e6f50eaa9510366352dde60b48bf7c3169762ea
      https://github.com/llvm/llvm-project/commit/5e6f50eaa9510366352dde60b48bf7c3169762ea
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M libcxx/cmake/caches/AndroidNDK.cmake
    M libcxx/docs/ReleaseNotes/19.rst
    M libcxx/test/CMakeLists.txt
    M libcxx/utils/ci/run-buildbot
    M libcxxabi/test/CMakeLists.txt

  Log Message:
  -----------
  [libc++] Remove LIBCXX_EXECUTOR and LIBCXXABI_EXECUTOR (#79886)

Those were deprecated in LLVM 18 and their removal was planned for LLVM 19.


  Commit: 7b66b5d6c2fadb1e9f8cfc8d1864d4109105001f
      https://github.com/llvm/llvm-project/commit/7b66b5d6c2fadb1e9f8cfc8d1864d4109105001f
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

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

  Log Message:
  -----------
  [mlir][Transforms] Track erased ops separately (#83051)

#83023 fixed a performance regression related to "ignored" ops. This
broke some downstream projects that access ops after they were replaced
(an API violation). This change restores the original behavior before
#83023 (but without the performance regression), to give downstream
users more time to fix their code.


  Commit: 6a884a9aef397f76178b141d789efadf280f2c3f
      https://github.com/llvm/llvm-project/commit/6a884a9aef397f76178b141d789efadf280f2c3f
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M libcxx/lib/abi/CHANGELOG.TXT
    M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    R libcxx/lib/libc++abi.exp
    M libcxx/src/CMakeLists.txt
    A libcxxabi/lib/cxxabiv1.exp
    R libcxxabi/lib/exceptions.exp
    A libcxxabi/lib/fundamental-types.exp
    M libcxxabi/lib/itanium-base.exp
    A libcxxabi/lib/itanium-exceptions.exp
    M libcxxabi/lib/new-delete.exp
    A libcxxabi/lib/std-exceptions.exp
    A libcxxabi/lib/std-misc.exp
    M libcxxabi/src/CMakeLists.txt
    M libcxxabi/test/uncaught_exception.pass.cpp

  Log Message:
  -----------
  [libc++] Always keep libc++abi re-exports up-to-date (#79012)

Previously, the list of libc++abi symbols that we re-export from libc++
would be partly encoded in libc++abi (and re-exported automatically via
the cxxabi-reexports target), and partly hard-coded in
libcxx/lib/libc++abi.exp. The duplication of information led to symbols
not being exported from libc++ after being added to libc++abi when they
should have been.

This patch removes the duplication of information. After this patch, the
full list of symbols to re-export from libc++abi is handled by the
cxxabi-reexports target and is stored in libcxxabi.

The symbols newly re-exported from libc++ are mainly new fundamental
typeinfos and a bunch of functions and classes that are part of
libc++abi but are most likely implementation details. In the future, it
would be possible to try to trim down the set of what we export from
libc++abi (and hence what we re-export from libc++) to remove some
implementation detail symbols.

Fixes #79008


  Commit: 435e75db80e1ffd0f9752534d4544eba5e0610df
      https://github.com/llvm/llvm-project/commit/435e75db80e1ffd0f9752534d4544eba5e0610df
  Author: Nilanjana Basu <n_basu at apple.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/test/Transforms/LoopDistribute/basic-with-memchecks.ll

  Log Message:
  -----------
  [Tests][LoopDistribute] Re-adding target triple in a test (#82954)

This test triple was removed earlier to fix build errors. To preserve the original test intention the triple is re-added with an explicit target requirement.


  Commit: 113052b2b022c4ce45c8003057ae4297d48ed843
      https://github.com/llvm/llvm-project/commit/113052b2b022c4ce45c8003057ae4297d48ed843
  Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNIterativeScheduler.cpp
    M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
    M llvm/lib/Target/AMDGPU/GCNRegPressure.h
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    A llvm/test/CodeGen/AMDGPU/spill-regpressure-less.mir

  Log Message:
  -----------
  [AMDGPU] Prefer lower total register usage in regions with spilling

Change-Id: Ia5c434b0945bdcbc357c5e06c3164118fc91df25


  Commit: 860b6edfa9b344fbf8c500c17158c8212ea87d1c
      https://github.com/llvm/llvm-project/commit/860b6edfa9b344fbf8c500c17158c8212ea87d1c
  Author: YunQiang Su <syq at debian.org>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
    M llvm/test/MC/Mips/cpsetup.s

  Log Message:
  -----------
  MIPS: fix emitDirectiveCpsetup on N32 (#80534)

In gas, .cpsetup may expand to one of two code sequences (one is related to `__gnu_local_gp`), depending on -mno-shared and -msym32.
Since Clang doesn't support -mno-shared or -msym32, .cpsetup expands to one code sequence.
The N32 condition incorrectly leads to the incorrect `__gnu_local_gp` code sequence.

```
00000000 <t1>:
   0:   ffbc0008        sd      gp,8(sp)
   4:   3c1c0000        lui     gp,0x0
                        4: R_MIPS_HI16  __gnu_local_gp
   8:   279c0000        addiu   gp,gp,0
                        8: R_MIPS_LO16  __gnu_local_gp
```

Fixes: #52785


  Commit: 99335a646bc0b10066d77cec08ae8cab0162efde
      https://github.com/llvm/llvm-project/commit/99335a646bc0b10066d77cec08ae8cab0162efde
  Author: Michael Klemm <michael.klemm at amd.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M openmp/libomptarget/DeviceRTL/src/State.cpp

  Log Message:
  -----------
  [flang][OpenMP] Add missing implementation for 'omp_is_initial_device' (#83056)

Resolve issue #82047


  Commit: acdd36e677e396909f700e5dfb519d907a6b4560
      https://github.com/llvm/llvm-project/commit/acdd36e677e396909f700e5dfb519d907a6b4560
  Author: Ryan Prichard <rprichard at google.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M libcxxabi/src/demangle/ItaniumDemangle.h
    M libcxxabi/test/test_demangle.pass.cpp

  Log Message:
  -----------
  [ItaniumDemangle] reject A-F in FP literals (#82864)

The Itanium C++ ABI specifies that FP literals are encoded using a
lowercase hexadecimal string. Previously, libc++abi allowed uppercase
A-F characters but decoded them by subtracting 'a' from them, producing
negative digit values. It is especially confusing to accept an 'E' digit
because 'E' marks the end of the FP literal.


  Commit: e9cdd165d7bce695d13f10df3480f9f66fd28b21
      https://github.com/llvm/llvm-project/commit/e9cdd165d7bce695d13f10df3480f9f66fd28b21
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    R llvm/docs/Packaging.rst

  Log Message:
  -----------
  [docs] Remove the Packaging "Tips" which seems to be about pre-cmake ./configure (#82958)

It was already marked outdated in 2012: 5b26461e0999 and hasn't been
updated since.


  Commit: 15a7de697ae5ad88fd96ef7dc39ac479cc6e2eaf
      https://github.com/llvm/llvm-project/commit/15a7de697ae5ad88fd96ef7dc39ac479cc6e2eaf
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/AArch64/fold-int-pow2-with-fmul-or-fdiv.ll
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/fold-int-pow2-with-fmul-or-fdiv.ll
    M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll

  Log Message:
  -----------
  [SelectionDAG] Support sign tracking through `{S|U}INT_TO_FP`

Just a minimal amount of easily provable tracking.

Proofs: https://alive2.llvm.org/ce/z/RQYbdw

Closes #82808

Alive2 to has an issue with `(sitofp i1)`, but it can
be verified by hand: https://godbolt.org/z/qKr7hT7s9


  Commit: 841a4168addba6931114e81d446c35114208eda2
      https://github.com/llvm/llvm-project/commit/841a4168addba6931114e81d446c35114208eda2
  Author: Alexander Yermolovich <43973793+ayermolo at users.noreply.github.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M bolt/test/runtime/instrument-wrong-target.s

  Log Message:
  -----------
  [BOLT] Fix runtime/instrument-wrong-target.s test (#82858)

Test was failing when only X86 was specified for LLVM_TARGETS_TO_BUILD.
Changed so that it will now report unsupporeted.

For "X86;AArch64" it still passes.
For "X86" reports UNSUPPORTED: BOLT :: runtime/instrument-wrong-target.s
(1 of 1)


  Commit: 21d83324fbdbd91de0115d48f3b55979f57807b7
      https://github.com/llvm/llvm-project/commit/21d83324fbdbd91de0115d48f3b55979f57807b7
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/CodeGen/builtins.c
    A clang/test/Sema/builtin-popcountg.c

  Log Message:
  -----------
  [clang] Implement __builtin_popcountg (#82359)


Fixes #82058.


  Commit: 6de5fcc74637116581d7b9b39c16fc252a5a54ef
      https://github.com/llvm/llvm-project/commit/6de5fcc74637116581d7b9b39c16fc252a5a54ef
  Author: Alexander Yermolovich <43973793+ayermolo at users.noreply.github.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Core/DIEBuilder.h
    M bolt/include/bolt/Core/DebugData.h
    A bolt/include/bolt/Core/DebugNames.h
    M bolt/include/bolt/Rewrite/DWARFRewriter.h
    M bolt/lib/Core/CMakeLists.txt
    M bolt/lib/Core/DIEBuilder.cpp
    A bolt/lib/Core/DebugNames.cpp
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    A bolt/test/X86/Inputs/dwarf5-debug-names-helper.s
    A bolt/test/X86/Inputs/dwarf5-debug-names-main.s
    A bolt/test/X86/Inputs/dwarf5-df-debug-names-helper.s
    A bolt/test/X86/Inputs/dwarf5-df-debug-names-main.s
    A bolt/test/X86/Inputs/dwarf5-df-types-debug-names-helper.s
    A bolt/test/X86/Inputs/dwarf5-df-types-debug-names-main.s
    A bolt/test/X86/Inputs/dwarf5-types-debug-names-helper.s
    A bolt/test/X86/Inputs/dwarf5-types-debug-names-main.s
    A bolt/test/X86/dwarf5-debug-names-generate-debug-names.test
    A bolt/test/X86/dwarf5-debug-names.test
    A bolt/test/X86/dwarf5-df-debug-names-generate-debug-names.test
    A bolt/test/X86/dwarf5-df-debug-names.test
    A bolt/test/X86/dwarf5-df-one-cu-debug-names.test
    A bolt/test/X86/dwarf5-df-types-debug-names.test
    A bolt/test/X86/dwarf5-df-types-one-cu-debug-names.test
    A bolt/test/X86/dwarf5-one-cu-debug-names.test
    A bolt/test/X86/dwarf5-types-debug-names.test
    A bolt/test/X86/dwarf5-types-one-cu-debug-names.test

  Log Message:
  -----------
  [BOLT][DWARF] Add support for .debug_names (#81062)

DWARF5 spec supports the .debug_names acceleration table. This is the
formalized version of combination of gdb-index/pubnames/types. Added
implementation of it to BOLT. It supports both monolothic and split
dwarf, with and without Type Units. It does not include parent indices.
This will be in followup PR. Unlike LLVM output this will put all the
CUs and TUs into one Module.


  Commit: e4604c35f5ccc4478c3b649edbc74b494098a442
      https://github.com/llvm/llvm-project/commit/e4604c35f5ccc4478c3b649edbc74b494098a442
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/runtime/Float128Math/CMakeLists.txt
    A flang/runtime/Float128Math/acos.cpp
    A flang/runtime/Float128Math/acosh.cpp
    A flang/runtime/Float128Math/asin.cpp
    A flang/runtime/Float128Math/asinh.cpp
    A flang/runtime/Float128Math/atan.cpp
    A flang/runtime/Float128Math/atan2.cpp
    A flang/runtime/Float128Math/atanh.cpp
    A flang/runtime/Float128Math/ceil.cpp
    A flang/runtime/Float128Math/cos.cpp
    A flang/runtime/Float128Math/cosh.cpp
    A flang/runtime/Float128Math/erf.cpp
    A flang/runtime/Float128Math/erfc.cpp
    A flang/runtime/Float128Math/exp.cpp
    A flang/runtime/Float128Math/floor.cpp
    A flang/runtime/Float128Math/hypot.cpp
    A flang/runtime/Float128Math/j0.cpp
    A flang/runtime/Float128Math/j1.cpp
    A flang/runtime/Float128Math/jn.cpp
    A flang/runtime/Float128Math/lgamma.cpp
    A flang/runtime/Float128Math/llround.cpp
    A flang/runtime/Float128Math/log.cpp
    A flang/runtime/Float128Math/log10.cpp
    A flang/runtime/Float128Math/lround.cpp
    M flang/runtime/Float128Math/math-entries.h
    A flang/runtime/Float128Math/pow.cpp
    A flang/runtime/Float128Math/round.cpp
    A flang/runtime/Float128Math/sinh.cpp
    A flang/runtime/Float128Math/tan.cpp
    A flang/runtime/Float128Math/tanh.cpp
    A flang/runtime/Float128Math/tgamma.cpp
    A flang/runtime/Float128Math/trunc.cpp
    A flang/runtime/Float128Math/y0.cpp
    A flang/runtime/Float128Math/y1.cpp
    A flang/runtime/Float128Math/yn.cpp
    A flang/test/Lower/Intrinsics/acos_real16.f90
    A flang/test/Lower/Intrinsics/acosh_real16.f90
    A flang/test/Lower/Intrinsics/aint_real16.f90
    A flang/test/Lower/Intrinsics/anint_real16.f90
    A flang/test/Lower/Intrinsics/asin_real16.f90
    A flang/test/Lower/Intrinsics/asinh_real16.f90
    A flang/test/Lower/Intrinsics/atan2_real16.f90
    A flang/test/Lower/Intrinsics/atan_real16.f90
    A flang/test/Lower/Intrinsics/atanh_real16.f90
    A flang/test/Lower/Intrinsics/bessel_j0_real16.f90
    A flang/test/Lower/Intrinsics/bessel_j1_real16.f90
    A flang/test/Lower/Intrinsics/bessel_jn_real16.f90
    A flang/test/Lower/Intrinsics/bessel_y0_real16.f90
    A flang/test/Lower/Intrinsics/bessel_y1_real16.f90
    A flang/test/Lower/Intrinsics/bessel_yn_real16.f90
    A flang/test/Lower/Intrinsics/ceiling_real16.f90
    A flang/test/Lower/Intrinsics/cos_real16.f90
    A flang/test/Lower/Intrinsics/cosh_real16.f90
    A flang/test/Lower/Intrinsics/erf_real16.f90
    A flang/test/Lower/Intrinsics/erfc_real16.f90
    A flang/test/Lower/Intrinsics/exp_real16.f90
    A flang/test/Lower/Intrinsics/floor_real16.f90
    A flang/test/Lower/Intrinsics/gamma_real16.f90
    A flang/test/Lower/Intrinsics/hypot_real16.f90
    A flang/test/Lower/Intrinsics/log10_real16.f90
    A flang/test/Lower/Intrinsics/log_gamma_real16.f90
    A flang/test/Lower/Intrinsics/log_real16.f90
    A flang/test/Lower/Intrinsics/nint_real16.f90
    A flang/test/Lower/Intrinsics/pow_real16.f90
    A flang/test/Lower/Intrinsics/powi_real16.f90
    A flang/test/Lower/Intrinsics/sinh_real16.f90
    A flang/test/Lower/Intrinsics/tan_real16.f90
    A flang/test/Lower/Intrinsics/tanh_real16.f90

  Log Message:
  -----------
  [flang] Added support for REAL16 math intrinsics in lowering and runtime. (#82860)

This PR does not include support for COMPLEX(16) intrinsics.
Note that (fp ** int) operations do not require Float128Math library,
as they are implemented via basic F128 operations,
which are supported by the build compilers' runtimes.


  Commit: a870a48c09ea32a5c179e827ed60e53e748cbc49
      https://github.com/llvm/llvm-project/commit/a870a48c09ea32a5c179e827ed60e53e748cbc49
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/SemaHLSL/VectorOverloadResolution.hlsl

  Log Message:
  -----------
  [HLSL] Fix casting asserts (#82827)

There are two issues here. first `ICK_Floating_Integral` were always
defaulting to `CK_FloatingToIntegral` for vectors regardless of
direction of cast. Check was scalar only so added a vec float check to
the conditional.

Second issue was float to int casts were resolving to
ICK_Integral_Promotion when they need to be resolving to
CK_FloatingToIntegral. This was fixed by changing the ordering of
conversion checks.

This fixes #82826


  Commit: b94913b8adbc0508762809a167e356becae92021
      https://github.com/llvm/llvm-project/commit/b94913b8adbc0508762809a167e356becae92021
  Author: David Green <david.green at arm.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/implicitly-set-zero-high-64-bits.ll

  Log Message:
  -----------
  [AArch64] Vector insert zero upper tests. NFC


  Commit: b1916599befa8575c43349ef0819389b8b5c3ab4
      https://github.com/llvm/llvm-project/commit/b1916599befa8575c43349ef0819389b8b5c3ab4
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/utils/gn/secondary/bolt/lib/Core/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 6de5fcc74637


  Commit: e87724560f5f155e662cbdda17409361b98d42d6
      https://github.com/llvm/llvm-project/commit/e87724560f5f155e662cbdda17409361b98d42d6
  Author: Bill Wendling <morbo at google.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/docs/GettingInvolved.rst

  Log Message:
  -----------
  [docs] Remove ref to deleted "Packaging.rst"

This is a fix for commit e9cdd165d7bc ("[docs] Remove the Packaging
"Tips" which seems to be about pre-cmake ./configure (#82958)"). The
doc was removed but not the references to it.


  Commit: 796d26a37d70374e41766df659700a826dc62e34
      https://github.com/llvm/llvm-project/commit/796d26a37d70374e41766df659700a826dc62e34
  Author: Pete Steinfeld <47540744+psteinfeld at users.noreply.github.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M flang/include/flang/ISO_Fortran_binding.h
    A flang/test/Integration/iso-fortran-binding.cpp

  Log Message:
  -----------
  [flang] Fix ISO_Fortran_binding.h to work better with C++ code (#82556)

[flang] Fix ISO_Fortran_binding.h to work better with C++ code

This stems from working on LANL's "dopey" project --
https://github.com/lanl/dopey.

That project contains C++ code which includes the header file
"ISO_Fortran_binding.h". The dopey code wraps that include with an
'extern "C"' clause since the standard (18.5.1, paragraph 1) says that
the file" shall contain C structure definitions, typedef declarations,
...". But the clang++ compiler emits error messages objecting to the
fact that ISO_Fortran_binding.h contains templates.

This change fixes that by preceding the problematic code in
ISO_Fortran_binding.h with language linkage clauses that specify that
they contain C++ code rather than C code.

In the accompanying test, I needed to account for the fact that some
people build the compiler by doing a `make check-flang`. In this case,
the clang compiler which is required by the test will not be built.

Here's an example of a C++ program that shows the problem:
```
  extern "C" {
  #include "ISO_Fortran_binding.h"
  }
  int main() {
    return 0;
  }
```


  Commit: 7789fb6604e5319ae46896285a264920015f8771
      https://github.com/llvm/llvm-project/commit/7789fb6604e5319ae46896285a264920015f8771
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M libc/src/__support/RPC/rpc_util.h
    M libc/src/__support/threads/CMakeLists.txt
    A libc/src/__support/threads/sleep.h

  Log Message:
  -----------
  [libc][NFC] Move 'sleep_briefly' function to common header (#83074)

Summary:
The https://github.com/llvm/llvm-project/pull/83026 patch has another
use for this function. Additionally add support for the Arm instruction
barrier if this is ever used by other targets.


  Commit: 23f895f6567e0a4cef45cfc9d96d817a454b6e8f
      https://github.com/llvm/llvm-project/commit/23f895f6567e0a4cef45cfc9d96d817a454b6e8f
  Author: gulfemsavrun <gulfem at google.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CodeGenPGO.h
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    A clang/test/CoverageMapping/single-byte-counters.cpp
    M compiler-rt/lib/profile/InstrProfiling.h
    M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
    M llvm/include/llvm/ProfileData/InstrProfWriter.h
    M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp

  Log Message:
  -----------
  [InstrProf] Single byte counters in coverage (#75425)

This patch inserts 1-byte counters instead of an 8-byte counters into
llvm profiles for source-based code coverage. The origial idea was
proposed as block-cov for PGO, and this patch repurposes that idea for
coverage: https://groups.google.com/g/llvm-dev/c/r03Z6JoN7d4

The current 8-byte counters mechanism add counters to minimal regions,
and infer the counters in the remaining regions via adding or
subtracting counters. For example, it infers the counter in the if.else
region by subtracting the counters between if.entry and if.then regions
in an if statement. Whenever there is a control-flow merge, it adds the
counters from all the incoming regions. However, we are not going to be
able to infer counters by subtracting two execution counts when using
single-byte counters. Therefore, this patch conservatively inserts
additional counters for the cases where we need to add or subtract
counters.

RFC:
https://discourse.llvm.org/t/rfc-single-byte-counters-for-source-based-code-coverage/75685


  Commit: 3d2a918831e7bcf1285641ee446ac1640819819f
      https://github.com/llvm/llvm-project/commit/3d2a918831e7bcf1285641ee446ac1640819819f
  Author: PiJoules <6019989+PiJoules at users.noreply.github.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/lib/Lex/LiteralSupport.cpp
    M clang/test/Frontend/fixed_point_declarations.c

  Log Message:
  -----------
  [clang] Fixes inf loop parsing fixed point literal (#83071)

Clang was incorrectly finding the start of the exponent in a fixed point
hex literal. It would unconditionally find the first `e/E/p/P` in a
constant regardless of if it were hex or not and parser the remaining
digits as an APInt. In a debug build, this would be caught by an
assertion, but in a release build, the assertion is removed and we'd end
up in an infinite loop.

Fixes #83050


  Commit: 54cff50791dec977feb0badb74919d97dff5b859
      https://github.com/llvm/llvm-project/commit/54cff50791dec977feb0badb74919d97dff5b859
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/test/CodeGen/tbaa-struct.cpp

  Log Message:
  -----------
  [TBAA] Add !tbaa.struct test with unnamed bitfields.

Extra tests with unnamed bitfields for
https://github.com/llvm/llvm-project/pull/82922.


  Commit: cda413087c59ed5da46ca83e8a2e07c0ebd2e3f9
      https://github.com/llvm/llvm-project/commit/cda413087c59ed5da46ca83e8a2e07c0ebd2e3f9
  Author: Fabio D'Urso <fdurso at google.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/combined.h

  Log Message:
  -----------
  [scudo] Do not unmap the memory containing the this object in unmapRingBuffer (#83034)


  Commit: 0339ce06c1813cebf03aea931256901101e28ba5
      https://github.com/llvm/llvm-project/commit/0339ce06c1813cebf03aea931256901101e28ba5
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp

  Log Message:
  -----------
  [NFC][flang] Removed unused constexpr var.


  Commit: dc5dfc102ffc3b870f7565fb4a90d53b31ec92f8
      https://github.com/llvm/llvm-project/commit/dc5dfc102ffc3b870f7565fb4a90d53b31ec92f8
  Author: nikitalita <69168929+nikitalita at users.noreply.github.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M lldb/bindings/interface/SBTargetExtensions.i

  Log Message:
  -----------
  [lldb] python-bindings: fix `SBTarget.get_target_watchpoints()` (#82295)

Fixes erroneous usage of `bkpts` instead of `watchpoints` (probably
introduced from copying and pasting `get_target_bkpts()`).


  Commit: 056d62be38c5db3d8332ac300c4ff29214126697
      https://github.com/llvm/llvm-project/commit/056d62be38c5db3d8332ac300c4ff29214126697
  Author: ChiaHungDuan <chiahungduan at google.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/allocator_common.h
    M compiler-rt/lib/scudo/standalone/primary32.h
    M compiler-rt/lib/scudo/standalone/primary64.h
    M compiler-rt/lib/scudo/standalone/tests/primary_test.cpp

  Log Message:
  -----------
  Revert "[scudo] Store more blocks in each TransferBatch" (#83078)

Reverts llvm/llvm-project#70390

There's a bug caught by
`ScudoCombinedTestReallocateInPlaceStress_DefaultConfig.ReallocateInPlaceStress`
with gwp asan. It's an easy fix but given that this is a major change, I
would like to revert it first


  Commit: 371e6d0f24dd02b7c8a115c07e74954e448570f6
      https://github.com/llvm/llvm-project/commit/371e6d0f24dd02b7c8a115c07e74954e448570f6
  Author: Enna1 <xumingjie.enna1 at bytedance.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M compiler-rt/lib/hwasan/hwasan_report.cpp
    M compiler-rt/lib/hwasan/hwasan_thread_list.cpp
    M compiler-rt/lib/hwasan/hwasan_thread_list.h

  Log Message:
  -----------
  [NFC][hwasan] Do not include sanitizer_placement_new.h in header files (#82993)

Do not include sanitizer_placement_new.h into header files, only into
source files.


  Commit: 56d58295dd492b8e8a011fa60798d9be4f36ec3c
      https://github.com/llvm/llvm-project/commit/56d58295dd492b8e8a011fa60798d9be4f36ec3c
  Author: Peiming Liu <36770114+PeimingLiu at users.noreply.github.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M mlir/include/mlir-c/Dialect/SparseTensor.h
    M mlir/include/mlir/Dialect/SparseTensor/IR/Enums.h
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorAttrDefs.td
    M mlir/lib/Dialect/SparseTensor/IR/Detail/LvlTypeParser.cpp
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorLevel.cpp
    M mlir/test/CAPI/sparse_tensor.c
    M mlir/test/Dialect/SparseTensor/invalid_encoding.mlir
    M mlir/test/Dialect/SparseTensor/roundtrip_encoding.mlir
    M mlir/test/Dialect/SparseTensor/sparse_fill_zero.mlir
    M mlir/test/python/dialects/sparse_tensor/dialect.py

  Log Message:
  -----------
  [mlir][sparse] Introduce batch level format. (#83082)


  Commit: 62d0c01c2c9adce67f2e1adb9feecd7ba1a97814
      https://github.com/llvm/llvm-project/commit/62d0c01c2c9adce67f2e1adb9feecd7ba1a97814
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    A llvm/test/CodeGen/RISCV/rvv/strided-vpload-vpstore-output.ll

  Log Message:
  -----------
  [SelectionDAG] Remove pointer from MMO for VP strided load/store. (#82667)

MachineIR alias analysis assumes that only bytes after the pointer will
be accessed. This is incorrect if the stride is negative.

This is causing miscompiles in our downstream after SLP started making
strided loads.

Fixes #82657


  Commit: ded4ea975241539ba8358bc018c506953b0e6813
      https://github.com/llvm/llvm-project/commit/ded4ea975241539ba8358bc018c506953b0e6813
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/math/stdfix.rst
    M libc/spec/stdc_ext.td
    M libc/src/__support/fixed_point/CMakeLists.txt
    A libc/src/__support/fixed_point/sqrt.h
    M libc/src/stdfix/CMakeLists.txt
    A libc/src/stdfix/sqrtuhk.cpp
    A libc/src/stdfix/sqrtuhk.h
    A libc/src/stdfix/sqrtuhr.cpp
    A libc/src/stdfix/sqrtuhr.h
    A libc/src/stdfix/sqrtuk.cpp
    A libc/src/stdfix/sqrtuk.h
    A libc/src/stdfix/sqrtulr.cpp
    A libc/src/stdfix/sqrtulr.h
    A libc/src/stdfix/sqrtur.cpp
    A libc/src/stdfix/sqrtur.h
    M libc/test/src/stdfix/CMakeLists.txt
    A libc/test/src/stdfix/SqrtTest.h
    A libc/test/src/stdfix/sqrtuhk_test.cpp
    A libc/test/src/stdfix/sqrtuhr_test.cpp
    A libc/test/src/stdfix/sqrtuk_test.cpp
    A libc/test/src/stdfix/sqrtulr_test.cpp
    A libc/test/src/stdfix/sqrtur_test.cpp

  Log Message:
  -----------
  [libc][stdfix] Add sqrt for fixed point types. (#83042)


  Commit: 5e4c4365f89b7b31ee3868114dd0f6c5d483e42b
      https://github.com/llvm/llvm-project/commit/5e4c4365f89b7b31ee3868114dd0f6c5d483e42b
  Author: Egor Zhdan <e_zhdan at apple.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/lib/APINotes/APINotesReader.cpp
    M clang/lib/APINotes/APINotesWriter.cpp

  Log Message:
  -----------
  [APINotes] Fix a few accidental refactoring artifacts

This fixes a few breakages introduced during upstreaming.


  Commit: 91791c60bd7d1783d84e2e6ed87e5f957fbaee56
      https://github.com/llvm/llvm-project/commit/91791c60bd7d1783d84e2e6ed87e5f957fbaee56
  Author: vporpo <vporpodas at google.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    A llvm/test/Transforms/DeadStoreElimination/read-clobber-skipped.ll

  Log Message:
  -----------
  [DSE] Test precommit for a bug caused by a read-clobber being skipped. (#83084)


  Commit: b1d2e8510b58893e58558ffdf3f8ba29c1e25e5a
      https://github.com/llvm/llvm-project/commit/b1d2e8510b58893e58558ffdf3f8ba29c1e25e5a
  Author: Vasileios Porpodas <vporpodas at google.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    R llvm/test/Transforms/DeadStoreElimination/read-clobber-skipped.ll

  Log Message:
  -----------
  Revert "[DSE] Test precommit for a bug caused by a read-clobber being skipped. (#83084)"

This reverts commit 91791c60bd7d1783d84e2e6ed87e5f957fbaee56.


  Commit: 3892e8e59ce4b85fc191a273106d7342f74d5d68
      https://github.com/llvm/llvm-project/commit/3892e8e59ce4b85fc191a273106d7342f74d5d68
  Author: MalaySanghiIntel <148750629+MalaySanghiIntel at users.noreply.github.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/utils/TableGen/CodeGenInstruction.h

  Log Message:
  -----------
  Non functional change. Initialize var EnumVal to 0. (#82987)

CodeGenInstruction has a new unsigned member EnumVal. It is not
initialized in either the class or the constructor.


  Commit: 86f6caa562255f81b93e72a501a926b17f5ad244
      https://github.com/llvm/llvm-project/commit/86f6caa562255f81b93e72a501a926b17f5ad244
  Author: Connor Sughrue <55301806+cpsughrue at users.noreply.github.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/include/llvm/Support/Program.h
    M llvm/lib/Support/Program.cpp
    M llvm/lib/Support/Unix/Program.inc
    M llvm/lib/Support/Windows/Program.inc
    M llvm/unittests/Support/ProgramTest.cpp

  Log Message:
  -----------
  [llvm][Support] Add support for executing a detached process (#81708)

Adds a new parameter, `bool DetachProcess` with a default option of
`false`, to `llvm::sys::ExecuteNoWait`, which, when set to `true`,
executes the specified program without a controlling terminal.

Functionality added so that the module build daemon can be run without a
controlling terminal.


  Commit: c11627c2f4d550613a3cb360c89a0cf52d2eb720
      https://github.com/llvm/llvm-project/commit/c11627c2f4d550613a3cb360c89a0cf52d2eb720
  Author: Xiang Li <python3kgae at outlook.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    A mlir/test/Target/LLVMIR/erase-dangling-constants.mlir

  Log Message:
  -----------
  [MLIR][LLVM] Fix memory explosion when converting global variable bodies in ModuleTranslation (#82708)

There is memory explosion when converting the body or initializer region
of a large global variable, e.g. a constant array.

For example, when translating a constant array of 100000 strings:

llvm.mlir.global internal constant @cats_strings() {addr_space = 0 :
i32, alignment = 16 : i64} : !llvm.array<100000 x ptr<i8>> {
    %0 = llvm.mlir.undef : !llvm.array<100000 x ptr<i8>>
    %1 = llvm.mlir.addressof @om_1 : !llvm.ptr<array<1 x i8>>
%2 = llvm.getelementptr %1[0, 0] : (!llvm.ptr<array<1 x i8>>) ->
!llvm.ptr<i8>
    %3 = llvm.insertvalue %2, %0[0] : !llvm.array<100000 x ptr<i8>>
    %4 = llvm.mlir.addressof @om_2 : !llvm.ptr<array<1 x i8>>
%5 = llvm.getelementptr %4[0, 0] : (!llvm.ptr<array<1 x i8>>) ->
!llvm.ptr<i8>
    %6 = llvm.insertvalue %5, %3[1] : !llvm.array<100000 x ptr<i8>>
    %7 = llvm.mlir.addressof @om_3 : !llvm.ptr<array<1 x i8>>
%8 = llvm.getelementptr %7[0, 0] : (!llvm.ptr<array<1 x i8>>) ->
!llvm.ptr<i8>
    %9 = llvm.insertvalue %8, %6[2] : !llvm.array<100000 x ptr<i8>>
    %10 = llvm.mlir.addressof @om_4 : !llvm.ptr<array<1 x i8>>
%11 = llvm.getelementptr %10[0, 0] : (!llvm.ptr<array<1 x i8>>) ->
!llvm.ptr<i8>
    %12 = llvm.insertvalue %11, %9[3] : !llvm.array<100000 x ptr<i8>>

    ... (ignore the remaining part)
}

where @om_1, @om_2, ... are string global constants.

Each time an operation is converted to LLVM, a new constant is created.
When it comes to llvm.insertvalue, a new constant array of 100000
elements is created and the old constant array (input) is not destroyed.
This causes memory explosion. We observed that, on a system with 128 GB
memory, the translation of 100000 elements got killed due to using up
all the memory. On a system with 64 GB, 65536 elements was enough to
cause the translation killed.

There is a previous patch (https://reviews.llvm.org/D148487) which fix
this issue but was reverted for
https://github.com/llvm/llvm-project/issues/62802

The old patch checks generated constants and destroyed them if there is
no use. But the check of use for the constant is too early, which cause
the constant be removed before use.


This new patch added a map was added a map to save expected use count
for a constant. Then decrease when reach each use.
And only erase the constant when the use count reach to zero

With new patch, the repro in
https://github.com/llvm/llvm-project/issues/62802 finished correctly.


  Commit: b791a51730f145308f3607d0d33038af78138304
      https://github.com/llvm/llvm-project/commit/b791a51730f145308f3607d0d33038af78138304
  Author: Visoiu Mistrih Francis <890283+francisvm at users.noreply.github.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SchedExynosM4.td
    M llvm/lib/Target/AArch64/AArch64SchedExynosM5.td
    A llvm/test/TableGen/ReadAdvanceInvalidWrite.td
    M llvm/test/tools/llvm-mca/AArch64/Exynos/float-divide-multiply.s
    M llvm/utils/TableGen/CodeGenSchedule.cpp
    M llvm/utils/TableGen/SubtargetEmitter.cpp

  Log Message:
  -----------
  [CodeGenSchedule] Don't allow invalid ReadAdvances to be formed (#82685)

Forming a `ReadAdvance` with an entry in the `ValidWrites` list that is
not used by any instruction results in the entire `ReadAdvance` to be
ignored by the scheduler due to an invalid entry.

The `SchedRW` collection code only picks up `SchedWrites` that are
reachable from `Instructions`, `InstRW`, `ItinRW` and `SchedAlias`,
leaving the unreachable ones with an invalid entry (0) in
`SubtargetEmitter::GenSchedClassTables` when going through the list of
`ReadAdvances`


  Commit: 2e564840e08d28fec9035aacc7a2d28106ed8606
      https://github.com/llvm/llvm-project/commit/2e564840e08d28fec9035aacc7a2d28106ed8606
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp

  Log Message:
  -----------
  [RISCV] Use getVectorIdxConstant in RISCVISelLowering.cpp. NFC (#83019)

We use getVectorIdxConstant() in some places and getConstant(XLenVT) or
getIntPtrConstant() in others, but getVectorIdxTy() == getPointerTy() ==
XLenVT.

This refactors RISCVISelLowering to use the former for nodes that use
getVectorIdxTy(), i.e. INSERT_SUBVECTOR, EXTRACT_SUBVECTOR,
INSERT_VECTOR_ELT and EXTRACT_VECTOR_ELT, so that we're consistent.


  Commit: ef7417fbc597eab1adbad4abc6ecdb2e62319513
      https://github.com/llvm/llvm-project/commit/ef7417fbc597eab1adbad4abc6ecdb2e62319513
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp

  Log Message:
  -----------
  [mlir] Fix -Wunused-but-set-variable in ModuleTranslation.cpp (NFC)

mlir/lib/Target/LLVMIR/ModuleTranslation.cpp:1050:11:
error: variable 'numConstantsHit' set but not used [-Werror,-Wunused-but-set-variable]
      int numConstantsHit = 0;
          ^
mlir/lib/Target/LLVMIR/ModuleTranslation.cpp:1051:11:
error: variable 'numConstantsErased' set but not used [-Werror,-Wunused-but-set-variable]
      int numConstantsErased = 0;
          ^
2 errors generated.


  Commit: f410f74cd5b26319b5796e0404c6a0f3b5cc00a5
      https://github.com/llvm/llvm-project/commit/f410f74cd5b26319b5796e0404c6a0f3b5cc00a5
  Author: cpsughrue <cpsughrue at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/include/llvm/Support/Program.h
    M llvm/lib/Support/Program.cpp
    M llvm/lib/Support/Unix/Program.inc
    M llvm/lib/Support/Windows/Program.inc
    M llvm/unittests/Support/ProgramTest.cpp

  Log Message:
  -----------
  Revert "[llvm][Support] Add support for executing a detached process (#81708)"

This reverts commit 86f6caa562255f81b93e72a501a926b17f5ad244. Unit test
was failing on a few windows build bots


  Commit: b2a4f64e19247d0553d3dc63af62b652664c3cd6
      https://github.com/llvm/llvm-project/commit/b2a4f64e19247d0553d3dc63af62b652664c3cd6
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/lib/Format/Format.cpp

  Log Message:
  -----------
  [clang-format][NFC] Skip ObjCHeaderStyleGuesser for empty code (#82957)


  Commit: e7900e695e7dfb36be8651d914a31f42a5d6c634
      https://github.com/llvm/llvm-project/commit/e7900e695e7dfb36be8651d914a31f42a5d6c634
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.f32-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.f32-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.v2f16-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-atomic-fadd.f32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.v2f16-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_kernel.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-constrained-fp.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-metadata.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-llvm.amdgcn.image.load.2darraymsaa.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-llvm.amdgcn.image.load.3d.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-llvm.amdgcn.image.sample.d.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-llvm.amdgcn.image.sample.g16.a16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-llvm.amdgcn.image.sample.g16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.cmpswap.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.cmpswap.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.image.load.1d.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.image.sample.1d.ll
    M llvm/test/CodeGen/AMDGPU/accvgpr-copy.mir
    M llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/agpr-copy-no-vgprs.mir
    M llvm/test/CodeGen/AMDGPU/agpr-copy-propagation.mir
    M llvm/test/CodeGen/AMDGPU/agpr-copy-sgpr-no-vgprs.mir
    M llvm/test/CodeGen/AMDGPU/agpr-to-agpr-copy.mir
    M llvm/test/CodeGen/AMDGPU/blender-coalescer-verifier-error-empty-subrange.mir
    M llvm/test/CodeGen/AMDGPU/block-should-not-be-in-alive-blocks.mir
    M llvm/test/CodeGen/AMDGPU/buffer-atomic-fadd.f32-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/buffer-atomic-fadd.f32-rtn.ll
    M llvm/test/CodeGen/AMDGPU/buffer-atomic-fadd.v2f16-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/coalesce-identity-copies-undef-subregs.mir
    M llvm/test/CodeGen/AMDGPU/coalesce-into-dead-subreg-copies.mir
    M llvm/test/CodeGen/AMDGPU/coalesce-liveout-undef-copy.mir
    M llvm/test/CodeGen/AMDGPU/coalescer-remat-dead-use.mir
    M llvm/test/CodeGen/AMDGPU/coalescer-removepartial-extend-undef-subrange.mir
    M llvm/test/CodeGen/AMDGPU/coalescer-subranges-prune-kill-copy.mir
    M llvm/test/CodeGen/AMDGPU/coalescing-subreg-was-undef-but-became-def.mir
    M llvm/test/CodeGen/AMDGPU/coalescing_makes_lanes_undef.mir
    M llvm/test/CodeGen/AMDGPU/collapse-endcf2.mir
    M llvm/test/CodeGen/AMDGPU/combine-sreg64-inits.mir
    M llvm/test/CodeGen/AMDGPU/commute-vop3.mir
    M llvm/test/CodeGen/AMDGPU/copy_phys_vgpr64.mir
    M llvm/test/CodeGen/AMDGPU/couldnt-join-subrange-3.mir
    M llvm/test/CodeGen/AMDGPU/dbg-value-ends-sched-region.mir
    M llvm/test/CodeGen/AMDGPU/dead_bundle.mir
    M llvm/test/CodeGen/AMDGPU/debug-value-scheduler-crash.mir
    M llvm/test/CodeGen/AMDGPU/extend-phi-subrange-not-in-parent.mir
    M llvm/test/CodeGen/AMDGPU/fdiv-nofpexcept.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomic-fadd.f32.ll
    M llvm/test/CodeGen/AMDGPU/global-atomic-fadd.v2f16-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/greedy-alloc-fail-sgpr1024-spill.mir
    M llvm/test/CodeGen/AMDGPU/greedy-instruction-split-subrange.mir
    M llvm/test/CodeGen/AMDGPU/gws-hazards.mir
    M llvm/test/CodeGen/AMDGPU/high-bits-zeroed-16-bit-ops.mir
    M llvm/test/CodeGen/AMDGPU/liveout-implicit-def-subreg-redef-blender-verifier-error.mir
    M llvm/test/CodeGen/AMDGPU/loop_header_nopred.mir
    M llvm/test/CodeGen/AMDGPU/lower-control-flow-live-intervals.mir
    M llvm/test/CodeGen/AMDGPU/lower-control-flow-live-variables-update.mir
    M llvm/test/CodeGen/AMDGPU/lower-control-flow-other-terminators.mir
    M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats.mir
    M llvm/test/CodeGen/AMDGPU/machine-sink-ignorable-exec-use.mir
    M llvm/test/CodeGen/AMDGPU/merge-s-load.mir
    M llvm/test/CodeGen/AMDGPU/merge-tbuffer.mir
    M llvm/test/CodeGen/AMDGPU/mode-register-fptrunc.mir
    M llvm/test/CodeGen/AMDGPU/move-to-valu-lshlrev.mir
    M llvm/test/CodeGen/AMDGPU/move-to-valu-vimage-vsample.ll
    M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands.mir
    M llvm/test/CodeGen/AMDGPU/neighboring-mfma-padding.mir
    M llvm/test/CodeGen/AMDGPU/no-remat-indirect-mov.mir
    M llvm/test/CodeGen/AMDGPU/opt-exec-masking-pre-ra-update-liveness-wave32.mir
    M llvm/test/CodeGen/AMDGPU/opt-exec-masking-pre-ra-update-liveness.mir
    M llvm/test/CodeGen/AMDGPU/optimize-exec-mask-pre-ra-loop-phi.mir
    M llvm/test/CodeGen/AMDGPU/optimize-exec-masking-pre-ra.mir
    M llvm/test/CodeGen/AMDGPU/partial-forwarding-hazards.mir
    M llvm/test/CodeGen/AMDGPU/pei-build-av-spill.mir
    M llvm/test/CodeGen/AMDGPU/pei-build-spill-partial-agpr.mir
    M llvm/test/CodeGen/AMDGPU/pei-build-spill.mir
    M llvm/test/CodeGen/AMDGPU/ran-out-of-sgprs-allocation-failure.mir
    M llvm/test/CodeGen/AMDGPU/regalloc-fast-dont-drop-subreg-index-issue61134.mir
    M llvm/test/CodeGen/AMDGPU/regcoalesce-cannot-join-failures.mir
    M llvm/test/CodeGen/AMDGPU/regcoalesce-keep-valid-lanes-implicit-def-bug39602.mir
    M llvm/test/CodeGen/AMDGPU/regcoalescer-resolve-lane-conflict-by-subranges.mir
    M llvm/test/CodeGen/AMDGPU/remat-dead-subreg.mir
    M llvm/test/CodeGen/AMDGPU/sched-assert-dead-def-subreg-use-other-subreg.mir
    M llvm/test/CodeGen/AMDGPU/sched-assert-onlydbg-value-empty-region.mir
    M llvm/test/CodeGen/AMDGPU/sched-handleMoveUp-subreg-def-across-subreg-def.mir
    M llvm/test/CodeGen/AMDGPU/schedule-barrier-fpmode.mir
    M llvm/test/CodeGen/AMDGPU/schedule-barrier.mir
    M llvm/test/CodeGen/AMDGPU/set-gpr-idx-peephole.mir
    M llvm/test/CodeGen/AMDGPU/shrink-instructions-flags.mir
    M llvm/test/CodeGen/AMDGPU/shrink-mad-fma.mir
    M llvm/test/CodeGen/AMDGPU/si-fold-aligned-vgprs.mir
    M llvm/test/CodeGen/AMDGPU/si-lower-control-flow.mir
    M llvm/test/CodeGen/AMDGPU/spill-agpr.mir
    M llvm/test/CodeGen/AMDGPU/spill-empty-live-interval.mir
    M llvm/test/CodeGen/AMDGPU/split-liverange-overlapping-copies.mir
    M llvm/test/CodeGen/AMDGPU/split-mbb-lis-subrange.mir
    M llvm/test/CodeGen/AMDGPU/splitkit-copy-bundle.mir
    M llvm/test/CodeGen/AMDGPU/splitkit-copy-live-lanes.mir
    M llvm/test/CodeGen/AMDGPU/subreg-undef-def-with-other-subreg-defs.mir
    M llvm/test/CodeGen/AMDGPU/trans-forwarding-hazards.mir
    M llvm/test/CodeGen/AMDGPU/transform-block-with-return-to-epilog.ll
    M llvm/test/CodeGen/AMDGPU/twoaddr-constrain.ll
    M llvm/test/CodeGen/AMDGPU/twoaddr-regsequence.mir
    M llvm/test/CodeGen/AMDGPU/undef-subreg-use-after-coalesce.mir
    M llvm/test/CodeGen/AMDGPU/valu-mask-write-hazard.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-remat.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/vopd-combine.mir
    M llvm/test/CodeGen/AMDGPU/waitcnt-vinterp.mir
    M llvm/test/CodeGen/AMDGPU/wqm-terminators.mir

  Log Message:
  -----------
  AMDGPU: Regenerate baseline mir tests


  Commit: f0663772463335bed253491fa380e1a9c2d78484
      https://github.com/llvm/llvm-project/commit/f0663772463335bed253491fa380e1a9c2d78484
  Author: cmtice <cmtice at google.com>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/Dwarf.h
    M llvm/lib/CodeGen/AsmPrinter/AccelTable.cpp

  Log Message:
  -----------
  [LLVM][DWARF] Make dwarf::getDebugNamesBucketCount return a pair. (#83047)

llvm::dwarf::getDebugNamesBucketCount directly returns the bucket count,
via return statement, but it also returns the hash count via a
parameter. This changes the function to return them both as a std::pair,
in the return statement. It also changes the name of the function to
make it clear it returns both values.


  Commit: c88beb4112d5bbf07d76a615ab7f13ba2ba023e6
      https://github.com/llvm/llvm-project/commit/c88beb4112d5bbf07d76a615ab7f13ba2ba023e6
  Author: YunQiang Su <syq at debian.org>
  Date:   2024-02-26 (Mon, 26 Feb 2024)

  Changed paths:
    M clang/lib/Basic/Targets/Mips.h
    A clang/test/CodeGen/Mips/inline-asm-constraints.c
    A clang/test/Sema/inline-asm-validate-mips.c
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    A llvm/test/CodeGen/Mips/inlineasm-constraints-softfloat.ll

  Log Message:
  -----------
  MIPS: Fix asm constraints "f" and "r" for softfloat (#79116)

This include 2 fixes:
        1. Disallow 'f' for softfloat.
        2. Allow 'r' for softfloat.

Currently, 'f' is accpeted by clang, then LLVM meets an internal error.

'r' is rejected by LLVM by: couldn't allocate input reg for constraint
'r'.

Fixes: #64241, #63632

---------

Co-authored-by: Fangrui Song <i at maskray.me>


  Commit: c19a81931ce47278967056927aa87a7685e5447c
      https://github.com/llvm/llvm-project/commit/c19a81931ce47278967056927aa87a7685e5447c
  Author: Dominik Wójt <dominik.wojt at arm.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M libcxx/modules/std/atomic.inc

  Log Message:
  -----------
  [libc++] protect absent atomic types with ifdef (#82351)

Otherwise modules.std-module.sh.cpp test fails with following error:
    error: no member named 'atomic_signed_lock_free' in namespace 'std'
when the types are not available.


  Commit: 0ed61db6fdf683f8def06e6a6d206d02b821cd81
      https://github.com/llvm/llvm-project/commit/0ed61db6fdf683f8def06e6a6d206d02b821cd81
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
    M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp

  Log Message:
  -----------
  [MC/DC] Refactor: Isolate the final result out of TestVector (#82282)

To reduce conditional judges in the loop in `findIndependencePairs()`, I
have tried a couple of tweaks.

* Isolate the final result in `TestVectors`

`using TestVectors = llvm::SmallVector<std::pair<TestVector,
CondState>>;`
The final result was just piggybacked on `TestVector`, so it has been
isolated.

* Filter out and sort `ExecVectors` by the final result

It will cost more in constructing `ExecVectors`, but it can reduce at
least one conditional judgement in the loop.


  Commit: ed1aabef1da1b074b71ad523978ea836d6e7d2e7
      https://github.com/llvm/llvm-project/commit/ed1aabef1da1b074b71ad523978ea836d6e7d2e7
  Author: mahesh-attarde <145317060+mahesh-attarde at users.noreply.github.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp

  Log Message:
  -----------
  remove expensive copy of options passed (#82577)

Codegen option is passed copy by value which 138 bytes of copy and used
as read-only. Making pass by const reference.


  Commit: d7c80bba698bded48c1df4b4bb7424a181aa6195
      https://github.com/llvm/llvm-project/commit/d7c80bba698bded48c1df4b4bb7424a181aa6195
  Author: leecheechen <chenli at loongson.cn>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/test/CodeGen/LoongArch/lasx/intrinsic-permi.ll

  Log Message:
  -----------
  [llvm][LoongArch] Improve loongarch_lasx_xvpermi_q instrinsic (#82984)

For instruction xvpermi.q, only [1:0] and [5:4] bits of operands[3] are
used. The unused bits in operands[3] need to be set to 0 to avoid
causing undefined behavior.


  Commit: 512a8a78a7f3bffc41cd7c00788eb099519f4625
      https://github.com/llvm/llvm-project/commit/512a8a78a7f3bffc41cd7c00788eb099519f4625
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
    M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp

  Log Message:
  -----------
  [MC/DC] Introduce `class TestVector` with a pair of `BitVector` (#82174)

This replaces `SmallVector<CondState>` and emulates it.

- -------- True  False DontCare
- Values:  True  False False
- Visited: True  True  False

`findIndependencePairs()` can be optimized with logical ops.

FIXME: Specialize `findIndependencePairs()` for the single word.


  Commit: 575bf33a27307e1ff2713f239b81ac5329b40096
      https://github.com/llvm/llvm-project/commit/575bf33a27307e1ff2713f239b81ac5329b40096
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/load-store-128-bit-tile.mlir

  Log Message:
  -----------
  [mlir][ArmSME] Remove XFAIL for load-store-128-bit-tile

https://gitlab.com/qemu-project/qemu/-/issues/1833 was fixed by
https://gitlab.com/qemu-project/qemu/-/commit/4b3520fd93cd49cc56dfcab45d90735cc2e35af7
which was included in v8.1.1.

The buildbot is now using v8.1.3 so the test is passing.

https://lab.llvm.org/buildbot/#/builders/179/builds/9468


  Commit: aaec22ffbc9fb0a3b12957166ebf35a7bb2c31e0
      https://github.com/llvm/llvm-project/commit/aaec22ffbc9fb0a3b12957166ebf35a7bb2c31e0
  Author: martinboehme <mboehme at google.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysis.h
    M clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h

  Log Message:
  -----------
  [clang][dataflow] Remove deprecated `ValueModel::merge()` function. (#82602)

I'm not aware of any remaining overrides of this function.

While I'm here, change an outdated comment in DataflowAnalysis.h that
still
referred to `merge()`. I've made the comment more general, referring
simply to
`ValueModel`, as we shouldn't really be repeating the documentation of
that
class here anyway.


  Commit: 4e9fe860d2dd462e514586a3b90ad373dc07b797
      https://github.com/llvm/llvm-project/commit/4e9fe860d2dd462e514586a3b90ad373dc07b797
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    A llvm/test/Transforms/ConstraintElimination/sext-signed-predicates.ll
    A llvm/test/Transforms/ConstraintElimination/sext-unsigned-predicates.ll
    R llvm/test/Transforms/ConstraintElimination/sext.ll

  Log Message:
  -----------
  [ConstraintElim] Add additional sext tests with unsigned predicates.


  Commit: a1bbba06eabc5ddf533e611d15fddcfd0a8e79db
      https://github.com/llvm/llvm-project/commit/a1bbba06eabc5ddf533e611d15fddcfd0a8e79db
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M lldb/test/API/tools/lldb-server/TestNonStop.py

  Log Message:
  -----------
  [lldb][test][Windows] Fix NonStop tests on case insensitive file systems

On a case insensitive file sytem, the build dir for `test_multiple_c` and
`test_multiple_C` are the same and therefore the log files are in the same
place. This means one tries to clear the log file for the other.

To fix this, make the names unique by adding the meaning of each
protocol packet.

https://sourceware.org/gdb/current/onlinedocs/gdb.html/Packets.html#Packets


  Commit: e421c12e47e2912d685dafeb8289b7118ad8b2e1
      https://github.com/llvm/llvm-project/commit/e421c12e47e2912d685dafeb8289b7118ad8b2e1
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains-vplan.ll

  Log Message:
  -----------
  [VPlan] Remove left-over CHECK-NOT line.

This removes a  CHECK-NOT: vector.body line from the test which seems to
imply the test does not get vectorized, but it does now.

This line was left over from when the test was pre-committed, remove it.


  Commit: 288d317fff42b46151b132ca2bdc4b0ca6d28d6f
      https://github.com/llvm/llvm-project/commit/288d317fff42b46151b132ca2bdc4b0ca6d28d6f
  Author: Kai Sasaki <lewuathe at gmail.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M mlir/lib/Conversion/ComplexToStandard/ComplexToStandard.cpp
    M mlir/test/Conversion/ComplexToStandard/convert-to-standard.mlir

  Log Message:
  -----------
  [mlir][complex] Support Fastmath flag in conversion of complex.div to standard (#82729)

Support Fastmath flag to convert `complex.div` to standard dialects. 

See:
https://discourse.llvm.org/t/rfc-fastmath-flags-support-in-complex-dialect/71981


  Commit: 9796b0e9f91bc8ff00d2616fa3656e1ca848c05c
      https://github.com/llvm/llvm-project/commit/9796b0e9f91bc8ff00d2616fa3656e1ca848c05c
  Author: Vyacheslav Levytskyy <89994100+VyacheslavLevytskyy at users.noreply.github.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    A llvm/test/CodeGen/SPIRV/freeze.ll

  Log Message:
  -----------
  Add support for the 'freeze' instruction (#82979)

This PR is to add support for the 'freeze' instruction:
https://llvm.org/docs/LangRef.html#freeze-instruction

There is no way to implement `freeze` correctly without support on
SPIR-V standard side, but we may at least address a simple (static) case
when undef/poison value presence is obvious. The main benefit of even
incomplete `freeze` support is preventing of translation from crashing
due to lack of support on legalization and instruction selection steps.


  Commit: ada70f50a5591839d0c81a167ca64ce98ab2d088
      https://github.com/llvm/llvm-project/commit/ada70f50a5591839d0c81a167ca64ce98ab2d088
  Author: Vyacheslav Levytskyy <89994100+VyacheslavLevytskyy at users.noreply.github.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_variable_length_array/vararr.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_variable_length_array/vararr_spec_const.ll

  Log Message:
  -----------
  [SPIR-V]: add SPIR-V extension: SPV_INTEL_variable_length_array (#83002)

This PR adds SPIR-V extension SPV_INTEL_variable_length_array that
allows to allocate local arrays whose number of elements is unknown at
compile time:
* add a new SPIR-V internal intrinsic:int_spv_alloca_array
* legalize G_STACKSAVE and G_STACKRESTORE
* implement allocation of arrays (previously getArraySize() of
AllocaInst was not used)
* add tests


  Commit: aa436493ab7ad4cf323b0189c15c59ac9dc293c7
      https://github.com/llvm/llvm-project/commit/aa436493ab7ad4cf323b0189c15c59ac9dc293c7
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/IR/PrintPasses.h
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/IRPrintingPasses.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/IRPrinter/IRPrintingPasses.cpp
    M llvm/test/DebugInfo/Generic/inline-alloca-ordering.ll
    M llvm/test/DebugInfo/Generic/inline-dbg-values.ll
    M llvm/test/DebugInfo/dpvalue-print-nocrash.ll
    A llvm/test/DebugInfo/print-non-instruction-debug-info.ll
    M llvm/test/Transforms/Attributor/ArgumentPromotion/pr33641_remove_arg_dbgvalue.ll
    M llvm/test/Transforms/CallSiteSplitting/callsite-split-preserve-debug.ll
    M llvm/test/Transforms/CodeGenPrepare/debug-info-on-skipped-selects.ll
    M llvm/test/Transforms/DeadArgElim/2010-04-30-DbgInfo.ll
    M llvm/test/Transforms/IROutliner/outlining-debug-statements.ll
    M llvm/test/Transforms/LoopRotate/dbgvalue.ll
    M llvm/test/Transforms/LoopRotate/delete-dbg-values.ll
    M llvm/test/Transforms/ObjCARC/ensure-that-exception-unwind-path-is-visited.ll
    M llvm/test/Transforms/SROA/dbg-inline.ll

  Log Message:
  -----------
  Reapply "[RemoveDIs] Print non-intrinsic debug info in textual IR output (#79281)"

Fixes the prior issue in which the symbol for a cl-arg was unavailable to
some binaries.

This reverts commit dc06d75ab27b4dcae2940fc386fadd06f70faffe.


  Commit: d128448efdd4e2bf3c9bc9a5b43ae642aa78026f
      https://github.com/llvm/llvm-project/commit/d128448efdd4e2bf3c9bc9a5b43ae642aa78026f
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/IR/PrintPasses.h
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/IRPrintingPasses.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/IRPrinter/IRPrintingPasses.cpp
    M llvm/test/DebugInfo/Generic/inline-alloca-ordering.ll
    M llvm/test/DebugInfo/Generic/inline-dbg-values.ll
    M llvm/test/DebugInfo/dpvalue-print-nocrash.ll
    R llvm/test/DebugInfo/print-non-instruction-debug-info.ll
    M llvm/test/Transforms/Attributor/ArgumentPromotion/pr33641_remove_arg_dbgvalue.ll
    M llvm/test/Transforms/CallSiteSplitting/callsite-split-preserve-debug.ll
    M llvm/test/Transforms/CodeGenPrepare/debug-info-on-skipped-selects.ll
    M llvm/test/Transforms/DeadArgElim/2010-04-30-DbgInfo.ll
    M llvm/test/Transforms/IROutliner/outlining-debug-statements.ll
    M llvm/test/Transforms/LoopRotate/dbgvalue.ll
    M llvm/test/Transforms/LoopRotate/delete-dbg-values.ll
    M llvm/test/Transforms/ObjCARC/ensure-that-exception-unwind-path-is-visited.ll
    M llvm/test/Transforms/SROA/dbg-inline.ll

  Log Message:
  -----------
  Revert "Reapply "[RemoveDIs] Print non-intrinsic debug info in textual IR output (#79281)""

Reverted due to some test failures on some buildbots.

https://lab.llvm.org/buildbot/#/builders/67/builds/14669

This reverts commit aa436493ab7ad4cf323b0189c15c59ac9dc293c7.


  Commit: 2c9b6c1b36b8185299de083c3058e0c1e7760442
      https://github.com/llvm/llvm-project/commit/2c9b6c1b36b8185299de083c3058e0c1e7760442
  Author: Dhruv Chawla (work) <dhruvc at nvidia.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/aarch64-minmaxv.ll
    M llvm/test/CodeGen/AArch64/vecreduce-umax-legalization.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Improve codegen for G_VECREDUCE_{SMIN,SMAX,UMIN,UMAX} for odd-sized vectors (#82740)

i8 vectors do not have their sizes changed as I noticed regressions in
some tests when that was done.

This patch also adds support for most G_VECREDUCE_* operations to
moreElementsVector in LegalizerHelper.cpp.

The code for getting the "neutral" element is taken almost exactly as it
is in SelectionDAG, with the exception that support for
G_VECREDUCE_{FMAXIMUM,FMINIMUM} was not added.

The code for SelectionDAG is located at
SelectionDAG::getNeutralELement().


  Commit: ca0560d8c821fa93e34cf84362fd523b546ba426
      https://github.com/llvm/llvm-project/commit/ca0560d8c821fa93e34cf84362fd523b546ba426
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/DSInstructions.td
    M llvm/test/MC/AMDGPU/gfx12_asm_ds_alias.s

  Log Message:
  -----------
  [AMDGPU] Add new aliases ds_subrev_u32/u64 for ds_rsub_u32/u64 (#83118)

Note that the instructions have not been renamed and that there are no
corresponding aliases for ds_rsub_rtn_u32/u64. This matches SP3
behavior.


  Commit: d273a1970e3703cc33ef70382a89e9075287d403
      https://github.com/llvm/llvm-project/commit/d273a1970e3703cc33ef70382a89e9075287d403
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/test/MC/AMDGPU/gfx11_asm_mtbuf_alias.s
    M llvm/test/MC/AMDGPU/gfx11_asm_mubuf_alias.s
    M llvm/test/MC/AMDGPU/gfx11_asm_smem_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sop2_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mtbuf_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mubuf_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vflat_alias.s

  Log Message:
  -----------
  [AMDGPU] Shorten mnemonic alias tests (#83121)

Only test one example of each alias. Do not test error cases which are
already tested in the normal (non-alias) tests.


  Commit: 56ad6d19397c4286fa412f5070fd1a563b6c43e4
      https://github.com/llvm/llvm-project/commit/56ad6d19397c4286fa412f5070fd1a563b6c43e4
  Author: michaelselehov <michael.selehov at amd.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineLoopInfo.h
    M llvm/lib/CodeGen/MachineLICM.cpp
    M llvm/lib/CodeGen/MachineLoopInfo.cpp
    A llvm/test/CodeGen/AMDGPU/copy-hoist-no-spills.ll

  Log Message:
  -----------
  [MachineLICM] Hoist COPY instruction only when user can be hoisted (#81735)

befa925acac8fd6a9266e introduced preliminary hoisting of COPY
instructions when the user of the COPY is inside the same loop. That
optimization appeared to be too aggressive and hoisted too many COPY's
greatly increasing register pressure causing performance regressions for
AMDGPU target.

This is intended to fix the regression by hoisting COPY instruction only
if either:
 - User of COPY can be hoisted (other args are invariant) 
 or
 - Hoisting COPY doesn't bring high register pressure


  Commit: 2e4643a53e8877d6a237b18cb2ad3f814899881f
      https://github.com/llvm/llvm-project/commit/2e4643a53e8877d6a237b18cb2ad3f814899881f
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.ll

  Log Message:
  -----------
  AMDGPU: Regenerate baseline test checks


  Commit: ca66f7469fe71d78586eebe22cd0acab066cf65f
      https://github.com/llvm/llvm-project/commit/ca66f7469fe71d78586eebe22cd0acab066cf65f
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    R llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.dispatch.id.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dispatch.id.ll

  Log Message:
  -----------
  AMDGPU: Merge tests for llvm.amdgcn.dispatch.id


  Commit: a28a7d41ef1a60795719fa3e6e2f7dc3b7fc3d27
      https://github.com/llvm/llvm-project/commit/a28a7d41ef1a60795719fa3e6e2f7dc3b7fc3d27
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

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

  Log Message:
  -----------
  [clang][Interp][NFC] Remove leftover comments


  Commit: 19cec9ca1206c4707064cc2fc2344de75dfbd8c9
      https://github.com/llvm/llvm-project/commit/19cec9ca1206c4707064cc2fc2344de75dfbd8c9
  Author: Hirofumi Nakamura <k.nakamura.hirofumi at gmail.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/include/clang/Format/Format.h
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/WhitespaceManager.cpp
    M clang/lib/Format/WhitespaceManager.h
    M clang/unittests/Format/FormatTestTableGen.cpp

  Log Message:
  -----------
  [clang-format] Add AlignConsecutiveTableGenDefinitions option. (#83008)

To align TableGen consecutive definitions.


  Commit: d6ff986dd276e06c1e290759bc934431ca3ec0f4
      https://github.com/llvm/llvm-project/commit/d6ff986dd276e06c1e290759bc934431ca3ec0f4
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-splat-scalable.ll
    M llvm/test/CodeGen/AArch64/dag-combine-concat-vectors.ll
    M llvm/test/CodeGen/AArch64/fold-int-pow2-with-fmul-or-fdiv.ll
    M llvm/test/CodeGen/AArch64/sve-calling-convention-mixed.ll
    M llvm/test/CodeGen/AArch64/sve-expand-div.ll
    M llvm/test/CodeGen/AArch64/sve-fp-int-min-max.ll
    M llvm/test/CodeGen/AArch64/sve-gather-scatter-dag-combine.ll
    M llvm/test/CodeGen/AArch64/sve-hadd.ll
    M llvm/test/CodeGen/AArch64/sve-int-arith-imm.ll
    M llvm/test/CodeGen/AArch64/sve-int-arith.ll
    M llvm/test/CodeGen/AArch64/sve-knownbits.ll
    M llvm/test/CodeGen/AArch64/sve-pred-selectop.ll
    M llvm/test/CodeGen/AArch64/sve-pred-selectop3.ll
    M llvm/test/CodeGen/AArch64/sve-sdiv-pow2.ll
    M llvm/test/CodeGen/AArch64/sve-splat-sext.ll
    M llvm/test/CodeGen/AArch64/sve-srem-combine-loop.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-combine-rshrnb.ll

  Log Message:
  -----------
  [LLVM][tests/CodeGen/AArch64] Convert instances of ConstantExpr based splats to use splat().

This is mostly NFC but some output does change due to consistently
inserting into poison rather than undef and using i64 as the index
type for inserts.


  Commit: dbb65dd330cc1696d7ca3dedc7aa9fa12c55a075
      https://github.com/llvm/llvm-project/commit/dbb65dd330cc1696d7ca3dedc7aa9fa12c55a075
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/ctpop-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/mscatter-combine.ll
    M llvm/test/CodeGen/RISCV/rvv/pr61561.ll
    M llvm/test/CodeGen/RISCV/rvv/pr63459.ll
    M llvm/test/CodeGen/RISCV/rvv/stepvector.ll
    M llvm/test/CodeGen/RISCV/rvv/strided-load-store.ll
    M llvm/test/CodeGen/RISCV/rvv/undef-earlyclobber-chain.ll
    M llvm/test/CodeGen/RISCV/rvv/vandn-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfpext-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptosi-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptosi-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptoui-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptoui-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptrunc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vnmsub-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vror-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vselect-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vsext-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vsext-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vsitofp-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vsitofp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vtrunc-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vtrunc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vuitofp-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vuitofp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vwadd-mask-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vwadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vwsll-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vwsll-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vwsub-mask-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vzext-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vzext-vp.ll

  Log Message:
  -----------
  [LLVM][tests/CodeGen/RISCV] Convert instances of ConstantExpr based splats to use splat().

This is mostly NFC but some output does change due to consistently
inserting into poison rather than undef and using i64 as the index
type for inserts.


  Commit: fd07b8f809eb64af9b29331ff6b94904b3159f84
      https://github.com/llvm/llvm-project/commit/fd07b8f809eb64af9b29331ff6b94904b3159f84
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/AArch64/VectorUtils_heuristics.ll
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-sdiv.ll
    M llvm/test/Transforms/InstCombine/add.ll
    M llvm/test/Transforms/InstCombine/bitcast.ll
    M llvm/test/Transforms/InstCombine/div.ll
    M llvm/test/Transforms/InstCombine/fdiv.ll
    M llvm/test/Transforms/InstCombine/fmul.ll
    M llvm/test/Transforms/InstCombine/icmp-vec.ll
    M llvm/test/Transforms/InstCombine/intrinsics.ll
    M llvm/test/Transforms/InstCombine/load-store-forward.ll
    M llvm/test/Transforms/InstCombine/logical-select.ll
    M llvm/test/Transforms/InstCombine/masked_intrinsics.ll
    M llvm/test/Transforms/InstCombine/mul-masked-bits.ll
    M llvm/test/Transforms/InstCombine/rem-mul-shl.ll
    M llvm/test/Transforms/InstCombine/select.ll
    M llvm/test/Transforms/InstCombine/shift.ll
    M llvm/test/Transforms/InstCombine/sub.ll
    M llvm/test/Transforms/InstCombine/udiv-simplify.ll
    M llvm/test/Transforms/InstCombine/vec_shuffle-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/vec_shuffle.ll

  Log Message:
  -----------
  [LLVM][tests/Transforms/InstCombine] Convert instances of ConstantExpr based splats to use splat().

This is mostly NFC but some output does change due to consistently
inserting into poison rather than undef and using i64 as the index
type for inserts.


  Commit: 6a17929e9fe5c5558feadfa2dcc95d27b6a720af
      https://github.com/llvm/llvm-project/commit/6a17929e9fe5c5558feadfa2dcc95d27b6a720af
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/test/Transforms/InstSimplify/ConstProp/vscale-inseltpoison.ll
    M llvm/test/Transforms/InstSimplify/ConstProp/vscale.ll
    M llvm/test/Transforms/InstSimplify/cmp-vec-fast-path.ll
    M llvm/test/Transforms/InstSimplify/fp-nan.ll
    M llvm/test/Transforms/InstSimplify/shift.ll
    M llvm/test/Transforms/InstSimplify/vscale-inseltpoison.ll
    M llvm/test/Transforms/InstSimplify/vscale.ll

  Log Message:
  -----------
  [LLVM][tests/Transforms/InstSimplify] Convert instances of ConstantExpr based splats to use splat().

This is mostly NFC but some output does change due to consistently
inserting into poison rather than undef and using i64 as the index
type for inserts.


  Commit: 900bea9b1ce095123c03e5bb8834d8fb168378a8
      https://github.com/llvm/llvm-project/commit/900bea9b1ce095123c03e5bb8834d8fb168378a8
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/test/Analysis/CostModel/AArch64/ext-rhadd.ll
    M llvm/test/CodeGen/Generic/expand-vp-load-store.ll
    M llvm/test/Transforms/AggressiveInstCombine/vector-or-load.ll
    M llvm/test/Transforms/MemCpyOpt/vscale-crashes.ll
    M llvm/test/Transforms/VectorCombine/RISCV/vpintrin-scalarization.ll

  Log Message:
  -----------
  [LLVM][test] Convert remaining instances of ConstantExpr based splats to use splat().

This is mostly NFC but some output does change due to consistently
inserting into poison rather than undef and using i64 as the index
type for inserts.


  Commit: 5ec535b1bda4c87aac951e65cc5b65c910e92579
      https://github.com/llvm/llvm-project/commit/5ec535b1bda4c87aac951e65cc5b65c910e92579
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/test/MC/AMDGPU/gfx11_asm_mtbuf_alias.s
    M llvm/test/MC/AMDGPU/gfx11_asm_mubuf_alias.s
    M llvm/test/MC/AMDGPU/gfx11_asm_smem_alias.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_ds_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sop2_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sopk_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mtbuf_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mubuf_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vflat_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_aliases.s

  Log Message:
  -----------
  [AMDGPU] Regenerate mnemonic alias checks (#83130)

Regenerate checks for the full output from the assembler, not just the
encoding bytes, to make it obvious that the alias has been mapped to a
different mnemonic.


  Commit: f2bb6c4415954535b32780cd5fb48411ebe0042c
      https://github.com/llvm/llvm-project/commit/f2bb6c4415954535b32780cd5fb48411ebe0042c
  Author: Natalie Chouinard <sudonatalie at google.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/test/CodeGenHLSL/semantics/GroupIndex-codegen.hlsl

  Log Message:
  -----------
  [NFC][HLSL] Fix broken test (#83062)

Noticed while implementing #82536 that this test was also missing the
call the FileCheck.


  Commit: 2e39b57837aa1790b3ee078fa532bb1748a609c7
      https://github.com/llvm/llvm-project/commit/2e39b57837aa1790b3ee078fa532bb1748a609c7
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/IR/PrintPasses.h
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/IRPrintingPasses.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/IRPrinter/IRPrintingPasses.cpp
    M llvm/test/DebugInfo/Generic/inline-alloca-ordering.ll
    M llvm/test/DebugInfo/Generic/inline-dbg-values.ll
    M llvm/test/DebugInfo/dpvalue-print-nocrash.ll
    A llvm/test/DebugInfo/print-non-instruction-debug-info.ll
    M llvm/test/Transforms/Attributor/ArgumentPromotion/pr33641_remove_arg_dbgvalue.ll
    M llvm/test/Transforms/DeadArgElim/2010-04-30-DbgInfo.ll
    M llvm/test/Transforms/IROutliner/outlining-debug-statements.ll

  Log Message:
  -----------
  Reapply "[RemoveDIs] Print non-intrinsic debug info in textual IR output (#79281)"

This reapplication changes debug intrinsic declaration removal to only take
place when printing final IR, so that the processing format of the Module
does not affect the output.

This reverts commit d128448efdd4e2bf3c9bc9a5b43ae642aa78026f.


  Commit: 8c2ae42b3e1c6aa7c18f873edcebff7c0b45a37e
      https://github.com/llvm/llvm-project/commit/8c2ae42b3e1c6aa7c18f873edcebff7c0b45a37e
  Author: Kupa-Martin <84517188+Kupa-Martin at users.noreply.github.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/Expr.h
    M clang/lib/AST/Expr.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/test/Sema/builtins-elementwise-math.c
    A clang/test/Sema/warn-compare-enum-types-mismatch.c
    R clang/test/Sema/warn-conditional-emum-types-mismatch.c
    A clang/test/Sema/warn-conditional-enum-types-mismatch.c
    M clang/test/Sema/warn-overlap.c

  Log Message:
  -----------
  [Clang][Sema] Fix missing warning when comparing mismatched enums in … (#81418)

…C mode

Factored logic from `CheckImplicitConversion` into new methods
`Expr::getEnumConstantDecl` and `Expr::getEnumCoercedType` for use in
`checkEnumArithmeticConversions`.

Fix #29217


  Commit: 13c359aa9b5eae0715494505d989cfc8ed1d39cf
      https://github.com/llvm/llvm-project/commit/13c359aa9b5eae0715494505d989cfc8ed1d39cf
  Author: Simon Pilgrim <RKSimon at users.noreply.github.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/extract-concat.ll
    M llvm/test/CodeGen/X86/vec_anyext.ll
    M llvm/test/CodeGen/X86/vec_cast.ll

  Log Message:
  -----------
  [X86] ReplaceNodeResults - truncate sub-128-bit vectors as shuffles directly (#83120)

We were scalarizing these truncations, but in most cases we can widen the source vector to 128-bits and perform the truncation as a shuffle directly (which will usually lower as a PACK or PSHUFB).

For the cases where the widening and shuffle isn't legal we can leave it to generic legalization to scalarize for us.

Fixes #81883


  Commit: b3ae6c205e4afcf1a9f7d7204a659a27ca700237
      https://github.com/llvm/llvm-project/commit/b3ae6c205e4afcf1a9f7d7204a659a27ca700237
  Author: Alexander Yermolovich <43973793+ayermolo at users.noreply.github.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/split-debug.c

  Log Message:
  -----------
  [CLANG][DWARF] Do not emit -ggnu-pubnames for split dwarf version 5. (#82840)

When -gsplit-dwarf is passed in clang emmmits -ggnu-pubnames which
results in
.debug_gnu_pubnames/..debug_gnu_pubtypes being generated.
This is used by GDB, but not by LLDB.
Changed so that these sections are not emitted for LLDB tuning.


  Commit: 04db60d15069494f4effad7a1001965904b36e6f
      https://github.com/llvm/llvm-project/commit/04db60d15069494f4effad7a1001965904b36e6f
  Author: choikwa <5455710+choikwa at users.noreply.github.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
    A llvm/test/CodeGen/AMDGPU/si-fold-reg-sequence.mir

  Log Message:
  -----------
  [AMDGPU] Prevent hang in SIFoldOperands by caching uses (#82099)

foldOperands() for REG_SEQUENCE has recursion that can trigger an infinite loop
as the method can modify the operand order, which messes up the range-based
for loop. This patch fixes the issue by caching the uses for processing beforehand,
and then iterating over the cache rather using the instruction iterator.


  Commit: 70e61f5bbbb0958bebedffb1be285fdefb0e2f0a
      https://github.com/llvm/llvm-project/commit/70e61f5bbbb0958bebedffb1be285fdefb0e2f0a
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/ByteCodeExprGen.h
    M clang/lib/AST/Interp/ByteCodeStmtGen.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/Opcodes.td

  Log Message:
  -----------
  [clang][Interp][NFC] Rename InitPtr{,Pop} to FinishInit{,Pop}

The old name clashes with the Init opcode.


  Commit: 48bc9022b49cc452bd871c4942e5a059d226c9eb
      https://github.com/llvm/llvm-project/commit/48bc9022b49cc452bd871c4942e5a059d226c9eb
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    A llvm/test/Transforms/MemProfContextDisambiguation/inlined3.ll

  Log Message:
  -----------
  [MemProf] Fix the stack updating handling of pruned contexts (#81322)

Fix a bug in the handling of cases where a callsite's stack ids
partially overlap with the pruned context during matching of
calls to the graph contructed from the profiled contexts. This fix makes
the code match the comments.


  Commit: 822142ffdfbe93f213c2c6b3f2aec7fe5f0af072
      https://github.com/llvm/llvm-project/commit/822142ffdfbe93f213c2c6b3f2aec7fe5f0af072
  Author: Joachim <jenke at itc.rwth-aachen.de>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M openmp/libompd/src/CMakeLists.txt
    M openmp/libompd/src/omp-icv.cpp
    M openmp/runtime/src/kmp.h

  Log Message:
  -----------
  [OpenMP][OMPD] libompd must not link libomp (#83119)

Fixes a regression introduced in 91ccd8248.
The code for libompd includes kmp.h for enum kmp_sched. The dependency
to hwloc is not necessary. Avoid the dependency by skipping the
definitions in kmp.h using types from hwloc.h.

Fixes #80750


  Commit: 55783bd0f9cfc30aa93c718919dab5419d86a2c6
      https://github.com/llvm/llvm-project/commit/55783bd0f9cfc30aa93c718919dab5419d86a2c6
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/lib/Headers/__clang_hip_math.h

  Log Message:
  -----------
  [HIP] fix host min/max in header (#82956)

CUDA defines min/max functions for host in global namespace.
HIP header needs to define them too to be compatible.
Currently only min/max(int, int) is defined. This causes
wrong result for arguments that are out of range for int.
This patch defines host min/max functions to be compatible
with CUDA.

Also allows users to define
`__HIP_NO_HOST_MIN_MAX_IN_GLOBAL_NAMESPACE__` to disable
host max/min in global namespace.

min/max functions with mixed signed/unsigned integer
parameters are not defined unless
`__HIP_DEFINE_MIXED_HOST_MIN_MAX__` is defined.

Fixes: SWDEV-446564


  Commit: d612d593eff4af7976250023bbff34d2c10f7526
      https://github.com/llvm/llvm-project/commit/d612d593eff4af7976250023bbff34d2c10f7526
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/Opcodes.td
    M clang/test/AST/Interp/c.c

  Log Message:
  -----------
  [clang][Interp] Fix local lvalue compound literals

Same fix we had for global ones: leave a pointer on the stack.


  Commit: 4cba5957e6ffdbeb44174d32da892ad09b3eed88
      https://github.com/llvm/llvm-project/commit/4cba5957e6ffdbeb44174d32da892ad09b3eed88
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
    M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir

  Log Message:
  -----------
  [mlir][ROCDL] Set the LLVM data layout when lowering to ROCDL LLVM (#74501)

In order to ensure operations lower correctly (especially
memref.addrspacecast, which relies on the data layout benig set
correctly then dealing with dynamic memrefs) and to prevent compilation
issues later down the line, set the `llvm.data_layout` attribute on GPU
modules when lowering their contents to a ROCDL / AMDGPU target.

If there's a good way to test the embedded string to prevent it from
going out of sync with the LLVM TargetMachine, I'd appreciate hearing
about it. (Or, alternatively, if there's a place I could farctor the
string out to).


  Commit: b70f42a430723e00d76cc99d348e4f2fec221cf1
      https://github.com/llvm/llvm-project/commit/b70f42a430723e00d76cc99d348e4f2fec221cf1
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/ByteCodeExprGen.h
    A clang/test/AST/Interp/spaceship.cpp

  Log Message:
  -----------
  [clang][Interp] Handle PseudoObjectExprs

Evaluate all the semantic expressions.


  Commit: 8b56d9ef4d946f772e6b7a8d508f34b586f684a0
      https://github.com/llvm/llvm-project/commit/8b56d9ef4d946f772e6b7a8d508f34b586f684a0
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-objcopy.rst
    M llvm/tools/llvm-objcopy/CommonOpts.td
    M llvm/tools/llvm-objcopy/ObjcopyOpts.td

  Log Message:
  -----------
  [llvm-objcopy] Improve help messages (#82830)

https://reviews.llvm.org/D63820 added
llvm/docs/CommandGuide/llvm-objcopy.rst with clearer semantics, e.g.

```
Read a list of names from the file <filename> and mark defined symbols with those names as global in the output

instead of the help message
Read a list of symbols from <filename> and marks them global" (omits "defined")

Rename sections called <old> to <new> in the output

instead of the help message
Rename a section from old to new (multiple sections may be named <old>
```

Sync the help messages to incorporate the CommandGuide improvement.

While here, switch to the conventional imperative sentences for a few
options. Additionally, mark some options as grp_coff or grp_macho.


  Commit: 8a87f763a6841832e71bcd24dea45eac8d2dbee1
      https://github.com/llvm/llvm-project/commit/8a87f763a6841832e71bcd24dea45eac8d2dbee1
  Author: Adrian Prantl <adrian-prantl at users.noreply.github.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
    M lldb/source/Target/Target.cpp

  Log Message:
  -----------
  Aim debugserver workaround more precisely. (#83099)


  Commit: b98e6a5ced8328fdefa9a519ae98052a29462e23
      https://github.com/llvm/llvm-project/commit/b98e6a5ced8328fdefa9a519ae98052a29462e23
  Author: Elvina Yakubova <elvinayakubova at gmail.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/lib/Passes/Instrumentation.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/test/AArch64/exclusive-instrument.s

  Log Message:
  -----------
  [BOLT][AArch64] Skip BBs only instead of functions (#81989)

After [this
](https://github.com/llvm/llvm-project/commit/846eb76761c858cbfc75700bf68445e0e3ade48e)
commit we noticed that the size of fdata file decreased a lot. That's
why the better and more precise way will be to skip basic blocks with
exclusive instructions only instead of the whole function


  Commit: 183b6b56f2602ea171502f9f2843c2c1caca2919
      https://github.com/llvm/llvm-project/commit/183b6b56f2602ea171502f9f2843c2c1caca2919
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/lib/AST/Interp/EvaluationResult.cpp
    M clang/test/AST/Interp/cxx20.cpp

  Log Message:
  -----------
  [clang][Interp] Ignore unnamed bitfields when checking init

Unnamed bitfields need to be ignored here.


  Commit: ed35ad18ae7b5e61c24b63c22028ee0d1ba10e19
      https://github.com/llvm/llvm-project/commit/ed35ad18ae7b5e61c24b63c22028ee0d1ba10e19
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/include/llvm/IR/BasicBlock.h
    M llvm/include/llvm/IR/DebugProgramInstruction.h
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/DebugProgramInstruction.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/unittests/IR/DebugInfoTest.cpp

  Log Message:
  -----------
  [RemoveDIs][DebugInfo] Add DPValue checks to the verifier, prepare DPValue for parsing support (#79810)

As part of the RemoveDIs project, this patch adds support for checking
DPValues in the verifier. Although this is not strictly parsing-related,
and we currently automatically convert back to the old debug info format
immediately after parsing, we are approaching the point where the we can
operate end-to-end in the new debug info format, at which point it is
appropriate that we can actually validate modules in the new format.
This patch also contains some changes that aren't strictly
parsing-related, but are necessary class refactors for parsing support,
and are used in the verifier checks (i.e. changing the DILocalVariable
field to be a tracking MD reference, and adding a Verifier check to
confirm that it is a DILocalVariable).


  Commit: a6b4e29c77ceb49e16bda38cfc4eddc2c4c76c0b
      https://github.com/llvm/llvm-project/commit/a6b4e29c77ceb49e16bda38cfc4eddc2c4c76c0b
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

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

  Log Message:
  -----------
  [libc] Re-enable several GPU math smoke tests (#83147)

Summary:
These were originally disabled after some changes caused them to
regress. It seems that whatever broke them the first time a few months
ago has been fixed elsewhere and they now work again. Re-enable all the
ones that work. There are still a few that we need to look into, but
this is a good start.


  Commit: c1c2c928f935ba142e4ee7804dd3ff0ebf0ce4c7
      https://github.com/llvm/llvm-project/commit/c1c2c928f935ba142e4ee7804dd3ff0ebf0ce4c7
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M flang/test/Lower/CUDA/cuda-mod.cuf
    M flang/test/Lower/CUDA/cuda-module-use.cuf

  Log Message:
  -----------
  [flang][cuda][NFC] Add test for attributes on procedure (#83044)

Similar to #82844. Test that CUDA attributes on procedure are correctly
imported.


  Commit: b50bcc7ffb6ad6caa4c141a22915ab59f725b7ae
      https://github.com/llvm/llvm-project/commit/b50bcc7ffb6ad6caa4c141a22915ab59f725b7ae
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M libcxx/modules/modules.json.in

  Log Message:
  -----------
  [libc++][modules] Fixes naming inconsistency. (#83036)

The modules used is-standard-library and is-std-library. The latter is
the name used in the SG15 proposal,

Fixes: https://github.com/llvm/llvm-project/issues/82879


  Commit: aa95aa69b96f51a3c19a24a0387ebc1fb7e6e52c
      https://github.com/llvm/llvm-project/commit/aa95aa69b96f51a3c19a24a0387ebc1fb7e6e52c
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M libc/config/gpu/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/include/llvm-libc-macros/CMakeLists.txt
    M libc/include/llvm-libc-macros/math-macros.h
    M libc/spec/stdc.td
    M libc/src/__support/FPUtil/ManipulationFunctions.h
    M libc/src/__support/FPUtil/dyadic_float.h
    M libc/src/math/CMakeLists.txt
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/ilogb.cpp
    M libc/src/math/generic/ilogbf.cpp
    A libc/src/math/generic/ilogbf128.cpp
    M libc/src/math/generic/ilogbl.cpp
    A libc/src/math/generic/llogb.cpp
    A libc/src/math/generic/llogbf.cpp
    A libc/src/math/generic/llogbf128.cpp
    A libc/src/math/generic/llogbl.cpp
    M libc/src/math/generic/logbf.cpp
    A libc/src/math/generic/logbf128.cpp
    A libc/src/math/ilogbf128.h
    A libc/src/math/llogb.h
    A libc/src/math/llogbf.h
    A libc/src/math/llogbf128.h
    A libc/src/math/llogbl.h
    A libc/src/math/logbf128.h
    M libc/test/src/math/smoke/CMakeLists.txt
    M libc/test/src/math/smoke/ILogbTest.h
    M libc/test/src/math/smoke/LogbTest.h
    M libc/test/src/math/smoke/ilogb_test.cpp
    A libc/test/src/math/smoke/ilogbf128_test.cpp
    M libc/test/src/math/smoke/ilogbf_test.cpp
    M libc/test/src/math/smoke/ilogbl_test.cpp
    A libc/test/src/math/smoke/llogb_test.cpp
    A libc/test/src/math/smoke/llogbf128_test.cpp
    A libc/test/src/math/smoke/llogbf_test.cpp
    A libc/test/src/math/smoke/llogbl_test.cpp
    A libc/test/src/math/smoke/logbf128_test.cpp

  Log Message:
  -----------
  [libc][math][c23] Add C23 math functions ilogbf128, logbf128, and llogb(f|l|f128). (#82144)


  Commit: d29261074cd18383f4d3c84e740c66de738cb61f
      https://github.com/llvm/llvm-project/commit/d29261074cd18383f4d3c84e740c66de738cb61f
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M libc/cmake/modules/LLVMLibCObjectRules.cmake
    M libc/src/math/CMakeLists.txt
    A libc/src/math/amdgpu/CMakeLists.txt
    A libc/src/math/amdgpu/acos.cpp
    A libc/src/math/amdgpu/acosf.cpp
    A libc/src/math/amdgpu/acosh.cpp
    A libc/src/math/amdgpu/acoshf.cpp
    A libc/src/math/amdgpu/asin.cpp
    A libc/src/math/amdgpu/asinf.cpp
    A libc/src/math/amdgpu/asinh.cpp
    A libc/src/math/amdgpu/asinhf.cpp
    A libc/src/math/amdgpu/atan.cpp
    A libc/src/math/amdgpu/atan2.cpp
    A libc/src/math/amdgpu/atan2f.cpp
    A libc/src/math/amdgpu/atanf.cpp
    A libc/src/math/amdgpu/atanh.cpp
    A libc/src/math/amdgpu/atanhf.cpp
    A libc/src/math/amdgpu/ceil.cpp
    A libc/src/math/amdgpu/ceilf.cpp
    A libc/src/math/amdgpu/copysign.cpp
    A libc/src/math/amdgpu/copysignf.cpp
    A libc/src/math/amdgpu/cos.cpp
    A libc/src/math/amdgpu/cosf.cpp
    A libc/src/math/amdgpu/cosh.cpp
    A libc/src/math/amdgpu/coshf.cpp
    A libc/src/math/amdgpu/declarations.h
    A libc/src/math/amdgpu/erf.cpp
    A libc/src/math/amdgpu/erff.cpp
    A libc/src/math/amdgpu/exp.cpp
    A libc/src/math/amdgpu/exp10.cpp
    A libc/src/math/amdgpu/exp10f.cpp
    A libc/src/math/amdgpu/exp2.cpp
    A libc/src/math/amdgpu/exp2f.cpp
    A libc/src/math/amdgpu/expf.cpp
    A libc/src/math/amdgpu/expm1.cpp
    A libc/src/math/amdgpu/expm1f.cpp
    A libc/src/math/amdgpu/fabs.cpp
    A libc/src/math/amdgpu/fabsf.cpp
    A libc/src/math/amdgpu/fdim.cpp
    A libc/src/math/amdgpu/fdimf.cpp
    A libc/src/math/amdgpu/floor.cpp
    A libc/src/math/amdgpu/floorf.cpp
    A libc/src/math/amdgpu/fma.cpp
    A libc/src/math/amdgpu/fmaf.cpp
    A libc/src/math/amdgpu/fmax.cpp
    A libc/src/math/amdgpu/fmaxf.cpp
    A libc/src/math/amdgpu/fmin.cpp
    A libc/src/math/amdgpu/fminf.cpp
    A libc/src/math/amdgpu/fmod.cpp
    A libc/src/math/amdgpu/fmodf.cpp
    A libc/src/math/amdgpu/frexp.cpp
    A libc/src/math/amdgpu/frexpf.cpp
    A libc/src/math/amdgpu/hypot.cpp
    A libc/src/math/amdgpu/hypotf.cpp
    A libc/src/math/amdgpu/ilogb.cpp
    A libc/src/math/amdgpu/ilogbf.cpp
    A libc/src/math/amdgpu/ldexp.cpp
    A libc/src/math/amdgpu/ldexpf.cpp
    A libc/src/math/amdgpu/llrint.cpp
    A libc/src/math/amdgpu/llrintf.cpp
    A libc/src/math/amdgpu/llround.cpp
    A libc/src/math/amdgpu/llroundf.cpp
    A libc/src/math/amdgpu/log.cpp
    A libc/src/math/amdgpu/log10.cpp
    A libc/src/math/amdgpu/log10f.cpp
    A libc/src/math/amdgpu/log1p.cpp
    A libc/src/math/amdgpu/log1pf.cpp
    A libc/src/math/amdgpu/log2.cpp
    A libc/src/math/amdgpu/log2f.cpp
    A libc/src/math/amdgpu/logb.cpp
    A libc/src/math/amdgpu/logbf.cpp
    A libc/src/math/amdgpu/logf.cpp
    A libc/src/math/amdgpu/lrint.cpp
    A libc/src/math/amdgpu/lrintf.cpp
    A libc/src/math/amdgpu/lround.cpp
    A libc/src/math/amdgpu/lroundf.cpp
    A libc/src/math/amdgpu/modf.cpp
    A libc/src/math/amdgpu/modff.cpp
    A libc/src/math/amdgpu/nearbyint.cpp
    A libc/src/math/amdgpu/nearbyintf.cpp
    A libc/src/math/amdgpu/nextafter.cpp
    A libc/src/math/amdgpu/nextafterf.cpp
    A libc/src/math/amdgpu/platform.h
    A libc/src/math/amdgpu/pow.cpp
    A libc/src/math/amdgpu/powf.cpp
    A libc/src/math/amdgpu/remainder.cpp
    A libc/src/math/amdgpu/remainderf.cpp
    A libc/src/math/amdgpu/remquo.cpp
    A libc/src/math/amdgpu/remquof.cpp
    A libc/src/math/amdgpu/rint.cpp
    A libc/src/math/amdgpu/rintf.cpp
    A libc/src/math/amdgpu/round.cpp
    A libc/src/math/amdgpu/roundf.cpp
    A libc/src/math/amdgpu/scalbn.cpp
    A libc/src/math/amdgpu/scalbnf.cpp
    A libc/src/math/amdgpu/sin.cpp
    A libc/src/math/amdgpu/sincos.cpp
    A libc/src/math/amdgpu/sincosf.cpp
    A libc/src/math/amdgpu/sinf.cpp
    A libc/src/math/amdgpu/sinh.cpp
    A libc/src/math/amdgpu/sinhf.cpp
    A libc/src/math/amdgpu/sqrt.cpp
    A libc/src/math/amdgpu/sqrtf.cpp
    A libc/src/math/amdgpu/tan.cpp
    A libc/src/math/amdgpu/tanf.cpp
    A libc/src/math/amdgpu/tanh.cpp
    A libc/src/math/amdgpu/tanhf.cpp
    A libc/src/math/amdgpu/tgamma.cpp
    A libc/src/math/amdgpu/tgammaf.cpp
    A libc/src/math/amdgpu/trunc.cpp
    A libc/src/math/amdgpu/truncf.cpp
    R libc/src/math/gpu/CMakeLists.txt
    R libc/src/math/gpu/ceil.cpp
    R libc/src/math/gpu/ceilf.cpp
    R libc/src/math/gpu/copysign.cpp
    R libc/src/math/gpu/copysignf.cpp
    R libc/src/math/gpu/fabs.cpp
    R libc/src/math/gpu/fabsf.cpp
    R libc/src/math/gpu/floor.cpp
    R libc/src/math/gpu/floorf.cpp
    R libc/src/math/gpu/fma.cpp
    R libc/src/math/gpu/fmaf.cpp
    R libc/src/math/gpu/fmax.cpp
    R libc/src/math/gpu/fmaxf.cpp
    R libc/src/math/gpu/fmin.cpp
    R libc/src/math/gpu/fminf.cpp
    R libc/src/math/gpu/fmod.cpp
    R libc/src/math/gpu/fmodf.cpp
    R libc/src/math/gpu/llround.cpp
    R libc/src/math/gpu/llroundf.cpp
    R libc/src/math/gpu/lround.cpp
    R libc/src/math/gpu/lroundf.cpp
    R libc/src/math/gpu/modf.cpp
    R libc/src/math/gpu/modff.cpp
    R libc/src/math/gpu/nearbyint.cpp
    R libc/src/math/gpu/nearbyintf.cpp
    R libc/src/math/gpu/remainder.cpp
    R libc/src/math/gpu/remainderf.cpp
    R libc/src/math/gpu/rint.cpp
    R libc/src/math/gpu/rintf.cpp
    R libc/src/math/gpu/round.cpp
    R libc/src/math/gpu/roundf.cpp
    R libc/src/math/gpu/sinh.cpp
    R libc/src/math/gpu/sqrt.cpp
    R libc/src/math/gpu/sqrtf.cpp
    R libc/src/math/gpu/tan.cpp
    R libc/src/math/gpu/tanh.cpp
    R libc/src/math/gpu/trunc.cpp
    R libc/src/math/gpu/truncf.cpp
    R libc/src/math/gpu/vendor/CMakeLists.txt
    R libc/src/math/gpu/vendor/acos.cpp
    R libc/src/math/gpu/vendor/acosf.cpp
    R libc/src/math/gpu/vendor/acosh.cpp
    R libc/src/math/gpu/vendor/acoshf.cpp
    R libc/src/math/gpu/vendor/amdgpu/amdgpu.h
    R libc/src/math/gpu/vendor/amdgpu/declarations.h
    R libc/src/math/gpu/vendor/amdgpu/platform.h
    R libc/src/math/gpu/vendor/asin.cpp
    R libc/src/math/gpu/vendor/asinf.cpp
    R libc/src/math/gpu/vendor/asinh.cpp
    R libc/src/math/gpu/vendor/asinhf.cpp
    R libc/src/math/gpu/vendor/atan.cpp
    R libc/src/math/gpu/vendor/atan2.cpp
    R libc/src/math/gpu/vendor/atan2f.cpp
    R libc/src/math/gpu/vendor/atanf.cpp
    R libc/src/math/gpu/vendor/atanh.cpp
    R libc/src/math/gpu/vendor/atanhf.cpp
    R libc/src/math/gpu/vendor/common.h
    R libc/src/math/gpu/vendor/cos.cpp
    R libc/src/math/gpu/vendor/cosf.cpp
    R libc/src/math/gpu/vendor/cosh.cpp
    R libc/src/math/gpu/vendor/coshf.cpp
    R libc/src/math/gpu/vendor/erf.cpp
    R libc/src/math/gpu/vendor/erff.cpp
    R libc/src/math/gpu/vendor/exp.cpp
    R libc/src/math/gpu/vendor/exp10.cpp
    R libc/src/math/gpu/vendor/exp10f.cpp
    R libc/src/math/gpu/vendor/exp2.cpp
    R libc/src/math/gpu/vendor/exp2f.cpp
    R libc/src/math/gpu/vendor/expf.cpp
    R libc/src/math/gpu/vendor/expm1.cpp
    R libc/src/math/gpu/vendor/expm1f.cpp
    R libc/src/math/gpu/vendor/fdim.cpp
    R libc/src/math/gpu/vendor/fdimf.cpp
    R libc/src/math/gpu/vendor/frexp.cpp
    R libc/src/math/gpu/vendor/frexpf.cpp
    R libc/src/math/gpu/vendor/hypot.cpp
    R libc/src/math/gpu/vendor/hypotf.cpp
    R libc/src/math/gpu/vendor/ilogb.cpp
    R libc/src/math/gpu/vendor/ilogbf.cpp
    R libc/src/math/gpu/vendor/ldexp.cpp
    R libc/src/math/gpu/vendor/ldexpf.cpp
    R libc/src/math/gpu/vendor/llrint.cpp
    R libc/src/math/gpu/vendor/llrintf.cpp
    R libc/src/math/gpu/vendor/log.cpp
    R libc/src/math/gpu/vendor/log10.cpp
    R libc/src/math/gpu/vendor/log10f.cpp
    R libc/src/math/gpu/vendor/log1p.cpp
    R libc/src/math/gpu/vendor/log1pf.cpp
    R libc/src/math/gpu/vendor/log2.cpp
    R libc/src/math/gpu/vendor/log2f.cpp
    R libc/src/math/gpu/vendor/logb.cpp
    R libc/src/math/gpu/vendor/logbf.cpp
    R libc/src/math/gpu/vendor/logf.cpp
    R libc/src/math/gpu/vendor/lrint.cpp
    R libc/src/math/gpu/vendor/lrintf.cpp
    R libc/src/math/gpu/vendor/nextafter.cpp
    R libc/src/math/gpu/vendor/nextafterf.cpp
    R libc/src/math/gpu/vendor/nvptx/declarations.h
    R libc/src/math/gpu/vendor/nvptx/nvptx.h
    R libc/src/math/gpu/vendor/pow.cpp
    R libc/src/math/gpu/vendor/powf.cpp
    R libc/src/math/gpu/vendor/remquo.cpp
    R libc/src/math/gpu/vendor/remquof.cpp
    R libc/src/math/gpu/vendor/scalbn.cpp
    R libc/src/math/gpu/vendor/scalbnf.cpp
    R libc/src/math/gpu/vendor/sin.cpp
    R libc/src/math/gpu/vendor/sincos.cpp
    R libc/src/math/gpu/vendor/sincosf.cpp
    R libc/src/math/gpu/vendor/sinf.cpp
    R libc/src/math/gpu/vendor/sinh.cpp
    R libc/src/math/gpu/vendor/sinhf.cpp
    R libc/src/math/gpu/vendor/tan.cpp
    R libc/src/math/gpu/vendor/tanf.cpp
    R libc/src/math/gpu/vendor/tanh.cpp
    R libc/src/math/gpu/vendor/tanhf.cpp
    R libc/src/math/gpu/vendor/tgamma.cpp
    R libc/src/math/gpu/vendor/tgammaf.cpp
    A libc/src/math/nvptx/CMakeLists.txt
    A libc/src/math/nvptx/acos.cpp
    A libc/src/math/nvptx/acosf.cpp
    A libc/src/math/nvptx/acosh.cpp
    A libc/src/math/nvptx/acoshf.cpp
    A libc/src/math/nvptx/asin.cpp
    A libc/src/math/nvptx/asinf.cpp
    A libc/src/math/nvptx/asinh.cpp
    A libc/src/math/nvptx/asinhf.cpp
    A libc/src/math/nvptx/atan.cpp
    A libc/src/math/nvptx/atan2.cpp
    A libc/src/math/nvptx/atan2f.cpp
    A libc/src/math/nvptx/atanf.cpp
    A libc/src/math/nvptx/atanh.cpp
    A libc/src/math/nvptx/atanhf.cpp
    A libc/src/math/nvptx/ceil.cpp
    A libc/src/math/nvptx/ceilf.cpp
    A libc/src/math/nvptx/copysign.cpp
    A libc/src/math/nvptx/copysignf.cpp
    A libc/src/math/nvptx/cos.cpp
    A libc/src/math/nvptx/cosf.cpp
    A libc/src/math/nvptx/cosh.cpp
    A libc/src/math/nvptx/coshf.cpp
    A libc/src/math/nvptx/declarations.h
    A libc/src/math/nvptx/erf.cpp
    A libc/src/math/nvptx/erff.cpp
    A libc/src/math/nvptx/exp.cpp
    A libc/src/math/nvptx/exp10.cpp
    A libc/src/math/nvptx/exp10f.cpp
    A libc/src/math/nvptx/exp2.cpp
    A libc/src/math/nvptx/exp2f.cpp
    A libc/src/math/nvptx/expf.cpp
    A libc/src/math/nvptx/expm1.cpp
    A libc/src/math/nvptx/expm1f.cpp
    A libc/src/math/nvptx/fabs.cpp
    A libc/src/math/nvptx/fabsf.cpp
    A libc/src/math/nvptx/fdim.cpp
    A libc/src/math/nvptx/fdimf.cpp
    A libc/src/math/nvptx/floor.cpp
    A libc/src/math/nvptx/floorf.cpp
    A libc/src/math/nvptx/fma.cpp
    A libc/src/math/nvptx/fmaf.cpp
    A libc/src/math/nvptx/fmax.cpp
    A libc/src/math/nvptx/fmaxf.cpp
    A libc/src/math/nvptx/fmin.cpp
    A libc/src/math/nvptx/fminf.cpp
    A libc/src/math/nvptx/fmod.cpp
    A libc/src/math/nvptx/fmodf.cpp
    A libc/src/math/nvptx/frexp.cpp
    A libc/src/math/nvptx/frexpf.cpp
    A libc/src/math/nvptx/hypot.cpp
    A libc/src/math/nvptx/hypotf.cpp
    A libc/src/math/nvptx/ilogb.cpp
    A libc/src/math/nvptx/ilogbf.cpp
    A libc/src/math/nvptx/ldexp.cpp
    A libc/src/math/nvptx/ldexpf.cpp
    A libc/src/math/nvptx/llrint.cpp
    A libc/src/math/nvptx/llrintf.cpp
    A libc/src/math/nvptx/llround.cpp
    A libc/src/math/nvptx/llroundf.cpp
    A libc/src/math/nvptx/log.cpp
    A libc/src/math/nvptx/log10.cpp
    A libc/src/math/nvptx/log10f.cpp
    A libc/src/math/nvptx/log1p.cpp
    A libc/src/math/nvptx/log1pf.cpp
    A libc/src/math/nvptx/log2.cpp
    A libc/src/math/nvptx/log2f.cpp
    A libc/src/math/nvptx/logb.cpp
    A libc/src/math/nvptx/logbf.cpp
    A libc/src/math/nvptx/logf.cpp
    A libc/src/math/nvptx/lrint.cpp
    A libc/src/math/nvptx/lrintf.cpp
    A libc/src/math/nvptx/lround.cpp
    A libc/src/math/nvptx/lroundf.cpp
    A libc/src/math/nvptx/modf.cpp
    A libc/src/math/nvptx/modff.cpp
    A libc/src/math/nvptx/nearbyint.cpp
    A libc/src/math/nvptx/nearbyintf.cpp
    A libc/src/math/nvptx/nextafter.cpp
    A libc/src/math/nvptx/nextafterf.cpp
    A libc/src/math/nvptx/nvptx.h
    A libc/src/math/nvptx/pow.cpp
    A libc/src/math/nvptx/powf.cpp
    A libc/src/math/nvptx/remainder.cpp
    A libc/src/math/nvptx/remainderf.cpp
    A libc/src/math/nvptx/remquo.cpp
    A libc/src/math/nvptx/remquof.cpp
    A libc/src/math/nvptx/rint.cpp
    A libc/src/math/nvptx/rintf.cpp
    A libc/src/math/nvptx/round.cpp
    A libc/src/math/nvptx/roundf.cpp
    A libc/src/math/nvptx/scalbn.cpp
    A libc/src/math/nvptx/scalbnf.cpp
    A libc/src/math/nvptx/sin.cpp
    A libc/src/math/nvptx/sincos.cpp
    A libc/src/math/nvptx/sincosf.cpp
    A libc/src/math/nvptx/sinf.cpp
    A libc/src/math/nvptx/sinh.cpp
    A libc/src/math/nvptx/sinhf.cpp
    A libc/src/math/nvptx/sqrt.cpp
    A libc/src/math/nvptx/sqrtf.cpp
    A libc/src/math/nvptx/tan.cpp
    A libc/src/math/nvptx/tanf.cpp
    A libc/src/math/nvptx/tanh.cpp
    A libc/src/math/nvptx/tanhf.cpp
    A libc/src/math/nvptx/tgamma.cpp
    A libc/src/math/nvptx/tgammaf.cpp
    A libc/src/math/nvptx/trunc.cpp
    A libc/src/math/nvptx/truncf.cpp

  Log Message:
  -----------
  [libc] Clean up GPU math implementations (#83133)

Summary:
The math directory likes to do architecture specific implementations of
these math functions. For the GPU case it was complicated by the fact
that both NVPTX and AMDGPU had to go through the same code paths. Since
reworking the GPU target this is no longer the case and we can simply
use the same scheme. This patch moves all the old code into two separate
directories. This likely results in a net increase in code, but it's
easier to reason with.


  Commit: ae94354721d546eb20fc64384bfdaeb87a08564d
      https://github.com/llvm/llvm-project/commit/ae94354721d546eb20fc64384bfdaeb87a08564d
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [LLVM][LangRef] Remove bogus ':' from vector constant text.


  Commit: 9d9c01243038487402c366787f749349b76473ba
      https://github.com/llvm/llvm-project/commit/9d9c01243038487402c366787f749349b76473ba
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M flang/runtime/Float128Math/CMakeLists.txt
    M flang/runtime/Float128Math/math-entries.h

  Log Message:
  -----------
  [flang][runtime] Added F128 wrappers for LDBL_MANT_DIG == 113 targets. (#83102)

We can use 'long double' variants of the math functions in this case.
I used the callees from STD namespace, except for the Bessel's
functions.
The new code can be enabled with -DFLANG_RUNTIME_F128_MATH_LIB=libm.
Support for complex data types is pending.


  Commit: c95febcb4008c40a2b514bd6e2b56e0aa17457a3
      https://github.com/llvm/llvm-project/commit/c95febcb4008c40a2b514bd6e2b56e0aa17457a3
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

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

  Log Message:
  -----------
  [X86] LowerBITREVERSE - add handling for all legal 128/256/512-bit vector types, not just vXi8

Move the BITREVERSE(BSWAP(X)) expansion into LowerBITREVERSE to help simplify #81764


  Commit: f7cf1f6236ee299d65c2b33429c1d3b729f54c32
      https://github.com/llvm/llvm-project/commit/f7cf1f6236ee299d65c2b33429c1d3b729f54c32
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/ScheduleDAGInstrs.h
    M llvm/lib/CodeGen/MachineScheduler.cpp

  Log Message:
  -----------
  [CodeGen][MISched] dumpSched direction depends on field in DAG.

This is a precommit to supporting post reg-alloc bottom up scheduling.
We'd like to have post-ra scheduling direction that can be different from
pre-ra direction. The current dumpSchedule function is changed in this
patch to support the fact that the post-ra and pre-ra directions will
depend on different command line options.


  Commit: 9106b58ce4e8dada167eec50178a9e154342e4ba
      https://github.com/llvm/llvm-project/commit/9106b58ce4e8dada167eec50178a9e154342e4ba
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineScheduler.h
    M llvm/lib/CodeGen/MachineScheduler.cpp
    A llvm/test/CodeGen/RISCV/misched-postra-direction.mir

  Log Message:
  -----------
  [CodeGen][MISched] Add misched post-regalloc bottom-up scheduling

There is the possibility that the bottom-up direction will lead to
performance improvements on certain targets, as this is certainly the case for
the pre-regalloc GenericScheduler. This patch will give people the
opportunity to experiment for their sub-targets. However, this patch
keeps the top-down approach as the default for the PostGenericScheduler
since that is what subtargets expect today.


  Commit: 770694539bde0f1b706c70d87dd70777c94f178f
      https://github.com/llvm/llvm-project/commit/770694539bde0f1b706c70d87dd70777c94f178f
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M libc/src/math/amdgpu/fmax.cpp
    M libc/src/math/amdgpu/fmaxf.cpp
    M libc/src/math/amdgpu/fmin.cpp
    M libc/src/math/amdgpu/fminf.cpp
    M libc/src/math/nvptx/fmax.cpp
    M libc/src/math/nvptx/fmaxf.cpp
    M libc/src/math/nvptx/fmin.cpp
    M libc/src/math/nvptx/fminf.cpp
    M libc/test/src/math/smoke/CMakeLists.txt

  Log Message:
  -----------
  [libc] Work around incorrect fmin/fmax results for +/-x (#83158)

Summary:
The IEEE 754 standard as of the 2019 revision states that for fmin -0.0
is always less than 0.0 and for fmax 0.0 is always greater than 0.0.
These are currently not respected by the builtin value and thus cause
the tests to fail. This patch works around it in the implementation for
now by explicitly modifying the sign bit.


  Commit: f4fad827ca2060ebf31b7e26b5ff6604bd18015b
      https://github.com/llvm/llvm-project/commit/f4fad827ca2060ebf31b7e26b5ff6604bd18015b
  Author: Xiang Li <python3kgae at outlook.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M mlir/test/Target/LLVMIR/erase-dangling-constants.mlir

  Log Message:
  -----------
  [NFC] Add REQUIRES: asserts to limit the test to debug only. (#83145)


  Commit: 335ac4108dda907e152ac22e03b53c30860157a8
      https://github.com/llvm/llvm-project/commit/335ac4108dda907e152ac22e03b53c30860157a8
  Author: DeanSturtevant1 <dsturtevant at google.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M lld/ELF/Writer.cpp
    M lld/test/ELF/allow-shlib-undefined.s
    M lld/test/ELF/unresolved-symbols.s
    M lld/test/ELF/wrap-shlib-undefined.s

  Log Message:
  -----------
  Improve readability of "undefined reference" message (#82671)

The current message implies a command line flag caused an undefined
reference. This of course is wrong and causes confusion. The message now
more accurately reflects the true state of affairs.


  Commit: 12df1cfdd130d8d2648881b62061153a2732bee4
      https://github.com/llvm/llvm-project/commit/12df1cfdd130d8d2648881b62061153a2732bee4
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/include/llvm/TargetParser/AArch64TargetParser.h

  Log Message:
  -----------
  [LLVM] Remove bogus whitespace from AArch64TargetParser.h


  Commit: 0ef66fcc858cc8abb978d83d48b3e7a8b23742c9
      https://github.com/llvm/llvm-project/commit/0ef66fcc858cc8abb978d83d48b3e7a8b23742c9
  Author: Alex Langford <alangford at apple.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M lldb/include/lldb/Interpreter/Options.h
    M lldb/source/Commands/CommandObjectBreakpoint.cpp

  Log Message:
  -----------
  [lldb] Use CreateOptionParsingError in CommandObjectBreakpoint (#83086)

This updates the remaining SetOptionValue methods in
CommandObjectBreakpoint to use CreateOptionParsingError.

I found a few minor bugs that were fixed during this refactor (e.g.
using the wrong flag in an error message). That is one of the benefits
of centralizing error message creation.

I also found some option parsing code that is written incorrectly. I do
not make an attempt to update those here because this PR is primarily
about changing existing error handling code, not adding new error
handling code.


  Commit: abc693fb4051dfb3a49ba2dcdbc2d164c53f2a51
      https://github.com/llvm/llvm-project/commit/abc693fb4051dfb3a49ba2dcdbc2d164c53f2a51
  Author: Billy Laws <blaws05 at gmail.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
    M llvm/lib/Target/AArch64/AArch64CallingConvention.td
    M llvm/test/CodeGen/AArch64/arm64ec-entry-thunks.ll

  Log Message:
  -----------
  [AArch64] Skip over shadow space for ARM64EC entry thunk variadic calls (#80994)

When in an entry thunk the x64 SP is passed in x4 but this cannot be
directly passed through since x64 varargs calls have a 32 byte shadow
store at SP followed by the in-stack parameters. ARM64EC varargs calls
on the other hand expect x4 to point to the first in-stack parameter.


  Commit: 2d704f4bf2edb0f9343dac818ab4d29442be9968
      https://github.com/llvm/llvm-project/commit/2d704f4bf2edb0f9343dac818ab4d29442be9968
  Author: jimingham <jingham at apple.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M lldb/include/lldb/Interpreter/CommandObject.h
    M lldb/source/Commands/CommandObjectApropos.cpp
    M lldb/source/Commands/CommandObjectBreakpoint.cpp
    M lldb/source/Commands/CommandObjectBreakpointCommand.cpp
    M lldb/source/Commands/CommandObjectCommands.cpp
    M lldb/source/Commands/CommandObjectDWIMPrint.cpp
    M lldb/source/Commands/CommandObjectExpression.cpp
    M lldb/source/Commands/CommandObjectFrame.cpp
    M lldb/source/Commands/CommandObjectHelp.cpp
    M lldb/source/Commands/CommandObjectLog.cpp
    M lldb/source/Commands/CommandObjectPlatform.cpp
    M lldb/source/Commands/CommandObjectPlugin.cpp
    M lldb/source/Commands/CommandObjectProcess.cpp
    M lldb/source/Commands/CommandObjectQuit.cpp
    M lldb/source/Commands/CommandObjectRegister.cpp
    M lldb/source/Commands/CommandObjectSession.cpp
    M lldb/source/Commands/CommandObjectSettings.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Commands/CommandObjectThread.cpp
    M lldb/source/Commands/CommandObjectThreadUtil.cpp
    M lldb/source/Commands/CommandObjectTrace.cpp
    M lldb/source/Commands/CommandObjectType.cpp
    M lldb/source/Commands/CommandObjectWatchpoint.cpp
    M lldb/source/Commands/CommandObjectWatchpointCommand.cpp
    M lldb/source/Interpreter/CommandObject.cpp
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp

  Log Message:
  -----------
  Start to clean up the process of defining command arguments. (#83097)

Partly, there's just a lot of unnecessary boiler plate. It's also
possible to define combinations of arguments that make no sense (e.g.
eArgRepeatPlus followed by eArgRepeatPlain...) but these are never
checked since we just push_back directly into the argument definitions.

This commit is step 1 of this cleanup - do the obvious stuff. In it, all
the simple homogenous argument lists and the breakpoint/watchpoint
ID/Range types, are set with common functions. This is an NFC change, it
just centralizes boiler plate. There's no checking yet because you can't
get a single argument wrong.

The end goal is that all argument definition goes through functions and
m_arguments is hidden so that you can't define inconsistent argument
sets.


  Commit: 7b11e2ec39ae01f53d53250551e207583bd51e80
      https://github.com/llvm/llvm-project/commit/7b11e2ec39ae01f53d53250551e207583bd51e80
  Author: AMS21 <AMS21.github at gmail.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/missing-std-forward.cpp

  Log Message:
  -----------
  [clang-tidy] Fix `cppcoreguidelines-missing-std-forward` false positive for deleted functions (#83055)

Improved check by no longer giving false positives for deleted functions.


  Commit: 563f414e049dc06dcb955f565fcff3c663982ee4
      https://github.com/llvm/llvm-project/commit/563f414e049dc06dcb955f565fcff3c663982ee4
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/lib/Target/LLVMIR/Dialect/ROCDL/ROCDLToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  [mlir][AMDGPU] Set uniform-work-group-size=true by default (#79077)

GPU kernels generated via typical MLIR mechanisms make the assumption
that all workgroups are of uniform size, and so, as in OpenMP, it is
appropriate to set the "uniform-work-group-size"="true" attribute on
these functions by default. This commit makes that choice.

In the event it is needed, this commit adds
`rocdl.uniform_work_group_size` as an attribute to be set on LLVM
functions that can be used to override the default.

In addition, add proper failure messages to translation


  Commit: e427e934f677567f8184ff900cb4cbdb8cf21a21
      https://github.com/llvm/llvm-project/commit/e427e934f677567f8184ff900cb4cbdb8cf21a21
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/commands/TestDAP_commands.py
    M lldb/tools/lldb-dap/LLDBUtils.cpp

  Log Message:
  -----------
  [lldb][dap] Avoid concurrent `HandleCommand` calls (#83162)

The `EventThreadFunction` can end up calling `HandleCommand`
concurrently with the main request processing thread. The underlying API
does not appear to be thread safe, so add a narrowly scoped mutex lock
to prevent calling it in this place from more than one thread.

Fixes #81686. Prior to this, TestDAP_launch.py is 4% flaky. After, it
passes in 1000 runs.


  Commit: f44c3faccaa4bcc9b8b7739a76a52d328fbb8d91
      https://github.com/llvm/llvm-project/commit/f44c3faccaa4bcc9b8b7739a76a52d328fbb8d91
  Author: Sumanth Gundapaneni <sgundapa at quicinc.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/lib/Target/Hexagon/CMakeLists.txt
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.h
    R llvm/lib/Target/Hexagon/HexagonPostIncOpt.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonBaseInfo.h
    R llvm/test/CodeGen/Hexagon/post-inc-vec.mir
    R llvm/test/CodeGen/Hexagon/post_inc_store.mir
    R llvm/test/CodeGen/Hexagon/postincopt-crash.mir
    R llvm/test/CodeGen/Hexagon/postincopt-dcfetch.mir
    R llvm/test/CodeGen/Hexagon/valid-offset-loadbsw4.mir

  Log Message:
  -----------
  Revert "[Hexagon] Optimize post-increment load and stores in loops. (… (#83151)

…#82418)"

This reverts commit d62ca8def395ac165f253fdde1d93725394a4d53.


  Commit: 13fd4bf4e53391aab3cdfd922e9ceb4ad1225d1e
      https://github.com/llvm/llvm-project/commit/13fd4bf4e53391aab3cdfd922e9ceb4ad1225d1e
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/tools/clang-offload-packager/ClangOffloadPackager.cpp
    M llvm/docs/CommandGuide/llvm-ar.rst
    M llvm/docs/ReleaseNotes.rst
    M llvm/include/llvm/Object/Archive.h
    M llvm/lib/Object/Archive.cpp
    M llvm/lib/Object/ArchiveWriter.cpp
    M llvm/tools/llvm-ar/llvm-ar.cpp

  Log Message:
  -----------
  [llvm-ar][Archive] Use getDefaultTargetTriple instead of host triple for the fallback archive format. (#82888)


  Commit: 8e3b60540c81354b321018a47bf159ca9b52d776
      https://github.com/llvm/llvm-project/commit/8e3b60540c81354b321018a47bf159ca9b52d776
  Author: Michael Jones <71531609+michaelrj-google at users.noreply.github.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M libc/config/config.json
    M libc/docs/configure.rst
    M libc/docs/dev/printf_behavior.rst
    M libc/fuzzing/stdio/CMakeLists.txt
    A libc/fuzzing/stdio/printf_fixed_conv_fuzz.cpp
    M libc/src/stdio/printf_core/CMakeLists.txt
    M libc/src/stdio/printf_core/converter.cpp
    M libc/src/stdio/printf_core/converter_atlas.h
    M libc/src/stdio/printf_core/converter_utils.h
    M libc/src/stdio/printf_core/core_structs.h
    A libc/src/stdio/printf_core/fixed_converter.h
    M libc/src/stdio/printf_core/float_dec_converter.h
    M libc/src/stdio/printf_core/parser.h
    M libc/src/stdio/printf_core/printf_config.h
    M libc/test/src/stdio/CMakeLists.txt
    M libc/test/src/stdio/sprintf_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc] Add fixed point support to printf (#82707)

This patch adds the r, R, k, and K conversion specifiers to printf, with
accompanying tests. They are guarded behind the
LIBC_COPT_PRINTF_DISABLE_FIXED_POINT flag as well as automatic fixed
point support detection.


  Commit: 16e74fd48988ac95551d0f64e1b36f78a82a89a2
      https://github.com/llvm/llvm-project/commit/16e74fd48988ac95551d0f64e1b36f78a82a89a2
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M compiler-rt/include/profile/InstrProfData.inc
    M compiler-rt/lib/profile/InstrProfiling.h
    M compiler-rt/lib/profile/InstrProfilingBuffer.c
    M compiler-rt/lib/profile/InstrProfilingFile.c
    M compiler-rt/lib/profile/InstrProfilingInternal.h
    M compiler-rt/lib/profile/InstrProfilingMerge.c
    M compiler-rt/lib/profile/InstrProfilingPlatformAIX.c
    M compiler-rt/lib/profile/InstrProfilingPlatformDarwin.c
    M compiler-rt/lib/profile/InstrProfilingPlatformLinux.c
    M compiler-rt/lib/profile/InstrProfilingPlatformOther.c
    M compiler-rt/lib/profile/InstrProfilingPlatformWindows.c
    M compiler-rt/lib/profile/InstrProfilingWriter.c
    M compiler-rt/test/profile/instrprof-write-buffer-internal.c
    M llvm/include/llvm/ProfileData/InstrProf.h
    M llvm/include/llvm/ProfileData/InstrProfData.inc
    M llvm/include/llvm/ProfileData/InstrProfReader.h
    M llvm/lib/ProfileData/InstrProf.cpp
    M llvm/lib/ProfileData/InstrProfReader.cpp
    M llvm/lib/ProfileData/InstrProfWriter.cpp
    M llvm/test/Instrumentation/InstrProfiling/coverage.ll
    M llvm/test/Transforms/PGOProfile/Inputs/thinlto_indirect_call_promotion.profraw
    M llvm/test/Transforms/PGOProfile/comdat_internal.ll
    M llvm/test/tools/llvm-profdata/Inputs/c-general.profraw
    M llvm/test/tools/llvm-profdata/Inputs/compressed.profraw
    A llvm/test/tools/llvm-profdata/Inputs/thinlto_indirect_call_promotion.profraw
    M llvm/test/tools/llvm-profdata/binary-ids-padding.test
    M llvm/test/tools/llvm-profdata/large-binary-id-size.test
    M llvm/test/tools/llvm-profdata/malformed-not-space-for-another-header.test
    M llvm/test/tools/llvm-profdata/malformed-num-counters-zero.test
    M llvm/test/tools/llvm-profdata/malformed-ptr-to-counter-array.test
    M llvm/test/tools/llvm-profdata/misaligned-binary-ids-size.test
    M llvm/test/tools/llvm-profdata/mismatched-raw-profile-header.test
    M llvm/test/tools/llvm-profdata/raw-32-bits-be.test
    M llvm/test/tools/llvm-profdata/raw-32-bits-le.test
    M llvm/test/tools/llvm-profdata/raw-64-bits-be.test
    M llvm/test/tools/llvm-profdata/raw-64-bits-le.test
    M llvm/test/tools/llvm-profdata/raw-two-profiles.test

  Log Message:
  -----------
  Reland "[TypeProf][InstrPGO] Introduce raw and instr profile format change for type profiling." (#82711)

New change on top of [reviewed
patch](https://github.com/llvm/llvm-project/pull/81691) are [in commits
after this
one](https://github.com/llvm/llvm-project/pull/82711/commits/d0757f46b3e3865b5f7c552bc0744309a363e0ac).
Previous commits are restored from the remote branch with timestamps.

1. Fix build breakage for non-ELF platforms, by defining the missing
functions {`__llvm_profile_begin_vtables`, `__llvm_profile_end_vtables`,
`__llvm_profile_begin_vtabnames `, `__llvm_profile_end_vtabnames`}
everywhere.
* Tested on mac laptop (for darwins) and Windows. Specifically,
functions in `InstrProfilingPlatformWindows.c` returns `NULL` to make it
more explicit that type prof isn't supported; see comments for the
reason.
* For the rest (AIX, other), mostly follow existing examples (like this
[one](https://github.com/llvm/llvm-project/commit/f95b2f1acf1171abb0d00089fd4c9238753847e3))
   
2. Rename `__llvm_prf_vtabnames` -> `__llvm_prf_vns` for shorter section
name, and make returned pointers
[const](https://github.com/llvm/llvm-project/pull/82711/commits/a825d2a4ec00f07772a373091a702f149c3b0c34#diff-4de780ce726d76b7abc9d3353aef95013e7b21e7bda01be8940cc6574fb0b5ffR120-R121)

**Original Description**

* Raw profile format
- Header: records the byte size of compressed vtable names, and the
number of profiled vtable entries (call it `VTableProfData`). Header
also records padded bytes of each section.
- Payload: adds a section for compressed vtable names, and a section to
store `VTableProfData`. Both sections are padded so the size is a
multiple of 8.
* Indexed profile format
  - Header: records the byte offset of compressed vtable names.
- Payload: adds a section to store compressed vtable names. This section
is used by `llvm-profdata` to show the list of vtables profiled for an
instrumented site.
  
[The originally reviewed
patch](https://github.com/llvm/llvm-project/pull/66825) will have
profile reader/write change and llvm-profdata change.
- To ensure this PR has all the necessary profile format change along
with profile version bump, created a copy of the originally reviewed
patch in https://github.com/llvm/llvm-project/pull/80761. The copy
doesn't have profile format change, but it has the set of tests which
covers type profile generation, profile read and profile merge. Tests
pass there.
  
rfc in
https://discourse.llvm.org/t/rfc-dynamic-type-profiling-and-optimizations-in-llvm/74600

---------

Co-authored-by: modiking <modiking213 at gmail.com>


  Commit: 40ba1f60e9f4b186d71272d4bc23b5af6204244d
      https://github.com/llvm/llvm-project/commit/40ba1f60e9f4b186d71272d4bc23b5af6204244d
  Author: PiJoules <6019989+PiJoules at users.noreply.github.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/FormatString.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/FormatString.cpp
    M clang/lib/AST/PrintfFormatString.cpp
    A clang/test/Sema/format-fixed-point.c

  Log Message:
  -----------
  [clang] Update -Wformat warnings for fixed-point format specifiers (#82855)

ISO/IEC TR 18037 defines %r, %R, %k, and %K for fixed point format
specifiers. -Wformat should not warn on these when they are provided.


  Commit: 19181f24e516ce1cb58cd5ba27515eb968ae22d9
      https://github.com/llvm/llvm-project/commit/19181f24e516ce1cb58cd5ba27515eb968ae22d9
  Author: Alex Richardson <alexrichardson at google.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_stackdepot_test.cpp

  Log Message:
  -----------
  [compiler-rt] Add missing include to sanitizer_stackdepot_test.cpp

Without this change I am seeing build failures due to missing
std::next_permutation since my standard library does implicitly pull
in <algorithm> anymore.


  Commit: 9ca8db352d22444feabd859380252f13826a8aff
      https://github.com/llvm/llvm-project/commit/9ca8db352d22444feabd859380252f13826a8aff
  Author: Micah Weston <micahsweston at gmail.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-objdump.rst
    M llvm/docs/CommandGuide/llvm-readobj.rst
    M llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h
    M llvm/include/llvm/Support/BlockFrequency.h
    M llvm/lib/Analysis/BlockFrequencyInfo.cpp
    M llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp
    M llvm/lib/CodeGen/MachineBlockFrequencyInfo.cpp
    M llvm/lib/Support/BlockFrequency.cpp
    M llvm/test/tools/llvm-objdump/X86/elf-pgoanalysismap.yaml
    M llvm/test/tools/llvm-readobj/ELF/bb-addr-map-pgo-analysis-map.test
    M llvm/tools/llvm-objdump/ObjdumpOpts.td
    M llvm/tools/llvm-objdump/llvm-objdump.cpp
    M llvm/tools/llvm-readobj/ELFDumper.cpp
    M llvm/tools/llvm-readobj/ObjDumper.h
    M llvm/tools/llvm-readobj/Opts.td
    M llvm/tools/llvm-readobj/llvm-readobj.cpp

  Log Message:
  -----------
  [SHT_LLVM_BB_ADDR_MAP] Adds pretty printing of BFI and BPI for PGO Analysis Map in tools. (#82292)

Primary change is to add a flag `--pretty-pgo-analysis-map` to
llvm-readobj and llvm-objdump that prints block frequencies and branch
probabilities in the same manner as BFI and BPI respectively. This can
be helpful if you are manually inspecting the outputs from the tools.

In order to print, I moved the `printBlockFreqImpl` function from
Analysis to Support and renamed it to `printRelativeBlockFreq`.


  Commit: d23ef9ef3685eb42ebf719bc28cfe2e4651932fc
      https://github.com/llvm/llvm-project/commit/d23ef9ef3685eb42ebf719bc28cfe2e4651932fc
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaOverload.cpp
    A clang/test/SemaCXX/gh53815.cpp

  Log Message:
  -----------
  [Clang] [Sema] Handle placeholders in '.*' expressions (#83103)

When analysing whether we should handle a binary expression as an
overloaded operator call or a builtin operator, we were calling
`checkPlaceholderForOverload()`, which takes care of any placeholders
that are not overload sets—which would usually make sense since those
need to be handled as part of overload resolution.

Unfortunately, we were also doing that for `.*`, which is not
overloadable, and then proceeding to create a builtin operator anyway,
which would crash if the RHS happened to be an unresolved overload set
(due hitting an assertion in `CreateBuiltinBinOp()`—specifically, in one
of its callees—in the `.*` case that makes sure its arguments aren’t
placeholders).

This pr instead makes it so we check for *all* placeholders early if the
operator is `.*`.

It’s worth noting that,
1. In the `.*` case, we now additionally also check for *any*
placeholders (not just non-overload-sets) in the LHS; this shouldn’t
make a difference, however—at least I couldn’t think of a way to trigger
the assertion with an overload set as the LHS of `.*`; it is worth
noting that the assertion in question would also complain if the LHS
happened to be of placeholder type, though.
2. There is another case in which we also don’t perform overload
resolution—namely `=` if the LHS is not of class or enumeration type
after handling non-overload-set placeholders—as in the `.*` case, but
similarly to 1., I first couldn’t think of a way of getting this case to
crash, and secondly, `CreateBuiltinBinOp()` doesn’t seem to care about
placeholders in the LHS or RHS in the `=` case (from what I can tell,
it, or rather one of its callees, only checks that the LHS is not a
pseudo-object type, but those will have already been handled by the call
to `checkPlaceholderForOverload()` by the time we get to this function),
so I don’t think this case suffers from the same problem.

This fixes #53815.

---------

Co-authored-by: Aaron Ballman <aaron at aaronballman.com>


  Commit: b3189b13b274a3411f939574aa573a7656bf372b
      https://github.com/llvm/llvm-project/commit/b3189b13b274a3411f939574aa573a7656bf372b
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M flang/include/flang/Lower/PFTBuilder.h
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    A flang/test/Lower/CUDA/cuda-kernel-loop-directive.cuf

  Log Message:
  -----------
  [flang][cuda] CUF kernel loop directive (#82836)

This patch introduces a new operation to represent the CUDA Fortran
kernel loop directive. This operation is modeled as a LoopLikeOp
operation in a similar way to acc.loop.

The CUFKernelDoConstruct parse tree node is also placed correctly in the
PFTBuilder to be available in PFT evaluations.

Lowering from the flang parse-tree to MLIR is also done.


  Commit: f42e321b9fb54300c4450e699cd3cc453e994b58
      https://github.com/llvm/llvm-project/commit/f42e321b9fb54300c4450e699cd3cc453e994b58
  Author: David Green <david.green at arm.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
    M llvm/test/CodeGen/AArch64/implicitly-set-zero-high-64-bits.ll
    M llvm/test/CodeGen/AArch64/vecreduce-add.ll

  Log Message:
  -----------
  [AArch64] Use FMOVDr for clearing upper bits (#83107)

This adds some tablegen patterns for generating FMOVDr from concat(X,
zeroes), as the FMOV will implicitly zero the upper bits of the
register. An extra AArch64MIPeepholeOpt is needed to make sure we can
remove the FMOV in the same way we would remove the insert code.


  Commit: fd4204464905be198b158a0f30e5c06cc4ce3686
      https://github.com/llvm/llvm-project/commit/fd4204464905be198b158a0f30e5c06cc4ce3686
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M libc/include/llvm-libc-macros/math-macros.h
    M libc/test/src/__support/CMakeLists.txt
    M libc/test/src/math/CMakeLists.txt
    M libc/test/src/math/smoke/CMakeLists.txt
    M libc/test/src/stdlib/CMakeLists.txt
    M libc/test/src/time/CMakeLists.txt

  Log Message:
  -----------
  [libc] Re-Enable GPU tests and fix math exception handling (#83172)

Summary:
A lot of these tests failed previously and were disabled. However we
have fixed some things since then and many of these seem to pass.
Additionally, the last remaining math tests that failed seemed to be due
to the exception handling. For now we just set it to be 'errno'.

These pass locally when tested on a gfx1030, gfx90a, and sm_89
architecture. Hopefully these pass correctly on the sm_60 bot as I've
had things fail on that one only before.


  Commit: a76c524adc57220253b34e166f59ed19634e28f5
      https://github.com/llvm/llvm-project/commit/a76c524adc57220253b34e166f59ed19634e28f5
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/Hexagon/BUILD.gn

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


  Commit: 0d1f95760b07a31293ccc82086306833326b70a4
      https://github.com/llvm/llvm-project/commit/0d1f95760b07a31293ccc82086306833326b70a4
  Author: Peiming Liu <36770114+PeimingLiu at users.noreply.github.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SparseTensor/IR/Enums.h
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorAttrDefs.td
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorStorageLayout.h
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorType.h
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
    M mlir/test/Dialect/SparseTensor/codegen.mlir

  Log Message:
  -----------
  [mlir][sparse] support type conversion from batched sparse tensors to… (#83163)

… memrefs.


  Commit: d2a9df2c8ffd21fd52fbd8199a191d10078f41af
      https://github.com/llvm/llvm-project/commit/d2a9df2c8ffd21fd52fbd8199a191d10078f41af
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenTBAA.cpp
    M clang/lib/CodeGen/CodeGenTBAA.h
    M clang/test/CodeGen/tbaa-struct.cpp

  Log Message:
  -----------
  [TBAA] Handle bitfields when generating !tbaa.struct metadata. (#82922)

At the moment, clang generates what I believe are incorrect !tbaa.struct
fields for named bitfields. At the moment, the base type size is used
for named bifields (e.g. sizeof(int)) instead of the bifield width per
field. This results in overalpping fields in !tbaa.struct metadata.

This causes incorrect results when extracting individual copied fields
from !tbaa.struct as in added in dc85719d5.

This patch fixes that by skipping by combining adjacent bitfields
in fields with correct sizes.

Fixes https://github.com/llvm/llvm-project/issues/82586


  Commit: 0e0bee26e7f33c065eebef9a674b2f19bb156414
      https://github.com/llvm/llvm-project/commit/0e0bee26e7f33c065eebef9a674b2f19bb156414
  Author: Jonathan Peyton <jonathan.l.peyton at intel.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M openmp/runtime/src/kmp_runtime.cpp
    A openmp/runtime/test/barrier/llvm-issue-80664.c

  Log Message:
  -----------
  [OpenMP] Fix distributed barrier hang for OMP_WAIT_POLICY=passive (#83058)

The resume thread logic inside __kmp_free_team() is faulty. Only
checking b_go for sleep status doesn't wake up distributed barrier.
Change to generic check for th_sleep_loc and calling
__kmp_null_resume_wrapper().

Fixes: #80664


  Commit: e5ed7b6e2fd368b722b6359556cd0125881e7638
      https://github.com/llvm/llvm-project/commit/e5ed7b6e2fd368b722b6359556cd0125881e7638
  Author: rohit-rao <rohitrao at google.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/include/clang/Basic/TargetOSMacros.def
    M clang/test/Driver/fdefine-target-os-macros.c

  Log Message:
  -----------
  [clang] Extend define-target-os-macros to support XROS. (#82833)

Updates the extension feature `define-target-os-macros` to support the
recently-added XROS target (TARGET_OS_VISION).


  Commit: 1d1186de34c55149be336068bf312e8f755dca37
      https://github.com/llvm/llvm-project/commit/1d1186de34c55149be336068bf312e8f755dca37
  Author: Aiden Grossman <agrossman154 at yahoo.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-exegesis.rst
    A llvm/test/tools/llvm-exegesis/X86/latency/loop-register.s
    M llvm/tools/llvm-exegesis/lib/BenchmarkResult.h
    M llvm/tools/llvm-exegesis/lib/SnippetFile.cpp
    M llvm/tools/llvm-exegesis/lib/SnippetRepetitor.cpp
    M llvm/tools/llvm-exegesis/lib/SnippetRepetitor.h
    M llvm/tools/llvm-exegesis/lib/Target.h
    M llvm/tools/llvm-exegesis/lib/X86/Target.cpp
    M llvm/tools/llvm-exegesis/llvm-exegesis.cpp
    M llvm/unittests/tools/llvm-exegesis/X86/SnippetFileTest.cpp
    M llvm/unittests/tools/llvm-exegesis/X86/SnippetRepetitorTest.cpp

  Log Message:
  -----------
  [llvm-exegesis] Add loop-register snippet annotation (#82873)

This patch adds a LLVM-EXEGESIS-LOOP-REGISTER snippet annotation which
allows a user to specify the register to use for the loop counter in the
loop repetition mode. This allows for executing snippets that don't work
with the default value (currently R8 on X86).


  Commit: b0bae445176d30a3fa577d30c21f36dad61003b8
      https://github.com/llvm/llvm-project/commit/b0bae445176d30a3fa577d30c21f36dad61003b8
  Author: rohit-rao <rohitrao at google.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M lld/MachO/Driver.cpp
    M lld/MachO/Options.td
    M lld/test/MachO/lc-build-version.s
    M lld/test/MachO/platform-version.s

  Log Message:
  -----------
  [lld] Adds support for xros. (#83031)


  Commit: 3250330997cf214293a20a1d532b617d72bafb09
      https://github.com/llvm/llvm-project/commit/3250330997cf214293a20a1d532b617d72bafb09
  Author: Wu Yingcong <yingcong.wu at intel.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    A llvm/test/Instrumentation/AddressSanitizer/do-not-instrument-globals-windows.ll

  Log Message:
  -----------
  [asan] Disable instrumentation for available_externally global with COFF (#81109)

For COFF, available_externally global will be instrumented because of
the lack of filtering, and will trigger the Verifier pass assertion and
crash the compilation. This patch will filter out the
available_externally global for COFF.

For non-COFF, `!G->hasExactDefinition()` in line 1954 will filter out
the available_externally globals.

There is a related bug reported in
https://bugs.llvm.org/show_bug.cgi?id=47950 /
https://github.com/llvm/llvm-project/issues/47294. I tried the
reproducer posted on the page and this will fix the problem.

Reproducer:
```
#include <locale>

void grouping_impl() {
  std::use_facet<std::numpunct<char>>(std::locale());
}

// clang -fsanitize=address -D_DLL -std=c++14 -c format.cc
```


  Commit: 5e31e82698d9f1d3f1dd881c87b8c5399d790772
      https://github.com/llvm/llvm-project/commit/5e31e82698d9f1d3f1dd881c87b8c5399d790772
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M compiler-rt/CMakeLists.txt

  Log Message:
  -----------
  [compiler-rt] Use locally configured llvm-lit for standalone builds (#83178)

When building a standalone build with
`-DLLVM_CMAKE_DIR=$HOME/output/llvm-install
-DCOMPILER_RT_INCLUDE_TESTS=ON`, the current code will attempt to use
`LLVM_DEFAULT_EXTERNAL_LIT` which is set to
`$HOME/output/llvm-install/bin/llvm-lit` inside `LLVMConfig.cmake` even
though it is not actually installed. If we are adding the llvm-lit
subdirectory, we can use `get_llvm_lit_path()` immediately afterwards to
set LLVM_EXTERNAL_LIT so that subsequent calls within
`add_lit_testsuite()` use llvm-lit from the current build directory
instead of the nonexistant one.


  Commit: c6fa71cdd0b85a8edb612e326ea275eb23aab032
      https://github.com/llvm/llvm-project/commit/c6fa71cdd0b85a8edb612e326ea275eb23aab032
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
    M libc/cmake/modules/LLVMLibCTestRules.cmake

  Log Message:
  -----------
  [libc][NFC] Add `-Wno-multi-gpu` everywhere for the GPU build (#83173)

Summary:
This warning is intended to indicate if `-march=native` returns
different values in a single compilation sense. As it stands we don't
care and it absolutely spams the test output if you run it on a machine
with more than one GPU like any cluster machine. Disable these warnings
everywhere we compile.


  Commit: f7a99664681390f4bb0211a52f0d89c70aa96762
      https://github.com/llvm/llvm-project/commit/f7a99664681390f4bb0211a52f0d89c70aa96762
  Author: Janeczko Jakub <kuba at ev1.pl>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M mlir/include/mlir/IR/Value.h

  Log Message:
  -----------
  Fix typo in mlir::Value doxygen comment (#83150)

Fix #82900


  Commit: d82e93e7f129d9e8b72570efdf4a15d6ec3d4336
      https://github.com/llvm/llvm-project/commit/d82e93e7f129d9e8b72570efdf4a15d6ec3d4336
  Author: Peiming Liu <36770114+PeimingLiu at users.noreply.github.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SparseTensor/IR/Enums.h
    M mlir/include/mlir/Dialect/SparseTensor/Utils/Merger.h
    M mlir/lib/Dialect/SparseTensor/Utils/Merger.cpp
    M mlir/unittests/Dialect/SparseTensor/MergerTest.cpp

  Log Message:
  -----------
  [mlir][sparse] add merger support on Batch LevelType. (#83186)


  Commit: 06bcd9da1670b1d62e08b9fdd58b3a64368da87b
      https://github.com/llvm/llvm-project/commit/06bcd9da1670b1d62e08b9fdd58b3a64368da87b
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/stdbit.rst
    M libc/include/llvm-libc-macros/stdbit-macros.h
    M libc/spec/spec.td
    M libc/spec/stdc.td
    M libc/src/stdbit/CMakeLists.txt
    A libc/src/stdbit/stdc_has_single_bit_uc.cpp
    A libc/src/stdbit/stdc_has_single_bit_uc.h
    A libc/src/stdbit/stdc_has_single_bit_ui.cpp
    A libc/src/stdbit/stdc_has_single_bit_ui.h
    A libc/src/stdbit/stdc_has_single_bit_ul.cpp
    A libc/src/stdbit/stdc_has_single_bit_ul.h
    A libc/src/stdbit/stdc_has_single_bit_ull.cpp
    A libc/src/stdbit/stdc_has_single_bit_ull.h
    A libc/src/stdbit/stdc_has_single_bit_us.cpp
    A libc/src/stdbit/stdc_has_single_bit_us.h
    M libc/test/include/stdbit_test.cpp
    M libc/test/src/stdbit/CMakeLists.txt
    A libc/test/src/stdbit/stdc_has_single_bit_uc_test.cpp
    A libc/test/src/stdbit/stdc_has_single_bit_ui_test.cpp
    A libc/test/src/stdbit/stdc_has_single_bit_ul_test.cpp
    A libc/test/src/stdbit/stdc_has_single_bit_ull_test.cpp
    A libc/test/src/stdbit/stdc_has_single_bit_us_test.cpp

  Log Message:
  -----------
  [libc][stdbit] implement stdc_has_single_bit (C23) (#83168)


  Commit: 70a7b1e8df7222557cadec4e6d007850ce64f8ed
      https://github.com/llvm/llvm-project/commit/70a7b1e8df7222557cadec4e6d007850ce64f8ed
  Author: Xiang Li <python3kgae at outlook.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    R mlir/test/Target/LLVMIR/erase-dangling-constants.mlir

  Log Message:
  -----------
  Remove test since no test on --debug output. (#83189)


  Commit: d4cdb516eee49ecaf36380af4d8f923cc475e1d7
      https://github.com/llvm/llvm-project/commit/d4cdb516eee49ecaf36380af4d8f923cc475e1d7
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/CMakeLists.txt
    M llvm/lib/Target/WebAssembly/WebAssembly.h
    A llvm/lib/Target/WebAssembly/WebAssemblyRefTypeMem2Local.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    A llvm/test/CodeGen/WebAssembly/ref-type-mem2local.ll

  Log Message:
  -----------
  [WebAssembly] Add RefTypeMem2Local pass (#81965)

This adds `WebAssemblyRefTypeMem2Local` pass, which changes the address
spaces of reference type `alloca`s to `addrspace(1)`. This in turn
changes the address spaces of all `load` and `store` instructions that
use the `alloca`s.

`addrspace(1)` is `WASM_ADDRESS_SPACE_VAR`, and loads and stores to this
address space become `local.get`s and `local.set`s, thanks to the Wasm
local IR support added in

https://github.com/llvm/llvm-project/commit/82f92e35c6464e23859c29422956caaceb623967.

In a follow-up PR, I am planning to replace the usage of mem2reg pass
with this to solve the reference type `alloca` problems described in
#81575.


  Commit: 5964f4bcf012deb8b8dadcc403644c754a6b15e0
      https://github.com/llvm/llvm-project/commit/5964f4bcf012deb8b8dadcc403644c754a6b15e0
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/WebAssembly/BUILD.gn

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


  Commit: 3761ad01e125e3b38ed2d6f40b3cbcbac13611a5
      https://github.com/llvm/llvm-project/commit/3761ad01e125e3b38ed2d6f40b3cbcbac13611a5
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/19.rst
    M libcxx/include/__atomic/aliases.h
    M libcxx/include/__atomic/cxx_atomic_impl.h
    M libcxx/include/__config

  Log Message:
  -----------
  [libc++] Remove _LIBCPP_ATOMIC_ONLY_USE_BUILTINS (#82000)

As discussed in #76647, _LIBCPP_ATOMIC_ONLY_USE_BUILTINS is a
questionable configuration option. It makes our implementation of
std::atomic even more complicated than it already is for a limited
benefit.

Indeed, the original goal of that setting was to decouple libc++ from
libraries like compiler-rt and libatomic in Freestanding mode. We didn't
have a clear understanding of goals and non-goals of Freestanding back
then, but nowadays we do have a better understanding that removing all
dependencies of libc++ in Freestanding is a non-goal. We should still be
able to depend on builtins like those defined in compiler-rt for
implementing our atomic operations in Freestanding. Freestanding means
that there is no underlying operating system, not that there is no
toolchain available.

This patch removes the configuration option. This should have a very
limited fallout since that configuration was only enabled with
-ffreestanding, and libc++ basically doesn't work out of the box on
Freestanding platforms today.

The benefits are a slightly simpler implementation of std::atomic,
getting rid of one of the ABI-incompatible representations of
std::atomic, and clearing the way for proper Freestanding support to
eventually land in the library.

Fixes #81286


  Commit: 78647116d85b30c9b8b31a4690758c33f50c0550
      https://github.com/llvm/llvm-project/commit/78647116d85b30c9b8b31a4690758c33f50c0550
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M compiler-rt/lib/profile/InstrProfilingBuffer.c
    M compiler-rt/test/profile/instrprof-basic.c

  Log Message:
  -----------
  [nfc][compiler-rt]Remove round-up in __llvm_profile_get_num_data (#83194)

- Update instrprof-basic.c as a regression test.


  Commit: 001e18c816736602e3ad1c5dc6259143455610ea
      https://github.com/llvm/llvm-project/commit/001e18c816736602e3ad1c5dc6259143455610ea
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SROA.cpp

  Log Message:
  -----------
  [NFC] clang-format SROA.cpp


  Commit: a3748d60ff18f612cd26a0b4ca7f05f2fbef264d
      https://github.com/llvm/llvm-project/commit/a3748d60ff18f612cd26a0b4ca7f05f2fbef264d
  Author: Iman Hosseini <hosseini.iman at yahoo.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M mlir/docs/Dialects/GPU.md

  Log Message:
  -----------
  [MLIR] Update GPU.md: add gpu kernel outlining to doc example. (#83141)

gpu-kernel-outlining is needed for this example to work.


  Commit: 9d0acb872a5063f570366cd0e94b069d286cc71f
      https://github.com/llvm/llvm-project/commit/9d0acb872a5063f570366cd0e94b069d286cc71f
  Author: Diego Caballero <diegocaballero at google.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
    M mlir/test/Dialect/Vector/vector-rewrite-narrow-types.mlir

  Log Message:
  -----------
  [mlir][Vector] Add support for trunci to narrow type emulation (#82565)

This PR add support for `arith.trunci` to vector narrow type emulation for iX -> i4 truncations, for X >= 8. For now, the pattern only works for 1D vectors and is based on `vector.shuffle` ops. We would need `vector.deinterleave` to add n-D vector support.


  Commit: 0e84e2748b40eb757a5c52a983c87dd4f25a1587
      https://github.com/llvm/llvm-project/commit/0e84e2748b40eb757a5c52a983c87dd4f25a1587
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    A bolt/test/runtime/X86/instrument-wrong-target.s
    R bolt/test/runtime/instrument-wrong-target.s

  Log Message:
  -----------
  [BOLT] Move test under X86 target. NFCI (#83202)

instrument-wrong-target.s test requires X86 host. Move it under
runtime/X86.


  Commit: 04e8653f189bf3d65680c7fb3b3033ad82903ee9
      https://github.com/llvm/llvm-project/commit/04e8653f189bf3d65680c7fb3b3033ad82903ee9
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M libc/benchmarks/automemcpy/lib/CMakeLists.txt
    M libc/cmake/modules/LLVMLibCObjectRules.cmake
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/cmake/modules/compiler_features/check_fixed_point.cpp
    M libc/fuzzing/stdio/printf_fixed_conv_fuzz.cpp
    M libc/include/llvm-libc-types/float128.h
    M libc/src/__support/CPP/limits.h
    M libc/src/__support/CPP/type_traits/is_fixed_point.h
    M libc/src/__support/HashTable/table.h
    M libc/src/__support/fixed_point/fx_bits.h
    M libc/src/__support/fixed_point/fx_rep.h
    M libc/src/__support/fixed_point/sqrt.h
    M libc/src/__support/macros/properties/float.h
    M libc/src/stdfix/abshk.h
    M libc/src/stdfix/abshr.h
    M libc/src/stdfix/absk.h
    M libc/src/stdfix/abslk.h
    M libc/src/stdfix/abslr.h
    M libc/src/stdfix/absr.h
    M libc/src/stdfix/roundhk.h
    M libc/src/stdfix/roundhr.h
    M libc/src/stdfix/roundk.h
    M libc/src/stdfix/roundlk.h
    M libc/src/stdfix/roundlr.h
    M libc/src/stdfix/roundr.h
    M libc/src/stdfix/rounduhk.h
    M libc/src/stdfix/rounduhr.h
    M libc/src/stdfix/rounduk.h
    M libc/src/stdfix/roundulk.h
    M libc/src/stdfix/roundulr.h
    M libc/src/stdfix/roundur.h
    M libc/src/stdfix/sqrtuhk.h
    M libc/src/stdfix/sqrtuhr.h
    M libc/src/stdfix/sqrtuk.h
    M libc/src/stdfix/sqrtulr.h
    M libc/src/stdfix/sqrtur.h
    M libc/src/stdio/printf_core/fixed_converter.h
    M libc/src/stdio/printf_core/parser.h
    M libc/src/sys/epoll/epoll_pwait.h
    M libc/src/sys/epoll/epoll_pwait2.h
    M libc/src/sys/epoll/epoll_wait.h
    M libc/src/sys/epoll/linux/epoll_pwait.cpp
    M libc/src/sys/epoll/linux/epoll_pwait2.cpp
    M libc/src/sys/epoll/linux/epoll_wait.cpp
    M libc/test/UnitTest/CMakeLists.txt
    M libc/test/UnitTest/LibcTest.cpp
    M libc/test/include/stdbit_test.cpp
    M libc/test/include/stdckdint_test.cpp
    M libc/test/integration/startup/CMakeLists.txt
    M libc/test/integration/startup/gpu/rpc_interface_test.cpp
    M libc/test/integration/startup/gpu/rpc_stream_test.cpp
    M libc/test/integration/startup/gpu/rpc_test.cpp
    M libc/test/src/__support/fixed_point/fx_bits_test.cpp
    M libc/test/src/math/differential_testing/CMakeLists.txt
    M libc/utils/LibcTableGenUtil/CMakeLists.txt
    M libc/utils/gpu/loader/Loader.h

  Log Message:
  -----------
  [libc] Add "include/" to the LLVM include directories (#83199)

Summary:
Recent changes added an include path in the float128 type that used the
internal `libc` path to find the macro. This doesn't work once it's
installed because we need to search from the root of the install dir.
This patch adds "include/" to the include path so that our inclusion
of installed headers always match the internal use.


  Commit: d699d9d609a24d80809df15efe47ac539da90e93
      https://github.com/llvm/llvm-project/commit/d699d9d609a24d80809df15efe47ac539da90e93
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M flang/include/flang/Common/float128.h
    M flang/include/flang/Runtime/reduction.h
    M flang/runtime/Float128Math/cabs.cpp
    M flang/runtime/Float128Math/math-entries.h
    M flang/runtime/complex-reduction.c
    M flang/runtime/complex-reduction.h
    M flang/runtime/product.cpp
    M flang/runtime/sum.cpp

  Log Message:
  -----------
  [flang][runtime] Support SUM/PRODUCT/DOT_PRODUCT reductions for REAL(16). (#83169)

The reductions implementations rely on trivial operations that
are supported by the build compiler runtime, so they can be enabled
whenever the build compiler provides 128-bit float support.

std::conj used by DOT_PRODUCT is a template implementation
in most environments, so it should not introduce a dependency
on any 128-bit float support library. I am not goind to
test it in all the build environments before merging.
If it fails for someone, I will deal with it.


  Commit: 062cfada643c1aa48a1bb81894e2920d390fe8cf
      https://github.com/llvm/llvm-project/commit/062cfada643c1aa48a1bb81894e2920d390fe8cf
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt
    M compiler-rt/test/builtins/Unit/ctor_dtor.c

  Log Message:
  -----------
  [builtins] Disable COMPILER_RT_CRT_USE_EH_FRAME_REGISTRY by default (#83201)

Most of GCC's Linux targets have a link spec
`%{!static|static-pie:--eh-frame-hdr}` that doesn't pass --eh-frame-hdr
for `-static` links. `-static` links are supposed to utilize
`__register_frame_info` (called by `crtbeginT.o`, not by crtbegin.o or
crtbeginS.o) as a replacement.

compiler-rt crtbegin (not used with GCC) has some ehframe code, which is
not utilized because Clang driver unconditionally passes --eh-frame-hdr
for Linux targets, even for -static. In addition, LLVM libunwind
implements `__register_frame_info` as an empty stub.

Furthermore, in a non-static link, the `__register_frame_info`
references can cause an undesired weak dynamic symbol.

For now, just disable the config by default.


  Commit: 8506a63bf7cbe593c0707f995fbd0b8f820d0d62
      https://github.com/llvm/llvm-project/commit/8506a63bf7cbe593c0707f995fbd0b8f820d0d62
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/test/CodeGen/WebAssembly/lower-em-ehsjlj-multi-return.ll
    M llvm/test/CodeGen/WebAssembly/multivalue-dont-move-def-past-use.mir
    M llvm/test/CodeGen/WebAssembly/multivalue-stackify.ll
    M llvm/test/CodeGen/WebAssembly/multivalue.ll
    M llvm/test/CodeGen/WebAssembly/multivalue_libcall.ll

  Log Message:
  -----------
  Revert "[WebAssembly] Disable multivalue emission temporarily (#82714)"

This reverts commit 6e6bf9f81756ba6655b4eea8dc45469a47f89b39.

It turned out the multivalue feature had active outside users and it
could cause some disruptions to them, so I'd like to investigate more
about the workarounds before doing this.


  Commit: f20ea05f3b2218a7103612e5e367398b0b27bb27
      https://github.com/llvm/llvm-project/commit/f20ea05f3b2218a7103612e5e367398b0b27bb27
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M flang/include/flang/Common/float128.h
    M flang/runtime/complex-reduction.c

  Log Message:
  -----------
  [flang][runtime] Fixed aarach buildbots after #83169.


  Commit: bcbce807d76a30388b366d14051c5f80e9724dab
      https://github.com/llvm/llvm-project/commit/bcbce807d76a30388b366d14051c5f80e9724dab
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/lib/Headers/__clang_hip_math.h

  Log Message:
  -----------
  Revert "[HIP] fix host min/max in header (#82956)"

This reverts commit 55783bd0f9cfc30aa93c718919dab5419d86a2c6.

Due to regressions in hipCUB.

hipCUB/hipcub/include/hipcub/backend/rocprim/device/device_spmv.hpp:142:33: error: call to 'min' is ambiguous

https://github.com/ROCm/hipCUB/blob/develop/hipcub/include/hipcub/backend/rocprim/device/device_spmv.hpp#L142

The ambuguity seems due to missing min(int, unsigned int).

Previously, there is only min(int, int). After the change,
there are min(int, int) and min(unsigned int, unsigned int),
therefore there is ambiguity.


  Commit: dba2dd2c487d7bed7ad3b76a67fdfce464f0edbf
      https://github.com/llvm/llvm-project/commit/dba2dd2c487d7bed7ad3b76a67fdfce464f0edbf
  Author: Alexander Yermolovich <43973793+ayermolo at users.noreply.github.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/split-debug.c

  Log Message:
  -----------
  Revert "[CLANG][DWARF] Do not emit -ggnu-pubnames for split dwarf version 5." (#83214)

Reverts llvm/llvm-project#82840


  Commit: e9e7aeadaf0ce9d66ff352856fd2d1005b0f7d74
      https://github.com/llvm/llvm-project/commit/e9e7aeadaf0ce9d66ff352856fd2d1005b0f7d74
  Author: Daniel Hoekwater <hoekwater at google.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/basic-block-address-map.c

  Log Message:
  -----------
  [Driver] Allow -fbasic-block-address-map for AArch64 ELF (#82662)

Emitting the basic block address map with
`-fbasic-block-sections=labels` is allowed for AArch64 ELF since
7eaf94fefa1250fc8a46982cea8ce99abacae11f. Allow doing so with
`-fbasic-block-address-map`.


  Commit: 50136ca11f62050b34876a920fcd87d2aefccfdb
      https://github.com/llvm/llvm-project/commit/50136ca11f62050b34876a920fcd87d2aefccfdb
  Author: Xiang Li <python3kgae at outlook.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/DXContainer.h
    M llvm/include/llvm/BinaryFormat/DXContainerConstants.def
    M llvm/include/llvm/Object/DXContainer.h
    M llvm/include/llvm/ObjectYAML/DXContainerYAML.h
    M llvm/lib/Object/DXContainer.cpp
    M llvm/lib/ObjectYAML/DXContainerYAML.cpp
    M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
    M llvm/lib/Target/DirectX/DXILShaderFlags.h
    M llvm/tools/obj2yaml/dxcontainer2yaml.cpp

  Log Message:
  -----------
  [DirectX][NFC] Rename ShaderFlag to SHADER_FEATURE_FLAG. (#82700)

This is preparation for add ShaderFlag in DXIL.

For #57925


  Commit: cf1c97b2d29c51d6c2e79454f6ec3d1f8f98e672
      https://github.com/llvm/llvm-project/commit/cf1c97b2d29c51d6c2e79454f6ec3d1f8f98e672
  Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    A llvm/test/CodeGen/AMDGPU/iglp.opt.reentry.ll

  Log Message:
  -----------
  [AMDGPU] Do not attempt to fallback to default mutations (#83208)

IGLP itself will be in SavedMutations via mutations added during
Scheduler creation, thus falling back results in reapplying IGLP.

In PostRA scheduling, if we have multiple regions with IGLP
instructions, then we may have infinite loop.

Disable the feature for now.


  Commit: 91d23370cd4608f84f5209e445579a3b24ae3545
      https://github.com/llvm/llvm-project/commit/91d23370cd4608f84f5209e445579a3b24ae3545
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/insert-subvector.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-integer.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave-store.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptoi-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-sdnode.ll

  Log Message:
  -----------
  [RISCV] Use a tail agnostic vslideup if possible for scalable insert_subvector (#83146)

If we know that an insert_subvector inserting a fixed subvector will
overwrite the entire tail of the vector, we use a tail agnostic
vslideup. This was added in https://reviews.llvm.org/D147347, but we can
do the same thing for scalable vectors too.

The `Policy` variable is defined in a slightly weird place but this is
to mirror the fixed length subvector code path as closely as possible. I
think we may be able to deduplicate them in future.


  Commit: 1f2a1a72ae6615ce80fcd6f1185d1cde607377d2
      https://github.com/llvm/llvm-project/commit/1f2a1a72ae6615ce80fcd6f1185d1cde607377d2
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M flang/include/flang/Common/float128.h
    M flang/runtime/Float128Math/cabs.cpp
    M flang/runtime/Float128Math/math-entries.h

  Log Message:
  -----------
  [flang][runtime] Fixed flang+Werror buildbots after #83169.


  Commit: 7c206c7812408f152baffa3c73f765b7d9ffdf18
      https://github.com/llvm/llvm-project/commit/7c206c7812408f152baffa3c73f765b7d9ffdf18
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Core/BinaryEmitter.cpp
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Core/Exceptions.cpp
    M bolt/lib/Core/MCPlusBuilder.cpp
    M bolt/lib/Rewrite/LinuxKernelRewriter.cpp

  Log Message:
  -----------
  [BOLT] Refactor interface for instruction labels. NFCI (#83209)

To avoid accidentally setting the label twice for the same instruction,
which can lead to a "lost" label, introduce getOrSetInstLabel()
function. Rename existing functions to getInstLabel()/setInstLabel() to
make it explicit that they operate on instruction labels. Add an
assertion in setInstLabel() that the instruction did not have a prior
label set.


  Commit: 9d56be010cf30054313f5b3fea82331491c58cdb
      https://github.com/llvm/llvm-project/commit/9d56be010cf30054313f5b3fea82331491c58cdb
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/openmp-private.mlir

  Log Message:
  -----------
   [MLIR][OpenMP] Support basic materialization for `omp.private` ops (#81715)

Adds basic support for materializing delayed privatization. So far, the
restrictions on the implementation are:
- Only `private` clauses are supported (`firstprivate` support will be
  added in a later PR).


  Commit: 87c0260f45e5a02cb07722d089dae3f0f84c7b3d
      https://github.com/llvm/llvm-project/commit/87c0260f45e5a02cb07722d089dae3f0f84c7b3d
  Author: erman-gurses <99776114+erman-gurses at users.noreply.github.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/AMDGPU/TransformOps/AMDGPUTransformOps.td
    M mlir/include/mlir/Dialect/AMDGPU/Transforms/Passes.td
    M mlir/include/mlir/Dialect/AMDGPU/Transforms/Transforms.h
    M mlir/lib/Dialect/AMDGPU/TransformOps/AMDGPUTransformOps.cpp
    M mlir/lib/Dialect/AMDGPU/Transforms/OptimizeSharedMemory.cpp
    M mlir/test/Dialect/AMDGPU/optimize_shmem_reads_writes.mlir
    M mlir/test/Dialect/AMDGPU/transform_optimize_shmem_reads_writes.mlir

  Log Message:
  -----------
  [AMDGPU] Add parameterization for optimized shared memory variables (#82508)

- This PR adds parameterization for shared memory variables that are
used for optimization: `sharedMemoryLineSizeBytes` and
`defaultVectorSizeBits.`
- The default values are set to 128 for both variables since it gives
zero bank conflicts.


  Commit: c2b952926fe8707527cf1b8bab211dc4c7ab9aee
      https://github.com/llvm/llvm-project/commit/c2b952926fe8707527cf1b8bab211dc4c7ab9aee
  Author: Quinn Dawkins <quinn.dawkins at gmail.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
    M mlir/test/Dialect/Vector/vector-warp-distribute.mlir
    M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp

  Log Message:
  -----------
  [mlir][vector] Fix n-d transfer write distribution (#83215)

Currently n-d transfer write distribution can be inconsistent with
distribution of reductions if a value has multiple users, one of which
is a transfer_write with a non-standard distribution map, and the other
of which is a vector.reduction.

We may want to consider removing the distribution map functionality in
the future for this reason.


  Commit: 267beb10f2812107734a1cd2172b46e928af76b7
      https://github.com/llvm/llvm-project/commit/267beb10f2812107734a1cd2172b46e928af76b7
  Author: mlevesquedion <mlevesquedion at google.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M mlir/docs/PassManagement.md
    M mlir/docs/PatternRewriter.md

  Log Message:
  -----------
  [MLIR] Fix a few links to passes in the documentation (#83221)

I double checked the links by building [the
website](https://github.com/llvm/mlir-www):

```
$ mlir-www-helper.sh --install-docs ../llvm-project website
$ cd website && hugo serve
```


  Commit: 4d04a40adb68f284350831911a658715134c66d8
      https://github.com/llvm/llvm-project/commit/4d04a40adb68f284350831911a658715134c66d8
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp

  Log Message:
  -----------
  [alpha.webkit.UncountedCallArgsChecker] Allow a variable declaration in a trivial function. (#82291)


  Commit: 8eea478f57e79b6fad065d023355907bc2098206
      https://github.com/llvm/llvm-project/commit/8eea478f57e79b6fad065d023355907bc2098206
  Author: Ryan Prichard <rprichard at google.com>
  Date:   2024-02-27 (Tue, 27 Feb 2024)

  Changed paths:
    M llvm/include/llvm/Demangle/ItaniumDemangle.h

  Log Message:
  -----------
  [ItaniumDemangle] reject A-F in FP literals (#83061)

Sync this change to the copy of ItaniumDemangle.h in "llvm":

https://github.com/llvm/llvm-project/pull/82864

The Itanium C++ ABI specifies that FP literals are encoded using a
lowercase hexadecimal string. Previously, libc++abi allowed uppercase
A-F characters but decoded them by subtracting 'a' from them, producing
negative digit values. It is especially confusing to accept an 'E' digit
because 'E' marks the end of the FP literal.


  Commit: 28c29fbec3057692a7985819d799a9e5d47eb2d1
      https://github.com/llvm/llvm-project/commit/28c29fbec3057692a7985819d799a9e5d47eb2d1
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extract-subvector.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert-subvector.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-concat.ll

  Log Message:
  -----------
  [RISCV] Add exact VLEN RUNs for insert_subvector and concat_vector tests. NFC

Also update the RUNs in the extract_subvector tests to be consistent.
Using the term VLS/VLA here as it's more succinct than KNOWNVLEN/UNKNOWNVLEN.


  Commit: f81d5e549f0e02e1bfc5ccaf6341ad35d4ea8e98
      https://github.com/llvm/llvm-project/commit/f81d5e549f0e02e1bfc5ccaf6341ad35d4ea8e98
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M flang/lib/Lower/HostAssociations.cpp
    M flang/lib/Optimizer/Builder/MutableBox.cpp
    A flang/test/Lower/HLFIR/internal-procedures-polymorphic.f90

  Log Message:
  -----------
  [flang] Handle OPTIONAL polymorphic captured in internal procedures (#82042)

The current code was doing an unconditional `fir.store %optional_box to
%host_link` which caused a crash when %optional_box is absent because is
is attempting to copy a descriptor from a null address.

Add code to conditionally do the copy at runtime.

The polymorphic array case with lower bounds can be handled with the
array case that already deals with descriptor argument with a few
modifications, just use that.


  Commit: 9617da88ab961145047076c45bb2bb1ac4513634
      https://github.com/llvm/llvm-project/commit/9617da88ab961145047076c45bb2bb1ac4513634
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/extract-subvector.ll
    M llvm/test/CodeGen/RISCV/rvv/insert-subvector.ll
    M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-sdnode.ll

  Log Message:
  -----------
  [RISCV] Use a ta vslideup if inserting over end of InterSubVT (#83230)

The description in #83146 is slightly inaccurate: it relaxes a tail
undisturbed vslideup to tail agnostic if we are inserting over the
entire tail of the vector **and** we didn't shrink the LMUL of the
vector being inserted into.

This handles the case where we did shrink down the LMUL via InterSubVT
by checking if we inserted over the entire tail of InterSubVT, the
actual type that we're performing the vslideup on, not VecVT.


  Commit: 2b545108ffcb188b69d1a5e37081494d231e1456
      https://github.com/llvm/llvm-project/commit/2b545108ffcb188b69d1a5e37081494d231e1456
  Author: David Green <david.green at arm.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

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

  Log Message:
  -----------
  [GlobalISel] Add a TargetLowering variable to IRTranslator. NFC (#83009)

This prevents us from getting the variable multiple times.


  Commit: a4fff36b6cf64d0afa965a8ef4927145c5558124
      https://github.com/llvm/llvm-project/commit/a4fff36b6cf64d0afa965a8ef4927145c5558124
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

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

  Log Message:
  -----------
  [bazel] Add "include/" for libc includes

for 04e8653f189bf3d65680c7fb3b3033ad82903ee9 #83199


  Commit: 619ee20b3911f9a481a75a64704c80aef16af9d0
      https://github.com/llvm/llvm-project/commit/619ee20b3911f9a481a75a64704c80aef16af9d0
  Author: Oleksandr "Alex" Zinenko <zinenko at google.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/examples/CMakeLists.txt
    A mlir/examples/transform-opt/CMakeLists.txt
    A mlir/examples/transform-opt/README.md
    A mlir/examples/transform-opt/mlir-transform-opt.cpp
    M mlir/test/CMakeLists.txt
    A mlir/test/Examples/transform-opt/empty.mlir
    A mlir/test/Examples/transform-opt/external-decl.mlir
    A mlir/test/Examples/transform-opt/external-def.mlir
    A mlir/test/Examples/transform-opt/pass.mlir
    A mlir/test/Examples/transform-opt/self-contained.mlir
    A mlir/test/Examples/transform-opt/syntax-error.mlir
    M mlir/test/lit.cfg.py

  Log Message:
  -----------
  [mlir] add an example of using transform dialect standalone (#82623)

Transform dialect interpreter is designed to be usable outside of the
pass pipeline, as the main program transformation driver, e.g., for
languages with explicit schedules. Provide an example of such usage with
a couple of tests.


  Commit: 49c399c2d113df1654b09c9b5afa38924829a8fe
      https://github.com/llvm/llvm-project/commit/49c399c2d113df1654b09c9b5afa38924829a8fe
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/ByteCodeExprGen.h
    M clang/lib/AST/Interp/EvalEmitter.cpp
    M clang/lib/AST/Interp/EvaluationResult.h
    M clang/test/AST/Interp/cxx20.cpp

  Log Message:
  -----------
  [clang][Interp] Toplevel destructors may fail

We used to run them, but not check if they failed. If they do,
the expression is invalid, even if we already have a result.

I do have a suspicion that we need to manually call destroyLocals()
in more places (everywhere basically?), but I'll wait with that
until I have a reproducer at hand.


  Commit: 9f99eda1208787364b1a381b2d4e146fc4868cd5
      https://github.com/llvm/llvm-project/commit/9f99eda1208787364b1a381b2d4e146fc4868cd5
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/test/AST/Interp/cxx20.cpp

  Log Message:
  -----------
  [clang][Interp][NFC] Convert test to verify=expected,both style


  Commit: 1d61709f7718d2dc2aee1c27d02043a748e8e6d7
      https://github.com/llvm/llvm-project/commit/1d61709f7718d2dc2aee1c27d02043a748e8e6d7
  Author: Jean Perier <jperier at nvidia.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M flang/lib/Lower/HostAssociations.cpp

  Log Message:
  -----------
  [flang] fix warning after #82042


  Commit: 26b8be201e2d15867bb327a8008fffb3e34d42a5
      https://github.com/llvm/llvm-project/commit/26b8be201e2d15867bb327a8008fffb3e34d42a5
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M flang/include/flang/Lower/AbstractConverter.h
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/lib/Lower/OpenMP/DataSharingProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/OpenMP/Utils.h
    A flang/test/Lower/OpenMP/FIR/delayed-privatization-firstprivate.f90
    A flang/test/Lower/OpenMP/FIR/delayed-privatization-private.f90
    A flang/test/Lower/OpenMP/delayed-privatization-firstprivate.f90
    A flang/test/Lower/OpenMP/delayed-privatization-private-firstprivate.f90
    A flang/test/Lower/OpenMP/delayed-privatization-private.f90
    A flang/test/Lower/OpenMP/delayed-privatization-reduction.f90

  Log Message:
  -----------
   [flang][OpenMP][MLIR] Basic support for delayed privatization code-gen (#81833)

Adds basic support for emitting delayed privatizers from flang. So far,
only types of symbols are supported (i.e. scalars), support for more
complicated types will be added later. This also makes sure that
reduction and delayed privatization work properly together by merging
the
body-gen callbacks for both in case both clauses are present on the
parallel construct.


  Commit: 6008cd40b7bbdc66555550c2e38648d5ce99cc78
      https://github.com/llvm/llvm-project/commit/6008cd40b7bbdc66555550c2e38648d5ce99cc78
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/lib/Dialect/Test/TestPatterns.cpp

  Log Message:
  -----------
  [mlir][Transforms] Dialect conversion: Assert when accessing erased ops (#83132)

The dialect conversion maintains sets of "ignored" and "replaced" ops.
This change simplifies the two sets, such that all nested ops are
included. (This was previously not the case and sometimes only the
parent op was included.)

This change allows for more aggressive assertions to prevent incorrect
rewriter API usage. E.g., accessing ops/blocks/regions within an erased
op.

A concrete example: I have seen conversion patterns in downstream
projects where an op is replaced with a new op, and the region of the
old op is afterwards inlined into the newly created op. This is invalid
rewriter API usage: ops that were replaced/erased should not be
accessed. Nested ops will be considered "ignored", even if they are
moved to a different region after the region's parent op was erased
(which is illegal API usage). Instead, create a new op, inline the
regions, then replace the old op with the new op.


  Commit: 6e41d60a717132fadac74abe61ac6a9b1ca98778
      https://github.com/llvm/llvm-project/commit/6e41d60a717132fadac74abe61ac6a9b1ca98778
  Author: David Green <david.green at arm.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAGAddressAnalysis.h
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGAddressAnalysis.cpp
    M llvm/test/CodeGen/AArch64/alloca-load-store-scalable-array.ll
    M llvm/test/CodeGen/AArch64/alloca-load-store-scalable-struct.ll
    M llvm/test/CodeGen/RISCV/rvv/alloca-load-store-scalable-array.ll
    M llvm/test/CodeGen/RISCV/rvv/alloca-load-store-scalable-struct.ll
    M llvm/unittests/CodeGen/SelectionDAGAddressAnalysisTest.cpp

  Log Message:
  -----------
  [SelectionDAG] Change computeAliasing signature from optional<uint64> to LocationSize. (#83017)

This is another smaller step of #70452, changing the signature of
computeAliasing() from optional<uint64_t> to LocationSize, and follow-up
changes in DAGCombiner::mayAlias(). There are some test change due to
the previous AA->isNoAlias call incorrectly using an unknown size
(~UINT64_T(0)). This should then be improved again in #70452 when the
types are known to be scalable.


  Commit: ba692301f1697183d1665cc0f410d4235b3036db
      https://github.com/llvm/llvm-project/commit/ba692301f1697183d1665cc0f410d4235b3036db
  Author: Tuan Chuong Goh <chuong.goh at arm.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    A llvm/test/CodeGen/AArch64/store.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Pre-Commit Test for G_STORE v4s8 (#82498)


  Commit: 3fa91021257ec89ccbfa8aae80312700c2de9d11
      https://github.com/llvm/llvm-project/commit/3fa91021257ec89ccbfa8aae80312700c2de9d11
  Author: jkorous-apple <jkorous at apple.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/lib/Analysis/UnsafeBufferUsage.cpp

  Log Message:
  -----------
  [-Wunsafe-buffer-usage][NFC] clang-format UnsafeBufferUsage.cpp (#82027)


  Commit: 5468f8841353cd56350a6ebe6898d2563e5c34b0
      https://github.com/llvm/llvm-project/commit/5468f8841353cd56350a6ebe6898d2563e5c34b0
  Author: Oleksandr "Alex" Zinenko <zinenko at google.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Transform/Transforms/Passes.td
    M mlir/lib/Dialect/Transform/Transforms/InterpreterPass.cpp
    M mlir/test/Dialect/Transform/include/test-interpreter-external-concurrent-source.mlir
    M mlir/test/Dialect/Transform/include/test-interpreter-external-source.mlir
    M mlir/test/Dialect/Transform/multi-arg-top-level-ops.mlir
    M mlir/test/Dialect/Transform/multi-arg-top-level-params.mlir
    M mlir/test/Dialect/Transform/multi-arg-top-level-values.mlir
    M mlir/test/Dialect/Transform/test-interpreter-debug.mlir
    M mlir/test/Dialect/Transform/test-interpreter-external-concurrent.mlir
    M mlir/test/Dialect/Transform/test-interpreter-external.mlir
    M mlir/test/Dialect/Transform/test-interpreter.mlir
    M mlir/test/Dialect/Transform/test-pass-application.mlir
    M mlir/test/Dialect/Transform/test-pattern-application.mlir
    M mlir/test/Dialect/Transform/test-pdl-extension.mlir
    M mlir/test/Dialect/Transform/transform-state-extension.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/test-contraction.mlir

  Log Message:
  -----------
  [mlir] update remaining transform tests to main pass (#81279)

Use the main transform interpreter pass instead of the test pass. The
only tests that are not updated are specific to the operation of the
test pass.


  Commit: 686ec7c2e9638d5b96d922886827a532d339856d
      https://github.com/llvm/llvm-project/commit/686ec7c2e9638d5b96d922886827a532d339856d
  Author: chuongg3 <chuong.goh at arm.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/store.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Legalize G_STORE for v4s8 vector (#82498)

Lowers `G_STORE v4s8, ptr` into

`s32 = G_BITCAST v4s8`
`G_STORE s32, ptr`


  Commit: 41427b0e8eeed9891d4e98ea9ac6a812682fd507
      https://github.com/llvm/llvm-project/commit/41427b0e8eeed9891d4e98ea9ac6a812682fd507
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
    M llvm/test/CodeGen/AArch64/sme-disable-gisel-fisel.ll

  Log Message:
  -----------
  [AArch64] Disable FastISel/GlobalISel for ZT0 state (#82768)

For __arm_new("zt0") we need to have special setup code in the prologue.
For calls that don't preserve zt0, we need to emit code preserve ZT0
around the call.
This is only emitted by SelectionDAG ISel at the moment.


  Commit: fd336c33b6c94ab1f4cfd7e13ce4ab0e6ddda92e
      https://github.com/llvm/llvm-project/commit/fd336c33b6c94ab1f4cfd7e13ce4ab0e6ddda92e
  Author: Tuan Chuong Goh <chuong.goh at arm.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    A llvm/test/CodeGen/AArch64/load.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Pre-Commit Test for Legalize G_LOAD v4i8 (#82989)


  Commit: 37daff028fcec27f2be1bb990df77e19c0244ccf
      https://github.com/llvm/llvm-project/commit/37daff028fcec27f2be1bb990df77e19c0244ccf
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/setcc-lowering.ll

  Log Message:
  -----------
  [X86] setcc-lowering.ll - regenerate with AVX2 test coverage

Added while triaging a regression from #82290


  Commit: ffe7049b543adb9739261d28a60d4a47a00aa2e0
      https://github.com/llvm/llvm-project/commit/ffe7049b543adb9739261d28a60d4a47a00aa2e0
  Author: Alejandro Álvarez Ayllón <alejandro.alvarez at sonarsource.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/test/Analysis/Inputs/system-header-simulator-for-simple-stream.h
    M clang/test/Analysis/Inputs/system-header-simulator-for-valist.h
    M clang/test/Analysis/Inputs/system-header-simulator.h
    M clang/test/Analysis/stream-invalidate.c
    M clang/test/Analysis/stream.c

  Log Message:
  -----------
  [clang][analyzer] StreamChecker: Model getc, vfscanf, putc, vfprintf (#82476)

Model `getc` and `putc` as equivalent to `fgetc` and `fputc` respectively.

Model `vfscanf` and `vfprintf` as `fscanf` and `fprintf`, except that
`vfscanf` can not invalidate the parameters due to the indirection via a
`va_list`. Nevertheless, we can still track EOF and errors as for `fscanf`.


  Commit: fe97a59a7be51dfc7e92619536963051604d155a
      https://github.com/llvm/llvm-project/commit/fe97a59a7be51dfc7e92619536963051604d155a
  Author: Julian Schmidt <git.julian.schmidt at gmail.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/docs/LibASTMatchersReference.html
    M clang/docs/tools/dump_ast_matchers.py
    M clang/include/clang/ASTMatchers/ASTMatchers.h

  Log Message:
  -----------
  [clang] remove (clang::)ast_matchers:: namespace from AST matcher args for docs (#81437)

When parsing the ASTMatchers.h file, a matcher could specify an argument
that is a matcher using the not needed namespace
`(clang::)ast_matchers::`.
Change the argument parsing in dump_ast_matchers.py to remove those
namespaces such that when parameters with these namespaces slip through,
the namespaces will be not be shown in the matchers reference, like it
is done with the `internal` namespace.
Additionally, remove the not needed namespaces from arguments in
ASTMatchers.h.


  Commit: 3d454d2895820cd1e6caa92f1e82ba468b5b5f09
      https://github.com/llvm/llvm-project/commit/3d454d2895820cd1e6caa92f1e82ba468b5b5f09
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/lib/CodeGen/CGCall.cpp
    M llvm/include/llvm/Support/TypeSize.h
    M llvm/unittests/Support/TypeSizeTest.cpp

  Log Message:
  -----------
  [LLVM][TypeSize] Remove default constructor. (#82810)


  Commit: 2703f7ec4fb603a7c38288409c9ac919a47cca2a
      https://github.com/llvm/llvm-project/commit/2703f7ec4fb603a7c38288409c9ac919a47cca2a
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M flang/include/flang/Lower/AbstractConverter.h
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp

  Log Message:
  -----------
  [flang] Fix linker error for debug builds. (#83250)

PR #81833 introduced some changes to broke some debug builds. This
happened due to an indirectly included file referencing an `operator <<`
function which is defined in a `.cpp` file that not linked with `tco`
and `fir-opt`.


  Commit: 6287b7b9e9b729afde4aef7d41609d9b4efaecda
      https://github.com/llvm/llvm-project/commit/6287b7b9e9b729afde4aef7d41609d9b4efaecda
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/kshift.ll
    M llvm/test/CodeGen/X86/pr46455.ll
    M llvm/test/CodeGen/X86/setcc-lowering.ll

  Log Message:
  -----------
  [X86] combineEXTRACT_SUBVECTOR - extract 256-bit comparisons if only one subvector is required

If only one subvector extraction will be necessary (i.e. because the other is constant etc.) then extract the source operands and perform as a 128-bit comparison

Ideally DAGCombiner's narrowExtractedVectorBinOp would handle this but its tricky to confirm when a target opcode can be safely extracted and performed as a different vector type

Partially improves an outstanding regression in #82290


  Commit: 0a54b36d5e6d941e25c60520a7317d75355aeae5
      https://github.com/llvm/llvm-project/commit/0a54b36d5e6d941e25c60520a7317d75355aeae5
  Author: AtariDreams <83477269+AtariDreams at users.noreply.github.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86FrameLowering.cpp
    M llvm/test/CodeGen/X86/x86-32-intrcc.ll
    M llvm/test/CodeGen/X86/x86-64-intrcc-uintr.ll
    M llvm/test/CodeGen/X86/x86-64-intrcc.ll

  Log Message:
  -----------
  [X86] Resolve FIXME: Create cld only when needed (#82415)

Only use cld when we also have rep instructions, are calling a function, or contain inline asm.


  Commit: 07d8a457ad8bb9a14974b9cb47072746c7f5e489
      https://github.com/llvm/llvm-project/commit/07d8a457ad8bb9a14974b9cb47072746c7f5e489
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-objcopy.rst
    M llvm/docs/ReleaseNotes.rst
    M llvm/include/llvm/ObjCopy/ELF/ELFConfig.h
    M llvm/lib/ObjCopy/ELF/ELFObjcopy.cpp
    A llvm/test/tools/llvm-objcopy/ELF/set-symbol-visibility.test
    M llvm/tools/llvm-objcopy/ObjcopyOptions.cpp
    M llvm/tools/llvm-objcopy/ObjcopyOpts.td

  Log Message:
  -----------
  [llvm-objcopy] Add --set-symbol-visibility and --set-symbols-visibility options (#80872)

Add options --set-symbol-visibility and --set-symbols-visibility to
manually change the visibility of symbols.

There is already an option to set the visibility of newly added symbols
via --add-symbol and --new-symbol-visibility. This option will allow to
change the visibility of already existing symbols.


  Commit: 27b297bf21b6637047c1ac403f983351b9a3fc64
      https://github.com/llvm/llvm-project/commit/27b297bf21b6637047c1ac403f983351b9a3fc64
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/lib/CodeGen/CGCall.cpp

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

llvm-project/clang/lib/CodeGen/CGCall.cpp:3226:24:
error: unused variable 'StructSize' [-Werror,-Wunused-variable]
        llvm::TypeSize StructSize = CGM.getDataLayout().getTypeAllocSize(STy);
                       ^
llvm-project/clang/lib/CodeGen/CGCall.cpp:3227:24:
error: unused variable 'PtrElementSize' [-Werror,-Wunused-variable]
        llvm::TypeSize PtrElementSize =
                       ^
llvm-project/clang/lib/CodeGen/CGCall.cpp:5313:24:
error: unused variable 'SrcTypeSize' [-Werror,-Wunused-variable]
        llvm::TypeSize SrcTypeSize =
                       ^
llvm-project/clang/lib/CodeGen/CGCall.cpp:5315:24:
error: unused variable 'DstTypeSize' [-Werror,-Wunused-variable]
        llvm::TypeSize DstTypeSize = CGM.getDataLayout().getTypeAllocSize(STy);
                       ^
4 errors generated.


  Commit: 1f74f5f48bc9e1091602163ac925c807d70706e1
      https://github.com/llvm/llvm-project/commit/1f74f5f48bc9e1091602163ac925c807d70706e1
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIRIntrinsics.cpp

  Log Message:
  -----------
  [flang] Fix flang build after #83132 (#83253)

This fix is a temporary workaround. `LowerHLFIRIntrinsics.cpp` should be
using the greedy pattern rewriter or a manual IR traversal. All patterns
in this file are rewrite patterns. The test failure was caused by
`replaceAllUsesWith`, which is not supported by the dialect conversion;
additional asserts were added recently to prevent incorrect API usage.
These trigger now.

Alternatively, turning the patterns into conversion patterns and
specifying a type converter may work.

Failing test case:
`Fortran/gfortran/regression/gfortran-regression-compile-regression__inline_matmul_14_f90.test`


  Commit: 570bc5d291f92e19f6264262b02ddff1a2f2e09b
      https://github.com/llvm/llvm-project/commit/570bc5d291f92e19f6264262b02ddff1a2f2e09b
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/test/Analysis/Inputs/system-header-simulator-for-simple-stream.h
    M clang/test/Analysis/Inputs/system-header-simulator-for-valist.h
    M clang/test/Analysis/Inputs/system-header-simulator.h
    M clang/test/Analysis/stream-invalidate.c
    M clang/test/Analysis/stream.c

  Log Message:
  -----------
  Revert "[clang][analyzer] StreamChecker: Model getc, vfscanf, putc, vfprintf (#82476)"

This reverts commit ffe7049b543adb9739261d28a60d4a47a00aa2e0.

This commit breaks on e.g. arm:
Example:
https://lab.llvm.org/buildbot/#/builders/245/builds/21177/steps/5/logs/FAIL__Clang__stream_c

```
******************** TEST 'Clang :: Analysis/stream.c' FAILED ********************
Exit Code: 1
Command Output (stderr):
--
RUN: at line 1: /home/tcwg-buildbot/worker/clang-armv8-quick/stage1/bin/clang -cc1 -internal-isystem /home/tcwg-buildbot/worker/clang-armv8-quick/stage1/lib/clang/19/include -nostdsysteminc -analyze -analyzer-constraints=range -setup-static-analyzer -analyzer-checker=core,alpha.unix.Stream,debug.ExprInspection -verify /home/tcwg-buildbot/worker/clang-armv8-quick/llvm/clang/test/Analysis/stream.c
+ /home/tcwg-buildbot/worker/clang-armv8-quick/stage1/bin/clang -cc1 -internal-isystem /home/tcwg-buildbot/worker/clang-armv8-quick/stage1/lib/clang/19/include -nostdsysteminc -analyze -analyzer-constraints=range -setup-static-analyzer -analyzer-checker=core,alpha.unix.Stream,debug.ExprInspection -verify /home/tcwg-buildbot/worker/clang-armv8-quick/llvm/clang/test/Analysis/stream.c
error: 'expected-warning' diagnostics expected but not seen:
  File /home/tcwg-buildbot/worker/clang-armv8-quick/llvm/clang/test/Analysis/stream.c Line 147: Stream pointer might be NULL
  File /home/tcwg-buildbot/worker/clang-armv8-quick/llvm/clang/test/Analysis/stream.c Line 153: Stream pointer might be NULL
error: 'expected-warning' diagnostics seen but not expected:
  File /home/tcwg-buildbot/worker/clang-armv8-quick/llvm/clang/test/Analysis/stream.c Line 148: Stream pointer might be NULL [alpha.unix.Stream]
  File /home/tcwg-buildbot/worker/clang-armv8-quick/llvm/clang/test/Analysis/stream.c Line 154: Stream pointer might be NULL [alpha.unix.Stream]
4 errors generated.
--
********************
```


  Commit: 8a5d51b039c52c3e429390966670b0ab21cf257c
      https://github.com/llvm/llvm-project/commit/8a5d51b039c52c3e429390966670b0ab21cf257c
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
    M llvm/test/Transforms/ConstraintElimination/loops-bottom-tested-pointer-cmps.ll
    M llvm/test/Transforms/ConstraintElimination/loops-header-tested-pointer-cmps.ll
    M llvm/test/Transforms/ConstraintElimination/zext-for-per-formula-reasoning.ll

  Log Message:
  -----------
  [ConstraintElim] Use default depth for most calls of isNonNegative.

Helps to improve resuls in some cases, while being overall neutral with
respect to compile-time,
https://llvm-compile-time-tracker.com/compare.php?from=2c9b6c1b36b8185299de083c3058e0c1e7760442&to=5984b1649dc12741308089de235647cf036df95f&stat=instructions:u


  Commit: 15d9d0fa8f55936625882a28759f0ec0033cb6de
      https://github.com/llvm/llvm-project/commit/15d9d0fa8f55936625882a28759f0ec0033cb6de
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    A llvm/test/Transforms/LoopVectorize/vplan-printing-before-execute.ll

  Log Message:
  -----------
  [VPlan] Also print final VPlan directly before codegen/execute. (#82269)

Some optimizations are apply after UF and VF have been chosen. This
patch adds an extra print of the final VPlan just before
codegen/execution.

In the future, there will be additional transforms that are applied
later (interleaving for example).

PR: https://github.com/llvm/llvm-project/pull/82269


  Commit: 0e42289236d44408e50a710dace629ebad2812b6
      https://github.com/llvm/llvm-project/commit/0e42289236d44408e50a710dace629ebad2812b6
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M flang/include/flang/Lower/AbstractConverter.h

  Log Message:
  -----------
  [flang] Fix build failure (NFC)

llvm-project/flang/include/flang/Lower/SymbolMap.h:52:1:
error: 'SymbolBox' defined as a struct here but previously declared as a class;
this is valid, but may result in linker errors under the Microsoft C++ ABI [-Werror,-Wmismatched-tags]
struct SymbolBox : public fir::details::matcher<SymbolBox> {
^
llvm-project/flang/include/flang/Lower/AbstractConverter.h:56:1: note: did you mean struct here?
class SymbolBox;
^~~~~
struct


  Commit: 926a19bf0b7ea0aa34f2685534b5f4a339f8b409
      https://github.com/llvm/llvm-project/commit/926a19bf0b7ea0aa34f2685534b5f4a339f8b409
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/include/mlir/IR/PatternMatch.h
    M mlir/include/mlir/Transforms/DialectConversion.h
    M mlir/lib/Transforms/Utils/DialectConversion.cpp

  Log Message:
  -----------
  [mlir][Transforms][NFC] Remove `SplitBlockRewrite` (#82777)

When splitting a block during a dialect conversion, a
`SplitBlockRewrite` object is stored in the dialect conversion state.
This commit removes `SplitBlockRewrite`. Instead, a combination of
`CreateBlockRewrite` and multiple `MoveOperationRewrite` is used.

This change simplifies the internal state of the dialect conversion and
is also needed to properly support listeners.

`RewriteBase::splitBlock` is now no longer virtual. All necessary
information for committing/rolling back a split block rewrite can be
deduced from `Listener::notifyBlockInserted` and
`Listener::notifyOperationInserted` (which is also called when moving an
operation).


  Commit: a2efb68906ec2bf7b55b464060c3713e395e68e5
      https://github.com/llvm/llvm-project/commit/a2efb68906ec2bf7b55b464060c3713e395e68e5
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

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

  Log Message:
  -----------
  [clang][Interp] Remove now faulty assertion

We can call getBase() for pointers where Base != Offset as well,
for example when we've added a constant to the Offset.


  Commit: 915fce040271c77df1ff9b2c8797c441cec0d18d
      https://github.com/llvm/llvm-project/commit/915fce040271c77df1ff9b2c8797c441cec0d18d
  Author: Rishabh Bali <rishabhsbali at gmail.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/lib/Conversion/AffineToStandard/AffineToStandard.cpp
    M mlir/test/Conversion/AffineToStandard/lower-affine.mlir

  Log Message:
  -----------
  [mlir][affine] Enable ConvertAffineToStandard pass to handle affine.delinearize_index Op. (#82189)

This PR, aims to enable the `ConvertAffineToStandard` to handle
`affine.dilinearize_index` Operation.

Fixes #78458


  Commit: 06f775a82f6f562f8de75053f62c9c0dbeaa67d2
      https://github.com/llvm/llvm-project/commit/06f775a82f6f562f8de75053f62c9c0dbeaa67d2
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/test/Lower/HLFIR/allocatable-end-of-scope-dealloc.f90
    M flang/test/Lower/HLFIR/bindc_internal_proc.f90
    M flang/test/Lower/HLFIR/internal-procedures-2.f90
    M flang/test/Lower/HLFIR/internal-procedures.f90
    M flang/test/Lower/Intrinsics/random.f90
    M flang/test/Lower/Intrinsics/ubound01.f90
    M flang/test/Lower/OpenACC/acc-routine04.f90
    M flang/test/Lower/OpenMP/FIR/threadprivate-use-association-2.f90
    M flang/test/Lower/OpenMP/threadprivate-commonblock-use.f90
    M flang/test/Lower/OpenMP/threadprivate-use-association-2-hlfir.f90
    M flang/test/Lower/PowerPC/ppc-vector-types.f90
    M flang/test/Lower/array-temp.f90
    M flang/test/Lower/dummy-arguments.f90
    M flang/test/Lower/dummy-procedure-character.f90
    M flang/test/Lower/equivalence-with-host-assoc.f90
    M flang/test/Lower/explicit-interface-results-2.f90
    M flang/test/Lower/forall/array-constructor.f90
    M flang/test/Lower/forall/character-1.f90
    M flang/test/Lower/global-initialization.f90
    M flang/test/Lower/host-associated-functions.f90
    M flang/test/Lower/host-associated-globals.f90
    M flang/test/Lower/host-associated.f90
    M flang/test/Lower/module-and-internal-proc.f90
    M flang/test/Lower/parent-component.f90
    M flang/test/Lower/polymorphic.f90
    M flang/test/Lower/program-units-fir-mangling.f90

  Log Message:
  -----------
  [flang] Give internal linkage to internal procedures (#81929)

Internal procedures cannot be called directly from outside the host
procedure, so there is no point giving them external linkage. The only
reason flang did is because it is the default in MLIR.

Giving external linkage to them:
- prevents deleting them when not used/inlined by LLVM
- causes bugs with shared libraries (at least on linux x86-64) because
the call to the internal function could lead to a dynamic loader call
that would overwrite r10 register (the static chain pointer) due to
system calls and did not restore (it seems it does not expect r10 to be
used for PLT calls).

This patch gives internal linkage to internal procedures:

Note: the llvm.linkage attribute name cannot be obtained via a
getLinkageAttrName since it is not the same name as the one used in the
LLVM dialect. It is just a placeholder defined in
mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp until the func dialect
gets a real linkage model. So simply avoid hard coding it too many times
in lowering.


  Commit: e39e30e95237bee53346acf16d197de8fdf4825e
      https://github.com/llvm/llvm-project/commit/e39e30e95237bee53346acf16d197de8fdf4825e
  Author: Tobias Gysi <tobias.gysi at nextsilicon.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M mlir/test/Target/LLVMIR/attribute-alias-scopes.mlir

  Log Message:
  -----------
  [mlir][llvm] Fix access group translation (#83257)

This commit fixes the translation of access group metadata to LLVM IR.
Previously, it did not use a temporary metadata node to model the
placeholder of the self-referencing access group nodes. This is
dangerous since, the translation may produce a metadata list with a null
entry that is later on changed changed with a self reference. At the
same time, for example the debug info translation may create the same
uniqued node, which after setting the self-reference the suddenly
references the access group metadata. The commit avoids such breakages.


  Commit: ce0687e2df59ff6681c5800f076716f4665c5ec3
      https://github.com/llvm/llvm-project/commit/ce0687e2df59ff6681c5800f076716f4665c5ec3
  Author: Niwin Anto <niwinantop at gmail.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/no-fold-tail-by-masking-iv-external-uses.ll

  Log Message:
  -----------
  [LV] Add test for tail fold by masking with external IV users. (#82329)

Test case for https://github.com/llvm/llvm-project/issues/76069


  Commit: a845ea3878f18878b6bbc91ff5fee2dd51a794f3
      https://github.com/llvm/llvm-project/commit/a845ea3878f18878b6bbc91ff5fee2dd51a794f3
  Author: Valery Pykhtin <valery.pykhtin at gmail.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
    M llvm/test/CodeGen/AMDGPU/sdwa-preserve.mir

  Log Message:
  -----------
  [AMDGPU] Fix SDWA 'preserve' transformation for instructions in different basic blocks. (#82406)

This fixes crash when operand sources for V_OR instruction reside in
different basic blocks.


  Commit: 5f2097dbeda0dfb21bc9dec27f4c8ff2ad42cef2
      https://github.com/llvm/llvm-project/commit/5f2097dbeda0dfb21bc9dec27f4c8ff2ad42cef2
  Author: Ingo Müller <ingomueller at google.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/CMakeLists.txt
    M mlir/include/mlir/Config/mlir-config.h.cmake
    M mlir/include/mlir/InitAllPasses.h
    M mlir/lib/Dialect/GPU/Pipelines/GPUToNVVMPipeline.cpp
    M mlir/lib/Dialect/GPU/Transforms/ModuleToBinary.cpp
    M mlir/lib/Target/LLVM/NVVM/Target.cpp
    M mlir/unittests/Target/LLVM/SerializeNVVMTarget.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel

  Log Message:
  -----------
  [mlir] Expose MLIR_CUDA_CONVERSIONS_ENABLED in mlir-config.h. (#83004)

That macro was not defined in some cases and thus yielded warnings if
compiled with `-Wundef`. In particular, they were not defined in the
BUILD files, so the GPU targets were broken when built with Bazel. This
commit exposes mentioned CMake variable through mlir-config.h and uses
the macro that is introduced with the same name. This replaces the macro
MLIR_CUDA_CONVERSIONS_ENABLED, which the CMake files previously defined
manually.


  Commit: bb0ff1541092b54f81296350ce0e8a397673a105
      https://github.com/llvm/llvm-project/commit/bb0ff1541092b54f81296350ce0e8a397673a105
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:

  Log Message:
  -----------
  [flang] fix one more compilation issue on aarch64. (#83258)

I used `class` instead of `struct` for `SymbolMap`.


  Commit: 8e51b22ce21b01ae0be8267c5da3703ffd3b2c5b
      https://github.com/llvm/llvm-project/commit/8e51b22ce21b01ae0be8267c5da3703ffd3b2c5b
  Author: chuongg3 <chuong.goh at arm.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/load.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Legalize G_LOAD for v4s8 Vector (#82989)

Lowers `v4s8 = G_LOAD %ptr ptr` into

`s32 = G_LOAD %ptr ptr`
`v4s8 = G_BITCAST s32`


  Commit: 9e1432069555d70e1f0148742e565b31d3ba8695
      https://github.com/llvm/llvm-project/commit/9e1432069555d70e1f0148742e565b31d3ba8695
  Author: Ingo Müller <ingomueller at google.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

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

  Log Message:
  -----------
  [bazel] Fix breakage from 915fce040271c77df1ff9b2c8797c441cec0d18d.

That commit (from #82189) introduces a new dependency but does not
declare it in the BUILD files.


  Commit: a8364c9e17b46ec339e97cc00877c58a7bdf6089
      https://github.com/llvm/llvm-project/commit/a8364c9e17b46ec339e97cc00877c58a7bdf6089
  Author: Michael Liao <michael.hliao at gmail.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/lib/Conversion/AffineToStandard/CMakeLists.txt

  Log Message:
  -----------
  [mlir] Fix shared builds. NFC


  Commit: c89d51112d329a4a37ff6dbcda7002853847c8a3
      https://github.com/llvm/llvm-project/commit/c89d51112d329a4a37ff6dbcda7002853847c8a3
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

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

  Log Message:
  -----------
  [SLP]Use It->second.first for BWSz, NFC.


  Commit: 680c780a367bfe1c0cdf786250fd7f565ef6d23d
      https://github.com/llvm/llvm-project/commit/680c780a367bfe1c0cdf786250fd7f565ef6d23d
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/test/MC/AMDGPU/gfx1011_err.s
    M llvm/test/MC/AMDGPU/gfx1030_err.s
    M llvm/test/MC/AMDGPU/gfx10_err_pos.s
    M llvm/test/MC/AMDGPU/gfx940_asm_features.s
    M llvm/test/MC/AMDGPU/gfx940_err.s
    M llvm/test/MC/AMDGPU/sopk-err.s
    M llvm/test/MC/AMDGPU/sopk.s

  Log Message:
  -----------
  [AMDGPU][AsmParser] Support structured HWREG operands. (#82805)

Symbolic values are to be supported separately.


  Commit: fdd60c7b961cd7beb2aaa4c5d0c559c34bbfafe8
      https://github.com/llvm/llvm-project/commit/fdd60c7b961cd7beb2aaa4c5d0c559c34bbfafe8
  Author: Alexey Bataev <5361294+alexey-bataev at users.noreply.github.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

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

  Log Message:
  -----------
  [LV][NFC]Preselect folding style while chosing the max VF, NFC.

Selects the tail-folding style while choosing the max vector
factor and storing it in the data member rather than calculating it each
time upon getTailFoldingStyle call.

Part of https://github.com/llvm/llvm-project/pull/76172

Reviewers: ayalz, fhahn

Reviewed By: fhahn

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


  Commit: cb6c0f1d28c0d1915d1ca9a198254e3828af2384
      https://github.com/llvm/llvm-project/commit/cb6c0f1d28c0d1915d1ca9a198254e3828af2384
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

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

  Log Message:
  -----------
  [clang][Interp] Ignore ArrayDecay ops for null pointers

Just don't do anything and let later operations handle the diagnostics.


  Commit: 3e35ba53e20dbbd3ccc191d71ed75d52dc36ec59
      https://github.com/llvm/llvm-project/commit/3e35ba53e20dbbd3ccc191d71ed75d52dc36ec59
  Author: Petar Avramovic <Petar.Avramovic at amd.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
    M llvm/lib/Target/AMDGPU/SOPInstructions.td
    M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
    M llvm/test/CodeGen/AMDGPU/clamp.ll
    M llvm/test/CodeGen/AMDGPU/flat-scratch.ll
    M llvm/test/CodeGen/AMDGPU/lower-work-group-id-intrinsics-hsa.ll
    M llvm/test/CodeGen/AMDGPU/omod.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-mark-last-scratch-load.ll
    A llvm/test/CodeGen/AMDGPU/wait-before-stores-with-scope_sys.ll
    A llvm/test/CodeGen/AMDGPU/wait-before-stores-with-scope_sys.mir

  Log Message:
  -----------
  AMDGPU/GFX12: Insert waitcnts before stores with scope_sys (#82996)

Insert waitcnts for loads and atomics before stores with system scope.
Scope is field in instruction encoding and corresponds to desired
coherence level in cache hierarchy.
Intrinsic stores can set scope in cache policy operand.
If volatile keyword is used on generic stores memory legalizer will set
scope to system. Generic stores, by default, get lowest scope level.
Waitcnts are not required if it is guaranteed that memory is cached.
For example vulkan shaders can guarantee this.
TODO: implement flag for frontends to give us a hint not to insert
waits.
Expecting vulkan flag to be implemented as vulkan:private MMRA.


  Commit: 6067129fbe8944d5bd39dc1bc2331ce5ed6ecee8
      https://github.com/llvm/llvm-project/commit/6067129fbe8944d5bd39dc1bc2331ce5ed6ecee8
  Author: Quinn Dawkins <quinn.dawkins at gmail.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Dialect/Vector/canonicalize.mlir

  Log Message:
  -----------
  Revert "[mlir][vector] Add a pattern to fuse extract(constant_mask) (#81057)" (#83275)

This reverts commit 5cdb8c0c8854d08ac7ca131ce3e8d78a32eb6716.

This pattern is producing incorrect IR. For example,

```mlir
func.func @extract_subvector_from_constant_mask() -> vector<16xi1> {
  %mask = vector.constant_mask [2, 3] : vector<16x16xi1>
  %extract = vector.extract %mask[8] : vector<16xi1> from vector<16x16xi1>
  return %extract : vector<16xi1>
}
```

Canonicalizes to

```mlir
func.func @extract_subvector_from_constant_mask() -> vector<16xi1> {
  %0 = vector.constant_mask [3] : vector<16xi1>
  return %0 : vector<16xi1>
}
```

Where it should be a zero mask because the extraction index (8) is
greater than the constant mask size along that dim (2).


  Commit: 80cff273906b200eed2f779913f49a64cad8c0c6
      https://github.com/llvm/llvm-project/commit/80cff273906b200eed2f779913f49a64cad8c0c6
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

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

  Log Message:
  -----------
  [LV][NFC]Fix a misprint, NFC.


  Commit: 4623c114fb51e48b5cbb352adecb60d76077cb0a
      https://github.com/llvm/llvm-project/commit/4623c114fb51e48b5cbb352adecb60d76077cb0a
  Author: Diego Caballero <diegocaballero at google.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
    M mlir/test/Dialect/Vector/vector-transforms.mlir

  Log Message:
  -----------
  [mlir][Vector] Support vector.insert in bubbling bitcast patterns (#82843)

This PR is adds support for `vector.insert` to the patterns that bubble up and down `vector.bitcat` ops across `vector.extract/extract_slice/insert_slice` ops.


  Commit: 3fac0562f8bdf193f039945eb40c51a5e6c24de1
      https://github.com/llvm/llvm-project/commit/3fac0562f8bdf193f039945eb40c51a5e6c24de1
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

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

  Log Message:
  -----------
  [VPlan] Reset trip count when replacing ExpandSCEV recipe.

Otherwise accessing the trip count may accesses freed memory.

Fixes https://lab.llvm.org/buildbot/#/builders/74/builds/26239 and
others.


  Commit: 64422cf826354ee1d586c2484ec72d66db898e75
      https://github.com/llvm/llvm-project/commit/64422cf826354ee1d586c2484ec72d66db898e75
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    A flang/test/Integration/OpenMP/copyprivate.f90
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/openmp-llvm.mlir

  Log Message:
  -----------
  [llvm][mlir][OMPIRBuilder] Translate omp.single's copyprivate (#80488)

Use the new copyprivate list from omp.single to emit calls to
__kmpc_copyprivate, during the creation of the single operation
in OMPIRBuilder.

This is patch 4 of 4, to add support for COPYPRIVATE in Flang.
Original PR: https://github.com/llvm/llvm-project/pull/73128


  Commit: cd344a4c20e295d49f8163ec9a0656c1061a6e42
      https://github.com/llvm/llvm-project/commit/cd344a4c20e295d49f8163ec9a0656c1061a6e42
  Author: Walter Erquinigo <a20012251 at gmail.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M lldb/source/Host/common/Editline.cpp
    M lldb/test/API/repl/clang/TestClangREPL.py

  Log Message:
  -----------
  [LLDB] Fix completion of space-only lines in the REPL on Linux (#83203)

https://github.com/modularml/mojo/issues/1796 discovered that if you try
to complete a space-only line in the REPL on Linux, LLDB crashes. I
suspect that editline doesn't behave the same way on linux and on
darwin, because I can't replicate this on darwin.

Adding a boundary check in the completion code prevents the crash from
happening.


  Commit: 26402777ebf4eb3d8f3d5a45943b451c740b2d76
      https://github.com/llvm/llvm-project/commit/26402777ebf4eb3d8f3d5a45943b451c740b2d76
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/sve-intrinsics-reinterpret.ll

  Log Message:
  -----------
  [AArch64] Optimized generated assembly for bool to svbool_t conversions (#83001)

In certain cases Legalizer was generating `AND(WHILELO, SPLAT 1)` instruction pattern, when `WHILELO` would be sufficient.


  Commit: 634b0243b8f7acc85af4f16b70e91d86ded4dc83
      https://github.com/llvm/llvm-project/commit/634b0243b8f7acc85af4f16b70e91d86ded4dc83
  Author: SivanShani-Arm <sivan.shani at arm.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
    M llvm/lib/Target/ARM/ARMInstrFormats.td
    M llvm/lib/Target/ARM/ARMInstrVFP.td
    M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
    M llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMInstPrinter.cpp
    M llvm/test/CodeGen/ARM/cmse-vlldm-no-reorder.mir
    M llvm/test/CodeGen/ARM/vlldm-vlstm-uops.mir
    M llvm/test/MC/ARM/thumbv8m.s
    A llvm/test/MC/ARM/vlstm-vlldm-8.1m.s
    A llvm/test/MC/ARM/vlstm-vlldm-8m.s
    A llvm/test/MC/ARM/vlstm-vlldm-diag.s
    A llvm/test/MC/Disassembler/ARM/armv8.1m-vlldm_vlstm-8.1.main.txt
    A llvm/test/MC/Disassembler/ARM/armv8.1m-vlldm_vlstm-8.main.txt
    M llvm/unittests/Target/ARM/MachineInstrTest.cpp

  Log Message:
  -----------
  [llvm][arm] add T1 and T2 assembly options for vlldm and vlstm (#83116)

T1 allows for an optional registers list, the register list must be {d0-d15}.
T2 defines a mandatory register list, the register list must be {d0-d31}.

The requirements for T1/T2 are as follows:
                T1              T2
Require:        v8-M.Main,      v8.1-M.Main,
                secure state    secure state
16 D Regs       valid           valid
32 D Regs       UNDEFINED       valid
No D Regs       NOP             NOP


  Commit: 28162b7832b87c85faedfca661e47d60e74337e9
      https://github.com/llvm/llvm-project/commit/28162b7832b87c85faedfca661e47d60e74337e9
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M flang/test/Integration/OpenMP/copyprivate.f90

  Log Message:
  -----------
  [flang][OpenMP] Fix copyprivate test on ppc64le


  Commit: 95e036956f0a610027907df9a8f99d1f3c3b4cf5
      https://github.com/llvm/llvm-project/commit/95e036956f0a610027907df9a8f99d1f3c3b4cf5
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/lib/AST/Interp/Interp.h
    M clang/test/AST/Interp/cxx20.cpp

  Log Message:
  -----------
  [clang][Interp] Note UB when converting Inf to integer

The F.isFinite() check here was introduced back when the first
floating point implementation was pushed, but I don't think it's
necessary and it fixes the attached test case.


  Commit: b6f4dd9ee8cd4aa2c41622d75790df9341d9e043
      https://github.com/llvm/llvm-project/commit/b6f4dd9ee8cd4aa2c41622d75790df9341d9e043
  Author: srcarroll <50210727+srcarroll at users.noreply.github.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
    M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
    A mlir/test/Dialect/Linalg/flatten-elementwise.mlir

  Log Message:
  -----------
  [mlir][transform] Implement `FlattenElementwiseLinalgOp` transform op (#81431)

A `transform.structured.flatten_elementwise` op is implemented for
flattening the iteration space and (applicable) operands/results to a
single dimension.


  Commit: 15b6908afa9b74ae62821ff44179d659277eef69
      https://github.com/llvm/llvm-project/commit/15b6908afa9b74ae62821ff44179d659277eef69
  Author: Paul T Robinson <paul.robinson at sony.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/fmaintrin.h
    M clang/lib/Headers/mmintrin.h
    M clang/lib/Headers/prfchwintrin.h
    M clang/lib/Headers/smmintrin.h
    M clang/lib/Headers/tmmintrin.h

  Log Message:
  -----------
  [Headers][X86] Make brief descriptions briefer (#82422)

In Sony's document processing, the first "paragraph" of the description
is duplicated into a Brief Description section. Add paragraph breaks to make
those brief descriptions less verbose.

In fmaintrin.h we were including the \code blocks, which are
inappropriate for a brief description. While I was in there, change
\code to \code{.operation} which the Intel document processing wants.


  Commit: 9da9b5f86750fc5286a89cc75f5f731affec7dfa
      https://github.com/llvm/llvm-project/commit/9da9b5f86750fc5286a89cc75f5f731affec7dfa
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M libc/docs/dev/undefined_behavior.rst

  Log Message:
  -----------
  [libc][docs] Document policy for non-standard func (#83212)

As encountered with <sys/queue.h>, we need a policy for how to handle
implementing functions that users need, but has no specific standard. In
that case, we should treat existing implementations as the standard and
try to match their behavior as best as possible.


  Commit: 46bd65a0509fefdf50d44f63640a7b8bd8ad0d14
      https://github.com/llvm/llvm-project/commit/46bd65a0509fefdf50d44f63640a7b8bd8ad0d14
  Author: Han-Chung Wang <hanhan0912 at gmail.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/test/Dialect/Linalg/vectorize-tensor-extract.mlir

  Log Message:
  -----------
  [mlir][LinAlg] Vectorize reverse-like ops using vector.gather ops. (#83205)

The reverse op is treated as a VectorMemoryAccessKind::Contiguous load.
It is contiguous slice, but we'll need to compute indices differently
and apply a reverse at vector level. It takes non-trivial efforts for
the approach. The revision flips the case to use vector.gather.
Otherwise there are functionality issues. E.g., the below example loaded
`2, 3, 4` (which is a bug), but what we want is `2, 1, 0`.

Before vectorization:

```mlir
func.func @vectorize_reverse_like_tensor_extract(%arg0: tensor<1x2x3xf32>, %arg1: tensor<1x1x3xf32>, %arg2: index) -> tensor<1x1x3xf32> {
  %c1 = arith.constant 1 : index
  %c0 = arith.constant 0 : index
  %c2 = arith.constant 2 : index
  %0 = linalg.generic {indexing_maps = [#map], iterator_types = ["parallel", "parallel", "parallel"]} outs(%arg1 : tensor<1x1x3xf32>) {
  ^bb0(%out: f32):
    %1 = linalg.index 1 : index
    %2 = linalg.index 0 : index
    %3 = affine.apply #map1(%1, %2, %arg2)
    %4 = linalg.index 2 : index
    %5 = arith.subi %c2, %4 : index
    %extracted = tensor.extract %arg0[%c0, %3, %5] : tensor<1x2x3xf32>
    linalg.yield %extracted : f32
  } -> tensor<1x1x3xf32>
  return %0 : tensor<1x1x3xf32>
}
```

Partial IR after vectorization:

```
  %5 = vector.constant_mask [1, 1, 3] : vector<1x1x4xi1>
  %6 = vector.broadcast %arg0 : index to vector<1x1x4xindex>
  %7 = vector.shape_cast %6 : vector<1x1x4xindex> to vector<4xindex>
  %8 = vector.extractelement %7[%c0_i32 : i32] : vector<4xindex>
  %9 = vector.transfer_read %3[%c0, %8, %c2], %cst, %5 {in_bounds = [true, true, true]} : tensor<1x2x3xf32>, vector<1x1x4xf32>
```


  Commit: ad43ea3328dad844c245caf93509c2facba1ec32
      https://github.com/llvm/llvm-project/commit/ad43ea3328dad844c245caf93509c2facba1ec32
  Author: Jason Eckhardt <jeckhardt at nvidia.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    A llvm/test/TableGen/HwModeEncodeDecode3.td
    M llvm/utils/TableGen/CodeEmitterGen.cpp
    M llvm/utils/TableGen/CodeGenHwModes.h
    M llvm/utils/TableGen/DecoderEmitter.cpp

  Log Message:
  -----------
  [TableGen] Add support for DefaultMode in per-HwMode encode/decode. (#83029)

Currently the decoder and encoder emitters will crash if DefaultMode is
used within an EncodingByHwMode. As can be done today for
RegInfoByHwMode and ValueTypeByHwMode, this patch adds support for this
usage in EncodingByHwMode:
  let EncodingInfos =
    EncodingByHwMode<[ModeA, DefaultMode], [EncA, EncDefault]>;


  Commit: c6cbf81c84b00ab0107a09f5b2d0183458a367b8
      https://github.com/llvm/llvm-project/commit/c6cbf81c84b00ab0107a09f5b2d0183458a367b8
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/include/clang/InstallAPI/Context.h
    A clang/include/clang/InstallAPI/Frontend.h
    M clang/include/clang/InstallAPI/HeaderFile.h
    A clang/include/clang/InstallAPI/Visitor.h
    M clang/lib/InstallAPI/CMakeLists.txt
    A clang/lib/InstallAPI/Frontend.cpp
    A clang/lib/InstallAPI/Visitor.cpp
    M clang/test/InstallAPI/basic.test
    A clang/test/InstallAPI/variables.test
    M clang/tools/clang-installapi/ClangInstallAPI.cpp
    M clang/tools/clang-installapi/Options.cpp
    M clang/tools/clang-installapi/Options.h

  Log Message:
  -----------
  [InstallAPI] Hookup Input files & basic ASTVisitor (#82552)

This patch takes in json files as input to determine that header files
to process, and in which order, to pass along for CC1 invocations. This
patch also includes an ASTVisitor to collect simple global variables.


  Commit: b42b7c8a123863d86db9abc8b6a1340b920f6573
      https://github.com/llvm/llvm-project/commit/b42b7c8a123863d86db9abc8b6a1340b920f6573
  Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/lib/CodeGen/ABIInfo.cpp
    M clang/lib/CodeGen/ABIInfo.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/Targets/AArch64.cpp

  Log Message:
  -----------
  [clang] Refactor target attribute mangling. (#81893)

Before this patch all of the 'target', 'target_version' and
'target_clones' attributes were sharing a common mangling logic across
different targets. However we would like to differenciate this logic,
therefore I have moved the default path to ABIInfo and provided
overrides for AArch64. This way we can resolve feature aliases without
affecting the name mangling. The PR #80540 demonstrates a motivating
case.


  Commit: f9b079972c234c90df4b28990d5b2e51184e0b64
      https://github.com/llvm/llvm-project/commit/f9b079972c234c90df4b28990d5b2e51184e0b64
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/InstallAPI/BUILD.gn

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


  Commit: 6101cf3164d77cfa4e2df75bf5262da9a2fb3d0a
      https://github.com/llvm/llvm-project/commit/6101cf3164d77cfa4e2df75bf5262da9a2fb3d0a
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/tools/clang-installapi/CMakeLists.txt

  Log Message:
  -----------
  [InstallAPI] add missing link to clangAST

Appeases bots.


  Commit: 1c211bc76e8b6a3261c62e5b6c2b75b7b90386b0
      https://github.com/llvm/llvm-project/commit/1c211bc76e8b6a3261c62e5b6c2b75b7b90386b0
  Author: Nilanjana Basu <n_basu at apple.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/PowerPC/interleave_IC.ll

  Log Message:
  -----------
  [LV] Remove unused configuration option (#82955)

Recent set of changes (PR #67725) in loop interleaving algorithm caused removal of the loop trip count threshold for allowing interleaving. Therefore configuration option interleave-small-loop-scalar-reduction is no longer needed.


  Commit: c1b8c6cf41df4a148e7a89c3a3c7e8049b0a47af
      https://github.com/llvm/llvm-project/commit/c1b8c6cf41df4a148e7a89c3a3c7e8049b0a47af
  Author: Aart Bik <39774503+aartbik at users.noreply.github.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
    M mlir/test/Integration/Dialect/Arith/CPU/test-wide-int-emulation-compare-results-i16.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/fill-2d.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/use-too-many-tiles.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/Emulated/test-setArmSVLBits.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/load-store-128-bit-tile.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-load-vertical.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-multi-tile-transpose.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-outerproduct-f32.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-outerproduct-f64.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-transfer-read-2d.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-transfer-write-2d.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-transpose.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/tile_fill.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/vector-load-store.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/arrays-of-scalable-vectors.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/test-print-str.mlir

  Log Message:
  -----------
  [mlir][vector][print] do not append newline to printing pure strings (#83213)

Since the vector.print str provides no punctuation control, it is
slightly more flexible to let the client of this operation decide
whether there should be a trailing newline. This allows for printing
like

vector.print str "nse = "
vector.print %nse : index

as

nse = 42


  Commit: baf6725b38491222f40a3c40bd27e57b0dd7f1f9
      https://github.com/llvm/llvm-project/commit/baf6725b38491222f40a3c40bd27e57b0dd7f1f9
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M flang/include/flang/Runtime/reduction.h
    M flang/lib/Optimizer/Builder/Runtime/Reduction.cpp
    M flang/runtime/Float128Math/CMakeLists.txt
    M flang/runtime/Float128Math/math-entries.h
    A flang/runtime/Float128Math/norm2.cpp
    M flang/runtime/extrema.cpp
    M flang/runtime/reduction-templates.h
    M flang/runtime/tools.h
    M flang/test/Lower/Intrinsics/norm2.f90

  Log Message:
  -----------
  [flang][runtime] Support NORM2 for REAL(16) with FortranFloat128Math lib. (#83219)

Changed the lowering to call Norm2DimReal16 for REAL(16).
Added the corresponding entry point to FortranFloat128Math,
which required some restructuring in the related templates.


  Commit: 6244dfef5cd45f1395c66abbe061c6a7eb002676
      https://github.com/llvm/llvm-project/commit/6244dfef5cd45f1395c66abbe061c6a7eb002676
  Author: Kevin Frei <kevinfrei at users.noreply.github.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/include/llvm/DebugInfo/DIContext.h
    M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp

  Log Message:
  -----------
  llvm-dwarfdump --verify aggregated output to JSON file (#81762)

In order to make tooling around dwarf health easier, I've added an `--verify-json` option to `llvm-dwarfdump --verify` that will spit out error summary data with counts to a JSON file.

I've added the same capability to `llvm-gsymutil` in a [different PR.](https://github.com/llvm/llvm-project/pull/81763)

The format of the json is:
``` json
{ 
  "error-categories": { 
    "<first category description>": {"count": 1234},
    "<next category description>": {"count":4321}
  },
  "error-count": 5555
}
```
for a clean run:
``` json
{ 
  "error-categories": {},
  "error-count": 0
}
```

---------

Co-authored-by: Kevin Frei <freik at meta.com>


  Commit: b4bc19e2e6b7d0de9cb5f0578269085a76e99d3f
      https://github.com/llvm/llvm-project/commit/b4bc19e2e6b7d0de9cb5f0578269085a76e99d3f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

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

  Log Message:
  -----------
  [X86] Add tests showing failure to demand only the sign bit of a sitofp/uitofp node

sitofp - if we only demand the signbit, then we can try to use the source integer
uitofp - signbit is guaranteed to be zero

Noticed while reviewing #82290


  Commit: 782147e82ab3e2d0e22f729ea4e54eeed7b3cb96
      https://github.com/llvm/llvm-project/commit/782147e82ab3e2d0e22f729ea4e54eeed7b3cb96
  Author: Patrick Dougherty <patrick.dougherty.0208 at gmail.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/CMakeLists.txt
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/docs/CMake.rst

  Log Message:
  -----------
  [CMake][LIT] Add option to run lit testsuites in parallel (#82899)

Currently `add_lit_target` sets the `USES_TERMINAL` CMake option. When
using Ninja, this forces all lit testsuite targets into the
single-threaded `console` pool.

This PR adds a new option `LLVM_PARALLEL_LIT` which drops the
`USES_TERMINAL` flag, allowing Ninja to run them in parallel.

The default setting (`LLVM_PARALLEL_LIT=OFF`) retains the existing
behavior of serial testsuite execution.


  Commit: 2eb63982e88b9ed8336158d35884b1a1d04a0f78
      https://github.com/llvm/llvm-project/commit/2eb63982e88b9ed8336158d35884b1a1d04a0f78
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/test/Transforms/SROA/phi-and-select.ll
    M llvm/test/Transforms/SROA/phi-gep.ll

  Log Message:
  -----------
  [SROA] Unfold gep of index phi (#83087)

If a gep has only one phi as one of its operands and the remaining
indexes are constant, we can unfold `gep ptr, (phi idx1, idx2)` to `phi
((gep ptr, idx1), (gep ptr, idx2))`.

Take care not to unfold recursive phis.

Followup to #80983.


  Commit: 9c7cde64e6556f8a04dc4a14cbfb2b277d5ab4d9
      https://github.com/llvm/llvm-project/commit/9c7cde64e6556f8a04dc4a14cbfb2b277d5ab4d9
  Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/lib/Dialect/Arith/Transforms/ExpandOps.cpp
    M mlir/test/Dialect/Arith/expand-ops.mlir
    M mlir/test/mlir-cpu-runner/expand-arith-ops.mlir

  Log Message:
  -----------
  Fix the lowering of `arith.truncf : f32 to bf16`. (#83180)

This lowering was not correctly handling the case where saturation of
the mantissa results in an increase of the exponent value. The new code
borrows, with credit, the idea from
https://github.com/pytorch/pytorch/blob/e1502c0cdbfd17548c612f25d5a65b1e4b86224d/c10/util/BFloat16.h#L60-L79
and adds comments to explain the magic trick going on here and why it's
correct. Hat tip to its original author, whom I believe to be
@Maratyszcza.

A testcase was also requiring a tie to be broken upwards in a case where
"to nearest-even" required going downward. The fact that it used to pass
suggests that there was another bug in the old code.


  Commit: 777ac46ddbc318b5d5820d278a2e4dc2213699d8
      https://github.com/llvm/llvm-project/commit/777ac46ddbc318b5d5820d278a2e4dc2213699d8
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Passes/PassBuilderPipelines.cpp

  Log Message:
  -----------
  [llvm] Remove pipeline checks for optsize for DFAJumpThreadingPass

The pass itself checks whether to apply the optimization based on the
minsize attribute, so there isn't much functional benefit to preventing
the pass from being added. Gating the pass gets added to the pass
pipeline complicates the interaction with -enable-dfa-jump-thread, as
well.

Reviewers: aeubanks

Reviewed By: aeubanks

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


  Commit: 21c7bc51e9ed2402a3a2f7a88d63cc8f5c2e303c
      https://github.com/llvm/llvm-project/commit/21c7bc51e9ed2402a3a2f7a88d63cc8f5c2e303c
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M libcxx/include/__utility/integer_sequence.h
    R libcxx/test/std/utilities/intseq/intseq.make/make_integer_seq_fallback.pass.cpp
    R libcxx/test/std/utilities/intseq/intseq.make/make_integer_seq_fallback.verify.cpp

  Log Message:
  -----------
  [libc++] Use __integer_pack to implement integer_sequence on GCC (#82983)

This significantly simplifies the implementation.


  Commit: b81bb0e1d0acc3db64557ed699ccba751b8b511a
      https://github.com/llvm/llvm-project/commit/b81bb0e1d0acc3db64557ed699ccba751b8b511a
  Author: Marius Brehler <marius.brehler at iml.fraunhofer.de>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    M mlir/test/Dialect/EmitC/invalid_ops.mlir
    M mlir/test/Dialect/EmitC/ops.mlir
    A mlir/test/Target/Cpp/logical_operators.mlir

  Log Message:
  -----------
  [mlir][EmitC] Add logical operators (#83123)

This adds operations for the logical operators AND, NOT and OR.


  Commit: 2cacc7a61095577ff42177373d46c8cb8df0cb1f
      https://github.com/llvm/llvm-project/commit/2cacc7a61095577ff42177373d46c8cb8df0cb1f
  Author: Zequan Wu <zequanwu at google.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/databreakpoint/TestDAP_setDataBreakpoints.py
    M lldb/tools/lldb-dap/Watchpoint.cpp
    M lldb/tools/lldb-dap/Watchpoint.h
    M lldb/tools/lldb-dap/lldb-dap.cpp

  Log Message:
  -----------
  [lldb-dap] Deduplicate watchpoints starting at the same address on SetDataBreakpointsRequest. (#83192)

If a SetDataBreakpointsRequest contains a list data breakpoints which
have duplicate starting addresses, the current behaviour is returning
`{verified: true}` to both watchpoints with duplicated starting
addresses. This confuses the client and what actually happens in lldb is
the second one overwrite the first one.

This fixes it by letting the last watchpoint at given address have
`{verified: true}` and all previous watchpoints at the same address
should have `{verfied: false}` at response.


  Commit: 1a7776abe6ca01996e8050dcdc8350d686a5749f
      https://github.com/llvm/llvm-project/commit/1a7776abe6ca01996e8050dcdc8350d686a5749f
  Author: ChiaHungDuan <chiahungduan at google.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/allocator_common.h
    M compiler-rt/lib/scudo/standalone/primary32.h
    M compiler-rt/lib/scudo/standalone/primary64.h
    M compiler-rt/lib/scudo/standalone/tests/primary_test.cpp

  Log Message:
  -----------
  Reland "[scudo] Store more blocks in each TransferBatch" (#83078) (#83081)

This reverts commit 056d62be38c5db3d8332ac300c4ff29214126697.

Fixed the number of bytes copied in moveNToArray()


  Commit: 153003416696c2464d296594dac5a36a5a60bac5
      https://github.com/llvm/llvm-project/commit/153003416696c2464d296594dac5a36a5a60bac5
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M libcxx/include/__atomic/aliases.h
    M libcxx/include/__config
    M libcxx/include/__thread/support/pthread.h
    M libcxx/include/atomic
    M libcxx/test/libcxx/transitive_includes/cxx23.csv
    M libcxx/test/libcxx/transitive_includes/cxx26.csv

  Log Message:
  -----------
  [libc++] Remove unnecessary includes from <atomic> (#82880)

This reduces the include time of `<atomic>` from 135ms to 88ms.


  Commit: b339c88120429df738d198d7535bc59f65f11edb
      https://github.com/llvm/llvm-project/commit/b339c88120429df738d198d7535bc59f65f11edb
  Author: David Green <david.green at arm.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    A llvm/test/CodeGen/AArch64/aes.ll

  Log Message:
  -----------
  [AArch64] Add some base aes intrinsic tests. NFC

Including commutative tests.


  Commit: d37affb06f2709ee46a86568a77ae6fea7fb4424
      https://github.com/llvm/llvm-project/commit/d37affb06f2709ee46a86568a77ae6fea7fb4424
  Author: Aart Bik <39774503+aartbik at users.noreply.github.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
    A mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_print.mlir

  Log Message:
  -----------
  [mlir][sparse] add a sparse_tensor.print operation (#83321)

This operation is mainly used for testing and debugging purposes but
provides a very convenient way to quickly inspect the contents of a
sparse tensor (all components over all stored levels).

Example:

[ [ 1, 0, 2, 0, 0, 0, 0, 0 ],
  [ 0, 0, 0, 0, 0, 0, 0, 0 ],
  [ 0, 0, 0, 0, 0, 0, 0, 0 ],
  [ 0, 0, 3, 4, 0, 5, 0, 0 ]

when stored sparse as DCSC prints as

---- Sparse Tensor ----
nse = 5
pos[0] : ( 0, 4,  )
crd[0] : ( 0, 2, 3, 5,  )
pos[1] : ( 0, 1, 3, 4, 5,  )
crd[1] : ( 0, 0, 3, 3, 3,  )
values : ( 1, 2, 3, 4, 5,  )
----


  Commit: d1f04443b14f3cfc565656fb14d283f729d95344
      https://github.com/llvm/llvm-project/commit/d1f04443b14f3cfc565656fb14d283f729d95344
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

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

  Log Message:
  -----------
  [Bazel] Port clangInstallAPI changes #82293 and #82552


  Commit: 330793c91d08e6ac60334e4813746db898b9407e
      https://github.com/llvm/llvm-project/commit/330793c91d08e6ac60334e4813746db898b9407e
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M libc/include/__llvm-libc-common.h
    M libc/include/llvm-libc-macros/containerof-macro.h
    M libc/include/llvm-libc-macros/fcntl-macros.h
    M libc/include/llvm-libc-macros/features-macros.h
    M libc/include/llvm-libc-macros/fenv-macros.h
    M libc/include/llvm-libc-macros/file-seek-macros.h
    M libc/include/llvm-libc-macros/float-macros.h
    M libc/include/llvm-libc-macros/generic-error-number-macros.h
    M libc/include/llvm-libc-macros/gpu/time-macros.h
    M libc/include/llvm-libc-macros/inttypes-macros.h
    M libc/include/llvm-libc-macros/limits-macros.h
    M libc/include/llvm-libc-macros/linux/fcntl-macros.h
    M libc/include/llvm-libc-macros/linux/sched-macros.h
    M libc/include/llvm-libc-macros/linux/signal-macros.h
    M libc/include/llvm-libc-macros/linux/sys-ioctl-macros.h
    M libc/include/llvm-libc-macros/linux/sys-random-macros.h
    M libc/include/llvm-libc-macros/linux/sys-resource-macros.h
    M libc/include/llvm-libc-macros/linux/sys-socket-macros.h
    M libc/include/llvm-libc-macros/linux/sys-stat-macros.h
    M libc/include/llvm-libc-macros/linux/sys-time-macros.h
    M libc/include/llvm-libc-macros/linux/sys-wait-macros.h
    M libc/include/llvm-libc-macros/linux/termios-macros.h
    M libc/include/llvm-libc-macros/linux/time-macros.h
    M libc/include/llvm-libc-macros/linux/unistd-macros.h
    M libc/include/llvm-libc-macros/math-macros.h
    M libc/include/llvm-libc-macros/null-macro.h
    M libc/include/llvm-libc-macros/offsetof-macro.h
    M libc/include/llvm-libc-macros/sched-macros.h
    M libc/include/llvm-libc-macros/signal-macros.h
    M libc/include/llvm-libc-macros/stdckdint-macros.h
    M libc/include/llvm-libc-macros/stdfix-macros.h
    M libc/include/llvm-libc-macros/stdio-macros.h
    M libc/include/llvm-libc-macros/stdlib-macros.h
    M libc/include/llvm-libc-macros/sys-auxv-macros.h
    M libc/include/llvm-libc-macros/sys-ioctl-macros.h
    M libc/include/llvm-libc-macros/sys-mman-macros.h
    M libc/include/llvm-libc-macros/sys-queue-macros.h
    M libc/include/llvm-libc-macros/sys-random-macros.h
    M libc/include/llvm-libc-macros/sys-resource-macros.h
    M libc/include/llvm-libc-macros/sys-select-macros.h
    M libc/include/llvm-libc-macros/sys-socket-macros.h
    M libc/include/llvm-libc-macros/sys-stat-macros.h
    M libc/include/llvm-libc-macros/sys-time-macros.h
    M libc/include/llvm-libc-macros/sys-wait-macros.h
    M libc/include/llvm-libc-macros/termios-macros.h
    M libc/include/llvm-libc-macros/time-macros.h
    M libc/include/llvm-libc-macros/unistd-macros.h
    M libc/include/llvm-libc-macros/wchar-macros.h
    M libc/include/llvm-libc-types/ACTION.h
    M libc/include/llvm-libc-types/DIR.h
    M libc/include/llvm-libc-types/ENTRY.h
    M libc/include/llvm-libc-types/FILE.h
    M libc/include/llvm-libc-types/__atexithandler_t.h
    M libc/include/llvm-libc-types/__atfork_callback_t.h
    M libc/include/llvm-libc-types/__bsearchcompare_t.h
    M libc/include/llvm-libc-types/__call_once_func_t.h
    M libc/include/llvm-libc-types/__exec_argv_t.h
    M libc/include/llvm-libc-types/__exec_envp_t.h
    M libc/include/llvm-libc-types/__futex_word.h
    M libc/include/llvm-libc-types/__getoptargv_t.h
    M libc/include/llvm-libc-types/__mutex_type.h
    M libc/include/llvm-libc-types/__pthread_once_func_t.h
    M libc/include/llvm-libc-types/__pthread_start_t.h
    M libc/include/llvm-libc-types/__pthread_tss_dtor_t.h
    M libc/include/llvm-libc-types/__qsortcompare_t.h
    M libc/include/llvm-libc-types/__qsortrcompare_t.h
    M libc/include/llvm-libc-types/__sighandler_t.h
    M libc/include/llvm-libc-types/__thread_type.h
    M libc/include/llvm-libc-types/blkcnt_t.h
    M libc/include/llvm-libc-types/blksize_t.h
    M libc/include/llvm-libc-types/cc_t.h
    M libc/include/llvm-libc-types/clock_t.h
    M libc/include/llvm-libc-types/clockid_t.h
    M libc/include/llvm-libc-types/cnd_t.h
    M libc/include/llvm-libc-types/cookie_io_functions_t.h
    M libc/include/llvm-libc-types/cpu_set_t.h
    M libc/include/llvm-libc-types/dev_t.h
    M libc/include/llvm-libc-types/div_t.h
    M libc/include/llvm-libc-types/double_t.h
    M libc/include/llvm-libc-types/fd_set.h
    M libc/include/llvm-libc-types/fenv_t.h
    M libc/include/llvm-libc-types/fexcept_t.h
    M libc/include/llvm-libc-types/float128.h
    M libc/include/llvm-libc-types/float_t.h
    M libc/include/llvm-libc-types/gid_t.h
    M libc/include/llvm-libc-types/ino_t.h
    M libc/include/llvm-libc-types/jmp_buf.h
    M libc/include/llvm-libc-types/ldiv_t.h
    M libc/include/llvm-libc-types/lldiv_t.h
    M libc/include/llvm-libc-types/mode_t.h
    M libc/include/llvm-libc-types/mtx_t.h
    M libc/include/llvm-libc-types/nlink_t.h
    M libc/include/llvm-libc-types/off64_t.h
    M libc/include/llvm-libc-types/off_t.h
    M libc/include/llvm-libc-types/once_flag.h
    M libc/include/llvm-libc-types/pid_t.h
    M libc/include/llvm-libc-types/posix_spawn_file_actions_t.h
    M libc/include/llvm-libc-types/posix_spawnattr_t.h
    M libc/include/llvm-libc-types/pthread_attr_t.h
    M libc/include/llvm-libc-types/pthread_key_t.h
    M libc/include/llvm-libc-types/pthread_mutex_t.h
    M libc/include/llvm-libc-types/pthread_mutexattr_t.h
    M libc/include/llvm-libc-types/pthread_once_t.h
    M libc/include/llvm-libc-types/pthread_t.h
    M libc/include/llvm-libc-types/rlim_t.h
    M libc/include/llvm-libc-types/rpc_opcodes_t.h
    M libc/include/llvm-libc-types/sa_family_t.h
    M libc/include/llvm-libc-types/sig_atomic_t.h
    M libc/include/llvm-libc-types/siginfo_t.h
    M libc/include/llvm-libc-types/sigset_t.h
    M libc/include/llvm-libc-types/size_t.h
    M libc/include/llvm-libc-types/socklen_t.h
    M libc/include/llvm-libc-types/speed_t.h
    M libc/include/llvm-libc-types/ssize_t.h
    M libc/include/llvm-libc-types/stack_t.h
    M libc/include/llvm-libc-types/struct_dirent.h
    M libc/include/llvm-libc-types/struct_epoll_data.h
    M libc/include/llvm-libc-types/struct_epoll_event.h
    M libc/include/llvm-libc-types/struct_hsearch_data.h
    M libc/include/llvm-libc-types/struct_rlimit.h
    M libc/include/llvm-libc-types/struct_rusage.h
    M libc/include/llvm-libc-types/struct_sched_param.h
    M libc/include/llvm-libc-types/struct_sigaction.h
    M libc/include/llvm-libc-types/struct_sockaddr.h
    M libc/include/llvm-libc-types/struct_sockaddr_un.h
    M libc/include/llvm-libc-types/struct_stat.h
    M libc/include/llvm-libc-types/struct_timespec.h
    M libc/include/llvm-libc-types/struct_timeval.h
    M libc/include/llvm-libc-types/struct_tm.h
    M libc/include/llvm-libc-types/struct_utsname.h
    M libc/include/llvm-libc-types/suseconds_t.h
    M libc/include/llvm-libc-types/tcflag_t.h
    M libc/include/llvm-libc-types/test_rpc_opcodes_t.h
    M libc/include/llvm-libc-types/thrd_start_t.h
    M libc/include/llvm-libc-types/thrd_t.h
    M libc/include/llvm-libc-types/time_t.h
    M libc/include/llvm-libc-types/tss_dtor_t.h
    M libc/include/llvm-libc-types/tss_t.h
    M libc/include/llvm-libc-types/uid_t.h
    M libc/include/llvm-libc-types/union_sigval.h
    M libc/include/llvm-libc-types/wchar_t.h
    M libc/include/llvm-libc-types/wint_t.h
    M libc/include/sys/queue.h
    M libc/src/__support/CPP/type_traits/is_fixed_point.h
    M libc/src/__support/FPUtil/fpbits_str.h
    M libc/src/__support/GPU/generic/utils.h
    M libc/src/__support/GPU/utils.h
    M libc/src/__support/HashTable/table.h
    M libc/src/__support/OSUtil/gpu/io.h
    M libc/src/__support/RPC/rpc_util.h
    M libc/src/__support/StringUtil/message_mapper.h
    M libc/src/__support/StringUtil/platform_errors.h
    M libc/src/__support/StringUtil/platform_signals.h
    M libc/src/__support/StringUtil/tables/linux_extension_errors.h
    M libc/src/__support/StringUtil/tables/linux_extension_signals.h
    M libc/src/__support/StringUtil/tables/linux_platform_errors.h
    M libc/src/__support/StringUtil/tables/linux_platform_signals.h
    M libc/src/__support/StringUtil/tables/minimal_platform_errors.h
    M libc/src/__support/StringUtil/tables/minimal_platform_signals.h
    M libc/src/__support/StringUtil/tables/posix_errors.h
    M libc/src/__support/StringUtil/tables/posix_signals.h
    M libc/src/__support/StringUtil/tables/signal_table.h
    M libc/src/__support/StringUtil/tables/stdc_errors.h
    M libc/src/__support/StringUtil/tables/stdc_signals.h
    M libc/src/__support/fixed_point/fx_bits.h
    M libc/src/__support/fixed_point/fx_rep.h
    M libc/src/__support/memory_size.h
    M libc/src/__support/threads/gpu/mutex.h
    M libc/src/assert/assert.h
    M libc/src/gpu/rpc_host_call.h
    M libc/src/math/amdgpu/declarations.h
    M libc/src/math/amdgpu/platform.h
    M libc/src/math/copysignf128.h
    M libc/src/math/generic/exp_utils.h
    M libc/src/math/nvptx/declarations.h
    M libc/src/math/nvptx/nvptx.h
    M libc/src/search/hsearch/global.h
    M libc/src/string/memory_utils/aarch64/inline_memcpy.h
    M libc/src/string/memory_utils/riscv/inline_memmove.h
    M libc/test/UnitTest/ExecuteFunction.h
    M libc/test/UnitTest/FPExceptMatcher.h
    M libc/test/UnitTest/FPMatcher.h
    M libc/test/UnitTest/LibcTest.h
    M libc/test/UnitTest/MemoryMatcher.h
    M libc/test/UnitTest/PlatformDefs.h
    M libc/test/UnitTest/RoundingModeUtils.h
    M libc/test/UnitTest/StringUtils.h
    M libc/test/UnitTest/Test.h
    M libc/test/integration/src/spawn/test_binary_properties.h
    M libc/test/src/math/FAbsTest.h
    M libc/test/src/math/FMaxTest.h
    M libc/test/src/math/FMinTest.h
    M libc/test/src/math/FloorTest.h
    M libc/test/src/math/RandUtils.h
    M libc/test/src/math/RoundTest.h
    M libc/test/src/math/TruncTest.h
    M libc/test/src/math/differential_testing/Timer.h
    M libc/test/src/math/in_float_range_test_helper.h
    M libc/test/src/math/smoke/CeilTest.h
    M libc/test/src/math/smoke/CopySignTest.h
    M libc/test/src/math/smoke/FAbsTest.h
    M libc/test/src/math/smoke/FMaxTest.h
    M libc/test/src/math/smoke/FMinTest.h
    M libc/test/src/math/smoke/FloorTest.h
    M libc/test/src/math/smoke/RIntTest.h
    M libc/test/src/math/smoke/RoundTest.h
    M libc/test/src/math/smoke/RoundToIntegerTest.h
    M libc/test/src/math/smoke/TruncTest.h
    M libc/test/src/time/TmHelper.h
    M libc/utils/MPFRWrapper/MPFRUtils.h

  Log Message:
  -----------
  [libc] fix clang-tidy llvm-header-guard warnings (#82679)


Towards the goal of getting `ninja libc-lint` back to green, fix the numerous
instances of:

    warning: header guard does not follow preferred style [llvm-header-guard]

This is because many of our header guards start with `__LLVM` rather than
`LLVM`.

To filter just these warnings:

    $ ninja -k2000 libc-lint 2>&1 | grep llvm-header-guard

To automatically apply fixits:

    $ find libc/src libc/include libc/test -name \*.h | \
        xargs -n1 -I {} clang-tidy {} -p build/compile_commands.json \
        -checks='-*,llvm-header-guard' --fix --quiet

Some manual cleanup is still necessary as headers that were missing header
guards outright will have them inserted before the license block (we prefer
them after).


  Commit: 249cf356ef21d0b6ed0d1fa962f3fc5a9e3fcc9e
      https://github.com/llvm/llvm-project/commit/249cf356ef21d0b6ed0d1fa962f3fc5a9e3fcc9e
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M lldb/cmake/modules/LLDBConfig.cmake
    M lldb/test/API/lit.cfg.py
    M lldb/test/API/lit.site.cfg.py.in
    M lldb/test/CMakeLists.txt
    M lldb/use_lldb_suite_root.py
    M lldb/utils/lldb-dotest/CMakeLists.txt
    M lldb/utils/lldb-dotest/lldb-dotest.in

  Log Message:
  -----------
  [lldb][test][NFC] Add option to exclude third_party packages (#83191)

The goal here is to remove the third_party/Python/module tree, which
LLDB tests only use to `import pexpect`. This package is available on
`pip`, and I believe should not be hard to obtain.

However, in case it isn't easily available, deleting the tree right now
could cause disruption. This introduces a
`LLDB_TEST_USE_VENDOR_PACKAGES` cmake param that can be enabled, and the
tests will continue loading that tree. By default, it is enabled,
meaning there's really no change here. A followup change will disable it
by default once all known build bots are updated to include this
package. When disabled, an eager cmake check runs that makes sure
`pexpect` is available before waiting for the test to fail in an obscure
way.

Later, this option will go away, and when it does, we can delete the
tree too. Ideally this is not disruptive, and we can remove it in a week
or two.


  Commit: 5b91647e3f82c9747c42c3239b7d7f3ade4542a7
      https://github.com/llvm/llvm-project/commit/5b91647e3f82c9747c42c3239b7d7f3ade4542a7
  Author: Jon Roelofs <jonathan_roelofs at apple.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/MC/MCParser/AsmParser.cpp
    M llvm/test/MC/AArch64/cfi-bad-nesting-darwin.s

  Log Message:
  -----------
  Allow .alt_entry symbols to pass the .cfi nesting check (#82268)

A symbol with an `N_ALT_ENTRY` attribute may be defined in the middle of
a subsection, so it is reasonable to opt them out of the
`.cfi_{start,end}proc` nesting check.

Fixes: https://github.com/llvm/llvm-project/issues/82261


  Commit: 4df364bc93af49ae413ec1ae8328f34ac70730c4
      https://github.com/llvm/llvm-project/commit/4df364bc93af49ae413ec1ae8328f34ac70730c4
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M libc/src/assert/assert.h

  Log Message:
  -----------
  [libc] remove header guard for assert.h (#83334)

It's meant to be included multiple times! Maybe use a NOLINT rule to
suppress
clang-tidy's llvm-header-guard lint warning.


  Commit: caca8d33a9d5e6fe75980c4ae1cb13de2e460590
      https://github.com/llvm/llvm-project/commit/caca8d33a9d5e6fe75980c4ae1cb13de2e460590
  Author: Joe Nash <Sisyph at users.noreply.github.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/utils/vim/syntax/mir.vim

  Log Message:
  -----------
  [vim] Fix command already exists on opening multiple mir buffers (#82410)

When using the vim syntax for mir, an error occurs in nvim  when opening
multiple .mir buffers. delcommand HiLink in the mir syntax file to avoid
the issue.

To reproduce:
Open an .mir file, for example
llvm/test/Codegen/X86/expand-post-ra-pseudo.mir
Open another mir file from within nvim, for example peephole.mir
```
Error detected while processing function 335[30]..<SNR>43_callback[25]..function 335[30]..<SNR>43_callback:                                                                                                                      
line   23:                                                                                                                                                                                                                       
Vim(command):E174: Command already exists: add ! to replace it: HiLink hi def link <args>   
```


  Commit: 1977404d20ab29ff78a58d8c0f1f4c5e7aef6b16
      https://github.com/llvm/llvm-project/commit/1977404d20ab29ff78a58d8c0f1f4c5e7aef6b16
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.h
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M openmp/CMakeLists.txt

  Log Message:
  -----------
  [OpenMP] Respect LLVM per-target install directories (#83282)

Summary:
One recurring problem we have with the OpenMP libraries is that they are
potentially conflicting with ones found on the system, this occurs when
there are two copies and one is used for linking that it not attached to
the correspoding clang compiler. LLVM already uses target specific
directories for this, like with libc++, which are always searched first.
This patch changes the install directory to be
`lib/x86_64-unknown-linux-gnu` for example.

Notable changes would be that users will need to change their
LD_LIBRARY_PATH settings optionally, or use default rt-rpath options.
This should fix problems were users are linking the wrong versions of
static libraries


  Commit: 68f0edfa359fde3fb4f5ec391a4afe96f3905aaf
      https://github.com/llvm/llvm-project/commit/68f0edfa359fde3fb4f5ec391a4afe96f3905aaf
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M libc/config/baremetal/api.td
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/arm/headers.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/baremetal/riscv/headers.txt

  Log Message:
  -----------
  [libc] Include assert.h on baremetal targets (#83324)

Many baremetal applications use asserts.


  Commit: 8394ec9ff1d58b361961e3a8990d0e080ba6c7f2
      https://github.com/llvm/llvm-project/commit/8394ec9ff1d58b361961e3a8990d0e080ba6c7f2
  Author: Aart Bik <39774503+aartbik at users.noreply.github.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_print.mlir

  Log Message:
  -----------
  [mlir][sparse] add a few more cases to sparse_tensor.print test (#83338)


  Commit: 14faf0d4aa841aafd0d1982391114bc35fda7e59
      https://github.com/llvm/llvm-project/commit/14faf0d4aa841aafd0d1982391114bc35fda7e59
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/lib/InstallAPI/Visitor.cpp
    M llvm/include/llvm/TextAPI/RecordsSlice.h

  Log Message:
  -----------
  [TextAPI][InstallAPI] Fix documentation typos, NFC


  Commit: dc456ce4f2ad6ebe883c301758d8eb95fcd16a0a
      https://github.com/llvm/llvm-project/commit/dc456ce4f2ad6ebe883c301758d8eb95fcd16a0a
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/test/BUILD.gn

  Log Message:
  -----------
  [gn] port 249cf356ef21


  Commit: e3b93a16201d96745a2c64523801a2b1eb43b4c0
      https://github.com/llvm/llvm-project/commit/e3b93a16201d96745a2c64523801a2b1eb43b4c0
  Author: Max191 <44243577+Max191 at users.noreply.github.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
    M mlir/test/Dialect/Tensor/canonicalize.mlir

  Log Message:
  -----------
  [mlir] Fix bug in pack and unpack op canonicalization for folding dynamic dims (#82539)

This PR fixes a bug in the inference of pack and unpack static shapes
that should be using an inverse permutation.


  Commit: fc8d48106387b8b79531902788ef93571f924da7
      https://github.com/llvm/llvm-project/commit/fc8d48106387b8b79531902788ef93571f924da7
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/CodeGen/builtins.c
    M clang/test/Sema/builtin-popcountg.c

  Log Message:
  -----------
  [clang] Fix __builtin_popcountg not matching GCC (#83313)

Our implementation previously accepted signed arguments and performed
integer promotion on the argument. GCC's implementation requires an
unsigned argument and does not perform integer promotion on it.


  Commit: 6f8d826b746242802a2368cac26896dfebd6f5a1
      https://github.com/llvm/llvm-project/commit/6f8d826b746242802a2368cac26896dfebd6f5a1
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M libc/.clang-tidy
    M libc/src/__support/FPUtil/FPBits.h
    M libc/src/string/memory_utils/aarch64/inline_bcmp.h
    M libc/src/string/memory_utils/aarch64/inline_memcmp.h
    M libc/src/string/memory_utils/generic/aligned_access.h
    M libc/src/string/memory_utils/generic/byte_per_byte.h
    M libc/src/string/memory_utils/op_aarch64.h
    M libc/src/string/memory_utils/op_builtin.h
    M libc/src/string/memory_utils/op_generic.h
    M libc/src/string/memory_utils/utils.h
    M libc/src/string/memory_utils/x86_64/inline_bcmp.h
    M libc/src/string/memory_utils/x86_64/inline_memcmp.h

  Log Message:
  -----------
  [libc] fix readability-identifier-naming.ConstexprFunctionCase (#83345)

Codify that we use lower_case for
readability-identifier-naming.ConstexprFunctionCase and then fix the 11
violations (rather than codify UPPER_CASE and have to fix the 170 violations).


  Commit: 8dfa1d878d015dd7f466d6eadbaca6c46fc8d7a9
      https://github.com/llvm/llvm-project/commit/8dfa1d878d015dd7f466d6eadbaca6c46fc8d7a9
  Author: Aart Bik <39774503+aartbik at users.noreply.github.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/test/Dialect/SparseTensor/invalid.mlir
    M mlir/test/Dialect/SparseTensor/roundtrip.mlir

  Log Message:
  -----------
  [mlir][sparse] add roundtrip and invalid tests for sparse_tensor.print (#83349)


  Commit: e7a303e3cf7f205184c9d9d878791661260f9852
      https://github.com/llvm/llvm-project/commit/e7a303e3cf7f205184c9d9d878791661260f9852
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

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

  Log Message:
  -----------
  [SelectionDAG] Remove unused getIndexedStridedLoadVP/getIndexedStridedStoreVP functions. NFC (#82847)

These appear to have been copied from getIndexedLoadVP/getIndexedStoreVP
which in turn were copied from the non-VP versions.


  Commit: c345198c7a68cb76e82dbc04d0e91476cb0edc70
      https://github.com/llvm/llvm-project/commit/c345198c7a68cb76e82dbc04d0e91476cb0edc70
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp

  Log Message:
  -----------
  [RISCV] Add a command line option to disable cost per use for compressed registers. (#83320)

I've seen cases where the cost per use increase the number of spills.
Disabling improves the codegen for #79918.

I propose adding this option to allow easier experimentation.


  Commit: ff07c9b701dc6372f82d989d01768051e848b30d
      https://github.com/llvm/llvm-project/commit/ff07c9b701dc6372f82d989d01768051e848b30d
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/include/clang/Driver/Driver.h
    M clang/test/Driver/darwin-header-search-libcxx.cpp
    M clang/test/Driver/mingw-sysroot.cpp
    M clang/test/Driver/no-canonical-prefixes.c
    M clang/test/Driver/program-path-priority.c
    M clang/test/Driver/rocm-detect.hip
    M clang/tools/driver/driver.cpp

  Log Message:
  -----------
  [Driver] Unify InstalledDir and Dir (#80527)

`Driver::ClangExecutable` is derived from:

* (-canonical-prefixes default): `realpath` on the executable path
* (-no-canonical-prefixes) argv[0] (consult PATH if argv[0] is a word)

`Dir` and `ResourceDir` are derived from `ClangExecutable`. Both
variables are used to derive certain include and library paths.

`InstalledDir` is a related concept used to derive certain other paths.
`InstalledDir` is weird in the -canonical-prefixes mode: Clang
calls `make_absolute` but does not follow symlinks
(FIXME from 9ade6a9a747c49383ac747bd8ffaa6a0beaef71c).
This causes some search and library paths to be mix-and-matched.

The "Do a PATH lookup, if there are no directory components." logic
makes things worse.
`InstalledDir` is different when you invoke it via `PATH`:
```
% which clang
/usr/bin/clang
% clang -v |& grep InstalledDir
InstalledDir: /usr/bin
% /usr/lib/llvm-16/bin/clang -v |& grep InstalledDir
InstalledDir: /usr/lib/llvm-16/bin
```

I believe `InstalledDir` was a partial solution to
`-no-canonical-prefixes` and should be eventually removed.

This patch removes `SetInstallDir` and relies on Driver::Driver to set
`InstalledDir` to `Dir`. The behavior for regular file `clang` or
`-no-canonical-prefixes` is unchanged.

If a user creates a symlink to the regular file `clang` and uses the
default `-canonical-prefixes`, they now consistently get search and
library paths relative to the regular file `clang`, not mix-and-match
paths.

If a user creates a symlink to the regular file `clang` and replaces
some directorys from the actual installation, they should change the
symlink to a wrapper that calls the underlying clang with
`-no-canonical-prefixes`.


  Commit: 0f76d9fb5fbfea92da7647af70d78165c71c0700
      https://github.com/llvm/llvm-project/commit/0f76d9fb5fbfea92da7647af70d78165c71c0700
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/tools/clang-installapi/ClangInstallAPI.cpp

  Log Message:
  -----------
  clang-installapi: remove setInstalledDir


  Commit: d3173f4ab61c17337908eb7df3f1c515ddcd428c
      https://github.com/llvm/llvm-project/commit/d3173f4ab61c17337908eb7df3f1c515ddcd428c
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M lldb/test/Shell/Driver/TestHelp.test
    M lldb/tools/driver/Driver.cpp
    M lldb/tools/driver/Driver.h

  Log Message:
  -----------
  [lldb] Remove -d(ebug) mode from the lldb driver (#83330)

The -d(ebug) option broke 5 years ago when I migrated the driver to
libOption. Since then, we were never check if the option is set. We were
incorrectly toggling the internal variable (m_debug_mode) based on
OPT_no_use_colors instead.

Given that the functionality doesn't seem particularly useful and nobody
noticed it has been broken for 5 years, I'm just removing the flag.


  Commit: d7b73c8d012cd19bcbd35a33df9e45e3cdddbfad
      https://github.com/llvm/llvm-project/commit/d7b73c8d012cd19bcbd35a33df9e45e3cdddbfad
  Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOPInstructions.td

  Log Message:
  -----------
  [AMDGPU] Copy WaveSizePredicate into VOP3_Real. NFCI. (#83352)


  Commit: 191fd2d9db46ba41308f0b2b342b2dc268d7be6f
      https://github.com/llvm/llvm-project/commit/191fd2d9db46ba41308f0b2b342b2dc268d7be6f
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/div_i128.ll
    A llvm/test/CodeGen/AMDGPU/rem_i128.ll

  Log Message:
  -----------
  [NFC][AMDGPU] Move the rem tests in `div_i128.ll` into `rem_i128.ll` (#83307)


  Commit: 43b7dfcc1dbdf904b1c507e03e5c34d527b5a344
      https://github.com/llvm/llvm-project/commit/43b7dfcc1dbdf904b1c507e03e5c34d527b5a344
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/test/Transforms/SROA/phi-and-select.ll
    M llvm/test/Transforms/SROA/phi-gep.ll

  Log Message:
  -----------
  Revert "[SROA] Unfold gep of index phi (#83087)"

This reverts commit 2eb63982e88b9ed8336158d35884b1a1d04a0f78.

This caused verifier error
```
Instruction does not dominate all uses!
```
for some projects using Halide.
The verifier error happens inside `Halide::Internal::CodeGen_LLVM::optimize_module`
and looks like a genuine SROA issue.


  Commit: 6bc7c9df7f45642071f2b59a222ba009dc81eb99
      https://github.com/llvm/llvm-project/commit/6bc7c9df7f45642071f2b59a222ba009dc81eb99
  Author: Peiming Liu <36770114+PeimingLiu at users.noreply.github.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_insert_3d.mlir

  Log Message:
  -----------
  [mlir][sparse] infer returned type for sparse_tensor.to_[buffer] ops (#83343)

The sparse structure buffers might not always be memrefs with rank == 1
with the presence of batch levels.


  Commit: 97281708ac176e0464b770686ee314af4da0a3d5
      https://github.com/llvm/llvm-project/commit/97281708ac176e0464b770686ee314af4da0a3d5
  Author: jimingham <jingham at apple.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Commands/Options.td

  Log Message:
  -----------
  Change `image list -r` so that it actually shows the ref count and whether the image is in the shared cache. (#83341)

The help for the `-r` option to `image list` says:

       -r[<width>] ( --ref-count=[<width>] )
Display the reference count if the module is still in the shared module
cache.

but that's not what it actually does. It unconditionally shows the
use_count for all Module shared pointers, regardless of whether they are
still in the shared module cache or whether they are just in the
ModuleCollection and other entities are keeping them alive. That seems
like a more useful behavior, but then it is also useful to know what's
in the shared cache, so I changed this to:

       -r[<width>] ( --ref-count=[<width>] )
Display whether the module is still in the the shared module cache
(Y/N), and its shared pointer use_count.

So instead of just `{5}` you will see `{Y 5}` if it is in the shared
cache and `{N 5}` if not.

I didn't add tests for this because I'm not sure how much we want to fix
shared cache behavior in the testsuite.


  Commit: f83f7128b3c98e5d1d1995bfa18c43c6b32c18bb
      https://github.com/llvm/llvm-project/commit/f83f7128b3c98e5d1d1995bfa18c43c6b32c18bb
  Author: ChiaHungDuan <chiahungduan at google.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/allocator_common.h

  Log Message:
  -----------
  [scudo][NFC] Explicit type casting to avoid compiler warning (#83355)


  Commit: fdf44b37774ede4e15b12508753aca16008b718d
      https://github.com/llvm/llvm-project/commit/fdf44b37774ede4e15b12508753aca16008b718d
  Author: Aart Bik <39774503+aartbik at users.noreply.github.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/CPU/block.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/block_majors.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output_bf16.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output_f16.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_re_im.mlir

  Log Message:
  -----------
  [mlir][sparse] migrate integration tests to sparse_tensor.print (#83357)

This is first step (of many) cleaning up our tests to use the new and
exciting sparse_tensor.print operation instead of lengthy extraction +
print ops.


  Commit: f7a544dd5f515c2f9b312142f573806cc8e64145
      https://github.com/llvm/llvm-project/commit/f7a544dd5f515c2f9b312142f573806cc8e64145
  Author: Alex Langford <alangford at apple.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M lldb/bindings/CMakeLists.txt

  Log Message:
  -----------
  [lldb] Ignore swig warnings about shadowed overloads (#83317)

This specifically addresses the warnings:
$LLVM/lldb/include/lldb/API/SBCommandReturnObject.h:119: Warning 509:
Overloaded method lldb::SBCommandReturnObject::PutCString(char const *)
effectively ignored,
$LLVM/lldb/include/lldb/API/SBCommandReturnObject.h:119: Warning 509: as
it is shadowed by lldb::SBCommandReturnObject::PutCString(char const
*,int).

There is exactly one declaration of SBCommandReturnObject::PutCString.
The second parameter (of type `int`) has default value `-1`. Without
investigating why SWIG believes there are 2 method declarations, I
believe it is safe to ignore this warning. It does not appear to
actually impact functionality in any way.

rdar://117744660


  Commit: 1a0986f0f7a18cef78852e91e73ec577ea05d8c4
      https://github.com/llvm/llvm-project/commit/1a0986f0f7a18cef78852e91e73ec577ea05d8c4
  Author: Peiming Liu <36770114+PeimingLiu at users.noreply.github.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseGPUCodegen.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.h
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorLevel.cpp

  Log Message:
  -----------
  [mlir][sparse] code cleanup (using inferred type to construct to_[buf… (#83361)

…fer] op).


  Commit: 2679d3793b264b2884cf5c9492e3311f08f41de3
      https://github.com/llvm/llvm-project/commit/2679d3793b264b2884cf5c9492e3311f08f41de3
  Author: Uday Bondhugula <uday at polymagelabs.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Affine/Analysis/LoopAnalysis.h
    M mlir/lib/Dialect/Affine/Analysis/LoopAnalysis.cpp
    A mlir/test/Dialect/Affine/access-analysis.mlir
    M mlir/test/lib/Dialect/Affine/CMakeLists.txt
    A mlir/test/lib/Dialect/Affine/TestAccessAnalysis.cpp
    M mlir/tools/mlir-opt/mlir-opt.cpp

  Log Message:
  -----------
  [MLIR][Affine] Add test pass for affine isContiguousAccess (#82923)

`isContiguousAccess` is an important affine analysis utility but is only
tested very indirectly via passes like vectorization and is not exposed.
Expose it and add a test pass for it that'll make it easier/feasible to
write test cases.  This is especially needed since the utility can be
significantly enhanced in power, and we need a test pass to exercise it
directly.

This pass can in the future be used to test the utility of invariant
accesses as well.


  Commit: 6a65b44322ee7ba816283c31f8d71559592ca5e7
      https://github.com/llvm/llvm-project/commit/6a65b44322ee7ba816283c31f8d71559592ca5e7
  Author: Henrik G. Olsson <hnrklssn at gmail.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/global_remove_same.ll
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/global_remove_same.ll.expected
    A llvm/test/tools/UpdateTestChecks/update_test_checks/global_remove_same.test
    M llvm/utils/UpdateTestChecks/common.py
    M llvm/utils/update_test_checks.py

  Log Message:
  -----------
  [UTC] Don't leave dangling CHECK-SAME when removing CHECK lines (#82569)

When removing only lines that are global value CHECK lines, a related
CHECK-SAME line could be left dangling without a previous line to belong
to.

Resolves #78517


  Commit: 27352e600aab6a50939db77a6eacc94a5057d66f
      https://github.com/llvm/llvm-project/commit/27352e600aab6a50939db77a6eacc94a5057d66f
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M libc/src/string/memory_utils/generic/byte_per_byte.h

  Log Message:
  -----------
  [libc] fix typo introduced in inline_bcmp_byte_per_byte (#83356)

My global find+replace was overzealous and broke post submit unit tests.

Link: #83345


  Commit: 0fe4b9dae81695dd44c3392e52e1454864a9c001
      https://github.com/llvm/llvm-project/commit/0fe4b9dae81695dd44c3392e52e1454864a9c001
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td
    M llvm/lib/Target/AMDGPU/DSInstructions.td
    M llvm/lib/Target/AMDGPU/FLATInstructions.td

  Log Message:
  -----------
  AMDGPU: Copy a few Predicates from Pseudo to Real (#83365)

WaveSizePredicate for DS_Reaf and FLAT_Real
  OtherPredicates for MTBUF_Real


  Commit: 5784bf85bc5143266565586ece0113cd773a8616
      https://github.com/llvm/llvm-project/commit/5784bf85bc5143266565586ece0113cd773a8616
  Author: jimingham <jingham at apple.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
    M lldb/test/API/commands/command/script/TestCommandScript.py
    A lldb/test/API/commands/command/script/cmd_file.lldb

  Log Message:
  -----------
  Fix interactive use of "command script add". (#83350)

There was a think-o in a previous commit that made us only able to
define 1 line commands when using command script add interactively.

There was also no test for this feature, so I fixed the think-o and
added a test.


  Commit: 273cfd377b96f721c9e280bdc67c6f9e6e2e383b
      https://github.com/llvm/llvm-project/commit/273cfd377b96f721c9e280bdc67c6f9e6e2e383b
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

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

  Log Message:
  -----------
  [X86][NFC] Avoid duplicated code in X86ExpandPseudo.cpp by using macro GET_EGPR_IF_ENABLED


  Commit: 265e49d1f41766b66883327a3306b7cd5caeec6e
      https://github.com/llvm/llvm-project/commit/265e49d1f41766b66883327a3306b7cd5caeec6e
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

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

  Log Message:
  -----------
  [X86][NFC] Lowercase first letter of function names in X86ExpandPseudo.cpp


  Commit: daf3079222b09683a24dd5b11815f6467ae41b8d
      https://github.com/llvm/llvm-project/commit/daf3079222b09683a24dd5b11815f6467ae41b8d
  Author: lifengxiang1025 <lifengxiang.1025 at bytedance.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/test/ThinLTO/X86/visibility-elf.ll
    M llvm/test/ThinLTO/X86/visibility-macho.ll
    M llvm/test/Transforms/FunctionImport/funcimport.ll
    M llvm/test/Transforms/Inline/inline_stats.ll

  Log Message:
  -----------
  [ThinLTO] Add metedata 'thinlto_src_module' and 'thinlto_src_file' (#83110)

Originally, when `EnableImportMetadata` enabled, `SourceFileName` will
be recorded as `thinlto_src_module`. Now `SourceFileName` will be
recorded as `thinlto_src_file` and `ModuleIdentifier` will be recorded
as `thinlto_src_module`.


  Commit: 7d8b50aaab8e0f935e3cb1f3f397e98b9e3ee241
      https://github.com/llvm/llvm-project/commit/7d8b50aaab8e0f935e3cb1f3f397e98b9e3ee241
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/test/CodeGen/fat-lto-objects.c

  Log Message:
  -----------
  [clang][fat-lto-objects] Make module flags match non-FatLTO pipelines (#83159)

In addition to being rather hard to follow, there isn't a good reason
why FatLTO shouldn't just share the same code for setting module flags
for (Thin)LTO. This patch simplifies the logic and makes sure we use set
these flags in a consistent way, independent of FatLTO.

Additionally, we now test that output in the .llvm.lto section actually
matches the output from Full and Thin LTO compilation.


  Commit: f0484e08bdcf64106592808e3ca80404937b4657
      https://github.com/llvm/llvm-project/commit/f0484e08bdcf64106592808e3ca80404937b4657
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    A llvm/test/tools/llvm-mca/AMDGPU/gfx940.s

  Log Message:
  -----------
  AMDGPU: Add scheduling test for gfx940 (#83220)

I'm not sure the f64 fma cases are correct.


  Commit: ffa48f0c945be3c1680b0830d5c0cac146cb954c
      https://github.com/llvm/llvm-project/commit/ffa48f0c945be3c1680b0830d5c0cac146cb954c
  Author: XinWang10 <108658776+XinWang10 at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrSystem.td
    M llvm/lib/Target/X86/X86InstrUtils.td
    M llvm/lib/Target/X86/X86InstrVMX.td
    A llvm/test/MC/Disassembler/X86/apx/IgnoreW.txt
    M llvm/utils/TableGen/X86DisassemblerTables.cpp

  Log Message:
  -----------
  [X86][MC] Teach disassembler to recognize apx instructions which ignores W bit (#82747)

Extended VMX instructions and 8 bit apx extended instructions don't need
W bit, they are marked as W ignored in spec.
RFC:
https://discourse.llvm.org/t/rfc-design-for-apx-feature-egpr-and-ndd-support/73031/4


  Commit: 3f2a9e5910c2f485ce18a6d348af30cd44474b48
      https://github.com/llvm/llvm-project/commit/3f2a9e5910c2f485ce18a6d348af30cd44474b48
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M bolt/lib/Core/BinaryFunction.cpp

  Log Message:
  -----------
  [BOLT] Sort TakenBranches immediately before use. NFCI (#83333)

Move code that sorts TakenBranches right before the branches are used.
We can populate TakenBranches in pre-CFG post-processing and hence have
to postpone the sorting to a later point in the processing pipeline.
Will add such a pass later. For now it's NFC.


  Commit: d7d564b2fccbdf5b124f93c03c36ae8bfd849589
      https://github.com/llvm/llvm-project/commit/d7d564b2fccbdf5b124f93c03c36ae8bfd849589
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

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

  Log Message:
  -----------
  [BOLT] Add BinaryFunction::registerBranch(). NFC (#83337)

Add an external interface to register a branch in a function that is in
disassembled state. Allows to make custom modifications to the
disassembler. E.g., a pre-CFG pass can add an instruction and register a
branch that will later be used during the CFG construction.


  Commit: 14d8c4563e045fc3da82cb7268b1066cfd1bb6f0
      https://github.com/llvm/llvm-project/commit/14d8c4563e045fc3da82cb7268b1066cfd1bb6f0
  Author: Yeting Kuo <46629943+yetingk at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/sink-splat-operands.ll

  Log Message:
  -----------
  [RISCV] Add more intrinsics into canSplatOperand. (#83106)

This patch adds smin/smax/umin/umax/sadd_sat/ssub_sat/uadd_sat/usub_sat
into canSplatOperand. It can help llvm fold vv instructions with one
splat operand to vx instructions.


  Commit: c36cbba6fbe926a4a73f5df318fab991dad7fcc0
      https://github.com/llvm/llvm-project/commit/c36cbba6fbe926a4a73f5df318fab991dad7fcc0
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/docs/GlobalISel/GenericOpcode.rst
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/Target/GenericOpcodes.td

  Log Message:
  -----------
  Update IEEE-754 2018 draft references to IEEE-754 2019


  Commit: 793300988b7c723bacadce67879ea8bf71c87e70
      https://github.com/llvm/llvm-project/commit/793300988b7c723bacadce67879ea8bf71c87e70
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M lldb/test/CMakeLists.txt

  Log Message:
  -----------
  [lldb] Add pexpect to LLDB_ENFORCE_STRICT_TEST_REQUIREMENTS

This executed Alex' idea [1] of adding pexpect to the list of "strict
test requirements" as we're planning to stop vendoring it. This will
ensure all the bots have the package before we toggle the default.

[1] https://github.com/llvm/llvm-project/pull/83191


  Commit: 81d94cad6d655d66adb08805a3bbef5a58125999
      https://github.com/llvm/llvm-project/commit/81d94cad6d655d66adb08805a3bbef5a58125999
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M lldb/test/CMakeLists.txt

  Log Message:
  -----------
  Revert "[lldb] Add pexpect to LLDB_ENFORCE_STRICT_TEST_REQUIREMENTS"

This reverts commit 793300988b7c723bacadce67879ea8bf71c87e70 as pexpect
is not available on any of the GreenDragon bots.


  Commit: 71c06bbb251371b6285f2a0fa337299bbf96a935
      https://github.com/llvm/llvm-project/commit/71c06bbb251371b6285f2a0fa337299bbf96a935
  Author: Dávid Ferenc Szabó <30732159+dfszabo at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-2-icmps-of-0-and-or.mir

  Log Message:
  -----------
  [GlobalISel] Combine (X == 0) & (Y == 0) -> (X | Y) == 0 (#71949)

Also combine (X != 0) | (Y != 0) -> (X | Y) != 0


  Commit: 95aab69c109adf29e183090c25dc95c773215746
      https://github.com/llvm/llvm-project/commit/95aab69c109adf29e183090c25dc95c773215746
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M clang/test/Preprocessor/riscv-target-features.c
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.rst
    M llvm/lib/Support/RISCVISAInfo.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/test/CodeGen/RISCV/atomic-cmpxchg-branch-on-result.ll
    M llvm/test/CodeGen/RISCV/atomic-cmpxchg.ll
    M llvm/test/CodeGen/RISCV/atomic-rmw.ll
    M llvm/test/CodeGen/RISCV/atomic-signext.ll
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/MC/RISCV/rv32zacas-invalid.s
    M llvm/test/MC/RISCV/rv32zacas-valid.s
    M llvm/test/MC/RISCV/rv64zacas-valid.s
    M llvm/test/MC/RISCV/rvzabha-zacas-valid.s
    M llvm/unittests/Support/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Remove experimental from Zacas. (#83195)

Document that we don't use the double compare and swap instructions due
to ABI concerns.


  Commit: 230b06b44e6c7f710ae4817e1f34709454f420c5
      https://github.com/llvm/llvm-project/commit/230b06b44e6c7f710ae4817e1f34709454f420c5
  Author: SunilKuravinakop <98882378+SunilKuravinakop at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    A clang/test/OpenMP/interop_codegen.cpp

  Log Message:
  -----------
  [OpenMP] Clang Codegen Interop : Accept multiple init (#82604)

Modifying clang/lib/CodeGen/CGStmtOpenMP.cpp to accept multiple `init`
clauses with `interop` directive.

---------

Co-authored-by: Sunil Kuravinakop


  Commit: 3246c44789546fa926784911e349202d8fd8e33b
      https://github.com/llvm/llvm-project/commit/3246c44789546fa926784911e349202d8fd8e33b
  Author: Animesh Kumar <108114634+animeshk-amd at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/test/OpenMP/scan_ast_print.cpp

  Log Message:
  -----------
  [OpenMP][Clang] Enable inscan modifier for generic datatypes (#82220)

This patch fixes the #67002 ([OpenMP][Clang] Scan Directive not
supported for Generic types). It disables the Sema checks/analysis that
are run on the helper arrays which go into the implementation of the
`omp scan` directive until the template instantiation happens.
Grateful to @alexey-bataev for suggesting these changes.


  Commit: 6ee9c8afbcc05f61c64c0938281ff11a5e3221cb
      https://github.com/llvm/llvm-project/commit/6ee9c8afbcc05f61c64c0938281ff11a5e3221cb
  Author: Shih-Po Hung <shihpo.hung at sifive.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/RISCV/rvv-shuffle.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-broadcast.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-reverse.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll

  Log Message:
  -----------
  [RISCV][CostModel] Updates reduction and shuffle cost (#77342)

- Make `andi` cost 1 in SK_Broadcast
- Query the cost of VID_V, VRSUB_VX/VRSUB_VI which would scale with LMUL


  Commit: d1a461dbb2293d9258d400b5426f610bb5191228
      https://github.com/llvm/llvm-project/commit/d1a461dbb2293d9258d400b5426f610bb5191228
  Author: Dominik Wójt <dominik.wojt at arm.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M libcxx/cmake/config-ix.cmake
    M libcxx/test/std/time/time.clock/time.clock.file/to_from_sys.pass.cpp
    M libcxx/test/std/time/time.clock/time.clock.hires/now.pass.cpp
    M libcxx/test/std/time/time.clock/time.clock.system/from_time_t.pass.cpp
    M libcxx/test/std/time/time.clock/time.clock.system/now.pass.cpp
    M libcxx/test/std/time/time.clock/time.clock.system/to_time_t.pass.cpp
    M libcxx/test/std/time/time.point/time.point.nonmember/op_-duration.pass.cpp

  Log Message:
  -----------
  [libc++] tests with picolibc: prevent looking for unneeded "rt" library (#82262)

Picolibc does not provide the clock_gettime function nor the "rt" library.
check_library_exists was invalidly detecting the "rt" library due to cmake issue 
present, when cross-compiling[1]. This resulted with "chrono.cpp" trying to link
to the "rt" library and following error:
    unable to find library from dependent library specifier: rt

[1] https://gitlab.kitware.com/cmake/cmake/-/issues/18121


  Commit: 325f51237252e6dab8e4e1ea1fa7acbb4faee1cd
      https://github.com/llvm/llvm-project/commit/325f51237252e6dab8e4e1ea1fa7acbb4faee1cd
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M flang/include/flang/Lower/LoweringOptions.def
    M flang/test/Driver/flang-experimental-polymorphism-flag.f90

  Log Message:
  -----------
  [flang] Set polymorphic entity lowering option on by default (#83308)

Preliminary patch for https://github.com/llvm/llvm-project/pull/83285 to
turn polymorphism on by default.

Will give a few days warning for people to remove the flag from their
workflow using flang-new.

Also easier to revert if issues with the gfortran test suites.


  Commit: ddfc7e225474558613db3604c053fd73f1fdedac
      https://github.com/llvm/llvm-project/commit/ddfc7e225474558613db3604c053fd73f1fdedac
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/Interp.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/test/AST/Interp/arrays.cpp
    M clang/test/AST/Interp/c.c
    M clang/test/AST/Interp/cxx98.cpp

  Log Message:
  -----------
  [clang][Interp] Emit more dummy pointers in C++ mode


  Commit: c757ca74176716ff99f340e82e50f0b6a6c9a7e8
      https://github.com/llvm/llvm-project/commit/c757ca74176716ff99f340e82e50f0b6a6c9a7e8
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h

  Log Message:
  -----------
  AMDGPU: Remove dead declaration


  Commit: 53bd411e5144937acec45080697957bf5b22de54
      https://github.com/llvm/llvm-project/commit/53bd411e5144937acec45080697957bf5b22de54
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M libc/cmake/modules/compiler_features/check_float128.cpp
    M libc/docs/dev/code_style.rst
    M libc/src/__support/CPP/CMakeLists.txt
    M libc/src/__support/CPP/type_traits/is_floating_point.h
    M libc/src/__support/FPUtil/CMakeLists.txt
    M libc/src/__support/FPUtil/FPBits.h
    M libc/src/__support/macros/properties/CMakeLists.txt
    R libc/src/__support/macros/properties/float.h
    A libc/src/__support/macros/properties/types.h
    M libc/src/math/ceilf128.h
    M libc/src/math/copysignf128.h
    M libc/src/math/fabsf128.h
    M libc/src/math/fdimf128.h
    M libc/src/math/floorf128.h
    M libc/src/math/fmaxf128.h
    M libc/src/math/fminf128.h
    M libc/src/math/frexpf128.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/ilogbf128.h
    M libc/src/math/ldexpf128.h
    M libc/src/math/llogb.h
    M libc/src/math/llogbf.h
    M libc/src/math/llogbf128.h
    M libc/src/math/llogbl.h
    M libc/src/math/logbf128.h
    M libc/src/math/roundf128.h
    M libc/src/math/sqrtf128.h
    M libc/src/math/truncf128.h
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][NFC] rename `float.h` macro file to `types.h` (#83190)


  Commit: bd595d54219e434acce2c05e97440847d30b5240
      https://github.com/llvm/llvm-project/commit/bd595d54219e434acce2c05e97440847d30b5240
  Author: kadir çetinkaya <kadircet at google.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M clang-tools-extra/include-cleaner/lib/WalkAST.cpp
    M clang-tools-extra/include-cleaner/unittests/WalkASTTest.cpp

  Log Message:
  -----------
  [include-cleaner] Generate references from explicit functiontemplate specializations (#83392)


  Commit: de5518836e16be3fbfce78394adc96d9bf70f2a5
      https://github.com/llvm/llvm-project/commit/de5518836e16be3fbfce78394adc96d9bf70f2a5
  Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M lldb/source/Symbol/Variable.cpp
    M lldb/test/API/functionalities/completion/TestCompletion.py
    M lldb/test/API/functionalities/completion/main.cpp

  Log Message:
  -----------
  [LLDB] Fix crash when using tab completion on class variables (#83234)

We weren't checking to see if the partial_path was empty before adding
completions and this led to crashes when the class object and a variable
both start with the same substring.

Fixes [#81536](https://github.com/llvm/llvm-project/issues/81536)

---------

Co-authored-by: Michael Buch <michaelbuch12 at gmail.com>


  Commit: 03420f570e92ee96133baa8feabc43148e322963
      https://github.com/llvm/llvm-project/commit/03420f570e92ee96133baa8feabc43148e322963
  Author: Tomas Matheson <tomas.matheson at arm.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
    M llvm/lib/Target/ARM/ARMInstrFormats.td
    M llvm/lib/Target/ARM/ARMInstrVFP.td
    M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
    M llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMInstPrinter.cpp
    M llvm/test/CodeGen/ARM/cmse-vlldm-no-reorder.mir
    M llvm/test/CodeGen/ARM/vlldm-vlstm-uops.mir
    M llvm/test/MC/ARM/thumbv8m.s
    R llvm/test/MC/ARM/vlstm-vlldm-8.1m.s
    R llvm/test/MC/ARM/vlstm-vlldm-8m.s
    R llvm/test/MC/ARM/vlstm-vlldm-diag.s
    R llvm/test/MC/Disassembler/ARM/armv8.1m-vlldm_vlstm-8.1.main.txt
    R llvm/test/MC/Disassembler/ARM/armv8.1m-vlldm_vlstm-8.main.txt
    M llvm/unittests/Target/ARM/MachineInstrTest.cpp

  Log Message:
  -----------
  Revert "[llvm][arm] add T1 and T2 assembly options for vlldm and vlstm (#83116)"

This reverts commit 634b0243b8f7acc85af4f16b70e91d86ded4dc83.

Failing EXPENSIVE_CHECKS builds with "undefined physical register".


  Commit: 3196005f6bedbed61a86626a9e4f8fee7437a914
      https://github.com/llvm/llvm-project/commit/3196005f6bedbed61a86626a9e4f8fee7437a914
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/test/CodeGen/PowerPC/crsave.ll

  Log Message:
  -----------
  [NFC][PowerPC] use script to regenerate the CHECK lines


  Commit: bfcd3fa825dde06e49235620fd157540c6c1b7d7
      https://github.com/llvm/llvm-project/commit/bfcd3fa825dde06e49235620fd157540c6c1b7d7
  Author: Alexander Belyaev <32522095+pifon2a at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
    M mlir/test/Dialect/GPU/ops.mlir
    M mlir/test/python/dialects/gpu/dialect.py

  Log Message:
  -----------
  [mlir] Add result name for gpu.block_id and gpu.thread_id ops. (#83393)

expand-arith-ops.mlir fails on windows, but this is unrelated to this PR


  Commit: afa6b5e5763059c65f21ca2e612df3d02e71ad00
      https://github.com/llvm/llvm-project/commit/afa6b5e5763059c65f21ca2e612df3d02e71ad00
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSVE/matmul.mlir

  Log Message:
  -----------
  [mlir][ArmSME] Fix matmul.mlir test after #83213


  Commit: 30b63def5096cbee448176cc82ca5f6c995f16c4
      https://github.com/llvm/llvm-project/commit/30b63def5096cbee448176cc82ca5f6c995f16c4
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/avx512fp16-fp-logic.ll
    M llvm/test/CodeGen/X86/pr34605.ll
    M llvm/test/CodeGen/X86/pr38803.ll
    M llvm/test/CodeGen/X86/pr43509.ll
    M llvm/test/CodeGen/X86/pr57340.ll
    M llvm/test/CodeGen/X86/pr78897.ll
    M llvm/test/CodeGen/X86/select-of-fp-constants.ll
    M llvm/test/CodeGen/X86/select-of-half-constants.ll

  Log Message:
  -----------
  [X86] Regenerate tests to add missing avx512 constant comments


  Commit: 7ff3f9760da7d7c8fe9209280aefb05168efcf20
      https://github.com/llvm/llvm-project/commit/7ff3f9760da7d7c8fe9209280aefb05168efcf20
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/avx512-insert-extract.ll
    M llvm/test/CodeGen/X86/avx512-vec-cmp.ll
    M llvm/test/CodeGen/X86/fpclamptosat_vec.ll
    M llvm/test/CodeGen/X86/half.ll
    M llvm/test/CodeGen/X86/pr31088.ll
    M llvm/test/CodeGen/X86/pr57340.ll
    M llvm/test/CodeGen/X86/vector-half-conversions.ll
    M llvm/test/CodeGen/X86/vector-reduce-fmax-nnan.ll
    M llvm/test/CodeGen/X86/vector-reduce-fmin-nnan.ll
    M llvm/test/CodeGen/X86/vector-shuffle-128-v4.ll

  Log Message:
  -----------
  [X86] getFauxShuffleMask - handle insert_vector_elt(bitcast(extract_vector_elt(x))) shuffle patterns

If the bitcast is between types of equal scalar size (i.e. fp<->int bitcasts), then we can safely peek through them

Fixes #83289


  Commit: ee297a73b590ee63f0f4ec9f21c5114c106c8467
      https://github.com/llvm/llvm-project/commit/ee297a73b590ee63f0f4ec9f21c5114c106c8467
  Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M lldb/test/API/functionalities/completion/TestCompletion.py

  Log Message:
  -----------
  [LLDB] Fix test failure introduced by #83234 (#83406)

Missed adding a . in the test check


  Commit: 6cfd3439d4b99be85f647849168e1076a9737170
      https://github.com/llvm/llvm-project/commit/6cfd3439d4b99be85f647849168e1076a9737170
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/test/CodeGen/AMDGPU/fmaxnum.ll
    M llvm/test/CodeGen/AMDGPU/fminnum.ll
    M llvm/test/Transforms/InstCombine/maxnum.ll
    M llvm/test/Transforms/InstCombine/minnum.ll
    M llvm/test/Transforms/InstSimplify/ConstProp/min-max.ll
    M llvm/unittests/ADT/APFloatTest.cpp

  Log Message:
  -----------
  APFloat: Fix signed zero handling in minnum/maxnum (#83376)

Follow the 2019 rules and order -0 as less than +0 and +0 as greater
than -0. As currently defined this isn't required for the intrinsics,
but is a better QoI.

This will avoid the workaround in libc added by #83158


  Commit: fb3e4e78c65ea22b5eda1b4f7e2b5a5e8c6dd5b4
      https://github.com/llvm/llvm-project/commit/fb3e4e78c65ea22b5eda1b4f7e2b5a5e8c6dd5b4
  Author: Alexander Belyaev <32522095+pifon2a at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td

  Log Message:
  -----------
  [mlir] Remove assert from GPUOps.td. (#83410)

it changes behaviour for debug vs release builds.


  Commit: 02bad7a858e763be49c257d957dfd70fab18af9e
      https://github.com/llvm/llvm-project/commit/02bad7a858e763be49c257d957dfd70fab18af9e
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td

  Log Message:
  -----------
  [AMDGPU] Simplify !if condition. NFC.


  Commit: 72a60e770cee713a47876483798747cb7db58da6
      https://github.com/llvm/llvm-project/commit/72a60e770cee713a47876483798747cb7db58da6
  Author: Samuel Tebbs <samuel.tebbs at arm.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-inline-asm.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-unwind-inline-asm.ll
    M llvm/test/CodeGen/AArch64/aarch64-sme2-asm.ll
    M llvm/test/CodeGen/AArch64/callbr-asm-outputs-indirect-isel.ll
    M llvm/test/CodeGen/AArch64/emit_fneg_with_non_register_operand.mir
    M llvm/test/CodeGen/AArch64/peephole-insvigpr.mir

  Log Message:
  -----------
  [AArch64][NFC] Use regexes in register class tests

Some MIR and IR tests include checks for register class IDs, which are
unnecessary since the register class name is also checked for and that
doesn't change when new classes are added. This patch replaces the
hard-coded register class ID checks with regexes so they don't have to
be updated every time a new class is added.


  Commit: 31295bbe83c3ea9d8a3372efe34342a299d1018a
      https://github.com/llvm/llvm-project/commit/31295bbe83c3ea9d8a3372efe34342a299d1018a
  Author: Mitch Phillips <mitchp at google.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    R llvm/test/tools/llvm-mca/AMDGPU/gfx940.s

  Log Message:
  -----------
  Revert "AMDGPU: Add scheduling test for gfx940 (#83220)"

This reverts commit f0484e08bdcf64106592808e3ca80404937b4657.

Reason: Broke the sanitizer build bots. See the github comments on
https://github.com/llvm/llvm-project/commit/f0484e08bdcf64106592808e3ca80404937b4657
for more information


  Commit: 20fe83bc852e15b2928a168635972a5d29689a49
      https://github.com/llvm/llvm-project/commit/20fe83bc852e15b2928a168635972a5d29689a49
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/DSInstructions.td
    M llvm/test/MC/AMDGPU/gfx11_unsupported.s
    M llvm/test/MC/AMDGPU/gfx12_asm_ds_alias.s

  Log Message:
  -----------
  [AMDGPU] Add new aliases ds_subrev_rtn_u32/u64 for ds_rsub_rtn_u32/u64 (#83408)

Following on from #83118, this adds aliases for the "rtn" forms of these
instructions. The fact that they were missing from SP3 was an oversight
which has been fixed now.


  Commit: c57002db6afcd2474247d066fae71f696ce31947
      https://github.com/llvm/llvm-project/commit/c57002db6afcd2474247d066fae71f696ce31947
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/IR/Verifier.cpp
    M llvm/unittests/IR/VerifierTest.cpp

  Log Message:
  -----------
  Verifier: More helpful error message for cross-function references (#82906)

This came up on Discourse.

See:
https://discourse.llvm.org/t/module-verification-failed-instruction-does-not-dominate-all-uses/77207/


  Commit: b50b50bfbf55b883dcd290027cfd6ca5904b0495
      https://github.com/llvm/llvm-project/commit/b50b50bfbf55b883dcd290027cfd6ca5904b0495
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/cmov-fp.ll

  Log Message:
  -----------
  [X86] cmov-fp.ll - regenerate with common 'NOSSE' prefix to reduce duplication


  Commit: 139bcda542514b7a064fe9225014ec4268bb2b65
      https://github.com/llvm/llvm-project/commit/139bcda542514b7a064fe9225014ec4268bb2b65
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/avx512-insert-extract.ll
    M llvm/test/CodeGen/X86/avx512-vec-cmp.ll
    M llvm/test/CodeGen/X86/cvt16.ll
    M llvm/test/CodeGen/X86/f16c-intrinsics-fast-isel.ll
    M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll
    M llvm/test/CodeGen/X86/fp-roundeven.ll
    M llvm/test/CodeGen/X86/fpclamptosat_vec.ll
    M llvm/test/CodeGen/X86/half.ll
    M llvm/test/CodeGen/X86/pr31088.ll
    M llvm/test/CodeGen/X86/pr57340.ll
    M llvm/test/CodeGen/X86/prefer-fpext-splat.ll
    M llvm/test/CodeGen/X86/vector-half-conversions.ll
    M llvm/test/CodeGen/X86/vector-reduce-fmax-nnan.ll
    M llvm/test/CodeGen/X86/vector-reduce-fmin-nnan.ll

  Log Message:
  -----------
  [X86] SimplifyDemandedVectorEltsForTargetNode - add basic CVTPH2PS/CVTPS2PH handling

Allows us to peek through the F16 conversion nodes, mainly to simplify shuffles

An easy part of #83414


  Commit: 4d525f2b9a42fee4bd3a3c45873fc38b35dd8004
      https://github.com/llvm/llvm-project/commit/4d525f2b9a42fee4bd3a3c45873fc38b35dd8004
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

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

  Log Message:
  -----------
  [VPlan] Remove unneeded InsertPointGuard (NFCI).

getBlockInMask now simply returns an already computed mask, hence
there's no need to adjust the builder insert point.


  Commit: 23f3651c7c5653781249ca0f87809dde76ceeac7
      https://github.com/llvm/llvm-project/commit/23f3651c7c5653781249ca0f87809dde76ceeac7
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M libc/src/math/amdgpu/fmax.cpp
    M libc/src/math/amdgpu/fmaxf.cpp
    M libc/src/math/amdgpu/fmin.cpp
    M libc/src/math/amdgpu/fminf.cpp
    M libc/src/math/nvptx/fmax.cpp
    M libc/src/math/nvptx/fmaxf.cpp
    M libc/src/math/nvptx/fmin.cpp
    M libc/src/math/nvptx/fminf.cpp

  Log Message:
  -----------
  [libc] Remove workaround for fmin / fmax after being fixed in LLVM (#83421)

Summary:
These hacks can be removed now that
https://github.com/llvm/llvm-project/pull/83376 fixed the underlying
problem.


  Commit: dbca8a49b6dbbb79913d6a1bc1d59f4947353e96
      https://github.com/llvm/llvm-project/commit/dbca8a49b6dbbb79913d6a1bc1d59f4947353e96
  Author: David Green <david.green at arm.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/AArch64/setcc_knownbits.ll
    M llvm/unittests/CodeGen/AArch64SelectionDAGTest.cpp

  Log Message:
  -----------
  [DAG] Improve known bits of Zext/Sext loads with range metadata (#80829)

This extends the known bits for extending loads which have range
metadata, handling the range metadata on the original memory type,
extending that to the correct BitWidth.


  Commit: 6c2eec5ceadf26ce8d732d718a8906d075a7d6c7
      https://github.com/llvm/llvm-project/commit/6c2eec5ceadf26ce8d732d718a8906d075a7d6c7
  Author: Petar Avramovic <Petar.Avramovic at amd.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUGlobalISelDivergenceLowering.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-structurizer.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-structurizer.mir

  Log Message:
  -----------
  AMDGPU/GlobalISel: lane masks merging  (#73337)

Basic implementation of lane mask merging for GlobalISel.
Lane masks on GlobalISel are registers with sgpr register class
and S1 LLT - required by machine uniformity analysis.
Implements equivalent of lowerPhis from SILowerI1Copies.cpp in:
patch 1: https://github.com/llvm/llvm-project/pull/75340
patch 2: https://github.com/llvm/llvm-project/pull/75349
patch 3: https://github.com/llvm/llvm-project/pull/80003
patch 4: https://github.com/llvm/llvm-project/pull/78431
patch 5: is in this commit:

AMDGPU/GlobalISelDivergenceLowering: constrain incoming registers

Previously, in PHIs that represent lane masks, incoming registers
taken as-is were not selected as lane masks. Such registers are not
being merged with another lane mask and most often only have S1 LLT.
Implement constrainAsLaneMask by constraining incoming registers
taken as-is with lane mask attributes, essentially transforming them
to lane masks. This is final step in having PHI instructions created
in this pass to be fully instruction-selected.


  Commit: 7e88d5176060fa4d86376460db8310083b7c0e2d
      https://github.com/llvm/llvm-project/commit/7e88d5176060fa4d86376460db8310083b7c0e2d
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
    M llvm/lib/Transforms/Scalar/Reassociate.cpp

  Log Message:
  -----------
  [NFC][RemoveDIs] Have CreateNeg only accept iterators (#82999)

Removing debug-intrinsics requires that we always insert with an
iterator, not with an instruction position. To enforce that, we need to
eliminate the `Instruction *` taking functions. It's safe to leave the
insert-at-end-of-block functions as the intention is clear for debug
info purposes (i.e., insert after both instructions and debug-info at
the end of the function).

This patch demonstrates how that needs to happen. At a variety of
call-sites to the `CreateNeg` constructor we need to consider:
* Has this instruction been selected because of the operation it
performs? In that case, just call `getIterator` and pass an iterator in.
* Has this instruction been selected because of it's position? If so, we
need to keep the iterator identifying that position (see the 3rd hunk
changing Reassociate.cpp, although it's coincidentally not debug-info
significant).

This also demonstrates what we'll try and do with the constructor
methods going forwards: have one fully explicit set of parameters
including iterator, and another with default-arguments where the
block-to-insert-into argument defaults to nullptr / no-position,
creating an instruction that hasn't been inserted yet.


  Commit: 780d55690ec5d8cd5c0e5fa4af799155d5d00534
      https://github.com/llvm/llvm-project/commit/780d55690ec5d8cd5c0e5fa4af799155d5d00534
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/Emulated/test-setArmVLBits.mlir

  Log Message:
  -----------
  [mlir][ArmSVE] Fix test-setArmVLBits.mlir after #83213


  Commit: e08fe575d5953b6ca0d7a578c1afa00247f0a12f
      https://github.com/llvm/llvm-project/commit/e08fe575d5953b6ca0d7a578c1afa00247f0a12f
  Author: Dani <daniel.kiss at arm.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M clang/include/clang/Basic/TargetInfo.h
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/lib/CodeGen/Targets/ARM.cpp

  Log Message:
  -----------
  [NFC][ARM][AArch64] Deduplicated code. (#82785)

Add the SignReturnAddressScopeKind to the BranchProtectionInfo class.


  Commit: 86f4b4dfde543287c1b29ecae27cc1bee470eebb
      https://github.com/llvm/llvm-project/commit/86f4b4dfde543287c1b29ecae27cc1bee470eebb
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/JumpDiagnostics.cpp
    M clang/lib/Sema/SemaStmt.cpp
    M clang/test/SemaOpenACC/no-branch-in-out.c

  Log Message:
  -----------
  [OpenACC] Implement Compute Construct 'goto' in/out logic (#83326)

Compute Constructs do not permit jumping in/out of them, so this patch
implements this for 'goto' as a followup to the other patches that have
done the same thing.

It does this by modifying the JumpDiagnostics to work with this, plus
setting the function to needing jump diagnostics if we discover a goto
or label inside of a Compute Construct.


  Commit: 6f7d824b804b272335d55f5b899295db833f3829
      https://github.com/llvm/llvm-project/commit/6f7d824b804b272335d55f5b899295db833f3829
  Author: Vinayak Dev <104419489+vinayakdsci at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/CXX/drs/dr18xx.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.lambda/blocks.mm
    M clang/test/SemaCXX/warn-bool-conversion.cpp

  Log Message:
  -----------
  [Clang][Sema]: Diagnose lambda to bool implicit casts (#83152)

Adds diagnostics for lambda expressions being cast to boolean values,
which results in the expression always evaluating to true.
Earlier, Clang allowed compilation of such erroneous programs, but now
emits a warning through `-Wpointer-bool-conversion`.

Fixes #82512


  Commit: b1c8b9f89cac91db857b9123838ac6b6aeb0ae74
      https://github.com/llvm/llvm-project/commit/b1c8b9f89cac91db857b9123838ac6b6aeb0ae74
  Author: S. Bharadwaj Yadavalli <Bharadwaj.Yadavalli at microsoft.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
    M llvm/lib/Target/DirectX/DXILOpBuilder.h
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    M llvm/utils/TableGen/DXILEmitter.cpp

  Log Message:
  -----------
  [DirectX][NFC] Leverage LLVM and DirectX intrinsic description in DXIL Op records (#83193)

* Leverage TableGen record descriptions of LLVM or DirectX intrinsics
that can be directly mapped in DXIL Ops TableGen description. As a
result, such DXIL Ops can be succinctly described without duplication.
DXILEmitter backend can derive the properties of DXIL Ops accordingly.
* Ensured that corresponding lit tests pass.


  Commit: ec95379df363253ffcbbda21297417e703d5ccca
      https://github.com/llvm/llvm-project/commit/ec95379df363253ffcbbda21297417e703d5ccca
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M lldb/test/CMakeLists.txt

  Log Message:
  -----------
  [lldb][test] Clear pexpect found var before checking again

If you run cmake without pexpect installed it errors as expected.
However, if you just `pip install pexpect` and cmake again it still
doesn't find it because it cached the result of the search.

Unset the result before looking for pexpect. So that this works
as expected:
cmake ...
pip3 install pexpect
cmake ...


  Commit: aadd7650447b301f8d08fe94a886df05971adecb
      https://github.com/llvm/llvm-project/commit/aadd7650447b301f8d08fe94a886df05971adecb
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/test/Transforms/Coroutines/coro-debug-dbg.values.ll

  Log Message:
  -----------
  [DebugInfo][RemoveDIs] Prevent duplicate DPValues from being returned by findDbgIntrinsics (#82764)

Fixes the error described here:
https://github.com/llvm/llvm-project/commit/a93a4ec7dd205b965ee5597314bb376520cd736c#commitcomment-138965199

The function `findDbgIntrinsics` is used to return a list of debug
intrinsics and DPValues that use a given value, with the intent that no
duplicates are returned in either list. For DPValues, we've guarded
against DPValues that use a value multiple times as part of a DIArgList,
but we have not guarded against DPValues that use a value multiple times
as separate operands (currently only possible for `dbg_assign`s,
something I missed in my implementation of that type!). This patch adds
a guard, and also updates a test to cover this case.


  Commit: 0d572c41f941a4c9b3744a3b849ec35cd26bae2b
      https://github.com/llvm/llvm-project/commit/0d572c41f941a4c9b3744a3b849ec35cd26bae2b
  Author: Petar Avramovic <Petar.Avramovic at amd.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-i1.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-reg.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-phi.mir

  Log Message:
  -----------
  AMDGPU\GlobalISel: remove amdgpu-global-isel-risky-select flag (#83426)

AMDGPUInstructionSelector should no longer attempt to select S1 G_PHIs.
Remove MIR test that attempts to inst-select divergent vcc(S1) G_PHI.
Lane mask merging algorithm for GlobalISel is now responsible for
selecting divergent S1 G_PHIs in AMDGPUGlobalISelDivergenceLowering.
Uniform S1 G_PHIs should be lowered to S32 G_PHIs in reg bank select
pass. In summary S1 G_PHIs should not reach AMDGPUInstructionSelector.


  Commit: 85dc3dfb1fa2c6720bdfbaaab012ebd96cbe3a58
      https://github.com/llvm/llvm-project/commit/85dc3dfb1fa2c6720bdfbaaab012ebd96cbe3a58
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/test/Transforms/Coroutines/coro-debug-dbg.values.ll

  Log Message:
  -----------
  [DebugInfo][RemoveDIs] Fix incorrect test expect

Fixes: aadd7650447b
The above commit landed with an incorrect test expect, missing a `metadata`
prefix. This patch adds the expected prefix to the test.


  Commit: a872a35251b833aaddec2172710ff234236afbd8
      https://github.com/llvm/llvm-project/commit/a872a35251b833aaddec2172710ff234236afbd8
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/lib/IR/Instructions.cpp

  Log Message:
  -----------
  [NFC][RemoveDIs] Add bodies for inst-constructors taking iterators

In a previous commit I added declarations for all these functions, but
forgot to add bodies for them (as nothing uses them yet). These
iterator-taking constructors are necessary for the future where we only
use iterators for insertion, preserving some debug-info properties.

Also adds two extra declarations I missed in 76dd4bc036f


  Commit: 1e6627ecef42fa8e36dae71589fc17d3adbd18aa
      https://github.com/llvm/llvm-project/commit/1e6627ecef42fa8e36dae71589fc17d3adbd18aa
  Author: RicoAfoat <51285519+RicoAfoat at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    A llvm/test/CodeGen/X86/inline-asm-memop.ll

  Log Message:
  -----------
  [X86] matchAddressRecursively - ensure dead nodes are replaced before matching the index register (#82881)

Fixes #82431 - see #82431 for more information.


  Commit: 4f132dca711f4b425f9d370f5d59efb766b8bffa
      https://github.com/llvm/llvm-project/commit/4f132dca711f4b425f9d370f5d59efb766b8bffa
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
    M llvm/test/CodeGen/RISCV/machine-combiner.ll
    M llvm/test/CodeGen/RISCV/short-forward-branch-opt.ll

  Log Message:
  -----------
  [RISCV] Enable PostRAScheduler for SiFive7 (#83166)

Based on numbers collected in our downstream toolchain.


  Commit: 99824cf7967922bdd9ac895c949f330bb8d6b85a
      https://github.com/llvm/llvm-project/commit/99824cf7967922bdd9ac895c949f330bb8d6b85a
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M lldb/test/API/macosx/nslog/TestDarwinNSLogOutput.py
    M lldb/test/API/terminal/TestSTTYBeforeAndAfter.py

  Log Message:
  -----------
  [lldb][test] Use pexpect spawn instead of spawnu

This is marked deprecated from at least 4.6 onward:
Deprecated: pass encoding to spawn() instead.


  Commit: e60ebbd0001f2e66cb9f76874ddd69290e2086c1
      https://github.com/llvm/llvm-project/commit/e60ebbd0001f2e66cb9f76874ddd69290e2086c1
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaChecking.cpp
    A clang/test/CodeGenHLSL/builtins/lerp-builtin.hlsl
    A clang/test/CodeGenHLSL/builtins/lerp.hlsl
    M clang/test/SemaHLSL/BuiltIns/dot-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/lerp-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td

  Log Message:
  -----------
  [HLSL] implementation of lerp intrinsic (#83077)

This is the start of implementing the lerp intrinsic
https://learn.microsoft.com/en-us/windows/win32/direct3dhlsl/dx-graphics-hlsl-lerp
Builtins.td - defines the builtin
hlsl_intrinsics.h - defines the lerp api
DiagnosticSemaKinds.td - needed a new error to be inclusive for more
than two operands.
CGBuiltin.cpp - add the lerp intrinsic lowering
SemaChecking.cpp - type checks for lerp builtin
IntrinsicsDirectX.td - define the lerp intrinsic

this change implements the first half of #70102

Co-authored-by: Xiang Li <python3kgae at outlook.com>


  Commit: 37dca605c9bd41732da010ee97ed15ad9585a37d
      https://github.com/llvm/llvm-project/commit/37dca605c9bd41732da010ee97ed15ad9585a37d
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M libcxx/include/__assert
    M libcxx/include/__atomic/atomic_flag.h
    M libcxx/include/__charconv/from_chars_integral.h
    M libcxx/include/__charconv/to_chars_base_10.h
    M libcxx/include/__charconv/to_chars_integral.h
    M libcxx/include/__charconv/traits.h
    M libcxx/include/__config
    M libcxx/include/__format/formatter_floating_point.h
    M libcxx/include/__numeric/saturation_arithmetic.h
    M libcxx/include/__random/negative_binomial_distribution.h
    M libcxx/include/__ranges/repeat_view.h
    M libcxx/include/__stop_token/stop_state.h
    M libcxx/include/__string/char_traits.h
    M libcxx/include/algorithm
    M libcxx/include/any
    M libcxx/include/array
    M libcxx/include/atomic
    M libcxx/include/barrier
    M libcxx/include/bit
    M libcxx/include/bitset
    M libcxx/include/cassert
    M libcxx/include/ccomplex
    M libcxx/include/cctype
    M libcxx/include/cerrno
    M libcxx/include/cfenv
    M libcxx/include/cfloat
    M libcxx/include/charconv
    M libcxx/include/chrono
    M libcxx/include/cinttypes
    M libcxx/include/ciso646
    M libcxx/include/climits
    M libcxx/include/clocale
    M libcxx/include/cmath
    M libcxx/include/codecvt
    M libcxx/include/compare
    M libcxx/include/complex
    M libcxx/include/concepts
    M libcxx/include/condition_variable
    M libcxx/include/coroutine
    M libcxx/include/csetjmp
    M libcxx/include/csignal
    M libcxx/include/cstdarg
    M libcxx/include/cstdbool
    M libcxx/include/cstddef
    M libcxx/include/cstdint
    M libcxx/include/cstdio
    M libcxx/include/cstdlib
    M libcxx/include/cstring
    M libcxx/include/ctgmath
    M libcxx/include/ctime
    M libcxx/include/cuchar
    M libcxx/include/cwchar
    M libcxx/include/cwctype
    M libcxx/include/deque
    M libcxx/include/exception
    M libcxx/include/execution
    M libcxx/include/expected
    M libcxx/include/experimental/__simd/scalar.h
    M libcxx/include/experimental/__simd/vec_ext.h
    M libcxx/include/experimental/iterator
    M libcxx/include/experimental/propagate_const
    M libcxx/include/experimental/simd
    M libcxx/include/experimental/type_traits
    M libcxx/include/experimental/utility
    M libcxx/include/ext/hash_map
    M libcxx/include/ext/hash_set
    M libcxx/include/filesystem
    M libcxx/include/format
    M libcxx/include/forward_list
    M libcxx/include/fstream
    M libcxx/include/functional
    M libcxx/include/future
    M libcxx/include/initializer_list
    M libcxx/include/iomanip
    M libcxx/include/ios
    M libcxx/include/iosfwd
    M libcxx/include/iostream
    M libcxx/include/istream
    M libcxx/include/iterator
    M libcxx/include/latch
    M libcxx/include/limits
    M libcxx/include/list
    M libcxx/include/locale
    M libcxx/include/map
    M libcxx/include/memory
    M libcxx/include/mutex
    M libcxx/include/new
    M libcxx/include/numbers
    M libcxx/include/numeric
    M libcxx/include/optional
    M libcxx/include/ostream
    M libcxx/include/print
    M libcxx/include/queue
    M libcxx/include/random
    M libcxx/include/ranges
    M libcxx/include/ratio
    M libcxx/include/regex
    M libcxx/include/scoped_allocator
    M libcxx/include/semaphore
    M libcxx/include/set
    M libcxx/include/shared_mutex
    M libcxx/include/span
    M libcxx/include/sstream
    M libcxx/include/stack
    M libcxx/include/stdexcept
    M libcxx/include/stop_token
    M libcxx/include/streambuf
    M libcxx/include/string
    M libcxx/include/string_view
    M libcxx/include/strstream
    M libcxx/include/system_error
    M libcxx/include/thread
    M libcxx/include/tuple
    M libcxx/include/type_traits
    M libcxx/include/typeindex
    M libcxx/include/typeinfo
    M libcxx/include/unordered_map
    M libcxx/include/unordered_set
    M libcxx/include/utility
    M libcxx/include/valarray
    M libcxx/include/variant
    M libcxx/include/vector
    M libcxx/include/version
    M libcxx/test/libcxx/assertions/customize_verbose_abort.link-time.pass.cpp
    R libcxx/test/libcxx/assertions/headers_declare_verbose_abort.gen.py
    M libcxx/test/libcxx/assertions/modes/none.pass.cpp
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++] Clean up includes of <__assert> (#80091)

Originally, we used __libcpp_verbose_abort to handle assertion failures.
That function was declared from all public headers. Since we don't use
that mechanism anymore, we don't need to declare __libcpp_verbose_abort
from all public headers, and we can clean up a lot of unnecessary
includes.

This patch also moves the definition of the various assertion categories
to the <__assert> header, since we now rely on regular IWYU for these
assertion macros.

rdar://105510916


  Commit: 92e5f13ad19ace968309e31146e00e76b87c5a2d
      https://github.com/llvm/llvm-project/commit/92e5f13ad19ace968309e31146e00e76b87c5a2d
  Author: Tuan Chuong Goh <chuong.goh at arm.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    A llvm/test/CodeGen/AArch64/shufflevector.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Legalize G_SHUFFLE_VECTOR for Odd-Sized Vectors (#83038)


  Commit: 80a328b0118faa691137d6325b0eed4199060adc
      https://github.com/llvm/llvm-project/commit/80a328b0118faa691137d6325b0eed4199060adc
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/horizontal-reduce-umax.ll
    M llvm/test/CodeGen/X86/horizontal-reduce-umin.ll
    M llvm/test/CodeGen/X86/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/X86/test-shrink-bug.ll
    M llvm/test/CodeGen/X86/urem-seteq-vec-nonzero.ll
    M llvm/test/CodeGen/X86/urem-seteq-vec-tautological.ll
    M llvm/test/CodeGen/X86/vector-reduce-umax.ll
    M llvm/test/CodeGen/X86/vector-reduce-umin.ll
    M llvm/test/CodeGen/X86/vselect.ll

  Log Message:
  -----------
  [X86] SimplifyDemandedVectorEltsForTargetNode - add basic PCMPEQ/PCMPGT handling


  Commit: 5bd01ac822d1d700623790ef146fb78216576616
      https://github.com/llvm/llvm-project/commit/5bd01ac822d1d700623790ef146fb78216576616
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.h
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
    M llvm/lib/Target/AArch64/SMEInstrFormats.td
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    M llvm/test/CodeGen/AArch64/debug-info-sve-dbg-declare.mir
    M llvm/test/CodeGen/AArch64/debug-info-sve-dbg-value.mir
    M llvm/test/CodeGen/AArch64/live-debugvalues-sve.mir
    M llvm/test/CodeGen/AArch64/sve-localstackalloc.mir
    M llvm/test/CodeGen/AArch64/sve-pfalse-machine-cse.mir
    M llvm/test/CodeGen/AArch64/sve-pseudos-expand-undef.mir
    M llvm/test/CodeGen/AArch64/sve-ptest-removal-cmpeq.mir
    M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilege.mir
    M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilegt.mir
    M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilehi.mir
    M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilehs.mir
    M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilele.mir
    M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilelo.mir
    M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilels.mir
    M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilelt.mir
    M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilerw.mir
    M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilewr.mir
    M llvm/test/CodeGen/AArch64/sve2p1_copy_pnr.mir

  Log Message:
  -----------
  [AArch64] Re-enable rematerialization for streaming-mode-changing functions. (#83235)

We can add implicit defs/uses of the 'VG' register to the instructions
to prevent the register allocator from rematerializing values in between
streaming-mode changes, as the def/use of VG will further nail down the
ordering that comes out of ISel. This avoids the heavy-handed approach
to prevent any kind of rematerialization.

While we could add 'VG' as a Use to all SVE instructions, we only really
need to do this for instructions that are rematerializable, as the
smstart/smstop instructions and pseudos act as scheduling barriers which
is sufficient to prevent other instructions from being scheduled in
between the streaming-mode-changing call sequence. However, we may
revisit this in the future.


  Commit: c66f2d0c4a46ba66fb98a2cab4e63ad90888a261
      https://github.com/llvm/llvm-project/commit/c66f2d0c4a46ba66fb98a2cab4e63ad90888a261
  Author: Devajith Valaparambil Sreeramaswamy <devajithvs at gmail.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M mlir/include/mlir/Query/Matcher/ErrorBuilder.h
    M mlir/include/mlir/Query/Matcher/MatchersInternal.h
    M mlir/lib/Query/Matcher/Diagnostics.cpp
    M mlir/lib/Query/Matcher/Parser.cpp
    M mlir/lib/Query/Matcher/Parser.h
    M mlir/lib/Query/Matcher/RegistryManager.cpp
    M mlir/lib/Query/Matcher/RegistryManager.h
    M mlir/lib/Query/Query.cpp
    A mlir/test/mlir-query/function-extraction.mlir

  Log Message:
  -----------
  [mlir-query] Add function extraction feature to mlir-query

This enables specifying the extract modifier to extract all matches into
a function. This currently does this very directly by converting all
operands to function arguments (ones due to results of other matched ops
are dropped) and all results as return values.

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


  Commit: 58e476f757775313d8b2649dedb9a7c5d30d8e19
      https://github.com/llvm/llvm-project/commit/58e476f757775313d8b2649dedb9a7c5d30d8e19
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M libcxx/include/libcxx.imp
    M libcxx/utils/generate_iwyu_mapping.py

  Log Message:
  -----------
  [libc++] Map forward declaration headers for iostreams to <iosfwd> (#83327)

This seems more appropriate than mapping them to the headers that
contain actual definitions.


  Commit: 962f3e4e5bbdbfacb8c857a15013dae09bc49956
      https://github.com/llvm/llvm-project/commit/962f3e4e5bbdbfacb8c857a15013dae09bc49956
  Author: Sumanth Gundapaneni <sgundapa at quicinc.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonBitSimplify.cpp
    M llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.cpp

  Log Message:
  -----------
  [Hexagon] Use the correct call to detect debug instructions (#83373)


  Commit: 147dc81c1d220a54e9e7d0d4dba7f4b69708ffb7
      https://github.com/llvm/llvm-project/commit/147dc81c1d220a54e9e7d0d4dba7f4b69708ffb7
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/include/llvm/TargetParser/AArch64TargetParser.h
    M llvm/include/llvm/TargetParser/ARMTargetParser.def
    M llvm/lib/Target/AArch64/AArch64.td
    M llvm/lib/Target/ARM/ARM.td
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [ARM][AArch64] Enable FEAT_FHM for Arm Neoverse N2 (#82613)

Correct an issue with Arm Neoverse N2 after it was
changed to a v9a core in change
f576cbe44eabb8a5ac0af817424a0d1e7c8fbf85:

  * FEAT_FHM should be enabled for this core.


  Commit: 310ed337092d6afc78594e1d8e32e6f44fff5568
      https://github.com/llvm/llvm-project/commit/310ed337092d6afc78594e1d8e32e6f44fff5568
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Support/Path.cpp

  Log Message:
  -----------
  [Support] Use all_read | all_write for createTemporaryFile (#83360)

In a04879ce7dd6, dsymutil switched from using TempFile to
createTemporaryFile. This caused a regression because the two use
different permissions:

 - TempFile opens the file as all_read | all_write
 - createTemporaryFile opens the file as owner_read | owner_write

The latter turns out to be problematic for dsymutil because it either
promotes the temporary to a proper output file, or it would pass it to
`lipo` to create a universal binary and `lipo` preserves the permissions
of the input files. Either way, this caused issues when the build system
was run as a different user than the one ingesting the resulting
binaries.

I did some version control archeology and I couldn't find evidence that
these permissions were chosen purposely. Both could be considered
reasonable default.

This patch changes the permissions to `all read | all write` to make the
two consistent and match the one currently used by the higher level
abstraction (TempFile).

rdar://123722848


  Commit: 5a0bd2a36591fe48c24de220a5f8ddef9ce6f0b1
      https://github.com/llvm/llvm-project/commit/5a0bd2a36591fe48c24de220a5f8ddef9ce6f0b1
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M lldb/test/CMakeLists.txt

  Log Message:
  -----------
  [lldb] Add pexpect to LLDB_ENFORCE_STRICT_TEST_REQUIREMENTS

This executed Alex' idea [1] of adding pexpect to the list of "strict
test requirements" as we're planning to stop vendoring it. This will
ensure all the bots have the package before we toggle the default.

[1] https://github.com/llvm/llvm-project/pull/83191


  Commit: a344db793aca6881379c7c83f5112d2870dbf958
      https://github.com/llvm/llvm-project/commit/a344db793aca6881379c7c83f5112d2870dbf958
  Author: chuongg3 <chuong.goh at arm.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-select.mir
    M llvm/test/CodeGen/AArch64/shufflevector.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Legalize G_SHUFFLE_VECTOR for Odd-Sized Vectors (#83038)

Legalize Smaller/Larger than legal vectors with i8 and i16 element
sizes.
Vectors with elements smaller than i8 will get widened to i8 elements.


  Commit: 9491aecd235da9674150fe56bd0f29c3a22472c4
      https://github.com/llvm/llvm-project/commit/9491aecd235da9674150fe56bd0f29c3a22472c4
  Author: Francesco Petrogalli <francesco.petrogalli at apple.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/utils/TableGen/CodeGenTarget.cpp

  Log Message:
  -----------
  [TableGen][CodeGenTarget] Add support for v3i8 and v3i1 MVTs. [NFCI] (#83140)


  Commit: 3fda50d3915b2163a54a37b602be7783a89dd808
      https://github.com/llvm/llvm-project/commit/3fda50d3915b2163a54a37b602be7783a89dd808
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/Transforms/Utils/Local.h
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/Transforms/CFGuard/CFGuard.cpp
    M llvm/lib/Transforms/Scalar/Reg2Mem.cpp
    M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
    M llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp
    M llvm/lib/Transforms/Utils/CallPromotionUtils.cpp
    M llvm/lib/Transforms/Utils/CanonicalizeFreezeInLoops.cpp
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    M llvm/lib/Transforms/Utils/DemoteRegToStack.cpp
    M llvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/LoopConstrainer.cpp
    M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
    M llvm/lib/Transforms/Utils/LoopSimplify.cpp
    M llvm/lib/Transforms/Utils/LoopUnroll.cpp
    M llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp
    M llvm/lib/Transforms/Utils/LowerGlobalDtors.cpp
    M llvm/lib/Transforms/Utils/LowerInvoke.cpp
    M llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
    M llvm/lib/Transforms/Utils/LowerSwitch.cpp
    M llvm/lib/Transforms/Utils/MatrixUtils.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
    M llvm/lib/Transforms/Utils/StripGCRelocates.cpp
    M llvm/lib/Transforms/Utils/UnifyLoopExits.cpp
    M llvm/tools/bugpoint/Miscompilation.cpp

  Log Message:
  -----------
  [NFC][RemoveDIs] Bulk update utilities to insert with iterators

As part of the RemoveDIs project we need LLVM to insert instructions using
iterators wherever possible, so that the iterators can carry a bit of
debug-info. This commit implements some of that by updating the contents of
llvm/lib/Transforms/Utils to always use iterator-versions of instruction
constructors.

There are two general flavours of update:
 * Almost all call-sites just call getIterator on an instruction
 * Several make use of an existing iterator (scenarios where the code is
   actually significant for debug-info)
The underlying logic is that any call to getFirstInsertionPt or similar
APIs that identify the start of a block need to have that iterator passed
directly to the insertion function, without being converted to a bare
Instruction pointer along the way.

I've also switched DemotePHIToStack to take an optional iterator: it needs
to take an iterator, and having a no-insert-location behaviour appears to
be important. The constructors for ICmpInst and FCmpInst have been updated
too. They're the only instructions that take block _references_ rather than
pointers for certain calls, and a future patch is going to make use of
default-null block insertion locations.

All of this should be NFC.


  Commit: c4c35d9522d19a0a511ee2cc011a21661e69f3c0
      https://github.com/llvm/llvm-project/commit/c4c35d9522d19a0a511ee2cc011a21661e69f3c0
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    A clang/test/SemaCXX/restrict-this.cpp

  Log Message:
  -----------
  [Clang] [Sema] Handle `this` in `__restrict`-qualified member functions properly (#83187)

When resolving the type of `this` inside a member function, we were
attaching all qualifiers present on the member function to the class
type and then making it a pointer; however, `__restrict`, unlike `const`
and `volatile`, needs to be attached to the pointer type rather than the
pointee type.

This fixes #82941, #42411, and #18121.


  Commit: 6c7805d5d186a6d1263f90b8033ad85e2d2633d7
      https://github.com/llvm/llvm-project/commit/6c7805d5d186a6d1263f90b8033ad85e2d2633d7
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/Transforms/Utils/Local.h
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/Transforms/CFGuard/CFGuard.cpp
    M llvm/lib/Transforms/Scalar/Reg2Mem.cpp
    M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
    M llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp
    M llvm/lib/Transforms/Utils/CallPromotionUtils.cpp
    M llvm/lib/Transforms/Utils/CanonicalizeFreezeInLoops.cpp
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    M llvm/lib/Transforms/Utils/DemoteRegToStack.cpp
    M llvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/LoopConstrainer.cpp
    M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
    M llvm/lib/Transforms/Utils/LoopSimplify.cpp
    M llvm/lib/Transforms/Utils/LoopUnroll.cpp
    M llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp
    M llvm/lib/Transforms/Utils/LowerGlobalDtors.cpp
    M llvm/lib/Transforms/Utils/LowerInvoke.cpp
    M llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
    M llvm/lib/Transforms/Utils/LowerSwitch.cpp
    M llvm/lib/Transforms/Utils/MatrixUtils.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
    M llvm/lib/Transforms/Utils/StripGCRelocates.cpp
    M llvm/lib/Transforms/Utils/UnifyLoopExits.cpp
    M llvm/tools/bugpoint/Miscompilation.cpp

  Log Message:
  -----------
  Revert "[NFC][RemoveDIs] Bulk update utilities to insert with iterators"

This reverts commit 3fda50d3915b2163a54a37b602be7783a89dd808.

Apparently I've missed a hunk while staging this; will back out for now.

Picked up here: https://lab.llvm.org/buildbot/#/builders/139/builds/60429/steps/6/logs/stdio


  Commit: 6afda56faa6260cff4e6e9264226737d96d952c1
      https://github.com/llvm/llvm-project/commit/6afda56faa6260cff4e6e9264226737d96d952c1
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.h

  Log Message:
  -----------
  [RISCV] Store RVC and TSO ELF flags explicitly in RISCVTargetStreamer. NFCI (#83344)

Instead of caching STI in the RISCVELFTargetStreamer, store the two
flags we need from it.

My goal is to allow RISCVAsmPrinter to override these flags using IR
module metadata for LTO. So they need to be separated from the STI used
to construct the TargetStreamer.

This patch should be NFC as long as no one is changing the contents of
the STI that was used to construct the TargetStreamer between the
constructor and the use of the flags.


  Commit: 2d61979137cfea8f016e618dd17f5be8e7d865bf
      https://github.com/llvm/llvm-project/commit/2d61979137cfea8f016e618dd17f5be8e7d865bf
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M clang/test/SemaOpenACC/no-branch-in-out.cpp

  Log Message:
  -----------
  [OpenACC] Add dependent test for break/continue compute construct diag

I discovered while debugging something else that this could possibly
cause an assert if I'm not careful with followup patches, so add the
tests.


  Commit: 0699749cb45db77e8393f198b1837945a958aebf
      https://github.com/llvm/llvm-project/commit/0699749cb45db77e8393f198b1837945a958aebf
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M flang/runtime/Float128Math/CMakeLists.txt
    M flang/runtime/Float128Math/acos.cpp
    M flang/runtime/Float128Math/acosh.cpp
    M flang/runtime/Float128Math/asin.cpp
    M flang/runtime/Float128Math/asinh.cpp
    M flang/runtime/Float128Math/atan.cpp
    M flang/runtime/Float128Math/atan2.cpp
    M flang/runtime/Float128Math/atanh.cpp
    M flang/runtime/Float128Math/cabs.cpp
    M flang/runtime/Float128Math/ceil.cpp
    M flang/runtime/Float128Math/cos.cpp
    M flang/runtime/Float128Math/cosh.cpp
    M flang/runtime/Float128Math/erf.cpp
    M flang/runtime/Float128Math/erfc.cpp
    M flang/runtime/Float128Math/exp.cpp
    A flang/runtime/Float128Math/exponent.cpp
    M flang/runtime/Float128Math/floor.cpp
    A flang/runtime/Float128Math/fraction.cpp
    M flang/runtime/Float128Math/hypot.cpp
    M flang/runtime/Float128Math/j0.cpp
    M flang/runtime/Float128Math/j1.cpp
    M flang/runtime/Float128Math/jn.cpp
    M flang/runtime/Float128Math/lgamma.cpp
    M flang/runtime/Float128Math/llround.cpp
    M flang/runtime/Float128Math/log.cpp
    M flang/runtime/Float128Math/log10.cpp
    M flang/runtime/Float128Math/lround.cpp
    M flang/runtime/Float128Math/math-entries.h
    A flang/runtime/Float128Math/mod-real.cpp
    A flang/runtime/Float128Math/modulo-real.cpp
    A flang/runtime/Float128Math/nearest.cpp
    M flang/runtime/Float128Math/norm2.cpp
    A flang/runtime/Float128Math/numeric-template-specs.h
    M flang/runtime/Float128Math/pow.cpp
    M flang/runtime/Float128Math/round.cpp
    A flang/runtime/Float128Math/rrspacing.cpp
    A flang/runtime/Float128Math/scale.cpp
    A flang/runtime/Float128Math/set-exponent.cpp
    M flang/runtime/Float128Math/sin.cpp
    M flang/runtime/Float128Math/sinh.cpp
    A flang/runtime/Float128Math/spacing.cpp
    M flang/runtime/Float128Math/sqrt.cpp
    M flang/runtime/Float128Math/tan.cpp
    M flang/runtime/Float128Math/tanh.cpp
    M flang/runtime/Float128Math/tgamma.cpp
    M flang/runtime/Float128Math/trunc.cpp
    M flang/runtime/Float128Math/y0.cpp
    M flang/runtime/Float128Math/y1.cpp
    M flang/runtime/Float128Math/yn.cpp
    M flang/runtime/extrema.cpp
    A flang/runtime/numeric-templates.h
    M flang/runtime/numeric.cpp
    M flang/runtime/reduction-templates.h

  Log Message:
  -----------
  [flang][runtime] Moved support for some REAL(16) intrinsics to Float128Math. (#83383)

This adds support for 128-bit float versions of SCALE, NEAREST, MOD,
MODULO, SET_EXPONENT, EXPONENT, FRACTION, SPACING and RRSPACING.


  Commit: 0869ffa6bd6e9562b35bc93e48207d11261d67df
      https://github.com/llvm/llvm-project/commit/0869ffa6bd6e9562b35bc93e48207d11261d67df
  Author: SunilKuravinakop <98882378+SunilKuravinakop at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/test/OpenMP/interop_codegen.cpp

  Log Message:
  -----------
  [OpenMP] Clang Codegen Interop : Accept multiple use & destroy clauses (#83398)

Modified clang/lib/CodeGen/CGStmtOpenMP.cpp to accept multiple use &
destroy clauses with interop directive.
Modified clang/test/OpenMP/interop_codegen.cpp to check for the changes.

Co-authored-by: Sunil Kuravinakop <kuravina at pe28vega.us.cray.com>


  Commit: a6d9b7ba2722953960b83fbacda1757349f00156
      https://github.com/llvm/llvm-project/commit/a6d9b7ba2722953960b83fbacda1757349f00156
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M lldb/cmake/modules/AddLLDB.cmake

  Log Message:
  -----------
  [lldb] Don't cache lldb_find_python_module result

Don't cache lldb_find_python_module result as that requires you to do a
clean build after installing the dependency.


  Commit: 3e0425c76c894c2ed538978140f59bd4a14acabd
      https://github.com/llvm/llvm-project/commit/3e0425c76c894c2ed538978140f59bd4a14acabd
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/reorder-node.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test showing incorrect transformation, NFC.


  Commit: be8f987d8cddd2d1df5ed1afff64fd9a730ec97a
      https://github.com/llvm/llvm-project/commit/be8f987d8cddd2d1df5ed1afff64fd9a730ec97a
  Author: Jason Eckhardt <jeckhardt at nvidia.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/utils/TableGen/SearchableTableEmitter.cpp

  Log Message:
  -----------
  [TableGen] Use consistent field kind checking in getNumericKey. (#83284)

Fields GenericField::IsInstruction and GenericField::Enum can be
simultaneously active for a given field. Methods compareBy and
primaryRepresentation both order the checking of IsInstruction before
GenericField::Enum. Do the same in getNumericKey for consistency.


  Commit: 856ce495e52b8ea8855d7f34d84346c82b1fddc2
      https://github.com/llvm/llvm-project/commit/856ce495e52b8ea8855d7f34d84346c82b1fddc2
  Author: Kalesh Singh <kaleshsingh96 at gmail.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/test/Driver/android-link.cpp

  Log Message:
  -----------
  ANDROID: AArch64: Change default max-page-size from 4k to 16k (#70251)

File size increase were found negligible from sparseness and zero
block compression in f2fs and ext4 (supported filesystems for
Android's userdata partition).

Signed-off-by: Kalesh Singh <kaleshsingh at google.com>
Co-authored-by: Kalesh Singh <kaleshsingh at google.com>


  Commit: 489eadd142e858dc28e375320da774eba53d21bb
      https://github.com/llvm/llvm-project/commit/489eadd142e858dc28e375320da774eba53d21bb
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/CodeGenHLSL/builtins/dot.hlsl
    A clang/test/CodeGenHLSL/builtins/frac.hlsl
    M clang/test/CodeGenHLSL/builtins/lerp.hlsl
    M clang/test/SemaHLSL/BuiltIns/dot-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/frac-errors.hlsl
    M clang/test/SemaHLSL/BuiltIns/lerp-errors.hlsl
    M clang/test/SemaHLSL/OverloadResolutionBugs.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td

  Log Message:
  -----------
  [HLSL] Implementation of the frac intrinsic (#83315)

This change implements the frontend  for #70099
Builtins.td           - add the frac builtin
CGBuiltin.cpp         - add the builtin to DirectX intrinsic mapping
hlsl_intrinsics.h     - add the frac api
SemaChecking.cpp      - add type checks for builtin
IntrinsicsDirectX.td  - add the frac intrinsic

The backend changes for this are going to be very simple:
https://github.com/llvm/llvm-project/commit/f309a0eb558b65dfaff0d1d23b7d07fb07e27121

They were not included because llvm/lib/Target/DirectX/DXIL.td is going
through a major refactor.


  Commit: c9b1f1c337ce7c12664b670c0ba1022e5d5b8001
      https://github.com/llvm/llvm-project/commit/c9b1f1c337ce7c12664b670c0ba1022e5d5b8001
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M clang/test/CodeGenHLSL/builtins/abs.hlsl
    M clang/test/CodeGenHLSL/builtins/ceil.hlsl
    M clang/test/CodeGenHLSL/builtins/cos.hlsl
    M clang/test/CodeGenHLSL/builtins/floor.hlsl
    M clang/test/CodeGenHLSL/builtins/log.hlsl
    M clang/test/CodeGenHLSL/builtins/log10.hlsl
    M clang/test/CodeGenHLSL/builtins/log2.hlsl
    M clang/test/CodeGenHLSL/builtins/max.hlsl
    M clang/test/CodeGenHLSL/builtins/min.hlsl
    M clang/test/CodeGenHLSL/builtins/pow.hlsl
    M clang/test/CodeGenHLSL/builtins/sin.hlsl
    M clang/test/CodeGenHLSL/builtins/trunc.hlsl
    M clang/test/SemaHLSL/VectorOverloadResolution.hlsl

  Log Message:
  -----------
  [HLSL]  standardize builtin unit tests (#83340)

This PR brings best practices mentioned to me on other prs and adds them
to the existing builtin tests.

Note to reviewers: I put this up in two commits because the clang-format
changes is making it hard to tell what actually changed.
use the first commit to check for correctness.


  Commit: de8e2b7b8649ffa516d357a646eacbce8e69e39e
      https://github.com/llvm/llvm-project/commit/de8e2b7b8649ffa516d357a646eacbce8e69e39e
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/test/Transforms/SROA/vector-promotion.ll

  Log Message:
  -----------
  [test][SROA] Regenerate vector-promotion.ll


  Commit: 1ca65dd74a4370e5788c69e939106b53da13dbf6
      https://github.com/llvm/llvm-project/commit/1ca65dd74a4370e5788c69e939106b53da13dbf6
  Author: Yinying Li <107574043+yinying-lisa-li at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_loose.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul_slice.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matrix_ops.mlir

  Log Message:
  -----------
  [mlir][sparse] Migration to sparse_tensor.print (#83377)

Continuous efforts following #83357.


  Commit: 45d82f33af9334907dde39cc69921c679299114e
      https://github.com/llvm/llvm-project/commit/45d82f33af9334907dde39cc69921c679299114e
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-node.ll

  Log Message:
  -----------
  [SLP]Fix miscompilation, cause by incorrect final node reordering.

Need to use the regular reordering from the correct node for the final
store/insertelement node to avoid miscommilation.


  Commit: 73aab2f69773324ef0250f093bd4d782beee921a
      https://github.com/llvm/llvm-project/commit/73aab2f69773324ef0250f093bd4d782beee921a
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M libc/benchmarks/automemcpy/lib/CMakeLists.txt
    M libc/cmake/modules/LLVMLibCObjectRules.cmake
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/cmake/modules/compiler_features/check_fixed_point.cpp
    M libc/fuzzing/stdio/printf_fixed_conv_fuzz.cpp
    M libc/include/llvm-libc-types/float128.h
    M libc/src/__support/CPP/limits.h
    M libc/src/__support/CPP/type_traits/is_fixed_point.h
    M libc/src/__support/HashTable/table.h
    M libc/src/__support/RPC/rpc_client.h
    M libc/src/__support/fixed_point/fx_bits.h
    M libc/src/__support/fixed_point/fx_rep.h
    M libc/src/__support/fixed_point/sqrt.h
    M libc/src/__support/macros/properties/types.h
    M libc/src/stdfix/abshk.h
    M libc/src/stdfix/abshr.h
    M libc/src/stdfix/absk.h
    M libc/src/stdfix/abslk.h
    M libc/src/stdfix/abslr.h
    M libc/src/stdfix/absr.h
    M libc/src/stdfix/roundhk.h
    M libc/src/stdfix/roundhr.h
    M libc/src/stdfix/roundk.h
    M libc/src/stdfix/roundlk.h
    M libc/src/stdfix/roundlr.h
    M libc/src/stdfix/roundr.h
    M libc/src/stdfix/rounduhk.h
    M libc/src/stdfix/rounduhr.h
    M libc/src/stdfix/rounduk.h
    M libc/src/stdfix/roundulk.h
    M libc/src/stdfix/roundulr.h
    M libc/src/stdfix/roundur.h
    M libc/src/stdfix/sqrtuhk.h
    M libc/src/stdfix/sqrtuhr.h
    M libc/src/stdfix/sqrtuk.h
    M libc/src/stdfix/sqrtulr.h
    M libc/src/stdfix/sqrtur.h
    M libc/src/stdio/printf_core/fixed_converter.h
    M libc/src/stdio/printf_core/parser.h
    M libc/src/sys/epoll/epoll_pwait.h
    M libc/src/sys/epoll/epoll_pwait2.h
    M libc/src/sys/epoll/epoll_wait.h
    M libc/src/sys/epoll/linux/epoll_pwait.cpp
    M libc/src/sys/epoll/linux/epoll_pwait2.cpp
    M libc/src/sys/epoll/linux/epoll_wait.cpp
    M libc/test/UnitTest/CMakeLists.txt
    M libc/test/UnitTest/LibcTest.cpp
    M libc/test/include/stdbit_test.cpp
    M libc/test/include/stdckdint_test.cpp
    M libc/test/include/sys/queue_test.cpp
    M libc/test/integration/startup/CMakeLists.txt
    M libc/test/integration/startup/gpu/rpc_interface_test.cpp
    M libc/test/integration/startup/gpu/rpc_stream_test.cpp
    M libc/test/integration/startup/gpu/rpc_test.cpp
    M libc/test/src/__support/fixed_point/fx_bits_test.cpp
    M libc/test/src/compiler/stack_chk_guard_test.cpp
    M libc/test/src/math/differential_testing/CMakeLists.txt
    M libc/utils/LibcTableGenUtil/CMakeLists.txt
    M libc/utils/gpu/loader/Loader.h

  Log Message:
  -----------
  [libc] Revert https://github.com/llvm/llvm-project/pull/83199 since it broke Fuchsia. (#83374)

With some header fix forward for GPU builds.


  Commit: 525fe4492bbecf357d3580d879f2092bf99c12a2
      https://github.com/llvm/llvm-project/commit/525fe4492bbecf357d3580d879f2092bf99c12a2
  Author: Danny Mösch <danny.moesch at icloud.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
    M clang-tools-extra/clang-tidy/modernize/ModernizeTidyModule.cpp
    A clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.cpp
    A clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.h
    M clang-tools-extra/clang-tidy/utils/CMakeLists.txt
    A clang-tools-extra/clang-tidy/utils/DesignatedInitializers.cpp
    A clang-tools-extra/clang-tidy/utils/DesignatedInitializers.h
    M clang-tools-extra/clangd/CMakeLists.txt
    M clang-tools-extra/clangd/InlayHints.cpp
    M clang-tools-extra/clangd/tool/CMakeLists.txt
    M clang-tools-extra/clangd/unittests/CMakeLists.txt
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    A clang-tools-extra/docs/clang-tidy/checks/modernize/use-designated-initializers.rst
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-designated-initializers.cpp

  Log Message:
  -----------
  [clang-tidy] Add new check `modernize-use-designated-initializers` (#80541)


  Commit: 920094ea3b84a9f99f3e4d014c3eac062a617efe
      https://github.com/llvm/llvm-project/commit/920094ea3b84a9f99f3e4d014c3eac062a617efe
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/modernize/BUILD.gn
    M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/utils/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 525fe4492bbe


  Commit: 22f5e30c1798280c7476c0374280342b48880bb5
      https://github.com/llvm/llvm-project/commit/22f5e30c1798280c7476c0374280342b48880bb5
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M libc/src/__support/FPUtil/FPBits.h
    M libc/src/__support/macros/properties/types.h

  Log Message:
  -----------
  [libc][NFC] Rename `LIBC_COMPILER_HAS_C23_FLOAT16` to `LIBC_TYPES_HAS_FLOAT16` (#83396)

Umbrella bug #83182


  Commit: cff36bb198759c4fe557adc594eabc097cf7d565
      https://github.com/llvm/llvm-project/commit/cff36bb198759c4fe557adc594eabc097cf7d565
  Author: Aiden Grossman <agrossman154 at yahoo.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/include/llvm/ADT/SmallString.h
    M llvm/unittests/ADT/SmallStringTest.cpp

  Log Message:
  -----------
  [ADT] Add std::string_view conversion to SmallString (#83397)

This patch adds a std::string_view conversion to SmallString which we've
recently found a use for downstream in a project that is using c++
standard library IO.


  Commit: 21be2fbd17f9ff6f3f04e0ababc91c9cdd5aed85
      https://github.com/llvm/llvm-project/commit/21be2fbd17f9ff6f3f04e0ababc91c9cdd5aed85
  Author: Piotr Zegar <me at piotrzegar.pl>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.cpp

  Log Message:
  -----------
  [clang-tidy][NFC] Fix buffer overflow in modernize-use-designated-initializers

Instance of DenseMap were copied into local variable,
and as a result reference to string stored in that local
variable were returned from function. At the end fix-it
were applied with already destroyed string causing some
non utf-8 characters to be printed.

Related to #80541


  Commit: 75fb825bccaa1e0f1ca9f76f9c72434a26d9966a
      https://github.com/llvm/llvm-project/commit/75fb825bccaa1e0f1ca9f76f9c72434a26d9966a
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M libc/cmake/modules/CheckCompilerFeatures.cmake
    M libc/cmake/modules/compiler_features/check_float128.cpp
    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/dev/code_style.rst
    M libc/spec/stdc.td
    M libc/src/__support/CPP/type_traits/is_floating_point.h
    M libc/src/__support/FPUtil/FPBits.h
    M libc/src/__support/macros/properties/types.h
    M libc/test/src/__support/FPUtil/fpbits_test.cpp
    M libc/test/src/__support/uint_test.cpp

  Log Message:
  -----------
  [libc][NFC] Rename `LIBC_COMPILER_HAS_FLOAT128` to `LIBC_TYPES_HAS_FLOAT128` (#83395)

Umbrella bug #83182


  Commit: 5225901ecd53ba1e3f1519f3edea7d1aec15502d
      https://github.com/llvm/llvm-project/commit/5225901ecd53ba1e3f1519f3edea7d1aec15502d
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp

  Log Message:
  -----------
  [flang] Add [[maybe_unused]] to fix -Werror build (#83456)

Add the [[maybe_unused]] attribute to a variable in
lib/Lower/OpenMP/OpenMP.cpp to avoid a (possibly bogus) unused variable
warning when building with GCC 9.3.0.


  Commit: 81578477645b7f2e97744d53a4cea962872925b0
      https://github.com/llvm/llvm-project/commit/81578477645b7f2e97744d53a4cea962872925b0
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M libcxx/src/new.cpp

  Log Message:
  -----------
  [libc++] Include missing <__assert> after #80091 (#83480)

_LIBCPP_ASSERT_SHIM used by the -fno-exceptions and 
LIBCXX_ENABLE_NEW_DELETE_DEFINITIONS=on configuration
needs _LIBCPP_ASSERT from <__assert>.


  Commit: 82c1bfc44ecee97425582f345d04e787f066b899
      https://github.com/llvm/llvm-project/commit/82c1bfc44ecee97425582f345d04e787f066b899
  Author: Shubham Sandeep Rastogi <srastogi22 at apple.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py

  Log Message:
  -----------
  Increase timeout to reduce test failure rate. (#83312)

The timeout for this test was set to 1.0s which is very low, it should
be a default of 10s and be increased by a factor of 10 if ASAN is
enabled. This will help reduce the falkiness of the test, especially in
ASAN builds.


  Commit: de55c2f869925a3ed7f26e168424021c6bc46799
      https://github.com/llvm/llvm-project/commit/de55c2f869925a3ed7f26e168424021c6bc46799
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M mlir/include/mlir/Query/Matcher/ErrorBuilder.h
    M mlir/include/mlir/Query/Matcher/MatchersInternal.h
    M mlir/lib/Query/Matcher/Diagnostics.cpp
    M mlir/lib/Query/Matcher/Parser.cpp
    M mlir/lib/Query/Matcher/Parser.h
    M mlir/lib/Query/Matcher/RegistryManager.cpp
    M mlir/lib/Query/Matcher/RegistryManager.h
    M mlir/lib/Query/Query.cpp
    R mlir/test/mlir-query/function-extraction.mlir

  Log Message:
  -----------
  Revert "[mlir-query] Add function extraction feature to mlir-query"

This reverts commit c66f2d0c4a46ba66fb98a2cab4e63ad90888a261.

The bot is broken.


  Commit: 5abbe8ec9edcc034fad383ab69046e8c0d13c97d
      https://github.com/llvm/llvm-project/commit/5abbe8ec9edcc034fad383ab69046e8c0d13c97d
  Author: Aiden Grossman <agrossman154 at yahoo.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/include/llvm/ADT/SmallString.h
    M llvm/unittests/ADT/SmallStringTest.cpp

  Log Message:
  -----------
  Revert "[ADT] Add std::string_view conversion to SmallString (#83397)"

This reverts commit cff36bb198759c4fe557adc594eabc097cf7d565.

This patch was causing build failures in certain configurations.


  Commit: ac267081a387a53d83ec9e3bfccedb27c21a050f
      https://github.com/llvm/llvm-project/commit/ac267081a387a53d83ec9e3bfccedb27c21a050f
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/test/Transforms/MemProfContextDisambiguation/inlined3.ll

  Log Message:
  -----------
  [MemProf][NFC] Make new test actually check cold attributes

The test added by PR81322 didn't actually check the coldness of the
attributes being matched on the IR. Add that checking.


  Commit: 8c1003266520ac396ce2a9e799f318af30efdd19
      https://github.com/llvm/llvm-project/commit/8c1003266520ac396ce2a9e799f318af30efdd19
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.h
    M lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.h

  Log Message:
  -----------
  [lldb][NFC] Move helpers to import record layout into ClangASTImporter (#83291)

This patch moves the logic for copying the layout info of a
`RecordDecl`s origin into a target AST.

A follow-up patch re-uses the logic from within the `ClangASTImporter`,
so the natural choice was to move it there.


  Commit: 4d12f708967f932b584be5fc4efd17ad3272f87c
      https://github.com/llvm/llvm-project/commit/4d12f708967f932b584be5fc4efd17ad3272f87c
  Author: Reid Kleckner <rnk at google.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/docs/CodeOfConduct.rst

  Log Message:
  -----------
  Add guidance on bans to the CoC section and link to the developer policy (#82551)

This seemed like relevant information to include in the code of conduct.


  Commit: 07ffb7e294767b74e43f90e9ab3d713da929b907
      https://github.com/llvm/llvm-project/commit/07ffb7e294767b74e43f90e9ab3d713da929b907
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp
    A lldb/test/API/lang/cpp/gmodules/alignment/Makefile
    A lldb/test/API/lang/cpp/gmodules/alignment/TestPchAlignment.py
    A lldb/test/API/lang/cpp/gmodules/alignment/main.cpp
    A lldb/test/API/lang/cpp/gmodules/alignment/pch.h

  Log Message:
  -----------
  [lldb][ClangASTImporter] Import record layouts from origin if available (#83295)

Layout information for a record gets stored in the `ClangASTImporter`
associated with the `DWARFASTParserClang` that originally parsed the
record. LLDB sometimes moves clang types from one AST to another (in the
reproducer the origin AST was a precompiled-header and the destination
was the AST backing the executable). When clang then asks LLDB to
`layoutRecordType`, it will do so with the help of the
`ClangASTImporter` the type is associated with. If the type's origin is
actually in a different LLDB module (and thus a different
`DWARFASTParserClang` was used to set its layout info), we won't find
the layout info in our local `ClangASTImporter`.

In the reproducer this meant we would drop the alignment info of the
origin type and misread a variable's contents with `frame var` and
`expr`.

There is logic in `ClangASTSource::layoutRecordType` to import an
origin's layout info. This patch re-uses that infrastructure to import
an origin's layout from one `ClangASTImporter` instance to another.

rdar://123274144


  Commit: 91895f59f43217b120506bf98327a13adfc4c598
      https://github.com/llvm/llvm-project/commit/91895f59f43217b120506bf98327a13adfc4c598
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M .github/new-prs-labeler.yml

  Log Message:
  -----------
  [pr-subscribers] added `third-party:benchmark` to `new-prs-labeler` (#83486)


  Commit: 2fef685363e13e0640b624cc3d07b1006f12113c
      https://github.com/llvm/llvm-project/commit/2fef685363e13e0640b624cc3d07b1006f12113c
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/test/Transforms/LoopRotate/oz-disable.ll
    A llvm/test/Transforms/PhaseOrdering/enable-loop-header-duplication-oz.ll

  Log Message:
  -----------
  [llvm][loop-rotate] Allow forcing loop-rotation (#82828)

Many profitable optimizations cannot be performed at -Oz, due to
unrotated loops. While this is worse for size (minimally), many of the
optimizations significantly reduce code size, such as memcpy
optimizations and other patterns found by loop idiom recognition.
Related discussion can be found in issue #50308.

This patch adds an experimental, backend-only flag to allow loop header
duplication, regardless of the optimization level. Downstream consumers
can experiment with this flag, and if it is profitable, we can adjust
the compiler's defaults accordingly, and expose any useful frontend
flags to opt into the new behavior.


  Commit: 5b07fd479902b485cdc6f9fb61738fb05ed65095
      https://github.com/llvm/llvm-project/commit/5b07fd479902b485cdc6f9fb61738fb05ed65095
  Author: Leon Clark <PeddleSpam at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/ctlz.ll
    M llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll

  Log Message:
  -----------
  [AMDGPU] Fix OpenCL conformance test failures for ctlz. (#83170)

Remove LSH transform and restore previous lowering.

Fixes conformance issue in
[77615](https://github.com/llvm/llvm-project/pull/77615) where OpenCL
integer_ops tests fail for integer_clz.

Co-authored-by: Leon Clark <leoclark at amd.com>


  Commit: c5cdf3432a3928de8f111a7483962f0e5103546f
      https://github.com/llvm/llvm-project/commit/c5cdf3432a3928de8f111a7483962f0e5103546f
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M flang/runtime/Float128Math/exponent.cpp
    M flang/runtime/Float128Math/fraction.cpp
    M flang/runtime/Float128Math/mod-real.cpp
    M flang/runtime/Float128Math/modulo-real.cpp
    M flang/runtime/Float128Math/nearest.cpp
    M flang/runtime/Float128Math/rrspacing.cpp
    M flang/runtime/Float128Math/scale.cpp
    M flang/runtime/Float128Math/set-exponent.cpp
    M flang/runtime/Float128Math/spacing.cpp
    M flang/runtime/numeric-templates.h
    M flang/runtime/numeric.cpp

  Log Message:
  -----------
  [flang][runtime] Partial revert of #83383. (#83478)

For `LDBL_MANT_DIG == 113` targets the REAL(16) versions of F18
runtime APIs can stay and should better stay in FortranRuntime.
This way, no additional linking actions are required, because
glibc provides all that is needed.
I thought I would isolate all REAL(16) implementations (both
via `__float128` and `long double`) into Float128Math library,
but that was a bad idea.

This should fix aarch64 buildbots failing gfortran tests.


  Commit: 8466ab98ca5353e22eab0ae6d9885a65091786fb
      https://github.com/llvm/llvm-project/commit/8466ab98ca5353e22eab0ae6d9885a65091786fb
  Author: Matthias Braun <matze at braunis.de>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/tools/llvm-profgen/PerfReader.cpp

  Log Message:
  -----------
  llvm-profgen: Fix race condition (#83489)

Fix race condition when multiple instances of `llvm-progen` read from
the same inputs.


  Commit: ca9d2e923b28adec9ae1754f0bb61b2e8ada025e
      https://github.com/llvm/llvm-project/commit/ca9d2e923b28adec9ae1754f0bb61b2e8ada025e
  Author: Sumanth Gundapaneni <sgundapa at quicinc.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M clang/test/CodeGen/builtins-hexagon.c
    M llvm/lib/Target/Hexagon/CMakeLists.txt
    A llvm/lib/Target/Hexagon/HexagonLoopAlign.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetMachine.h
    A llvm/test/CodeGen/Hexagon/loop-balign.ll
    A llvm/test/CodeGen/Hexagon/loop_align_count.ll
    A llvm/test/CodeGen/Hexagon/loop_align_count.mir
    A llvm/test/CodeGen/Hexagon/v6-haar-balign32.ll

  Log Message:
  -----------
  [Hexagon] Add Loop Alignment pass. (#83379)

Inspect a basic block and if its single basic block loop with a small
number of instructions, set the Loop Alignment to 32 bytes. This will
avoid the cache line break in the first packet of loop which will cause
a stall per each execution of loop.


  Commit: 6137f482fca8b57d9c075b41cc4959b4e63a74f1
      https://github.com/llvm/llvm-project/commit/6137f482fca8b57d9c075b41cc4959b4e63a74f1
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/Hexagon/BUILD.gn

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


  Commit: 71eead512eb1e3c19d940678a82712ef05cdd994
      https://github.com/llvm/llvm-project/commit/71eead512eb1e3c19d940678a82712ef05cdd994
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_loose.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul_slice.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matrix_ops.mlir

  Log Message:
  -----------
  Revert "[mlir][sparse] Migration to sparse_tensor.print" (#83499)

Reverts llvm/llvm-project#83377

The test does not pass on the bot.


  Commit: bf0f874e4883a98ab69cff3da323713a5fe80dfd
      https://github.com/llvm/llvm-project/commit/bf0f874e4883a98ab69cff3da323713a5fe80dfd
  Author: Andrei Homescu <ahomescu at google.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/secondary.h

  Log Message:
  -----------
  [scudo] Avoid splitting aligned allocations on Trusty (#69281)

Don't use multiple tagged pages at the beginning of an allocation, since
it prevents using such allocations for memrefs, and mappings aren't
reused anyway since Trusty uses MapAllocatorNoCache.
Upstreamed from https://r.android.com/2537251.

Co-authored-by: Marco Nelissen <marcone at google.com>


  Commit: b9b8333ed51b67ab73f8bc4cf25ce400d91e7008
      https://github.com/llvm/llvm-project/commit/b9b8333ed51b67ab73f8bc4cf25ce400d91e7008
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    A compiler-rt/test/hwasan/TestCases/longjmp-out-of-range.c

  Log Message:
  -----------
  [HWASan] add test for hwasan_handle_longjmp ignore logic (#83359)


  Commit: 3be05d898ffd1e687bd67dcd5fe0c8c16ff2d4d7
      https://github.com/llvm/llvm-project/commit/3be05d898ffd1e687bd67dcd5fe0c8c16ff2d4d7
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M mlir/test/mlir-cpu-runner/expand-arith-ops.mlir

  Log Message:
  -----------
  [MLIR] Fix test on Windows

Windows folds to 1.01563 and linux to 1.01562, let's just check the prefix here.


  Commit: 1a2960bab6381f2b288328e2371829b460ac020c
      https://github.com/llvm/llvm-project/commit/1a2960bab6381f2b288328e2371829b460ac020c
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp

  Log Message:
  -----------
  [pgo][nfc] Model `Count` as a `std::optional` in `PGOUseBBInfo` (#83364)

Simpler code, compared to tracking state of 2 variables and the ambiguity of "0" CountValue (is it 0 or is it invalid?)


  Commit: d1924f0474b65fe3189ffd658a12f452e4696c28
      https://github.com/llvm/llvm-project/commit/d1924f0474b65fe3189ffd658a12f452e4696c28
  Author: Kai Luo <lkail at cn.ibm.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/test/CodeGen/PowerPC/2008-10-28-f128-i32.ll
    M llvm/test/CodeGen/PowerPC/atomicrmw-uinc-udec-wrap.ll
    M llvm/test/CodeGen/PowerPC/ctrloops-pseudo.ll
    M llvm/test/CodeGen/PowerPC/expand-isel-to-branch.ll
    M llvm/test/CodeGen/PowerPC/fp-strict-fcmp-spe.ll
    M llvm/test/CodeGen/PowerPC/fp-to-int-to-fp.ll
    M llvm/test/CodeGen/PowerPC/fptoui-be-crash.ll
    M llvm/test/CodeGen/PowerPC/funnel-shift-rot.ll
    M llvm/test/CodeGen/PowerPC/funnel-shift.ll
    M llvm/test/CodeGen/PowerPC/i1-to-double.ll
    M llvm/test/CodeGen/PowerPC/ppcf128-constrained-fp-intrinsics.ll
    M llvm/test/CodeGen/PowerPC/pr43976.ll
    M llvm/test/CodeGen/PowerPC/pr49509.ll
    M llvm/test/CodeGen/PowerPC/save-crbp-ppc32svr4.ll
    M llvm/test/CodeGen/PowerPC/select-cc-no-isel.ll
    M llvm/test/CodeGen/PowerPC/select.ll
    M llvm/test/CodeGen/PowerPC/select_const.ll
    M llvm/test/CodeGen/PowerPC/smulfixsat.ll
    M llvm/test/CodeGen/PowerPC/spe.ll
    M llvm/test/CodeGen/PowerPC/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/PowerPC/umulfixsat.ll
    M llvm/test/CodeGen/PowerPC/umulo-128-legalisation-lowering.ll
    M llvm/test/CodeGen/PowerPC/urem-seteq-illegal-types.ll
    M llvm/test/CodeGen/PowerPC/varargs.ll
    M llvm/test/CodeGen/PowerPC/wide-scalar-shift-by-byte-multiple-legalization.ll
    M llvm/test/CodeGen/PowerPC/wide-scalar-shift-legalization.ll

  Log Message:
  -----------
  [PowerPC] Do not generate `isel` instruction if target doesn't have this instruction (#72845)

When expand `select_cc` in finalize-isel, we should not generate `isel`
for targets not feature it.


  Commit: 7d7d4752a8f3d7b83586c10a882f974d821c0c53
      https://github.com/llvm/llvm-project/commit/7d7d4752a8f3d7b83586c10a882f974d821c0c53
  Author: ZijunZhaoCCK <88353225+ZijunZhaoCCK at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/19.rst
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/include/version
    M libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++] Set feature test macros __cpp_lib_ranges_contains and__cpp_lib_ranges_starts_ends_with (#81816)

ranges::contains: fdd089b50063
ranges::starts_with: 205175578e0d
ranges::ends_with: 0218ea4aaa54

Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>


  Commit: 5b058709536dd883980722ee000bb7b8c7b2cd8b
      https://github.com/llvm/llvm-project/commit/5b058709536dd883980722ee000bb7b8c7b2cd8b
  Author: Felix (Ting Wang) <Ting.Wang.SH at ibm.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/test/CodeGen/PowerPC/aix-tls-model.cpp
    M clang/test/Sema/aix-attr-tls_model.c
    M llvm/include/llvm/MC/MCExpr.h
    M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/MC/XCOFFObjectWriter.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFObjectWriter.cpp
    M llvm/lib/Target/PowerPC/PPC.h
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    M llvm/lib/Target/PowerPC/PPCTLSDynamicCall.cpp
    M llvm/test/CodeGen/PowerPC/aix-tls-gd-double.ll
    M llvm/test/CodeGen/PowerPC/aix-tls-gd-int.ll
    M llvm/test/CodeGen/PowerPC/aix-tls-gd-longlong.ll
    A llvm/test/CodeGen/PowerPC/aix-tls-ld-xcoff-reloc-large.ll
    A llvm/test/CodeGen/PowerPC/aix-tls-local-dynamic.ll
    M llvm/test/CodeGen/PowerPC/aix-tls-xcoff-reloc-large.ll
    M llvm/test/CodeGen/PowerPC/aix-tls-xcoff-reloc.ll

  Log Message:
  -----------
  [PowerPC] Support local-dynamic TLS relocation on AIX (#66316)

Supports TLS local-dynamic on AIX, generates below sequence of code:

```
.tc foo[TC],foo[TL]@ld # Variable offset, ld relocation specifier
.tc mh[TC],mh[TC]@ml # Module handle for the caller
lwz 3,mh[TC]\(2\) $$ For 64-bit: ld 3,mh[TC]\(2\)
bla .__tls_get_mod # Modifies r0,r3,r4,r5,r11,lr,cr0
#r3 = &TLS for module
lwz 4,foo[TC]\(2\) $$ For 64-bit: ld 4,foo[TC]\(2\)
add 5,3,4 # Compute &foo
.rename mh[TC], "\_$TLSML" # Symbol for the module handle must have the name "_$TLSML"
```

---------

Co-authored-by: tingwang <tingwang at tingwangs-MBP.lan>
Co-authored-by: tingwang <tingwang at tingwangs-MacBook-Pro.local>


  Commit: 5899599b01d86545896bd21bd15fb5cb619bd6c7
      https://github.com/llvm/llvm-project/commit/5899599b01d86545896bd21bd15fb5cb619bd6c7
  Author: Yinying Li <107574043+yinying-lisa-li at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_loose.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul_slice.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matrix_ops.mlir

  Log Message:
  -----------
  [mlir][sparse] Migration to sparse_tensor.print (#83506)

Continuous efforts #83357. Previously reverted #83377.


  Commit: 9a12b0a60084b2b92f728e1bddec884a47458459
      https://github.com/llvm/llvm-project/commit/9a12b0a60084b2b92f728e1bddec884a47458459
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M lldb/include/lldb/API/SBProcess.h
    M lldb/include/lldb/Utility/AddressableBits.h
    M lldb/include/lldb/lldb-defines.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/source/API/SBProcess.cpp
    M lldb/source/Target/Process.cpp
    M lldb/source/Utility/AddressableBits.cpp
    A lldb/test/API/python_api/process/address-masks/Makefile
    A lldb/test/API/python_api/process/address-masks/TestAddressMasks.py
    A lldb/test/API/python_api/process/address-masks/main.c

  Log Message:
  -----------
  [lldb] Add SBProcess methods for get/set/use address masks (#83095)

I'm reviving a patch from phabracator, https://reviews.llvm.org/D155905
which was approved but I wasn't thrilled with all the API I was adding
to SBProcess for all of the address mask types / memory regions. In this
update, I added enums to control type address mask type (code, data,
any) and address space specifiers (low, high, all) with defaulted
arguments for the most common case.

This patch is also fixing a bug in the "addressable bits to address
mask" calculation I added in AddressableBits::SetProcessMasks. If lldb
were told that 64 bits are valid for addressing, this method would
overflow the calculation and set an invalid mask. Added tests to check
this specific bug while I was adding these APIs.

rdar://123530562


  Commit: 7ceb74f5b74fa4a0b68ad911afd3cad945f640a3
      https://github.com/llvm/llvm-project/commit/7ceb74f5b74fa4a0b68ad911afd3cad945f640a3
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

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

  Log Message:
  -----------
  [compiler-rt] fix BSD procmaps stack frame size limit warning. (#82887)


  Commit: e8ce864a36ba02ddb63877905d49f1e9ac60b544
      https://github.com/llvm/llvm-project/commit/e8ce864a36ba02ddb63877905d49f1e9ac60b544
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M lldb/include/lldb/API/SBProcess.h
    M lldb/include/lldb/Utility/AddressableBits.h
    M lldb/include/lldb/lldb-defines.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/source/API/SBProcess.cpp
    M lldb/source/Target/Process.cpp
    M lldb/source/Utility/AddressableBits.cpp
    R lldb/test/API/python_api/process/address-masks/Makefile
    R lldb/test/API/python_api/process/address-masks/TestAddressMasks.py
    R lldb/test/API/python_api/process/address-masks/main.c

  Log Message:
  -----------
  Revert "[lldb] Add SBProcess methods for get/set/use address masks (#83095)"

This reverts commit 9a12b0a60084b2b92f728e1bddec884a47458459.

TestAddressMasks fails its first test on lldb-x86_64-debian,
lldb-arm-ubuntu, lldb-aarch64-ubuntu bots.  Reverting while
investigating.


  Commit: e7c3cd245665042bbae163f7280aceed35f0fee5
      https://github.com/llvm/llvm-project/commit/e7c3cd245665042bbae163f7280aceed35f0fee5
  Author: Kirill Stoimenov <87100199+kstoimenov at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    A llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out-no-ps.ll
    A llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out.ll

  Log Message:
  -----------
  [HWASAN] Implement selective instrumentation based on profiling information (#83503)


  Commit: 2cdf611c02392112860e661e8251efa8b1335cc2
      https://github.com/llvm/llvm-project/commit/2cdf611c02392112860e661e8251efa8b1335cc2
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M compiler-rt/lib/fuzzer/FuzzerUtilWindows.cpp

  Log Message:
  -----------
  [compiler-rt][Fuzzer] SetThreadName windows implementation new try. (#76761)

SetThreadDescription symbol needs to be dynamically loaded before usage.
Then using a wide string buffer, since we re using a null terminated
string, we can use MultiByteToWideChar -1 as 4th argument to finally set
the thread name.

Previously `SetThreadDescription` was called directly causing crash.
It was reverted in dd3aa26fc8e9de37a39611f7a6a602bcb4153784


  Commit: cf68c0427d9d3816eefcfe7d3d648a98146c07cf
      https://github.com/llvm/llvm-project/commit/cf68c0427d9d3816eefcfe7d3d648a98146c07cf
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M libc/include/llvm-libc-macros/float-macros.h

  Log Message:
  -----------
  [libc] Ignore -Winclude-next-absolute-path warning in float-macros.h (#83513)


  Commit: 5b6e58c565cf809e4133a10ff9d9b096754bea1e
      https://github.com/llvm/llvm-project/commit/5b6e58c565cf809e4133a10ff9d9b096754bea1e
  Author: Alexander M <iammorjj at gmail.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M lldb/test/API/lang/c/local_variables/TestLocalVariables.py

  Log Message:
  -----------
  Revert "XFAIL TestLocalVariables.py on Windows" (#83454)

This reverts commit 3434472ed74141848634b5eb3cd625d651e22562.

Closes #43097.


  Commit: 39c24c52f641849a648e3b01310ed7c3f2c8d91b
      https://github.com/llvm/llvm-project/commit/39c24c52f641849a648e3b01310ed7c3f2c8d91b
  Author: jameshu15869 <55058507+jameshu15869 at users.noreply.github.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M libc/cmake/modules/LLVMLibCArchitectures.cmake

  Log Message:
  -----------
  [libc] Allow libc to build on Red Hat (#83517)

Currently, `libc` fails when building on redhat because the triple
format uses `redhat` instead of `linux` (The same problem as openSUSE).
This PR changes `libc` to accept `redhat` as a valid Linux triple.

---------

Co-authored-by: Joseph Huber <huberjn at outlook.com>


  Commit: 8171f6d12eafbd4a67ad263770c142d51504d834
      https://github.com/llvm/llvm-project/commit/8171f6d12eafbd4a67ad263770c142d51504d834
  Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M lldb/include/lldb/Core/Progress.h

  Log Message:
  -----------
  [lldb][progress][NFC] Fix Doxygen information (#83502)


  Commit: 2023a230d122d6971c5ff90615c128e7e711b08f
      https://github.com/llvm/llvm-project/commit/2023a230d122d6971c5ff90615c128e7e711b08f
  Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
    M llvm/test/CodeGen/RISCV/pr69586.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vector-i8-index-cornercase.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-abs-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-nearbyint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-concat.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-trunc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vcopysign-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfma-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmax-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmin-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmuladd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmax-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmaxu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmin-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vminu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpgather.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsaddu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssubu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fmaximum-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fminimum-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/mscatter-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/nearbyint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vcopysign-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave-store.ll
    M llvm/test/CodeGen/RISCV/rvv/vfadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfdiv-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfma-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmax-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmin-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmul-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmuladd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfnmadd-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfnmsub-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptrunc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfsub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwmacc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwnmacc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwnmsac-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vpmerge-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vselect-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/vsitofp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vtrunc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vuitofp-vp.ll

  Log Message:
  -----------
  [RISCV] Move V0 to the end of register allocation order (#82967)

According to

https://riscv-optimization-guide-riseproject-c94355ae3e6872252baa952524.gitlab.io/riscv-optimization-guide.html:

> The v0 register defined by the RISC-V vector extension is special in
> that it can be used both as a general purpose vector register and also
> as a mask register. As a preference, use registers other than v0 for
> non-mask values. Otherwise data will have to be moved out of v0 when a
> mask is required in an operation. v0 may be used when all other
> registers are in use, and using v0 would avoid spilling register state
> to memory.

And using V0 register may stall masking pipeline and stop chaining
for some microarchitectures.

So we should try to not use V0 and register groups contained it as
much as possible. We achieve this via moving V0 to the end of RA
order.


  Commit: 4551f53523074cd4e2f93a6f79313ca2cdcc40d2
      https://github.com/llvm/llvm-project/commit/4551f53523074cd4e2f93a6f79313ca2cdcc40d2
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M lldb/tools/debugserver/source/RNBRemote.cpp
    M lldb/tools/debugserver/source/RNBRemote.h

  Log Message:
  -----------
  [lldb] [debugserver] fix qLaunchSuccess error, add QErrorStringInPacketSupported (#82593)

Pavel added an extension to lldb's gdb remote serial protocol that
allows the debug stub to append an error message (ascii hex encoded)
after an error response packet Exx. This was added in 2017 in
https://reviews.llvm.org/D34945 . lldb sends the
QErrorStringInPacketSupported packet and then the remote stub may add
these error strings.

debugserver has two bugs in its use of extended error messages: the
vAttach family would send the extended error string without checking if
the mode had been enabled. And qLaunchSuccess would not properly format
its error response packet (missing the hex digits, did not asciihex
encode the string).

There is also a bug in the HandlePacket_D (detach) packet where the
error packets did not include hex digits, but this one does not append
an error string.

I'm adding a new RNBRemote::SendErrorPacket() and routing all error
packet returns though this one method. It takes an optional second
string which is the longer error message; it now handles appending it to
the Exx response or not, depending on the QErrorStringInPacketSupported
state. I updated all packets to send their errors via this method.


  Commit: 8fd011ecc61fa83b9520a971aba1fa651a011bff
      https://github.com/llvm/llvm-project/commit/8fd011ecc61fa83b9520a971aba1fa651a011bff
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

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

  Log Message:
  -----------
  [RISCV] Add getFeaturesForCPU function support (#83269)

This function parse the cpu and return it's supported
features placed in EnabledFeatures. It is same as the
one in X86TargetParser and also is used in IREE.


  Commit: 8116dfb8b58a65e78e341f09f5728d345f086b7b
      https://github.com/llvm/llvm-project/commit/8116dfb8b58a65e78e341f09f5728d345f086b7b
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M clang/lib/InstallAPI/Frontend.cpp

  Log Message:
  -----------
  [InstallAPI] Use unique identifiers for input buffers (#83523)


  Commit: 346766eae8cb8949c2c13b85c0d1e6ff4869a77e
      https://github.com/llvm/llvm-project/commit/346766eae8cb8949c2c13b85c0d1e6ff4869a77e
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-02-29 (Thu, 29 Feb 2024)

  Changed paths:
    M llvm/include/llvm/TextAPI/Record.h
    M llvm/lib/TextAPI/RecordVisitor.cpp

  Log Message:
  -----------
  [TextAPI] Fixup symbol names of ivars from extensions (#83525)


  Commit: edd0ef4f3cb0ebc4eadc7a207edb9c849e894fc3
      https://github.com/llvm/llvm-project/commit/edd0ef4f3cb0ebc4eadc7a207edb9c849e894fc3
  Author: Douglas Yung <douglas.yung at sony.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/Hexagon/loop_align_count.ll
    M llvm/test/CodeGen/Hexagon/loop_align_count.mir

  Log Message:
  -----------
  Add "REQUIRES: asserts" to 2 tests added in #83379 using "-debug-only" run arguments.


  Commit: dca32a3b594b3c91f9766a9312b5d82534910fa1
      https://github.com/llvm/llvm-project/commit/dca32a3b594b3c91f9766a9312b5d82534910fa1
  Author: Matthias Gehre <matthias.gehre at amd.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/PDL/IR/PDLOps.td
    M mlir/include/mlir/Dialect/PDLInterp/IR/PDLInterpOps.td
    M mlir/include/mlir/IR/PDLPatternMatch.h.inc
    M mlir/lib/Conversion/PDLToPDLInterp/PDLToPDLInterp.cpp
    M mlir/lib/Conversion/PDLToPDLInterp/Predicate.h
    M mlir/lib/Conversion/PDLToPDLInterp/PredicateTree.cpp
    M mlir/lib/Dialect/PDL/IR/PDL.cpp
    M mlir/lib/Rewrite/ByteCode.cpp
    M mlir/lib/Tools/PDLL/Parser/Parser.cpp
    M mlir/test/Conversion/PDLToPDLInterp/pdl-to-pdl-interp-matcher.mlir
    A mlir/test/Conversion/PDLToPDLInterp/use-constraint-result.mlir
    M mlir/test/Dialect/PDL/ops.mlir
    M mlir/test/Rewrite/pdl-bytecode.mlir
    M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.cpp
    M mlir/test/lib/Rewrite/TestPDLByteCode.cpp
    M mlir/test/mlir-pdll/Parser/constraint-failure.pdll
    M mlir/test/mlir-pdll/Parser/constraint.pdll
    M mlir/test/python/dialects/pdl_ops.py

  Log Message:
  -----------
  [mlir][PDL] Add support for native constraints with results (#82760)

>From https://reviews.llvm.org/D153245

This adds support for native PDL (and PDLL) C++ constraints to return
results.

This is useful for situations where a pattern checks for certain
constraints of multiple interdependent attributes and computes a new
attribute value based on them. Currently, for such an example it is
required to escape to C++ during matching to perform the check and after
a successful match again escape to native C++ to perform the computation
during the rewriting part of the pattern. With this work we can do the
computation in C++ during matching and use the result in the rewriting
part of the pattern. Effectively this enables a choice in the trade-off
of memory consumption during matching vs recomputation of values.

This is an example of a situation where this is useful: We have two
operations with certain attributes that have interdependent constraints.
For instance `attr_foo: one_of [0, 2, 4, 8], attr_bar: one_of [0, 2, 4,
8]` and `attr_foo == attr_bar`. The pattern should only match if all
conditions are true. The new operation should be created with a new
attribute which is computed from the two matched attributes e.g.
`attr_baz = attr_foo * attr_bar`. For the check we already escape to
native C++ and have all values at hand so it makes sense to directly
compute the new attribute value as well:

```
Constraint checkAndCompute(attr0: Attr, attr1: Attr) -> Attr;

Pattern example with benefit(1) {
    let foo = op<test.foo>() {attr = attr_foo : Attr};
    let bar = op<test.bar>(foo) {attr = attr_bar : Attr};
    let attr_baz = checkAndCompute(attr_foo, attr_bar);
    rewrite bar with {
        let baz = op<test.baz> {attr=attr_baz};
        replace bar with baz;
    };
}
```
To achieve this the following notable changes were necessary:
PDLL:
- Remove check in PDLL parser that prevented native constraints from
returning results

PDL:
- Change PDL definition of pdl.apply_native_constraint to allow variadic
results

PDL_interp:
- Change PDL_interp definition of pdl_interp.apply_constraint to allow
variadic results

PDLToPDLInterp Pass:
The input to the pass is an arbitrary number of PDL patterns. The pass
collects the predicates that are required to match all of the pdl
patterns and establishes an ordering that allows creation of a single
efficient matcher function to match all of them. Values that are matched
and possibly used in the rewriting part of a pattern are represented as
positions. This allows fusion and thus reusing a single position for
multiple matching patterns. Accordingly, we introduce
ConstraintPosition, which records the type and index of the result of
the constraint. The problem is for the corresponding value to be used in
the rewriting part of a pattern it has to be an input to the
pdl_interp.record_match operation, which is generated early during the
pass such that its surrounding block can be referred to by branching
operations. In consequence the value has to be materialized after the
original pdl.apply_native_constraint has been deleted but before we get
the chance to generate the corresponding pdl_interp.apply_constraint
operation. We solve this by emitting a placeholder value when a
ConstraintPosition is evaluated. These placeholder values (due to fusion
there may be multiple for one constraint result) are replaced later when
the actual pdl_interp.apply_constraint operation is created.

Changes since the phabricator review:
- Addressed all comments
- In particular, removed registerConstraintFunctionWithResults and
instead changed registerConstraintFunction so that contraint functions
always have results (empty by default)
- Thus we don't need to reuse `rewriteFunctions` to store constraint
functions with results anymore, and can instead use
`constraintFunctions`
- Perform a stable sort of ConstraintQuestion, so that
ConstraintQuestion appear before other ConstraintQuestion that use their
results.
- Don't create placeholders for pdl_interp::ApplyConstraintOp. Instead
generate the `pdl_interp::ApplyConstraintOp` before generating the
successor block.
- Fixed a test failure in the pdl python bindings


Original code by @martin-luecke

Co-authored-by: martin-luecke <martinpaul.luecke at amd.com>


  Commit: c80e6edba4a9593f0587e27fa0ac825ebe174afd
      https://github.com/llvm/llvm-project/commit/c80e6edba4a9593f0587e27fa0ac825ebe174afd
  Author: Matthias Gehre <matthias.gehre at amd.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/PDL/IR/PDLOps.td
    M mlir/include/mlir/Dialect/PDLInterp/IR/PDLInterpOps.td
    M mlir/include/mlir/IR/PDLPatternMatch.h.inc
    M mlir/lib/Conversion/PDLToPDLInterp/PDLToPDLInterp.cpp
    M mlir/lib/Conversion/PDLToPDLInterp/Predicate.h
    M mlir/lib/Conversion/PDLToPDLInterp/PredicateTree.cpp
    M mlir/lib/Dialect/PDL/IR/PDL.cpp
    M mlir/lib/Rewrite/ByteCode.cpp
    M mlir/lib/Tools/PDLL/Parser/Parser.cpp
    M mlir/test/Conversion/PDLToPDLInterp/pdl-to-pdl-interp-matcher.mlir
    R mlir/test/Conversion/PDLToPDLInterp/use-constraint-result.mlir
    M mlir/test/Dialect/PDL/ops.mlir
    M mlir/test/Rewrite/pdl-bytecode.mlir
    M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.cpp
    M mlir/test/lib/Rewrite/TestPDLByteCode.cpp
    M mlir/test/mlir-pdll/Parser/constraint-failure.pdll
    M mlir/test/mlir-pdll/Parser/constraint.pdll
    M mlir/test/python/dialects/pdl_ops.py

  Log Message:
  -----------
  Revert "[mlir][PDL] Add support for native constraints with results (#82760)"

Due to buildbot failure https://lab.llvm.org/buildbot/#/builders/88/builds/72130

This reverts commit dca32a3b594b3c91f9766a9312b5d82534910fa1.


  Commit: 012b697e7c3633ae17639b086414fd6c02127810
      https://github.com/llvm/llvm-project/commit/012b697e7c3633ae17639b086414fd6c02127810
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/test/Analysis/stream-note.c

  Log Message:
  -----------
  [clang][analyzer] Add StreamChecker note tags for "indeterminate stream position". (#83288)

If a stream operation fails the position can become "indeterminate".
This may cause warning from the checker at a later operation. The new
note tag shows the place where the position becomes "indeterminate",
this is where a failure occurred.


  Commit: 43bcedd1f09134478b7c8582bac86c78e2dbeb28
      https://github.com/llvm/llvm-project/commit/43bcedd1f09134478b7c8582bac86c78e2dbeb28
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.h

  Log Message:
  -----------
  [compiler-rt] fix __sanitizer_siginfo type on freebsd. (#77379)

mostly interested in the first half of the type, adding also compile
time check.


  Commit: 6c39fa9e9f198498ff7cf9646081437a0fc0882a
      https://github.com/llvm/llvm-project/commit/6c39fa9e9f198498ff7cf9646081437a0fc0882a
  Author: Dhruv Chawla (work) <dhruvc at nvidia.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/abs.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Expand abs.v4i8 to v4i16 and abs.v2s16 to v2s32 (#81231)

GISel was currently falling back to SDAG for these functions, and this
matches the way SDAG currently generates code for these functions.


  Commit: 420928b2fa8b00f23f0adcb19328014592455698
      https://github.com/llvm/llvm-project/commit/420928b2fa8b00f23f0adcb19328014592455698
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86CompressEVEX.cpp
    M llvm/test/CodeGen/X86/apx/compress-evex.mir

  Log Message:
  -----------
  [X86][CodeGen] Fix compile crash in EVEX compression for corner case

The base register of OPmi_ND may be allocated to the same physic
register as the ND operand.

OPmi_ND is not compressible b/c it has different semnatic from OPmi.
In this case, `isRedundantNewDataDest` should return false, otherwise
we would get error

Assertion `!IsNDLike && "Missing entry for ND-like instruction"' failed.


  Commit: 128780b06f5bd0e586ee81e1e0e75f63c5664cfc
      https://github.com/llvm/llvm-project/commit/128780b06f5bd0e586ee81e1e0e75f63c5664cfc
  Author: martinboehme <mboehme at google.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
    M clang/lib/Analysis/FlowSensitive/Transfer.cpp
    M clang/unittests/Analysis/FlowSensitive/TestingSupport.h
    M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp

  Log Message:
  -----------
  [clang][dataflow] Correctly treat empty initializer lists for unions. (#82986)

This fixes a crash introduced by
https://github.com/llvm/llvm-project/pull/82348
but also adds additional handling to make sure that we treat empty
initializer
lists for both unions and structs/classes correctly (see tests added in
this
patch).


  Commit: 40c9a01773507e485f35aa76d3e31cf3ea8c3011
      https://github.com/llvm/llvm-project/commit/40c9a01773507e485f35aa76d3e31cf3ea8c3011
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/Context.h

  Log Message:
  -----------
  [clang][Interp][NFC] Add an assertion to classify(Expr*)

NFC but makes the backtrace easier to read in case the expression
somehow ends up being null.


  Commit: ba8e9ace13c3c2dedf5c496455de822cba931862
      https://github.com/llvm/llvm-project/commit/ba8e9ace13c3c2dedf5c496455de822cba931862
  Author: Nick Anderson <nickleus27 at gmail.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
    M llvm/test/CodeGen/AMDGPU/calling-conventions.ll

  Log Message:
  -----------
  [AMDGPU] promote i1 arg type for amdgpu_cs (#82971)

fixes #68087 
Not sure where to put regression tests for this pr? Also, should i1 args
not in reg also be promoted?


  Commit: 4a5ec3cec8316234667897d99fa4ef1b1a132c43
      https://github.com/llvm/llvm-project/commit/4a5ec3cec8316234667897d99fa4ef1b1a132c43
  Author: chuongg3 <chuong.goh at arm.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-select.mir
    M llvm/test/CodeGen/AArch64/shufflevector.ll

  Log Message:
  -----------
  Revert "[AArch64][GlobalISel] Legalize G_SHUFFLE_VECTOR for Odd-Sized Vectors" (#83544)

Reverts llvm/llvm-project#83038 due to failing build in Fuchsia build
https://lab.llvm.org/staging/#/builders/187/builds/1695


  Commit: b051277d5ed8b22fce558272bf3bbbafb95245a5
      https://github.com/llvm/llvm-project/commit/b051277d5ed8b22fce558272bf3bbbafb95245a5
  Author: Pravin Jagtap <prjagtap at amd.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/include/llvm/IR/Intrinsics.td

  Log Message:
  -----------
  Add llvm_v6i32_ty. NFC. (#83522)

Authored-by: Pravin Jagtap <Pravin.Jagtap at amd.com>


  Commit: e81ef463f10851bfbcd56a4f3450821f1e7c862f
      https://github.com/llvm/llvm-project/commit/e81ef463f10851bfbcd56a4f3450821f1e7c862f
  Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/test/CodeGen/attr-target-clones-aarch64.c
    M clang/test/CodeGen/attr-target-version.c
    M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
    M clang/test/CodeGenCXX/attr-target-version.cpp

  Log Message:
  -----------
  [FMV] Use lexicographic order of feature names when mangling. (#83464)

This decouples feature priorities from name mangling. Doing so will
prevent ABI breakages in case we change the feature priorities.
Formalized in ACLE here: https://github.com/ARM-software/acle/pull/303.


  Commit: 990dbf2b7ebb1ddf1a53eb0b25061a0ea42f4ae1
      https://github.com/llvm/llvm-project/commit/990dbf2b7ebb1ddf1a53eb0b25061a0ea42f4ae1
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

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

  Log Message:
  -----------
  [clang][Interp] OpaqueValueExprs can have null subexprs


  Commit: 062d78ef58ac26e1c6f82201151428d0b89cca21
      https://github.com/llvm/llvm-project/commit/062d78ef58ac26e1c6f82201151428d0b89cca21
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M compiler-rt/lib/fuzzer/FuzzerUtilWindows.cpp

  Log Message:
  -----------
  [compiler-rt][fuzzer] windows build unbreak proposal. (#83538)

shuffling the order of its includes.


  Commit: 2a67c28abe8cfde47c5058abbeb4b5ff9a393192
      https://github.com/llvm/llvm-project/commit/2a67c28abe8cfde47c5058abbeb4b5ff9a393192
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/include/llvm/IR/Module.h

  Log Message:
  -----------
  [IR] Update getOrInsertFunction() docs for opaque pointers (NFC)

This can no longer return a bitcast, but the function type in
FunctionCallee may differ from the function type of the function.


  Commit: 6ed67ca14cd05596a8253eeceb247d2743e00f6e
      https://github.com/llvm/llvm-project/commit/6ed67ca14cd05596a8253eeceb247d2743e00f6e
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/lib/CodeGen/Targets/AArch64.cpp

  Log Message:
  -----------
  [clang] Remove unused-lambda-capture in AArch64.cpp (NFC)

llvm-project/clang/lib/CodeGen/Targets/AArch64.cpp:886:26:
error: lambda capture 'TI' is not used [-Werror,-Wunused-lambda-capture]
  886 |   llvm::sort(Features, [&TI](const StringRef LHS, const StringRef RHS) {
      |                         ~^~
1 error generated.


  Commit: ec8df555702d85511290742388d28016b69468de
      https://github.com/llvm/llvm-project/commit/ec8df555702d85511290742388d28016b69468de
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M lldb/test/CMakeLists.txt

  Log Message:
  -----------
  [lldb][test][Windows] Don't check for pexpect with LLDB_ENFORCE_STRICT_TEST_REQUIREMENTS

See https://github.com/llvm/llvm-project/issues/22648 for why we don't use it on
Windows. Any pexpect tests are skipped there.


  Commit: d50dec6f413ce1953bede94bdd11261b6684c7c4
      https://github.com/llvm/llvm-project/commit/d50dec6f413ce1953bede94bdd11261b6684c7c4
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/TargetInfo.h

  Log Message:
  -----------
  Fix MSVC "not all control paths return a value" warnings. NFC.


  Commit: 199bbe2b380b6fa4a23932739ae55f8890af459b
      https://github.com/llvm/llvm-project/commit/199bbe2b380b6fa4a23932739ae55f8890af459b
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp

  Log Message:
  -----------
  [MC] Teach checkAsmTiedOperandConstraints about optional operands (#81381)

At some point in the past, optional operands have become allowed in the
middle of an instruction. However, `checkAsmTiedOperandConstrains`
hasn't been modified to support this. This patch adds the support by
pulling operand offsets counting out of `convertToMCInst` and reusing it
in `checkAsmTiedOperandConstrains`.


  Commit: 195744cca7fd7f1b33971e0f2cf07b8ae47f16b5
      https://github.com/llvm/llvm-project/commit/195744cca7fd7f1b33971e0f2cf07b8ae47f16b5
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
    M mlir/test/Dialect/Linalg/transform-op-peel-and-vectorize.mlir

  Log Message:
  -----------
  [mlir][VectorOps][nfc] Add result pretty printing to `vector.vscale` (#83439)

This will now print the value of `vector.vscale` as `%vscale` in IR
dumps which makes it easier to spot where things are scalable.

One test that depended on the value names has also been fixed.


  Commit: 185b1df1b1f7bd88ff0159bc51d5ddaeca27106a
      https://github.com/llvm/llvm-project/commit/185b1df1b1f7bd88ff0159bc51d5ddaeca27106a
  Author: Pavel Iliin <Pavel.Iliin at arm.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/CodeGen/aarch64-cpu-supports.c
    M clang/test/Misc/warning-flags.c
    M clang/test/Sema/aarch64-cpu-supports.c
    M clang/test/Sema/builtin-cpu-supports.c

  Log Message:
  -----------
  [X86][AArch64][PowerPC] __builtin_cpu_supports accepts unknown options. (#83515)

The patch fixes https://github.com/llvm/llvm-project/issues/83407
modifing __builtin_cpu_supports behaviour so that it returns false if
unsupported features names provided in parameter and issue a warning.
__builtin_cpu_supports is target independent, but currently supported by
X86, AArch64 and PowerPC only.


  Commit: 4c8c335bcdb93e02b1bc08c5dbc7070af9bc91b5
      https://github.com/llvm/llvm-project/commit/4c8c335bcdb93e02b1bc08c5dbc7070af9bc91b5
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td

  Log Message:
  -----------
  [AMDGPU] Rename hasGFX12Enc to hasRestrictedSOffset in BUF definitions. NFC. (#83434)

This just renames a tablegen argument to match the corresponding
subtarget feature.


  Commit: 44c0bdb402271522a17704b4a18c8bf5efb55c4f
      https://github.com/llvm/llvm-project/commit/44c0bdb402271522a17704b4a18c8bf5efb55c4f
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIRIntrinsics.cpp
    M flang/test/HLFIR/all-lowering.fir
    M flang/test/HLFIR/any-lowering.fir
    M flang/test/HLFIR/count-lowering-default-int-kinds.fir
    M flang/test/HLFIR/count-lowering.fir
    M flang/test/HLFIR/dot_product-lowering.fir
    M flang/test/HLFIR/extents-of-shape-of.f90
    M flang/test/HLFIR/matmul-lowering.fir
    M flang/test/HLFIR/maxloc-lowering.fir
    M flang/test/HLFIR/maxval-lowering.fir
    M flang/test/HLFIR/minloc-lowering.fir
    M flang/test/HLFIR/minval-lowering.fir
    M flang/test/HLFIR/mul_transpose.f90
    M flang/test/HLFIR/product-lowering.fir
    M flang/test/HLFIR/sum-lowering.fir
    M flang/test/HLFIR/transpose-lowering.fir
    M flang/test/Lower/convert.f90

  Log Message:
  -----------
  [flang][HLFIR] Use GreedyPatternRewriter in LowerHLFIRIntrinsics (#83438)

In #83253 @matthias-springer pointed out that LowerHLFIRIntrinsics.cpp
should not be using rewrite patterns with the dialect conversion driver.

The intention of this pass is to lower HLFIR intrinsic operations into
FIR so it conceptually fits dialect conversion. However, dialect
conversion is much stricter about changing types when replacing
operations. This pass sometimes looses track of array bounds, resulting
in replacements with operations with different but compatible types
(expressions of the same rank and element types but with or without
compile time known array bounds). This is difficult to accommodate with
the dialect conversion driver and so I have changed to use the greedy
pattern rewriter.

There is a lot of test churn because the greedy pattern rewriter also
performs canonicalization.


  Commit: 4c642b62b99fa128c180f28278637b32be5e5576
      https://github.com/llvm/llvm-project/commit/4c642b62b99fa128c180f28278637b32be5e5576
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/test/ExecutionEngine/JITLink/Generic/sectcreate.test

  Log Message:
  -----------
  [llvm-jitlink] [test] Add an XFAIL for a JITLink test on MinGW

This testcase fails on MinGW targets, because when compiling the
main() function, it gets an implicit call to __main(), which is
missing in this context.


  Commit: d458a1931769aa4bcdb3fcd537c4ee946507ff1a
      https://github.com/llvm/llvm-project/commit/d458a1931769aa4bcdb3fcd537c4ee946507ff1a
  Author: David Green <david.green at arm.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/aes.ll
    M llvm/test/CodeGen/AArch64/misched-fusion-aes.ll

  Log Message:
  -----------
  [AArch64] Mark AESD and AESE instructions as commutative. (#83390)

This come from
https://discourse.llvm.org/t/combining-aes-and-xor-can-be-improved-further/77248.

These instructions start out with:
```
  XOR Vd, Vn
  <some complicated math>
```
The initial XOR means that they can be treated as commutative, removing
some of the unnecessary mov's introduced during register allocation.


  Commit: d1538c15f9c65a70f4650bd724972536f00f5094
      https://github.com/llvm/llvm-project/commit/d1538c15f9c65a70f4650bd724972536f00f5094
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M compiler-rt/lib/fuzzer/FuzzerUtilWindows.cpp

  Log Message:
  -----------
  Revert fuzzer windows changes (#83551)


  Commit: 8511b320807085e88a10ae7275c2255da9d0172a
      https://github.com/llvm/llvm-project/commit/8511b320807085e88a10ae7275c2255da9d0172a
  Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:

  Log Message:
  -----------
  [clang] Remove unused lambda capture. (#83550)

Fixes the `sanitizer-x86_64-linux-android` buildbot.


  Commit: 0e9a102129c07d31dccec06cb45f6e2a74c6e590
      https://github.com/llvm/llvm-project/commit/0e9a102129c07d31dccec06cb45f6e2a74c6e590
  Author: David Green <david.green at arm.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td

  Log Message:
  -----------
  [AArch64] Remove unused AArch64ISD::BIT. NFC

These were last used in the fcopysign lowering, which now uses AArch64ISD::BSP.


  Commit: 2d98d763a8e627b2d1a18a9cdd1c62a4b58be3aa
      https://github.com/llvm/llvm-project/commit/2d98d763a8e627b2d1a18a9cdd1c62a4b58be3aa
  Author: Alexey Bataev <5361294+alexey-bataev at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/crash_clear_undefs.ll
    M llvm/test/Transforms/SLPVectorizer/X86/multi-nodes-to-shuffle.ll

  Log Message:
  -----------
  [SLP]Fix the cost model for extracts combined with later shuffle.

If the buildvector node contains extract, which later should be combined
with some other nodes by shuffling, need to estimate the cost of this
shuffle before building the mask after shuffle.

Reviewers: RKSimon

Reviewed By: RKSimon

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


  Commit: 7ac03e8a369d8ac74a2c4d97a9e2a41221428abd
      https://github.com/llvm/llvm-project/commit/7ac03e8a369d8ac74a2c4d97a9e2a41221428abd
  Author: Marius Brehler <marius.brehler at iml.fraunhofer.de>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    M mlir/test/Dialect/EmitC/ops.mlir
    A mlir/test/Target/Cpp/bitwise_operators.mlir

  Log Message:
  -----------
  [mlir][EmitC] Add bitwise operators (#83387)

This adds operations for bitwise operators. Furthermore, an UnaryOp
class and a helper to print unary operations are introduced.


  Commit: f28c4b4bacfc3fdc66b525b9a959c6b91a29d882
      https://github.com/llvm/llvm-project/commit/f28c4b4bacfc3fdc66b525b9a959c6b91a29d882
  Author: Alexey Bataev <5361294+alexey-bataev at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
    M llvm/test/Transforms/SLPVectorizer/X86/split-load8_2-unord.ll

  Log Message:
  -----------
  [SLP]Fix/improve potential masked gather loads analysis.

When do the analysis for the (potential) masked gather node, we check
that not greater than half of  the pointer operands are loop invariants
or potentially vectorizable.
Need to check actually, that we have a loop at first
and do better check for the potentially vectorizable
pointers.

Reviewers: RKSimon

Reviewed By: RKSimon

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


  Commit: 756166e342a3692fd8de1ad1c5620df516bac33a
      https://github.com/llvm/llvm-project/commit/756166e342a3692fd8de1ad1c5620df516bac33a
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.h
    A llvm/test/CodeGen/AMDGPU/codegen-prepare-addrspacecast-non-null-vector.ll
    A llvm/test/CodeGen/AMDGPU/codegen-prepare-addrspacecast-non-null.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.addrspacecast.nonnull.ll

  Log Message:
  -----------
  [AMDGPU] Improve detection of non-null addrspacecast operands (#82311)

Use IR analysis to infer when an addrspacecast operand is nonnull, then
lower it to an intrinsic that the DAG can use to skip the null check.

I did this using an intrinsic as it's non-intrusive. An alternative
would have been to allow something like `!nonnull` on `addrspacecast`
then lower that to a custom opcode (or add an operand to the
addrspacecast MIR/DAG opcodes), but it's a lot of boilerplate for just
one target's use case IMO.

I'm hoping that when we switch to GISel that we can move all this logic
to the MIR level without losing info, but currently the DAG doesn't see
enough so we need to act in CGP.

Fixes: SWDEV-316445


  Commit: b8e0f3e81e579ea6db439d39ced3926d6ae4f563
      https://github.com/llvm/llvm-project/commit/b8e0f3e81e579ea6db439d39ced3926d6ae4f563
  Author: Alfie Richards <156316945+AlfieRichardsArm at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp

  Log Message:
  -----------
  [ARM] Change the type of CC and VCC code in `splitMnemonic`. (#83413)

This changes the type of `PredicationCode` and `VPTPredicationCode` from
`unsigned` to `ARMCC::CondCodes` and `ARMVCC::VPTCodes` resp' for
clarity and correctness.


  Commit: 924ad198f52508ff19e7944d856ba1a2fca81961
      https://github.com/llvm/llvm-project/commit/924ad198f52508ff19e7944d856ba1a2fca81961
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrCompiler.td
    M llvm/test/CodeGen/X86/apx/sub.ll

  Log Message:
  -----------
  [X86][CodeGen] Add missing patterns for APX NDD instructions about encoding trick


  Commit: dfec4ef1a2ff8dc6685594813bcf14c27db9d5bc
      https://github.com/llvm/llvm-project/commit/dfec4ef1a2ff8dc6685594813bcf14c27db9d5bc
  Author: Martin Wehking <martin.wehking at codeplay.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

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

  Log Message:
  -----------
  Use object directly instead of accessing ArrayRef (#83263)

Use RegOp directly inside debug code to silence a static analyzer that
warns about accessing it through its ArrayRef wrapper.


  Commit: b873847a53ae638e2146e3657fe33efe30c2afe1
      https://github.com/llvm/llvm-project/commit/b873847a53ae638e2146e3657fe33efe30c2afe1
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/test/Preprocessor/has_attribute.cpp
    M clang/test/SemaCXX/attr-declspec-ignored.cpp
    M clang/test/SemaCXX/attr-gnu.cpp
    A clang/test/SemaCXX/cxx03-cxx11-attr.cpp
    M clang/utils/TableGen/ClangAttrEmitter.cpp

  Log Message:
  -----------
  [Clang] Fix __has_cpp_attribute and C++11 attributes with arguments in C++03 (#83065)

The values for `__has_cpp_attribute` don't have to be guarded behind
`LangOpts.CPlusPlus` because `__has_cpp_attribute` isn't available if
Clang isn't in a C++ mode.

Fixes #82995


  Commit: 3034632a2708f3b79aa30f895dc42f35569c3647
      https://github.com/llvm/llvm-project/commit/3034632a2708f3b79aa30f895dc42f35569c3647
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-readobj.rst
    M llvm/test/tools/llvm-readobj/XCOFF/loader-section-relocation.test
    M llvm/test/tools/llvm-readobj/XCOFF/loader-section-symbol.test
    M llvm/test/tools/llvm-readobj/XCOFF/relocations.test
    M llvm/test/tools/llvm-readobj/XCOFF/symbols.test
    M llvm/tools/llvm-readobj/XCOFFDumper.cpp

  Log Message:
  -----------
  [llvm-readobj] enable demangle option for the xcoff object file (#78455)

enable `--demangle` option for the xcoff object file for llvm-readobj


  Commit: 18d2ff4be7898eaf666564dcca07ad6bd38ababf
      https://github.com/llvm/llvm-project/commit/18d2ff4be7898eaf666564dcca07ad6bd38ababf
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

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

  Log Message:
  -----------
  [clang][Interp] Allow recursive intepretation

This shouldn't be a problem in general, but we used to have some
sanity checks that prevented it from working. Remove those and
only do them on the non-recursive calls instead.


  Commit: dbf3d779bdb3cc22652b6ab24ac9827e9f228f4e
      https://github.com/llvm/llvm-project/commit/dbf3d779bdb3cc22652b6ab24ac9827e9f228f4e
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/Context.cpp
    M clang/lib/AST/Interp/EvalEmitter.cpp
    M clang/lib/AST/Interp/EvalEmitter.h

  Log Message:
  -----------
  [clang][Interp][NFC] Remove unused paramter

We manage the Result through EvaluationResult now.


  Commit: 765a5d62bc59971d267a9effee2bfc0cee036182
      https://github.com/llvm/llvm-project/commit/765a5d62bc59971d267a9effee2bfc0cee036182
  Author: Simon Pilgrim <RKSimon at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-popcnt-128-ult-ugt.ll

  Log Message:
  -----------
  [X86] Pre-SSE42 v2i64 sgt lowering - check if representable as v2i32 (#83560)

Without PCMPGTQ, if the i64 elements are sign-extended enough to be representable as i32 then we can compare the lower i32 bits with PCMPGTD and splat the results into the upper elements.

Value tracking has meant we already get pretty close with this, but this allows us to remove a lot of unnecessary bit flipping.


  Commit: 6ecd26132bbb92cceeb92524bf880bd11a2d3033
      https://github.com/llvm/llvm-project/commit/6ecd26132bbb92cceeb92524bf880bd11a2d3033
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

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

  Log Message:
  -----------
  [SLP] Use ScopeExit to update Operands/PrevDist on all paths. (NFC) (#83490)

Use ScopeExit to make sure Operands/PrevDist are updated on all paths in
the loop. This makes it easier to ensure they are updated correctly if
new early continues are added.

Split off from https://github.com/llvm/llvm-project/pull/83283

PR: https://github.com/llvm/llvm-project/pull/83490


  Commit: 5bafb8d95220895ca76742db297cbb75dc0fa162
      https://github.com/llvm/llvm-project/commit/5bafb8d95220895ca76742db297cbb75dc0fa162
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

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

  Log Message:
  -----------
  [SLP][NFC]Add/use single UsesLimit constant, NFC.


  Commit: 3fc277f665f520c351b203faf3273552e77508f8
      https://github.com/llvm/llvm-project/commit/3fc277f665f520c351b203faf3273552e77508f8
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

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

  Log Message:
  -----------
  [SLPVectorizer] Make the insert/extractvector PHICompare a strict-weak ordering (#83571)

This was tripping off STL implementations that check for it (like libc++
with debug checking). The goal of this sort is to cluster operations on
the same values so preserve that property but sort everything else based
on the existing numbering.


  Commit: e59681d96327e2ed1963ec1c0f2bc3d40df26443
      https://github.com/llvm/llvm-project/commit/e59681d96327e2ed1963ec1c0f2bc3d40df26443
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

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

  Log Message:
  -----------
  [clang][Interp] Allow inc/dec on boolean values

The warnings or errors are emitted in Sema, but we still need to
do the operation and provide a reasonable result.


  Commit: f651f134bbaec069968f6b12bdcdb5f7752fd700
      https://github.com/llvm/llvm-project/commit/f651f134bbaec069968f6b12bdcdb5f7752fd700
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

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

  Log Message:
  -----------
  [clang][Interp][NFC] Add precondition assertions

All three of these need to be non-null.


  Commit: f15d799f16092918b948536775475dfd8675c7d9
      https://github.com/llvm/llvm-project/commit/f15d799f16092918b948536775475dfd8675c7d9
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/test/AST/Interp/functions.cpp

  Log Message:
  -----------
  [clang][Interp] Fix variadic operator calls

Operator calls pass their instance member explicitly, so remove
it from NumParams when calling a variadic function


  Commit: b0181be36cace3460e4ec5d0d11ecbf49484cc55
      https://github.com/llvm/llvm-project/commit/b0181be36cace3460e4ec5d0d11ecbf49484cc55
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/include/clang/Sema/Scope.h
    M clang/lib/Sema/SemaStmt.cpp
    M clang/test/SemaOpenACC/no-branch-in-out.c
    M clang/test/SemaOpenACC/no-branch-in-out.cpp

  Log Message:
  -----------
  [OpenACC] Implement Duffs-Device restriction for Compute Constructs (#83460)

Like the last few patches, branching in/out of a compute construct is
not valid. This patch implements checking to ensure that a 'case' or
'default' statement cannot jump into a Compute Construct (in the style
of a duff's device!).


  Commit: a038f9758e02812803b7efce10ecf784f9842bbb
      https://github.com/llvm/llvm-project/commit/a038f9758e02812803b7efce10ecf784f9842bbb
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/Interp.h
    M clang/test/SemaCXX/undefined-internal.cpp

  Log Message:
  -----------
  [clang][Interp] Fix virtual calls with reference instance pointers

getCXXRecordType() on those types does not return the type we need.
Use getPointeeCXXRecordType() instead in those cases.


  Commit: 06bd74ba4ac5229f01b64772b49e025be5eb7b53
      https://github.com/llvm/llvm-project/commit/06bd74ba4ac5229f01b64772b49e025be5eb7b53
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaTemplate.cpp
    A clang/test/SemaCXX/GH83461.cpp

  Log Message:
  -----------
  Fix implementation of [temp.param]p14's first sentence. (#83487)

The first sentence says:

If a template-parameter of a class template, variable template, or alias
template has a default template-argument, each subsequent
template-parameter shall either have a default template-argument
supplied or be a template parameter pack.

However, we were only testing for "not a function function template",
and referring to an older version of the standard. As far as I can tell,
CWG2032 added the variable-template, and the alias-template pre-dates
the standard on github.

This patch started as a bug fix for #83461 , but ended up fixing a
number of similar cases, so those are validated as well.


  Commit: 601a9587a1a7eb8dd6377c4ab332edd3bce97a98
      https://github.com/llvm/llvm-project/commit/601a9587a1a7eb8dd6377c4ab332edd3bce97a98
  Author: Mats Petersson <mats.petersson at arm.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/docs/Directives.md
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/lib/Parser/Fortran-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    A flang/test/Parser/assume-aligned.f90

  Log Message:
  -----------
  [Flang] Add support for assume_aligned directive (#81747)

This adds the parsing (and unparse) of the compiler drective assume_aligned.

The compiler will issue a warning that the directive is ignored.


  Commit: 2b4d67bf59d609321701540a15f48eda04688652
      https://github.com/llvm/llvm-project/commit/2b4d67bf59d609321701540a15f48eda04688652
  Author: Vinayak Dev <104419489+vinayakdsci at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/SemaCXX/warn-unused-variables.cpp

  Log Message:
  -----------
  [Clang][Sema]: Allow copy constructor side effects (#81127)

Copy constructors can have initialization with side effects, and thus
clang should not emit a warning when -Wunused-variable is used in this
context. Currently however, a warning is emitted.

Now, compilation happens without warnings.

Fixes #79518


  Commit: b92c3fe0274f3ba3bb7c58a8529bd9c4303a3b51
      https://github.com/llvm/llvm-project/commit/b92c3fe0274f3ba3bb7c58a8529bd9c4303a3b51
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/test/Driver/openmp-offload-gpu.c

  Log Message:
  -----------
  [OpenMP] Fix test after updating library search paths (#83573)

Summary:
We still use this bitcode library in one case, the NVPTX non-LTO build.
The patch updated the search paths to treat it the same as other
libraries, which unintentionally prioritized system paths over
LIBRARY_PATH which is generally not correct. Also we had a test that
relied on system state so remove that.


  Commit: 92fe6c61f900d6479f7ab708784c9e62d7523768
      https://github.com/llvm/llvm-project/commit/92fe6c61f900d6479f7ab708784c9e62d7523768
  Author: Martin Wehking <martin.wehking at codeplay.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUGenRegisterBankInfo.def

  Log Message:
  -----------
  Silence illegal address computation warning (#83244)

Add an assertion before an access of ValMappings to ensure that it is
within the array bounds.
Silence a static analyzer warning through this.


  Commit: 8fa33013de5d2c47da93083642cf9f655a3d9722
      https://github.com/llvm/llvm-project/commit/8fa33013de5d2c47da93083642cf9f655a3d9722
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M lldb/include/lldb/Interpreter/CommandOptionArgumentTable.h
    M lldb/include/lldb/lldb-private-enumerations.h
    M lldb/source/Symbol/Symtab.cpp
    A lldb/test/Shell/SymbolFile/Breakpad/symtab-sorted-by-size.test

  Log Message:
  -----------
  [lldb] Add support for sorting by size to `target module dump symtab` (#83527)

This patch adds support to sort the symbol table by size. The command
already supports sorting and it already reports sizes. Sorting by size
helps diagnosing size issues.

rdar://123788375


  Commit: 8f65e7b917c580d1b58b024db6fc889cbcd964c7
      https://github.com/llvm/llvm-project/commit/8f65e7b917c580d1b58b024db6fc889cbcd964c7
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/include/llvm/IR/DIBuilder.h
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/DIBuilder.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/IR/DebugInfoMetadata.cpp
    M llvm/lib/IR/LLVMContextImpl.h
    M llvm/lib/IR/Verifier.cpp
    M llvm/test/Assembler/debug-info.ll
    A llvm/test/DebugInfo/AArch64/ptrauth.ll
    M llvm/unittests/IR/MetadataTest.cpp
    M mlir/lib/Target/LLVMIR/DebugTranslation.cpp

  Log Message:
  -----------
  [Dwarf] Support `__ptrauth` qualifier in metadata nodes (#82363)

Emit `__ptrauth`-qualified types as `DIDerivedType` metadata nodes in IR
with tag `DW_TAG_LLVM_ptrauth_type`, baseType referring to the type
which has the qualifier applied, and the following parameters
representing the signing schema:

- `ptrAuthKey` (integer)
- `ptrAuthIsAddressDiscriminated` (boolean)
- `ptrAuthExtraDiscriminator` (integer)
- `ptrAuthIsaPointer` (boolean)
- `ptrAuthAuthenticatesNullValues` (boolean)

Co-authored-by: Ahmed Bougacha <ahmed at bougacha.org>


  Commit: 18d0d9b9b2e99ba1d22b9c7c3352f5f9df978d2c
      https://github.com/llvm/llvm-project/commit/18d0d9b9b2e99ba1d22b9c7c3352f5f9df978d2c
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M libc/CMakeLists.txt
    M libc/lib/CMakeLists.txt

  Log Message:
  -----------
  [libc] Update install directory for offloading versions of libraries (#83592)

Summary:
These currently go to `lib/`, but if the user has `lib/<triple>` they
should go there because it's always searched first.


  Commit: 64216ba1e427fab1ee38ef9492d3fbca907606b9
      https://github.com/llvm/llvm-project/commit/64216ba1e427fab1ee38ef9492d3fbca907606b9
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/SemaCXX/warn-bool-conversion.cpp

  Log Message:
  -----------
  [Sema] -Wpointer-bool-conversion: suppress lambda function pointer conversion diagnostic during instantiation (#83497)

I have seen two internal pieces of code that uses a template type
parameter to accept any callable type (function pointer, std::function,
closure type, etc). The diagnostic added in #83152 would require
adaptation to the template, which is difficult and also seems
unnecessary. Example:

```cpp
template <typename... Ts>
static bool IsFalse(const Ts&...) { return false; }

template <typename T, typename... Ts,
          typename = typename std::enable_if<std::is_constructible<bool, const T&>::value>::type>
static bool IsFalse(const T& p, const Ts&...) {
  return p ? false : true;
}

template <typename... Args>
void Init(Args&&... args) {
  if (IsFalse(absl::implicit_cast<const typename std::decay<Args>::type&>(
              args)...)) {
    // A callable object convertible to false is either a null pointer or a
    // null functor (e.g., a default-constructed std::function).
    empty_ = true;
  } else {
    empty_ = false;
    new (&factory_) Factory(std::forward<Args>(args)...);
  }
}
```


  Commit: 68516bfd2f086736dfd88374a11017276e61ad3d
      https://github.com/llvm/llvm-project/commit/68516bfd2f086736dfd88374a11017276e61ad3d
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeEmitter.cpp
    M clang/lib/AST/Interp/ByteCodeEmitter.h
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/EvalEmitter.h
    M clang/test/AST/Interp/lambda.cpp

  Log Message:
  -----------
  [clang][Interp] Lambda This captures can be non-pointers

If they are captured by value.


  Commit: 0813b90ff5d195d8a40c280f6b745f1cc43e087a
      https://github.com/llvm/llvm-project/commit/0813b90ff5d195d8a40c280f6b745f1cc43e087a
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/TypePromotion.cpp
    M llvm/test/CodeGen/AArch64/and-mask-removal.ll
    M llvm/test/CodeGen/AArch64/signed-truncation-check.ll
    M llvm/test/CodeGen/AArch64/typepromotion-overflow.ll
    M llvm/test/CodeGen/RISCV/typepromotion-overflow.ll
    M llvm/test/Transforms/TypePromotion/ARM/icmps.ll
    M llvm/test/Transforms/TypePromotion/ARM/wrapping.ll

  Log Message:
  -----------
  [TypePromotion] Support positive addition amounts in isSafeWrap. (#81690)

We can support these by changing the sext promotion to -zext(-C) and
replacing a sgt check with ugt. Reframing the logic in terms of how the
unsigned range are affected. More comments in the patch.

The new cases check isLegalAddImmediate to avoid some
regressions in lit tests.


  Commit: f6f79d46e580b34b2c98bd9bda7ede3a38f43f77
      https://github.com/llvm/llvm-project/commit/f6f79d46e580b34b2c98bd9bda7ede3a38f43f77
  Author: Kirill Stoimenov <kstoimenov at google.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    R llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out-no-ps.ll
    R llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out.ll

  Log Message:
  -----------
  Revert "[HWASAN] Implement selective instrumentation based on profiling information (#83503)"

Broke a build bot: https://lab.llvm.org/buildbot/#/builders/124/builds/9846

This reverts commit e7c3cd245665042bbae163f7280aceed35f0fee5.


  Commit: 53f89a0bb7695ef2f7a34472b0e6799122896ae4
      https://github.com/llvm/llvm-project/commit/53f89a0bb7695ef2f7a34472b0e6799122896ae4
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/BUFInstructions.td
    M llvm/lib/Target/AMDGPU/DSInstructions.td
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SMInstructions.td

  Log Message:
  -----------
  [AMDGPU] Remove AtomicNoRet class and getAtomicNoRetOp table (#83593)


  Commit: b542501ad7020bc03437e0c5b12b3e89c05c05af
      https://github.com/llvm/llvm-project/commit/b542501ad7020bc03437e0c5b12b3e89c05c05af
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    A clang/test/CodeGenHLSL/builtins/round.hlsl
    A clang/test/SemaHLSL/BuiltIns/round-errors.hlsl
    M llvm/lib/Target/DirectX/DXIL.td
    A llvm/test/CodeGen/DirectX/round.ll

  Log Message:
  -----------
  [HLSL][DXIL] Implementation of round intrinsic (#83570)

hlsl_intrinsics.h - add the round  api
DXIL.td add the llvm intrinsic to DXIL lowering mapping 
This change reuses llvm's existing intrinsic
`__builtin_elementwise_round`\ `int_round`
This change implements: #70077


  Commit: ae58b676f1716b381b1232d47ed308f3eec590fc
      https://github.com/llvm/llvm-project/commit/ae58b676f1716b381b1232d47ed308f3eec590fc
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp

  Log Message:
  -----------
  [flang] Fixed ieee_logb to behave for denormals. (#83518)

For denormals we have to account for the exponent coming
from the significand.


  Commit: 3337d693735d6a361cde87de82624d89ca9660f1
      https://github.com/llvm/llvm-project/commit/3337d693735d6a361cde87de82624d89ca9660f1
  Author: Francesco Petrogalli <francesco.petrogalli at apple.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/include/llvm/IR/Intrinsics.td

  Log Message:
  -----------
  [llvm][Intrinsics] Add llvm_v3i8_ty. [NFCI] (#83576)


  Commit: ce95a56db552fde4836d71992b2c42cadd0088c8
      https://github.com/llvm/llvm-project/commit/ce95a56db552fde4836d71992b2c42cadd0088c8
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp

  Log Message:
  -----------
  [pgo][nfc] Model `Count` as a `std::optional` in `PGOUseEdge` (#83505)

Similar to PR #83364.


  Commit: df0fd3a80e964a4b28b2c1b6a8f139b3b4e14ffa
      https://github.com/llvm/llvm-project/commit/df0fd3a80e964a4b28b2c1b6a8f139b3b4e14ffa
  Author: Alexey Bataev <5361294+alexey-bataev at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
    M llvm/test/Transforms/SLPVectorizer/X86/PR39774.ll
    M llvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-transpose.ll

  Log Message:
  -----------
  [SLP]Try to vectorize small graph with extractelements, used in buildvector.

If the graph incudes only single "gather" node with only
extractelements/undefs, which used only in insertelement-based
buildvector sequences, it still might be profitable to vectorize it.
Need to rely on the cost model, not throw this graph away immediately.

Reviewers: RKSimon

Reviewed By: RKSimon

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


  Commit: e741d889f481f6d49562f7b513cf1709e3ddf952
      https://github.com/llvm/llvm-project/commit/e741d889f481f6d49562f7b513cf1709e3ddf952
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXIL.td
    A llvm/test/CodeGen/DirectX/frac.ll

  Log Message:
  -----------
  [DXIL] Add frac unary lowering (#83465)

This change adds lowering for HLSL's frac intrinsic to DXIL.

This change should complete #70099


  Commit: 84927a6728109ad01ee87b12f42f403756c0f2c3
      https://github.com/llvm/llvm-project/commit/84927a6728109ad01ee87b12f42f403756c0f2c3
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/FLATInstructions.td

  Log Message:
  -----------
  AMDGPU: Simplify instruction definitions for global_load_tr_b64(b128) (#83601)

WaveSizePredicate is copied from pseudo to real


  Commit: dd426fa5f931f98251bfb3dbd29ecb06e4ce8d46
      https://github.com/llvm/llvm-project/commit/dd426fa5f931f98251bfb3dbd29ecb06e4ce8d46
  Author: sylvain-audi <62035306+sylvain-audi at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    A llvm/test/Instrumentation/AddressSanitizer/asan-funclet.ll

  Log Message:
  -----------
  [Asan] Pre-commit test for asan support of funclet token (#82631)

This is in preparation for PR
https://github.com/llvm/llvm-project/pull/82533.

Here we Introduce a test for asan instrumentation where invalid code is
output (see bug https://github.com/llvm/llvm-project/issues/64990)
The `CHECK` lines are generated using `update_test_checks.py` script.
The actual fix PR will udpate this test to highlight the changes in the
generated code.


  Commit: 3a30d8e9e59c152caec7abc5cf5437b21cac428e
      https://github.com/llvm/llvm-project/commit/3a30d8e9e59c152caec7abc5cf5437b21cac428e
  Author: Alexey Bataev <5361294+alexey-bataev at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/scatter-vectorize-reused-pointer.ll

  Log Message:
  -----------
  [SLP]Check if masked gather can be emitted as a serie of loads/insert subvector.

Masked gather is very expensive operation and sometimes better to
represent it as a serie of consecutive/strided loads + insertsubvectors
sequences. Patch adds some basic estimation and if loads+insertsubvector
is cheaper, decides to represent it in this way rather than masked
gather.

Reviewers: RKSimon

Reviewed By: RKSimon

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


  Commit: 137ed17016757a6caea9db70ee6408dc3e2f6232
      https://github.com/llvm/llvm-project/commit/137ed17016757a6caea9db70ee6408dc3e2f6232
  Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M lldb/include/lldb/Core/Debugger.h
    M lldb/include/lldb/Core/Progress.h
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Core/Progress.cpp
    M lldb/unittests/Core/ProgressReportTest.cpp

  Log Message:
  -----------
  [lldb][progress] Hook up new broadcast bit and progress manager (#83069)

This commit adds the functionality to broadcast events using the
`Debugger::eBroadcastProgressCategory`
bit (https://github.com/llvm/llvm-project/pull/81169) by keeping track
of these reports with the `ProgressManager`
class (https://github.com/llvm/llvm-project/pull/81319). The new bit is
used in such a way that it will only broadcast the initial and final
progress reports for specific progress categories that are managed by
the progress manager.

This commit also adds a new test to the progress report unit test that
checks that only the initial/final reports are broadcasted when using
the new bit.


  Commit: 2ab6d1e18e120430fbf454a074c52fa054e08537
      https://github.com/llvm/llvm-project/commit/2ab6d1e18e120430fbf454a074c52fa054e08537
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

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

  Log Message:
  -----------
  [SLP][NFC]Move some check to the outer if to simplify inner checks.


  Commit: 00570c36a3a982f9cf8b30f366a07e6c70014383
      https://github.com/llvm/llvm-project/commit/00570c36a3a982f9cf8b30f366a07e6c70014383
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M libc/src/math/amdgpu/CMakeLists.txt
    M libc/src/math/amdgpu/exp.cpp
    M libc/src/math/amdgpu/expf.cpp
    R libc/src/math/amdgpu/llround.cpp
    R libc/src/math/amdgpu/llroundf.cpp
    R libc/src/math/amdgpu/lround.cpp
    R libc/src/math/amdgpu/lroundf.cpp
    M libc/src/math/nvptx/CMakeLists.txt
    R libc/src/math/nvptx/llround.cpp
    R libc/src/math/nvptx/llroundf.cpp
    R libc/src/math/nvptx/lround.cpp
    R libc/src/math/nvptx/lroundf.cpp

  Log Message:
  -----------
  [libc] Fix incorrectly enabled GPU math functions (#83594)

Summary:
These functions were implemented via builtins that aren't acually
supported. See https://godbolt.org/z/Wq6q6T1za. This caused the build to
crash if they were included. Remove these and replace with correct
implementations.


  Commit: af009451ec439593554f03bc714e46ad2cd41738
      https://github.com/llvm/llvm-project/commit/af009451ec439593554f03bc714e46ad2cd41738
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M lldb/source/Commands/CommandObjectThread.cpp
    M lldb/source/Commands/Options.td
    A lldb/test/Shell/Commands/command-thread-backtrace.test

  Log Message:
  -----------
  [lldb] Fix `thread backtrace --count` (#83602)

The help output for `thread backtrace` specifies that you can pass -1 to
`--count` to display all the frames.

```
-c <count> ( --count <count> )
            How many frames to display (-1 for all)
```

However, that doesn't work:

```
(lldb) thread backtrace --count -1
error: invalid integer value for option 'c'
```

The problem is that we store the option value as an unsigned and the
code to parse the string correctly rejects it. There's two ways to fix
this:

1. Make `m_count` a signed value so that it accepts negative values and
appease the parser. The function that prints the frames takes an
unsigned so a negative value will just become a really large positive
value, which is what the current implementation relies on.
2. Keep `m_count` unsigned and instead use 0 the magic value to show all
frames. I don't really see a point in not showing any frames at all,
plus that's already broken (`error: error displaying backtrace for
thread: "0x0001"`).

This patch implements (2) and at the same time improve the error
reporting so that we print the invalid value when we cannot parse it.

rdar://123881767


  Commit: 4a3f7e798a31072a80a0731b8fb1da21b9c626ed
      https://github.com/llvm/llvm-project/commit/4a3f7e798a31072a80a0731b8fb1da21b9c626ed
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

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

  Log Message:
  -----------
  [ELF] Internalize enum

g++ -flto has a diagnostic `-Wodr` about mismatched redeclarations,
which even apply to `enum`.

Fix #83529

Reviewers: thesamesam

Reviewed By: thesamesam

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


  Commit: 582718fe61a61001aa957d515dbd094df93dae81
      https://github.com/llvm/llvm-project/commit/582718fe61a61001aa957d515dbd094df93dae81
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/cmp-shiftX-maskX.ll

  Log Message:
  -----------
  [X86] cmp-shiftX-maskX.ll - add AVX1 test coverage


  Commit: 1e8d3c357e1fd79bf3a641767d95147a8c0f54bd
      https://github.com/llvm/llvm-project/commit/1e8d3c357e1fd79bf3a641767d95147a8c0f54bd
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/cmp-shiftX-maskX.ll

  Log Message:
  -----------
  [X86] cmp-shiftX-maskX.ll - add additional tests for #83596

Shows cases where logical shifts of allsignbits values can be profitably converted to masks


  Commit: fcdf818a7779871990214cc1035bb2c36426f459
      https://github.com/llvm/llvm-project/commit/fcdf818a7779871990214cc1035bb2c36426f459
  Author: Simon Pilgrim <RKSimon at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Support/KnownBits.h
    M llvm/lib/Support/KnownBits.cpp
    M llvm/unittests/Support/KnownBitsTest.cpp

  Log Message:
  -----------
  [KnownBits] Add KnownBits::absdiff to compute the absolute difference of 2 unsigned values (#82354)

Equivalent to "umax(A, B) - umin(A, B)"

This is just an initial correctness implementation, hopefully we can make this optimal in the future.


  Commit: 09ffd3390852b046369405cf29b3a7ae424bfaa5
      https://github.com/llvm/llvm-project/commit/09ffd3390852b046369405cf29b3a7ae424bfaa5
  Author: yelleyee <22870466+yelleyee at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Support/VirtualFileSystem.h

  Log Message:
  -----------
  [llvm][vfs] Remove blank comment after \endverbatim doxygen command (#83240)

Blank comment line afer \endverbatim malfunctions the doxygen parser.
  Check the "Detailed Description" section on
https://llvm.org/doxygen/classllvm_1_1vfs_1_1RedirectingFileSystem.html


Screenshot is attached below


![image](https://github.com/llvm/llvm-project/assets/22870466/35fc2444-d2f4-4638-990e-241cc14d0986)


  Commit: 6fe60bd89fc72398795de6ee2a6120b8af44a977
      https://github.com/llvm/llvm-project/commit/6fe60bd89fc72398795de6ee2a6120b8af44a977
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

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

  Log Message:
  -----------
  [SLP] Exit early if MaxVF < MinVF (NFCI). (#83283)

Exit early if MaxVF < MinVF. In that case, the loop body below will
never get entered. Note that this adjusts the condition from MaxVF <=
MinVF. If MaxVF == MinVF, vectorization may still be feasible (and the
loop below gets entered).

PR: https://github.com/llvm/llvm-project/pull/83283


  Commit: a490bbf5391de358ad400a23ae8e9ed494e5004e
      https://github.com/llvm/llvm-project/commit/a490bbf5391de358ad400a23ae8e9ed494e5004e
  Author: Michael Liao <michael.hliao at gmail.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/M68k/pipeline.ll

  Log Message:
  -----------
  [M68k] Fix compilation pipeline check

- Add 'Init Undef Pass', which is target-independent now.


  Commit: 1a0c988ebddd83bd34393a1500b5f3ce80888fbc
      https://github.com/llvm/llvm-project/commit/1a0c988ebddd83bd34393a1500b5f3ce80888fbc
  Author: Hui <hui.xie0621 at gmail.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M libcxx/include/__atomic/atomic_sync.h

  Log Message:
  -----------
  [libc++][NFC] rename variable in atomic_sync

As discussed in https://github.com/llvm/llvm-project/pull/81427/files#r1509266817
rename the variable as a separate commit


  Commit: 1685e7fdab3f1b3fc654f7c93219594532becb81
      https://github.com/llvm/llvm-project/commit/1685e7fdab3f1b3fc654f7c93219594532becb81
  Author: Fabian Schiebel <52407375+fabianbs96 at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Support/ErrorHandling.cpp
    M llvm/unittests/Support/ErrorTest.cpp

  Log Message:
  -----------
  [Support] Fix crash in install_bad_alloc_error_handler (#83160)

Previously, the function `install_bad_alloc_error_handler` was asserting that a bad_alloc error handler was not already installed. However, it was actually checking for the fatal-error handler, not for the bad_alloc error handler, causing an assertion failure if a fatal-error handler was already installed.

Fixes #83040


  Commit: 7b0b64a7016d67d6d8c538fe406a2ffd93c11602
      https://github.com/llvm/llvm-project/commit/7b0b64a7016d67d6d8c538fe406a2ffd93c11602
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

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

  Log Message:
  -----------
  [DWARF] Use std::tie after #83047. NFC

The code suggestion was neglected when the patch landed.


  Commit: 214f8972793ccc2e062ca56c04d93e799d4c17eb
      https://github.com/llvm/llvm-project/commit/214f8972793ccc2e062ca56c04d93e799d4c17eb
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/unittests/Support/KnownBitsTest.cpp

  Log Message:
  -----------
  [unittest] Fix -Wsign-compare warnings in KnownBits.cpp after #82354


  Commit: ebaf26dabec00c32177cd4fa47f3bf5902b194b7
      https://github.com/llvm/llvm-project/commit/ebaf26dabec00c32177cd4fa47f3bf5902b194b7
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M lldb/source/Commands/CommandObjectThread.cpp

  Log Message:
  -----------
  [lldb] Fix -Wformat after #83602


  Commit: 617398e5e28665ca49810ff5db684292f4b2eb1f
      https://github.com/llvm/llvm-project/commit/617398e5e28665ca49810ff5db684292f4b2eb1f
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

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

  Log Message:
  -----------
  [SLP] Collect candidate VFs in vector in vectorizeStores (NFC). (#82793)

This is in preparation for
https://github.com/llvm/llvm-project/pull/77790 and makes it easy to add
other, non-power-of-2 VFs for processing.

PR: https://github.com/llvm/llvm-project/pull/82793


  Commit: 76ce3c1bcf82056a61bcbdf776f67ac53d881df0
      https://github.com/llvm/llvm-project/commit/76ce3c1bcf82056a61bcbdf776f67ac53d881df0
  Author: rayroudc <rayroudc at gmail.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] Enable again some operator tests (#83380)

Multiple formatting operator tests are commented. This change enables
them again.

[PR506629](https://llvm.org/PR50629) fixed by
[D153798](https://reviews.llvm.org/D153798).

Tests in `ConfigurableSpaceBeforeParens` have the same behavior as
before [D110833](https://reviews.llvm.org/D110833).

Update the test for function declaration and definition, as changed in
[D114696](https://reviews.llvm.org/D114696).


  Commit: d01576bb6033865c20a4c0da581939dcae5b30be
      https://github.com/llvm/llvm-project/commit/d01576bb6033865c20a4c0da581939dcae5b30be
  Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/test/CodeGen/attr-target-version.c
    M clang/test/Driver/aarch64-rdm.c
    M clang/test/Sema/attr-target-clones-aarch64.c
    M clang/test/SemaCXX/attr-target-version.cpp
    M llvm/include/llvm/TargetParser/AArch64TargetParser.h
    M llvm/lib/TargetParser/AArch64TargetParser.cpp

  Log Message:
  -----------
  [TargetParser][AArch64] Add alias for FEAT_RDM. (#80540)

This patch allows using the name "rdma" as an alias for "rdm". The name
makes its way to target attributes as well as the command line via the
-march and -mcpu options. The motivation was originally to support this
in Function Multi Versioning but it also makes sense to align with GCC
on the command line.


  Commit: ec415aff63fc0cc194b668137362d7618d0271c8
      https://github.com/llvm/llvm-project/commit/ec415aff63fc0cc194b668137362d7618d0271c8
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/lsr-addrecloops.ll

  Log Message:
  -----------
  [X86] Regenerate X86/lsr-addrecloops.ll test; NFC


  Commit: ae76dfb74701e05e5ab4be194e20e49f10768e46
      https://github.com/llvm/llvm-project/commit/ae76dfb74701e05e5ab4be194e20e49f10768e46
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/test/CodeGen/X86/2006-04-27-ISelFoldingBug.ll
    M llvm/test/CodeGen/X86/2007-08-09-IllegalX86-64Asm.ll
    M llvm/test/CodeGen/X86/2007-12-18-LoadCSEBug.ll
    M llvm/test/CodeGen/X86/2008-02-18-TailMergingBug.ll
    M llvm/test/CodeGen/X86/avx-cmp.ll
    M llvm/test/CodeGen/X86/cmp.ll
    M llvm/test/CodeGen/X86/dagcombine-and-setcc.ll
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-unsigned.ll
    M llvm/test/CodeGen/X86/inline-spiller-impdef-on-implicit-def-regression.ll
    M llvm/test/CodeGen/X86/lsr-addrecloops.ll
    M llvm/test/CodeGen/X86/movmsk-cmp.ll
    M llvm/test/CodeGen/X86/or-branch.ll
    M llvm/test/CodeGen/X86/peephole-na-phys-copy-folding.ll
    M llvm/test/CodeGen/X86/pr33747.ll
    M llvm/test/CodeGen/X86/pr37025.ll
    M llvm/test/CodeGen/X86/pr38795.ll
    M llvm/test/CodeGen/X86/setcc-logic.ll
    M llvm/test/CodeGen/X86/swifterror.ll
    M llvm/test/CodeGen/X86/tail-dup-merge-loop-headers.ll
    M llvm/test/CodeGen/X86/tail-opts.ll
    M llvm/test/CodeGen/X86/tailcall-extract.ll
    M llvm/test/CodeGen/X86/test-shrink-bug.ll
    M llvm/test/CodeGen/X86/x86-shrink-wrap-unwind.ll

  Log Message:
  -----------
  [X86] Don't always separate conditions in `(br (and/or cond0, cond1))` into separate branches

It makes sense to split if the cost of computing `cond1` is high
(proportionally to how likely `cond0` is), but it doesn't really make
sense to introduce a second branch if its only a few instructions.

Splitting can also get in the way of potentially folding patterns.

This patch introduces some logic to try to check if the cost of
computing `cond1` is relatively low, and if so don't split the
branches.

Modest improvement on clang bootstrap build:
https://llvm-compile-time-tracker.com/compare.php?from=79ce933114e46c891a5632f7ad4a004b93a5b808&to=978278eabc0bafe2f390ca8fcdad24154f954020&stat=cycles
Average stage2-O3:   0.59% Improvement (cycles)
Average stage2-O0-g: 1.20% Improvement (cycles)

Likewise on llvm-test-suite on SKX saw a net 0.84% improvement  (cycles)

There is also a modest compile time improvement with this patch:
https://llvm-compile-time-tracker.com/compare.php?from=79ce933114e46c891a5632f7ad4a004b93a5b808&to=978278eabc0bafe2f390ca8fcdad24154f954020&stat=instructions%3Au

Note that the stage2 instruction count increases is expected, this
patch trades instructions for decreasing branch-misses (which is
proportionately lower):
https://llvm-compile-time-tracker.com/compare.php?from=79ce933114e46c891a5632f7ad4a004b93a5b808&to=978278eabc0bafe2f390ca8fcdad24154f954020&stat=branch-misses

NB: This will also likely help for APX targets with the new `CCMP` and
`CTEST` instructions.

Closes #81689


  Commit: 2fb764d2dae288f24335dfc168b5491a1017fc83
      https://github.com/llvm/llvm-project/commit/2fb764d2dae288f24335dfc168b5491a1017fc83
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M openmp/libomptarget/plugins-nextgen/CMakeLists.txt
    M openmp/libomptarget/plugins-nextgen/amdgpu/CMakeLists.txt
    M openmp/libomptarget/plugins-nextgen/cuda/CMakeLists.txt
    M openmp/libomptarget/src/CMakeLists.txt

  Log Message:
  -----------
  [libomptarget] Fix 'libomptarget' libraries being installed twice (#83624)

Summary:
We use `add_llvm_library` as a shorthand for setting up all the
dependencies and libraries we need for the OpenMP offloading runtime as
they depend on a lot of the LLVM utilities. However, we always
explicitly installed these manually. Behind the scenes the function
would then install it again. This was unnoticed because until now the
destinations matched. Now that we want it to optionally go into the
other directory it is duplicating them. Fix this by stating that this is
a build tree only library so we can handle it ourselves.


  Commit: f7a15e0021697e2346d3aa335dedf2bb3cf468f9
      https://github.com/llvm/llvm-project/commit/f7a15e0021697e2346d3aa335dedf2bb3cf468f9
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/include/flang/Parser/provenance.h
    M flang/include/flang/Parser/source.h
    A flang/include/flang/Semantics/module-dependences.h
    M flang/include/flang/Semantics/semantics.h
    M flang/include/flang/Semantics/symbol.h
    M flang/lib/Parser/provenance.cpp
    M flang/lib/Parser/source.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/mod-file.h
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/resolve-names.h
    M flang/lib/Semantics/semantics.cpp
    A flang/test/Semantics/Inputs/dir1/modfile63a.mod
    A flang/test/Semantics/Inputs/dir1/modfile63b.mod
    A flang/test/Semantics/Inputs/dir2/modfile63a.mod
    A flang/test/Semantics/Inputs/dir2/modfile63b.mod
    M flang/test/Semantics/getsymbols02.f90
    A flang/test/Semantics/modfile63.f90
    M flang/test/Semantics/test_modfile.py

  Log Message:
  -----------
  [flang] Use module file hashes for more checking and disambiguation (#80354)

f18's module files are Fortran with a leading header comment containing
the module file format version and a hash of the following contents.
This hash is currently used only to protect module files against
corruption and truncation.

Extend the use of these hashes to catch or avoid some error cases. When
one module file depends upon another, note its hash in additional module
file header comments. This allows the compiler to detect when the module
dependency is on a module file that has been updated. Further, it allows
the compiler to find the right module file dependency when the same
module file name appears in multiple directories on the module search
path.

The order in which module files are written, when multiple modules
appear in a source file, is such that every dependency is written before
the module(s) that depend upon it, so that their hashes are known.

A warning is emitted when a module file is not the first hit on the
module file search path.

Further work is needed to add a compiler option that emits (larger)
stand-alone module files that incorporate copies of their dependencies
rather than relying on search paths. This will be desirable for
application libraries that want to ship only "top-level" module files
without needing to include their dependencies.

Another future work item would be to admit multiple modules in the same
compilation with the same name if they have distinct hashes.


  Commit: 7a2d9347d333afad4c78f61949b51b1363525ed9
      https://github.com/llvm/llvm-project/commit/7a2d9347d333afad4c78f61949b51b1363525ed9
  Author: alx32 <103613512+alx32 at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M lld/MachO/Driver.cpp
    M lld/MachO/InputFiles.cpp
    M lld/MachO/ObjC.h

  Log Message:
  -----------
  [lld][macho][NFC] Add specific namespace scope for objc symbol names (#83618)

Move symbol names from directly under `objc` scope to
`objc::symbol_names`.
Ex: `objc::klass` -> `objc::symbol_names::klass`

Co-authored-by: Alex B <alexborcan at meta.com>


  Commit: 4762c6557d15ba45594793749fea8df6c911f0a8
      https://github.com/llvm/llvm-project/commit/4762c6557d15ba45594793749fea8df6c911f0a8
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/lib/Decimal/decimal-to-binary.cpp
    M flang/unittests/Runtime/NumericalFormatTest.cpp

  Log Message:
  -----------
  [flang][runtime] Underflow real input to -0. when negative (#82443)

When the result of real input editing underflows to zero, return -0.
when the input field had a minus sign.


  Commit: 24aec16ddad465cc1c2fce528bb3eca49ac9fcdb
      https://github.com/llvm/llvm-project/commit/24aec16ddad465cc1c2fce528bb3eca49ac9fcdb
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Scope.h
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaStmt.cpp
    M clang/test/SemaOpenACC/no-branch-in-out.cpp

  Log Message:
  -----------
  [OpenACC] Implement no throw out of Compute construct

Exception handling SHOULD be possible depending on codegen (and if not,
we can make it trap and add a warning when we make that decision), but
throwing out of a compute construct is ill formed.

This patch adds an error for a 'throw' that isn't in a 'try' scope. This
error is imperfect as it won't diagnose a 'throw' that escapes its
'try', or one in a separate function, but it catches the obvious
mistakes. The other cases will need to be handled as runtime failures.


  Commit: c21ef15ec651b5570a44a63e01ee4afdbabc3623
      https://github.com/llvm/llvm-project/commit/c21ef15ec651b5570a44a63e01ee4afdbabc3623
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/runtime/unit.cpp
    M flang/runtime/unit.h

  Log Message:
  -----------
  [flang][runtime] Allow 1023 active asynchronous IDs (#82446)

The present limit of 63 is too low for some tests; bump it up to 1023 by
using an array of bit-sets.


  Commit: f31ac3cb1ff7958fadf6e3e431790f2d668583b4
      https://github.com/llvm/llvm-project/commit/f31ac3cb1ff7958fadf6e3e431790f2d668583b4
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/docs/Extensions.md
    M flang/include/flang/Parser/parse-tree.h
    M flang/lib/Evaluate/characteristics.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Semantics/call03.f90

  Log Message:
  -----------
  [flang] Handle implied ASYNCHRONOUS attribute (#82638)

The standard states that data objects involved in an asynchronous data
transfer statement gain the ASYNCHRONOUS attribute implicitly in the
surrounding subprogram or BLOCK scope. This attribute affects the checks
in call semantics, as an ASYNCHRONOUS actual object associated with an
ASYNCHRONOUS dummy argument must not require data copies in or out.

(Most compilers don't implement implied ASYNCHRONOUS attributes
correctly; XLF gets these right, and GNU is close.)


  Commit: 17ede03a926a8d8d35d887f1fe805b35e2078d5a
      https://github.com/llvm/llvm-project/commit/17ede03a926a8d8d35d887f1fe805b35e2078d5a
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/include/clang/InstallAPI/Context.h
    M clang/include/clang/InstallAPI/Frontend.h
    M clang/include/clang/InstallAPI/Visitor.h
    M clang/lib/InstallAPI/Frontend.cpp
    M clang/lib/InstallAPI/Visitor.cpp
    A clang/test/InstallAPI/objcclasses.test
    M clang/tools/clang-installapi/ClangInstallAPI.cpp

  Log Message:
  -----------
  [InstallAPI] Collect frontend attributes & ObjCInterface decls (#83378)

* This patch introduces a container class, for holding records and
attributes only collectible from the clang frontend, which is a subclass
of `llvm::MachO::RecordsSlice`
* This also prunes out collecting declarations from headers that aren't
considered input to installapi.
* Uses these constructs for collecting global objective-c interfaces.


  Commit: 8f141490b996ba87323f75bf54b3d868efdaaf4a
      https://github.com/llvm/llvm-project/commit/8f141490b996ba87323f75bf54b3d868efdaaf4a
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Semantics/separate-mp02.f90

  Log Message:
  -----------
  [flang] Fix separate MODULE PROCEDURE when binding label exists (#82686)

When a separate module procedure is defined with a MODULE PROCEDURE and
its corresponding interface has a binding label, the compiler was
emitting an error about mismatching binding labels because the binding
label wasn't being copied into the subprogram's definition.


  Commit: bcc6ca7ff86518caa97c6f20735a4728e18caa78
      https://github.com/llvm/llvm-project/commit/bcc6ca7ff86518caa97c6f20735a4728e18caa78
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/lib/InstallAPI/CMakeLists.txt

  Log Message:
  -----------
  [InstallAPI] Add missing link to clangLex


  Commit: 8f80d466d580d0fb97383eac8a2d7d9a1e3f15f4
      https://github.com/llvm/llvm-project/commit/8f80d466d580d0fb97383eac8a2d7d9a1e3f15f4
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/resolve-names.cpp

  Log Message:
  -----------
  [flang] Fix crash in statement function semantics (bug #80532) (#82702)

When statement function expressions are analyzed, ensure that the
semantics context has a valid location set, otherwise a type spec (like
"integer::") can lead to a crash.

Fixes https://github.com/llvm/llvm-project/issues/80532.


  Commit: a56ef9f9ced6c279e00671f4f8270e717517de46
      https://github.com/llvm/llvm-project/commit/a56ef9f9ced6c279e00671f4f8270e717517de46
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/Semantics/typed-subr.f90

  Log Message:
  -----------
  [flang] Catch attempt to type a subroutine (#82704)

The presence of a type in the prefix of a SUBROUTINE statement should
elicit an error message, not a crash.

Fixes https://github.com/llvm/llvm-project/issues/80530.


  Commit: 081e202c8e124780cf77fea461c16f58b26d8d34
      https://github.com/llvm/llvm-project/commit/081e202c8e124780cf77fea461c16f58b26d8d34
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/include/flang/Semantics/expression.h
    A flang/test/Semantics/data21.f90

  Log Message:
  -----------
  [flang] Fix DATA-like default component initialization (#82784)

Ensure that the values in a DATA-like default component initialization
pass through expression analysis.

Fixes https://github.com/llvm/llvm-project/issues/81097.


  Commit: e8a9aa26f708ec59cb3a0c37767817c069fb12f0
      https://github.com/llvm/llvm-project/commit/e8a9aa26f708ec59cb3a0c37767817c069fb12f0
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/lib/Semantics/data-to-inits.cpp

  Log Message:
  -----------
  [flang] Fix "suspicious condition" in C++ usage (#82790)

Address a reported C++ coding "suspicious condition".

Fixes https://github.com/llvm/llvm-project/issues/80807.


  Commit: 1c530b3d9f86422cbc0417ea8ec97a462e9abe26
      https://github.com/llvm/llvm-project/commit/1c530b3d9f86422cbc0417ea8ec97a462e9abe26
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/include/flang/Evaluate/characteristics.h
    M flang/include/flang/Evaluate/tools.h
    M flang/lib/Evaluate/characteristics.cpp
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-call.h
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/pointer-assignment.cpp
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/Semantics/implicit14.f90

  Log Message:
  -----------
  [flang] Whether a procedure's interface is explicit or not is not a d… (#82796)

…istinguishing characteristic

We note whether a procedure's interface is explicit or implicit as an
attribute of its characteristics, so that other semantics can be checked
appropriately, but this internal attribute should not be used as a
distinguishing characteristic in itself.

Fixes https://github.com/llvm/llvm-project/issues/81876.


  Commit: 147f54e36a182934d926bc311a5d63c64425664f
      https://github.com/llvm/llvm-project/commit/147f54e36a182934d926bc311a5d63c64425664f
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/lib/Semantics/expression.cpp
    M flang/test/Semantics/assign04.f90

  Log Message:
  -----------
  [flang] Accept whole assumed-size arrays as variable selectors (#82806)

Include variable selectors ("select type (x => y)") as a context in
which a whole assumed-size array may legitimately appear.

Fixes https://github.com/llvm/llvm-project/issues/81910.


  Commit: 69b837203fb84774dbc4333ebd06654ab2249fe0
      https://github.com/llvm/llvm-project/commit/69b837203fb84774dbc4333ebd06654ab2249fe0
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/SemaHLSL/BuiltIns/dot-errors.hlsl
    M clang/test/SemaHLSL/BuiltIns/lerp-errors.hlsl

  Log Message:
  -----------
  [clang][sema] consolidate diags for incompatible_vector_* (#83609)

removing the additions of `err_vec_builtin_non_vector_all` &
`err_vec_builtin_incompatible_vector_all`
caused by https://github.com/llvm/llvm-project/pull/83077.

Instead adding a select option to `err_vec_builtin_non_vector` &
`err_vec_builtin_incompatible_vector` to account for uses where there
are more than two arguments.


  Commit: 21c83feca5eacfd521f8ab23135d1201984d44cc
      https://github.com/llvm/llvm-project/commit/21c83feca5eacfd521f8ab23135d1201984d44cc
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMFastISel.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.cpp

  Log Message:
  -----------
  [ARM] Simplify shouldAssumeDSOLocal for ELF. NFC


  Commit: 189d89a92cd65aa6b1c6608ab91a472a8c1a7c91
      https://github.com/llvm/llvm-project/commit/189d89a92cd65aa6b1c6608ab91a472a8c1a7c91
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/Semantics/data22.f90

  Log Message:
  -----------
  [flang] Ensure names resolve in DATA statement objects (#82825)

When DATA statement objects have derived types obtained by implicit
typing rules, their types aren't known until specification part
processing is complete. In the case of a derived type, any component
name in a designator may still be in need of name resolution. Take care
of it in the deferred check visitor that runs at the end of name
resolution in each specification and execution part.

Fixes https://github.com/llvm/llvm-project/issues/82069.


  Commit: 8bcb1cededa410016f9a00bebbce09b54e5c9f88
      https://github.com/llvm/llvm-project/commit/8bcb1cededa410016f9a00bebbce09b54e5c9f88
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/include/flang/Semantics/symbol.h
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Semantics/resolve91.f90

  Log Message:
  -----------
  [flang] Allow PROCEDURE() with explicit type elsewhere (#82835)

Fortran allows a procedure declaration statement with no interface or
type, with an explicit type declaration statement elsewhere being used
to define a function's result.

Fixes https://github.com/llvm/llvm-project/issues/82006.


  Commit: ed0aa344a8aaab4d8eedbe800750b8dcd36b0bcd
      https://github.com/llvm/llvm-project/commit/ed0aa344a8aaab4d8eedbe800750b8dcd36b0bcd
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/include/clang/Driver/Options.td

  Log Message:
  -----------
  [Driver] Add BoolMOption to simplify boolean -m* options

Similar to BoolFOption/BoolGOption for -f* and -g*


  Commit: f4215f71402dccc9c6a6f7ad51bbc1d08c4a48c2
      https://github.com/llvm/llvm-project/commit/f4215f71402dccc9c6a6f7ad51bbc1d08c4a48c2
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Semantics/bind-c03.f90

  Log Message:
  -----------
  [flang] Fix handling of shadowed procedure name used as interface (#82837)

Use BypassGeneric() to process the name of an interface in a procedure
declaration statement, so that if it's the name of a generic with a
homonymous specific procedure, that's what defines the interface.

Fixes https://github.com/llvm/llvm-project/issues/82267.


  Commit: 2445a96ff2bd038295b313ee15d0d9ec3d033dbf
      https://github.com/llvm/llvm-project/commit/2445a96ff2bd038295b313ee15d0d9ec3d033dbf
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Semantics/bind-c04.f90

  Log Message:
  -----------
  [flang] Enforce F'2023 C1520 correctly (#82842)

When a procedure declaration statement has a binding label, it must
declare no more than one procedure.

Fixes https://github.com/llvm/llvm-project/issues/82528.


  Commit: ecd7fce0d4e14cbae7beb9b0b30966435f8ee851
      https://github.com/llvm/llvm-project/commit/ecd7fce0d4e14cbae7beb9b0b30966435f8ee851
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaDeclObjC.cpp
    M clang/lib/Sema/SemaExpr.cpp

  Log Message:
  -----------
  [clang][sema] NFC: Stylistic changes


  Commit: 70467dd0ee0fee2877bf17a465ab975a84baa360
      https://github.com/llvm/llvm-project/commit/70467dd0ee0fee2877bf17a465ab975a84baa360
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/lib/Index/IndexSymbol.cpp
    M clang/lib/Index/IndexingAction.cpp

  Log Message:
  -----------
  [clang][index] NFC: Stylistic changes


  Commit: 5594d12af540dfcc684a02a232484c2b4dd2f5b5
      https://github.com/llvm/llvm-project/commit/5594d12af540dfcc684a02a232484c2b4dd2f5b5
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Arch/AArch64.cpp

  Log Message:
  -----------
  [clang][driver] NFC: Upstream comment


  Commit: 39b67c03214b24da103863abc77c625e71aadd34
      https://github.com/llvm/llvm-project/commit/39b67c03214b24da103863abc77c625e71aadd34
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/include/clang/Frontend/CompilerInstance.h
    M clang/lib/Frontend/CompilerInstance.cpp

  Log Message:
  -----------
  [clang] NFC: Extract `CompilerInstance` function


  Commit: 864593b91d289c57c64a0f12658b9ff415da1ad8
      https://github.com/llvm/llvm-project/commit/864593b91d289c57c64a0f12658b9ff415da1ad8
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/include/clang/APINotes/APINotesWriter.h
    M clang/lib/APINotes/APINotesReader.cpp

  Log Message:
  -----------
  [clang][api-notes] NFC: Upstream some documentation


  Commit: 164c0985681648cf18bef69d75ece2b327525737
      https://github.com/llvm/llvm-project/commit/164c0985681648cf18bef69d75ece2b327525737
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/include/clang/Frontend/CompilerInvocation.h
    M clang/lib/Frontend/CompilerInvocation.cpp

  Log Message:
  -----------
  [clang][deps] Implement move-conversion for `CowCompilerInvocation` (follow-up)


  Commit: e09e9567fc1cfc949810cc85f09e1b894ce946df
      https://github.com/llvm/llvm-project/commit/e09e9567fc1cfc949810cc85f09e1b894ce946df
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Semantics/resolve61.f90

  Log Message:
  -----------
  [flang] Downgrade error to warning (#83032)

It's probably a bad idea to have a Cray pointer whose type is a derived
type that is not a sequence type, but the feature is a nonstandard
extension in the first place. Downgrade the message to a warning.

Fixes https://github.com/llvm/llvm-project/issues/82210.


  Commit: 463fb9f2140a4b37afb2f2a53cc766fac84203e3
      https://github.com/llvm/llvm-project/commit/463fb9f2140a4b37afb2f2a53cc766fac84203e3
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M flang/docs/Extensions.md
    M flang/lib/Evaluate/intrinsics.cpp
    A flang/test/Semantics/intrinsics03.f90

  Log Message:
  -----------
  [flang] Support INDEX as a procedure interface (#83073)

The specific intrinsic function INDEX should work as a PROCEDURE
interface in the declaration of a procedure pointer or dummy procedure,
and it should be compatible with a user-defined interface.

Fixes https://github.com/llvm/llvm-project/issues/82397.


  Commit: cb807ff3d3fd4eb72f2c6151001c2366d2725815
      https://github.com/llvm/llvm-project/commit/cb807ff3d3fd4eb72f2c6151001c2366d2725815
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M libc/CMakeLists.txt

  Log Message:
  -----------
  [libc] Fix GPU include install directory


  Commit: 057e7252608e680348484c7942ac0d78bd174ec1
      https://github.com/llvm/llvm-project/commit/057e7252608e680348484c7942ac0d78bd174ec1
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
    M llvm/lib/Target/Sparc/Sparc.td

  Log Message:
  -----------
  [Sparc] Use generated MatchRegisterName (NFCI) (#82165)


  Commit: 06ac828dc1076413b3c2649e9c1d3de33467d308
      https://github.com/llvm/llvm-project/commit/06ac828dc1076413b3c2649e9c1d3de33467d308
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M libc/utils/gpu/loader/amdgpu/Loader.cpp

  Log Message:
  -----------
  [libc] Fix flipped AMDGPU kernel launch arguments (#83648)

Summary:
These values were incorrectly flipped, setting the size of the blocks to
the threads and vice-versa. When I originally wrote the thread utilities
it was using COV4 which used an implicit format. Then when I updated I
accidentally flipped them and never noticed because nothing depended on
the size of the threads until I checked it manually.


  Commit: 73dfc7bbadddeb2930b11e4ad07f9a8e8b498cc7
      https://github.com/llvm/llvm-project/commit/73dfc7bbadddeb2930b11e4ad07f9a8e8b498cc7
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M libc/src/__support/fixed_point/fx_bits.h
    M libc/test/src/__support/fixed_point/fx_bits_test.cpp

  Log Message:
  -----------
  [libc] Fix a bug in fx_bits.h due to integer promotion of bitwise ops. (#83647)


  Commit: a2e7827fde0d87b7e8665926b2b9e73171e07369
      https://github.com/llvm/llvm-project/commit/a2e7827fde0d87b7e8665926b2b9e73171e07369
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M compiler-rt/test/dfsan/reaches_function.c

  Log Message:
  -----------
  [compiler-rt] Relax CHECK line in reaches_function.c

In my build environment, the output is a relative path:
```
test/dfsan/reaches_function.c:34 add.dfsan
test/dfsan/reaches_function.c:56 main
```

This fixes check-dfsan in my configuration:
```
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -G Ninja
-DCMAKE_C_COMPILER=$HOME/output/upstream-llvm/bin/clang
-DCMAKE_CXX_COMPILER=$HOME/output/upstream-llvm/bin/clang++
-DCOMPILER_RT_INCLUDE_TESTS=ON
-DLLVM_EXTERNAL_LIT=$HOME/build/upstream-llvm-project-build/bin/llvm-lit
-DLLVM_CMAKE_DIR=$HOME/output/upstream-llvm
-DCOMPILER_RT_DEBUG=OFF
-S $HOME/src/upstream-llvm-project/compiler-rt
-B $HOME/src/upstream-llvm-project/compiler-rt/cmake-build-all-sanitizers
```

Reviewers: browneee, vitalybuka

Reviewed By: vitalybuka

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


  Commit: 07317bbc66d1f2d7663af3c9f04d0f6c0487ac03
      https://github.com/llvm/llvm-project/commit/07317bbc66d1f2d7663af3c9f04d0f6c0487ac03
  Author: Alex Richardson <alexrichardson at google.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M compiler-rt/cmake/Modules/CompilerRTCompile.cmake

  Log Message:
  -----------
  [compiler-rt] Build libfuzzer sources with the chosen C++ compiler

I was getting build failures due to missing <cstddef> when building the
libfuzzer tests. It turns out that the custom command was using
COMPILER_RT_TEST_COMPILER when building the source file rather than
the COMPILER_RT_TEST_CXX_COMPILER.

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


  Commit: aab3d13179dc5a37465a0e6fbf1b9369a4e6e50f
      https://github.com/llvm/llvm-project/commit/aab3d13179dc5a37465a0e6fbf1b9369a4e6e50f
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/FileCheck/FileCheck.cpp
    A llvm/test/FileCheck/empty-variable-name.txt

  Log Message:
  -----------
  [FileCheck] Fix parsing empty global and pseudo variable names (#82595)

In `Pattern::parseVariable`, for global variables (those starting with
'$') and for pseudo variables (those starting with '@') the first
character is consumed before actual variable name parsing. If the name
is empty, it leads to out-of-bound access to the corresponding
`StringRef`.

This patch adds an if statement against the case described.


  Commit: e4b15fc854b6eaebe63ba3acfcd39bf6dd7748b5
      https://github.com/llvm/llvm-project/commit/e4b15fc854b6eaebe63ba3acfcd39bf6dd7748b5
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M libc/cmake/modules/LLVMLibCHeaderRules.cmake

  Log Message:
  -----------
  [libc] Fix '/gpu' directory not being made for the declarations

Summary:
We use this extra directory for offloading languages like CUDA or
OpenMP. We made the '/gpu' directory for the regular headers but not the
others. Fix that for now.


  Commit: fb67dce1cb87e279593c27bd4122fe63bad75f04
      https://github.com/llvm/llvm-project/commit/fb67dce1cb87e279593c27bd4122fe63bad75f04
  Author: Shih-Po Hung <shihpo.hung at sifive.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    A llvm/test/Analysis/CostModel/RISCV/vector-cost-without-v.ll

  Log Message:
  -----------
  [RISCV] Fix crash when unrolling loop containing vector instructions (#83384)

When MVT is not a vector type, TCK_CodeSize should return an invalid
cost. This patch adds a check in the beginning to make sure all cost
kinds return invalid costs consistently.

Before this patch, TCK_CodeSize returns a valid cost on scalar MVT but
other cost kinds doesn't.

This fixes the issue #83294 where a loop contains vector instructions
and MVT is scalar after type legalization when the vector extension is
not enabled,


  Commit: 28b354a96054196cc3c50c2517b0509d0d316d42
      https://github.com/llvm/llvm-project/commit/28b354a96054196cc3c50c2517b0509d0d316d42
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/FileCheck/FileCheck.cpp
    R llvm/test/FileCheck/empty-variable-name.txt

  Log Message:
  -----------
  Revert "[FileCheck] Fix parsing empty global and pseudo variable names" (#83657)

Reverts llvm/llvm-project#82595

See build failure
https://lab.llvm.org/buildbot/#/builders/139/builds/60549


  Commit: 597f9761c3a5ba278fa930d2fac13f156287d505
      https://github.com/llvm/llvm-project/commit/597f9761c3a5ba278fa930d2fac13f156287d505
  Author: WÁNG Xuěruì <git at xen0n.name>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/checksum.cpp
    M compiler-rt/lib/scudo/standalone/checksum.h
    M compiler-rt/lib/scudo/standalone/crc32_hw.cpp

  Log Message:
  -----------
  [scudo] Add support for LoongArch hardware CRC32 checksumming (#83113)

One has to probe for platform capability prior to use with HWCAP,
according to LoongArch documentation.


  Commit: b14220e075fe47f4d61632e80a6d0a4a955a7c97
      https://github.com/llvm/llvm-project/commit/b14220e075fe47f4d61632e80a6d0a4a955a7c97
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp

  Log Message:
  -----------
  [lldb][X86] Fix setting target features in ClangExpressionParser (#82364)

Currently, for x86 and x86_64 triples, "+sse" and "+sse2" are appended
to `Features` vector of `TargetOptions` unconditionally. This vector is
later reset in `TargetInfo::CreateTargetInfo` and filled using info from
`FeaturesAsWritten` vector, so previous modifications of the `Features`
vector have no effect. For x86_64 triple, we append "sse2"
unconditionally in `X86TargetInfo::initFeatureMap`, so despite the
`Features` vector reset, we still have the desired sse features enabled.
The corresponding code in `X86TargetInfo::initFeatureMap` is marked as
FIXME, so we should not probably rely on it and should set desired
features properly in `ClangExpressionParser`.

This patch changes the vector the features are appended to from
`Features` to `FeaturesAsWritten`. It's not reset later and is used to
compute resulting `Features` vector.


  Commit: c4f59937cae95a576635848b36a23b0d672f71d6
      https://github.com/llvm/llvm-project/commit/c4f59937cae95a576635848b36a23b0d672f71d6
  Author: Michael Spencer <bigcheesegs at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/Support/LockFileManager.cpp

  Log Message:
  -----------
  [llvm][Support] Call clear_error in LockFileManager to avoid report_fatal_error (#83655)

As per the comment in `raw_fd_ostream`'s destructor, you must call
`clear_error()` to prevent a call to `report_fatal_error()`. There's not
really a way to test this, but we did encounter it in the wild.

rdar://117347895


  Commit: bf08d0286825eb3e482bcfdc1cc7c19a28441ae7
      https://github.com/llvm/llvm-project/commit/bf08d0286825eb3e482bcfdc1cc7c19a28441ae7
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/include/llvm/IR/DIBuilder.h
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/DIBuilder.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/IR/DebugInfoMetadata.cpp
    M llvm/lib/IR/LLVMContextImpl.h
    M llvm/lib/IR/Verifier.cpp
    M llvm/test/Assembler/debug-info.ll
    R llvm/test/DebugInfo/AArch64/ptrauth.ll
    M llvm/unittests/IR/MetadataTest.cpp
    M mlir/lib/Target/LLVMIR/DebugTranslation.cpp

  Log Message:
  -----------
  Revert "[Dwarf] Support `__ptrauth` qualifier in metadata nodes" (#83672)

Reverts llvm/llvm-project#82363

See a build failure related to an issue discovered by memory sanitizer
(use of uninitialized value):
https://lab.llvm.org/buildbot/#/builders/37/builds/31965


  Commit: 10f5e983a9e3162a569cbebeb32168716e391340
      https://github.com/llvm/llvm-project/commit/10f5e983a9e3162a569cbebeb32168716e391340
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    A llvm/test/Transforms/DeadStoreElimination/batchaa-caching-new-pointers.ll

  Log Message:
  -----------
  [DSE] Delay deleting non-memory-defs until end of DSE. (#83411)

DSE uses BatchAA, which caches queries using pairs of MemoryLocations.
At the moment, DSE may remove instructions that are used as pointers in
cached MemoryLocations. If a new instruction used by a new MemoryLoation
and this instruction gets allocated at the same address as a previosuly
cached and then removed instruction, we may access an incorrect entry in
the cache.

To avoid this delay removing all instructions except MemoryDefs until
the end of DSE. This should avoid removing any values used in BatchAA's
cache.

Test case by @vporpo from
https://github.com/llvm/llvm-project/pull/83181.
(Test not precommitted because the results are non-determinstic - memset
only sometimes gets removed)

PR: https://github.com/llvm/llvm-project/pull/83411


  Commit: ca827d53c5524409dcca5ade3949b25f38a60fef
      https://github.com/llvm/llvm-project/commit/ca827d53c5524409dcca5ade3949b25f38a60fef
  Author: Simon Pilgrim <RKSimon at users.noreply.github.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/bitcast-int-to-vector-bool-zext.ll
    M llvm/test/CodeGen/X86/bitcast-int-to-vector-bool.ll
    M llvm/test/CodeGen/X86/cmp-shiftX-maskX.ll

  Log Message:
  -----------
  [X86] Convert logicalshift(x, C) -> and(x, M) iff x is allsignbits (#83596)

If we're logical shifting an all-signbits value, then we can just mask out the shifted bits.

This helps removes some unnecessary bitcasted vXi16 shifts used for vXi8 shifts (which SimplifyDemandedBits will struggle to remove through the bitcast), and allows some AVX1 shifts of 256-bit values to stay as a YMM instruction.

Noticed in codegen from #82290


  Commit: 2a95fe481d18e273b9654322135a08d7c2937536
      https://github.com/llvm/llvm-project/commit/2a95fe481d18e273b9654322135a08d7c2937536
  Author: David Green <david.green at arm.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/SimplifyIntrinsics.cpp
    M flang/test/Transforms/simplifyintrinsics.fir

  Log Message:
  -----------
  [Flang] Allow Intrinsic simpification with min/maxloc dim and scalar result (#81619)

This makes an adjustment to the existing fir minloc/maxloc generation
code to handle functions with a dim=1 that produce a scalar result. This
should allow us to get the same benefits as the existing generated
minmax reductions.

This is a recommit of #76194 with an extra alteration to the end of
genRuntimeMinMaxlocBody to make sure we convert the output array to the
correct type (a `box<heap<i32>>`, not `box<heap<array<1xi32>>>`) to
prevent writing the wrong type of box into it. This still allocates the
data as a `array<1xi32>`, converting it into a i32 assuming that is
safe. An alternative would be to allocate the data as a i32 and change
more of the accesses to it throughout genRuntimeMinMaxlocBody.


  Commit: 1f613bce19ea78789934b2a47be8c6a13925f0fa
      https://github.com/llvm/llvm-project/commit/1f613bce19ea78789934b2a47be8c6a13925f0fa
  Author: Hui <hui.xie1990 at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M libcxx/include/__atomic/atomic_base.h
    M libcxx/include/__atomic/atomic_flag.h
    M libcxx/include/__atomic/atomic_sync.h
    M libcxx/include/latch
    M libcxx/include/semaphore

  Log Message:
  -----------
  [libc++] refactor `cxx_atomic_wait` to make it reusable for atomic_ref (#81427)

The goal of this patch is to make `atomic`'s wait functions to be
reusable by `atomic_ref`.
https://github.com/llvm/llvm-project/pull/76647

First, this patch is built on top of
https://github.com/llvm/llvm-project/pull/80596 , to reduce the future
merge conflicts.

This patch made the following functions as "API"s to be used by
`atomic`, `atomic_flag`, `semaphore`, `latch`, `atomic_ref`

```
__atomic_wait
__atomic_wait_unless
__atomic_notify_one
__atomic_notify_all
```

These functions are made generic to support `atomic` type and
`atomic_ref`. There are two customisation points.

```
// How to load the value from the given type (with a memory order)
__atomic_load
```


```
// what is the contention address that the platform `wait` function is going to monitor
__atomic_contention_address
```


For `atomic_ref` (not implemented in this patch), the `load` and
`address` function will be different, because
- it does not use the "atomic abstraction layer" so the `load` operation
will be some gcc builtin
- the contention address will be the user's actual type that the
`atomic_ref` is pointing to


  Commit: 57f599d6443a910a213094646e7e26837a1d4417
      https://github.com/llvm/llvm-project/commit/57f599d6443a910a213094646e7e26837a1d4417
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/test/AST/Interp/literals.cpp

  Log Message:
  -----------
  [clang][Interp] Improve handling of external variables

Further down in this function, we assert that the variable has
an initializer, which didn't work for external declarations.


  Commit: a30ba2ca21b0da49631c6d0c52108e4a080a451e
      https://github.com/llvm/llvm-project/commit/a30ba2ca21b0da49631c6d0c52108e4a080a451e
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

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

  Log Message:
  -----------
  [clang][Interp][NFC] Emit diagnostic for unknown builtins

Instead of just returning false.


  Commit: b901b0d3edeaa30e363af4cb9dc76d6a7072e6cf
      https://github.com/llvm/llvm-project/commit/b901b0d3edeaa30e363af4cb9dc76d6a7072e6cf
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/InterpBuiltin.cpp
    M clang/test/AST/Interp/builtin-functions.cpp

  Log Message:
  -----------
  [clang][Interp] Reject dummy pointers from __builtin_strcmp()

We can't load anything from them, so reject them here.


  Commit: dfb8a1531c962238a63db199dff973deec47e4ff
      https://github.com/llvm/llvm-project/commit/dfb8a1531c962238a63db199dff973deec47e4ff
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

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

  Log Message:
  -----------
  [clang][Interp][NFC] Make a local variable const


  Commit: f25debe58b61a6d66e662d60fd4c060adcd74630
      https://github.com/llvm/llvm-project/commit/f25debe58b61a6d66e662d60fd4c060adcd74630
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

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

  Log Message:
  -----------
  [clang][Interp][NFC] Remove some leftover debug output


  Commit: d89b771ef5fe39403a2ad525fa36efbc4ce2a517
      https://github.com/llvm/llvm-project/commit/d89b771ef5fe39403a2ad525fa36efbc4ce2a517
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/ARM/arm-position-independence.ll

  Log Message:
  -----------
  [ARM] Add alias tests for ROPI/RWPI

https://reviews.llvm.org/D23195 does not test aliases.


  Commit: af83a2add5687d0c2f70e538612b7e86ccbf47a5
      https://github.com/llvm/llvm-project/commit/af83a2add5687d0c2f70e538612b7e86ccbf47a5
  Author: Michał Górny <mgorny at gentoo.org>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M lld/CMakeLists.txt
    M lld/test/CMakeLists.txt
    M llvm/cmake/modules/AddLLVM.cmake

  Log Message:
  -----------
  [lld] Fixes for unitests in standalone builds (#83670)

1. Replace the obsolete `llvm_add_unittests()` CMake function with an
explicit check for `TARGET llvm_gtest`. This is more consistent with the
rest of the code, and it makes it possible to avoid checking out
`third-party` tree.
2. Add `LLDUnitTests` test dependency to standalone builds. It is
defined unconditionally, and actually necessary to ensure that unit
tests will be built.


  Commit: da591d390e7f865c846d12dc5559875eca347c28
      https://github.com/llvm/llvm-project/commit/da591d390e7f865c846d12dc5559875eca347c28
  Author: Bjorn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fabs.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fneg.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-sext.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-zext.mir
    A llvm/test/TableGen/GlobalISelEmitter-multiple-output-reject.td
    M llvm/test/TableGen/GlobalISelEmitter-multiple-output.td
    M llvm/utils/TableGen/GlobalISelEmitter.cpp

  Log Message:
  -----------
  [GlobalISel][TableGen] Take first result for multi-output instructions (#81130)

Previously, tblgen would reject patterns where one of its nested
instructions produced more than one result. These arise when the
instruction definition contains 'outs' as well as 'Defs'. This patch
fixes that by always taking the first result, which is how these
situations are handled in SelectionIDAG.

Original patch: https://reviews.llvm.org/D86617
Continued as: https://github.com/llvm/llvm-project/pull/81130


  Commit: 8ec28af8eaff5acd0df3e53340159c034f08533d
      https://github.com/llvm/llvm-project/commit/8ec28af8eaff5acd0df3e53340159c034f08533d
  Author: Matthias Gehre <matthias.gehre at amd.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/PDL/IR/PDLOps.td
    M mlir/include/mlir/Dialect/PDLInterp/IR/PDLInterpOps.td
    M mlir/include/mlir/IR/PDLPatternMatch.h.inc
    M mlir/lib/Conversion/PDLToPDLInterp/PDLToPDLInterp.cpp
    M mlir/lib/Conversion/PDLToPDLInterp/Predicate.h
    M mlir/lib/Conversion/PDLToPDLInterp/PredicateTree.cpp
    M mlir/lib/Dialect/PDL/IR/PDL.cpp
    M mlir/lib/Rewrite/ByteCode.cpp
    M mlir/lib/Tools/PDLL/Parser/Parser.cpp
    M mlir/test/Conversion/PDLToPDLInterp/pdl-to-pdl-interp-matcher.mlir
    A mlir/test/Conversion/PDLToPDLInterp/use-constraint-result.mlir
    M mlir/test/Dialect/PDL/ops.mlir
    M mlir/test/Rewrite/pdl-bytecode.mlir
    M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.cpp
    M mlir/test/lib/Rewrite/TestPDLByteCode.cpp
    M mlir/test/mlir-pdll/Parser/constraint-failure.pdll
    M mlir/test/mlir-pdll/Parser/constraint.pdll
    M mlir/test/python/dialects/pdl_ops.py

  Log Message:
  -----------
  Reapply "[mlir][PDL] Add support for native constraints with results (#82760)"

with a small stack-use-after-scope fix in getConstraintPredicates()

This reverts commit c80e6edba4a9593f0587e27fa0ac825ebe174afd.


  Commit: 051e910b8b6c59fc94d019fa01ae4507b1c81498
      https://github.com/llvm/llvm-project/commit/051e910b8b6c59fc94d019fa01ae4507b1c81498
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M clang/lib/Format/FormatToken.h
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Format/TokenAnnotator.h
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Format/UnwrappedLineParser.h

  Log Message:
  -----------
  [clang-format][NFC] Replace Style.isCpp() with IsCpp (#83533)


  Commit: 60fbd6050107875956960c3ce35cf94b202d8675
      https://github.com/llvm/llvm-project/commit/60fbd6050107875956960c3ce35cf94b202d8675
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Transforms/DialectConversion.h
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/lib/Dialect/Test/TestPatterns.cpp

  Log Message:
  -----------
  Revert "[mlir][Transforms] Encapsulate dialect conversion options in `ConversionConfig` (#83662)

This reverts commit 5f1319bb385342c7ef4124b05b83b89ef8588ee8.

A FIR test is broken on Windows


  Commit: f505a92fc2e965f1fe2e6a25d1ff4f0d9d1297c6
      https://github.com/llvm/llvm-project/commit/f505a92fc2e965f1fe2e6a25d1ff4f0d9d1297c6
  Author: MagentaTreehouse <99200384+MagentaTreehouse at users.noreply.github.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeEmitter.cpp
    M llvm/lib/Target/AArch64/AArch64SLSHardening.cpp
    M llvm/lib/Target/ARM/ARMSLSHardening.cpp
    M llvm/lib/Target/X86/X86IndirectThunks.cpp

  Log Message:
  -----------
  [NFC] Use fold expressions to replace discarded initializer_lists (#83693)


  Commit: 205dce6029bed302f354c0bde5d8c5804f214051
      https://github.com/llvm/llvm-project/commit/205dce6029bed302f354c0bde5d8c5804f214051
  Author: Quinn Dawkins <quinn.dawkins at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/test/Dialect/Linalg/canonicalize.mlir

  Log Message:
  -----------
  [mlir][linalg] Add a folder for transpose(fill) -> fill (#83623)

This is similar to the existing folder for a linalg.copy. Transposing a
filled tensor is the same as filling the destination of the transpose.


  Commit: ea628e3d7e78728e8605080ae1ab0ad55e3df191
      https://github.com/llvm/llvm-project/commit/ea628e3d7e78728e8605080ae1ab0ad55e3df191
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    A pyproject.toml

  Log Message:
  -----------
  [Py Reformat] Exclude `third-party` from reformat (#83491)


  Commit: 0ec318e57b0c7cbc0d9c899390daf3248cbe6a53
      https://github.com/llvm/llvm-project/commit/0ec318e57b0c7cbc0d9c899390daf3248cbe6a53
  Author: Matthias Gehre <matthias.gehre at amd.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M mlir/lib/Rewrite/ByteCode.cpp

  Log Message:
  -----------
  Fix unused variable in "[mlir][PDL] Add support for native constraints with results (#82760)"


  Commit: def16bca8133a2f49127a382061aa36406862a15
      https://github.com/llvm/llvm-project/commit/def16bca8133a2f49127a382061aa36406862a15
  Author: Artem Tyurin <artem.tyurin at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
    M mlir/test/Conversion/MemRefToSPIRV/memref-to-spirv.mlir

  Log Message:
  -----------
  [mlir][spirv] Retain nontemporal attribute when converting memref load/store (#82119)

Fixes #77156.


  Commit: 8b26e609e032b4535b90514e22875bfaa194216c
      https://github.com/llvm/llvm-project/commit/8b26e609e032b4535b90514e22875bfaa194216c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td

  Log Message:
  -----------
  [RISCV] Use the VR register allocation order for VM. (#83664)


  Commit: 4dd9c2ed3258c38bad4be53f7b2f943c79acd87f
      https://github.com/llvm/llvm-project/commit/4dd9c2ed3258c38bad4be53f7b2f943c79acd87f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctlz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctlz.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz.ll

  Log Message:
  -----------
  [RISCV] Use NewVL in splatPartsI64WithVL. (#83690)

In 7b5cf52f32c09, I added this NewVL and checked that it had been set,
but I didn't use it for the VL of the splat.


  Commit: 8fccf6bf5ccb4404cfe184ceda7c32e349e122c0
      https://github.com/llvm/llvm-project/commit/8fccf6bf5ccb4404cfe184ceda7c32e349e122c0
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/tools/opt/optdriver.cpp

  Log Message:
  -----------
  [opt] Use static arrays instead of std::vector to store legacy pass names. NFC (#83634)

A std::vector causes a heap allocation and a memcpy of static
initialization data from the rodata section.

Use a static array instead so we can use the static data directly.


  Commit: d5f77e112e6352d933afa22920a4a0d3bf8d26e5
      https://github.com/llvm/llvm-project/commit/d5f77e112e6352d933afa22920a4a0d3bf8d26e5
  Author: Brad Smith <brad at comstyle.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/DragonFly.cpp
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/lib/Driver/ToolChains/Haiku.cpp
    M clang/lib/Driver/ToolChains/NetBSD.cpp
    M clang/lib/Driver/ToolChains/OpenBSD.cpp
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/lib/Driver/ToolChains/Solaris.cpp

  Log Message:
  -----------
  [Driver] Remove duplicate -r flag usage when linking (#82715)

Bug #82010


  Commit: 6594f428de91e333c1cbea4f55e79b18d31024c4
      https://github.com/llvm/llvm-project/commit/6594f428de91e333c1cbea4f55e79b18d31024c4
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M bolt/include/bolt/Core/ParallelUtilities.h
    M lldb/include/lldb/Core/Debugger.h
    M llvm/include/llvm/Debuginfod/Debuginfod.h
    M llvm/include/llvm/Support/BalancedPartitioning.h
    M llvm/include/llvm/Support/ThreadPool.h
    M llvm/lib/Debuginfod/Debuginfod.cpp
    M llvm/lib/Support/ThreadPool.cpp
    M llvm/tools/llvm-cov/CoverageReport.h
    M llvm/tools/llvm-cov/SourceCoverageViewHTML.h
    M llvm/unittests/Support/ThreadPool.cpp
    M mlir/include/mlir/CAPI/Support.h
    M mlir/include/mlir/IR/MLIRContext.h
    M mlir/include/mlir/IR/Threading.h
    M mlir/lib/CAPI/IR/IR.cpp
    M mlir/lib/IR/MLIRContext.cpp
    M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp

  Log Message:
  -----------
  Split the llvm::ThreadPool into an abstract base class and an implementation (#82094)

This decouples the public API used to enqueue tasks and wait for
completion from the actual implementation, and opens up the possibility
for clients to set their own thread pool implementation for the pool.

https://discourse.llvm.org/t/construct-threadpool-from-vector-of-existing-threads/76883


  Commit: 6b70c5d79fe44cbe01b0443454c6952c5b541585
      https://github.com/llvm/llvm-project/commit/6b70c5d79fe44cbe01b0443454c6952c5b541585
  Author: George Koehler <kernigh at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCFrameLowering.cpp
    M llvm/test/CodeGen/PowerPC/crsave.ll

  Log Message:
  -----------
  [PowerPC] provide CFI for ELF32 to unwind cr2, cr3, cr4 (#83098)

Delete the code that skips the CFI for the condition register on ELF32.
The code checked !MustSaveCR, which happened only when
Subtarget.is32BitELFABI(), where spillCalleeSavedRegisters is spilling
cr in a different way. The spill was missing CFI. After deleting this
code, a spill of cr2 to cr4 gets CFI in the same way as a spill of r14
to r31.

Fixes #83094


  Commit: 6c6ea9d2b06c57b4c35b3d4bd6cc854a7b9a4590
      https://github.com/llvm/llvm-project/commit/6c6ea9d2b06c57b4c35b3d4bd6cc854a7b9a4590
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/DebugInfo/GSYM/CMakeLists.txt

  Log Message:
  -----------
  Fix BUILD_SHARED_LIBS=ON build for platforms which require explicit link of -lpthread (NFC)


  Commit: e52650cfc3aa5d134186c5a8fd6701a6fd0a1051
      https://github.com/llvm/llvm-project/commit/e52650cfc3aa5d134186c5a8fd6701a6fd0a1051
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M lldb/source/Core/Debugger.cpp

  Log Message:
  -----------
  Fix LLDB build after renaming the base class for ThreadPool to ThreadPoolInterface

The header was updated but not the implementation.


  Commit: 1a4f52c84257a2a0083abe37368c526a2f8cd928
      https://github.com/llvm/llvm-project/commit/1a4f52c84257a2a0083abe37368c526a2f8cd928
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/DWARFLinker/Classic/CMakeLists.txt

  Log Message:
  -----------
  More fix BUILD_SHARED_LIBS=ON build for platforms which require explicit link of -lpthread (NFC)

Some systems requires explictly providing -lpthread when linking, I don't
have such system so it is hard to find all the missing cases.


  Commit: e29cad6b3bb1f573ad5340771faa8a01cc05cb65
      https://github.com/llvm/llvm-project/commit/e29cad6b3bb1f573ad5340771faa8a01cc05cb65
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/DWARFLinker/Parallel/CMakeLists.txt

  Log Message:
  -----------
  More fix BUILD_SHARED_LIBS=ON build for platforms which require explicit link of -lpthread (NFC)

Some systems requires explictly providing -lpthread when linking, I don't
have such system so it is hard to find all the missing cases.


  Commit: 5f70f253c2b8978b50d20d37b25591b40dfe38d5
      https://github.com/llvm/llvm-project/commit/5f70f253c2b8978b50d20d37b25591b40dfe38d5
  Author: Alex Richardson <alexrichardson at google.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp

  Log Message:
  -----------
  [sanitizer_common] Remove unnecessary const_cast

This used to be required because rlim was declared volatile, but commit
d657f109d7080bd51ad70e88859acf64931152fe removed that workaround.


  Commit: 67221ed886b59b2f9b96a154e56e16e27dc3b1a4
      https://github.com/llvm/llvm-project/commit/67221ed886b59b2f9b96a154e56e16e27dc3b1a4
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

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

  Log Message:
  -----------
  More fix BUILD_SHARED_LIBS=ON build for platforms which require explicit link of -lpthread (NFC)

Some systems requires explictly providing -lpthread when linking, I don't
have such system so it is hard to find all the missing cases.


  Commit: c4621607245a5feed42cf9f748ff796728ef579a
      https://github.com/llvm/llvm-project/commit/c4621607245a5feed42cf9f748ff796728ef579a
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M clang/lib/Tooling/CMakeLists.txt

  Log Message:
  -----------
  More fix BUILD_SHARED_LIBS=ON build for platforms which require explicit link of -lpthread (NFC)

Some systems requires explictly providing -lpthread when linking, I don't
have such system so it is hard to find all the missing cases.


  Commit: 37293e69e6362e3559c1a4e1ac62b53f2b0edb0a
      https://github.com/llvm/llvm-project/commit/37293e69e6362e3559c1a4e1ac62b53f2b0edb0a
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h
    M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
    M llvm/lib/Target/X86/X86ExpandPseudo.cpp
    A llvm/test/CodeGen/X86/apx/long-instruction-fixup-x32.ll
    A llvm/test/CodeGen/X86/apx/long-instruction-fixup.ll

  Log Message:
  -----------
  [X86][CodeGen] Support long instruction fixup for APX NDD instructions (#83578)

RFC:
https://discourse.llvm.org/t/rfc-support-long-instruction-fixup-for-x86/76539


  Commit: 3f18f6a2cfecb080f006477c46d3626102841a17
      https://github.com/llvm/llvm-project/commit/3f18f6a2cfecb080f006477c46d3626102841a17
  Author: Quinn Dawkins <quinn.dawkins at gmail.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
    M mlir/test/Dialect/Linalg/reshape_fusion.mlir

  Log Message:
  -----------
  [mlir][linalg] Enable fusion by expansion of reduction and named ops (#83473)

This adds support for expansion of named linalg ops and linalg ops with
reduction iterators. This improves the ability to make fusion decisions
WRT reduction operations. To recover the previous behavior, users of the
patterns can add a control function to restrict propagation of reshape
by expansion through linalg ops with reduction iterators.

For named linalg ops, this always converts the named op into a generic.


  Commit: 800de14fab136f8e17c04cc783e0f8f2b305333b
      https://github.com/llvm/llvm-project/commit/800de14fab136f8e17c04cc783e0f8f2b305333b
  Author: David Green <david.green at arm.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M llvm/include/llvm/TargetParser/AArch64TargetParser.h
    M llvm/include/llvm/TargetParser/ARMTargetParser.def
    M llvm/include/llvm/TargetParser/ARMTargetParser.h
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [ARM][AArch64] Reformat target parser. NFC (#82601)

This is something we generally tend to avoid due to it confusing the git
history, but with the new github formatting bots being more noisy we
keep running into issues with the existing formatting when adding or
adjusting CPUs. This patch formats the code to make sure we are in a
good state going forward.


  Commit: eb3b063995d6b4f8f3bc22eeecbf239ffaecc29f
      https://github.com/llvm/llvm-project/commit/eb3b063995d6b4f8f3bc22eeecbf239ffaecc29f
  Author: AMS21 <AMS21.github at gmail.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/google/ExplicitConstructorCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/test/clang-tidy/checkers/google/explicit-constructor-cxx20.cpp

  Log Message:
  -----------
  [clang-tidy] Improve `google-explicit-constructor` checks handling of `explicit(bool)` (#82689)

We now treat `explicit(false)` the same way we treat `noexcept(false)`
in the noexcept checks, which is ignoring it.

Also introduced a new warning message if a constructor has an `explicit`
declaration which evaluates to false and no longer emit a faulty FixIt.

Fixes #81121


  Commit: 22f34ea3b05537235956c99fe942aa95b88762c0
      https://github.com/llvm/llvm-project/commit/22f34ea3b05537235956c99fe942aa95b88762c0
  Author: Jacques Pienaar <jpienaar at google.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Query/Matcher/ErrorBuilder.h
    M mlir/include/mlir/Query/Matcher/MatchersInternal.h
    M mlir/lib/Query/CMakeLists.txt
    M mlir/lib/Query/Matcher/Diagnostics.cpp
    M mlir/lib/Query/Matcher/Parser.cpp
    M mlir/lib/Query/Matcher/Parser.h
    M mlir/lib/Query/Matcher/RegistryManager.cpp
    M mlir/lib/Query/Matcher/RegistryManager.h
    M mlir/lib/Query/Query.cpp
    A mlir/test/mlir-query/function-extraction.mlir

  Log Message:
  -----------
  Reapply "[mlir-query] Add function extraction feature to mlir-query"

Fix build deps.

This reverts commit de55c2f869925a3ed7f26e168424021c6bc46799.


  Commit: a5d3a1dbc8c9bd1ea76550a4bac44d25b1e43a5e
      https://github.com/llvm/llvm-project/commit/a5d3a1dbc8c9bd1ea76550a4bac44d25b1e43a5e
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M libcxx/include/fstream

  Log Message:
  -----------
  [libc++] Refactors fstream open. (#76617)

This moves the duplicated code to one new function.

This is a preparation to fix
https://github.com/llvm/llvm-project/issues/60509


  Commit: 732a5cba8c739ed40a7280b5d74ca717910c2c4c
      https://github.com/llvm/llvm-project/commit/732a5cba8c739ed40a7280b5d74ca717910c2c4c
  Author: Jacques Pienaar <jpienaar at google.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Query/Matcher/ErrorBuilder.h
    M mlir/include/mlir/Query/Matcher/MatchersInternal.h
    M mlir/lib/Query/CMakeLists.txt
    M mlir/lib/Query/Matcher/Diagnostics.cpp
    M mlir/lib/Query/Matcher/Parser.cpp
    M mlir/lib/Query/Matcher/Parser.h
    M mlir/lib/Query/Matcher/RegistryManager.cpp
    M mlir/lib/Query/Matcher/RegistryManager.h
    M mlir/lib/Query/Query.cpp
    R mlir/test/mlir-query/function-extraction.mlir

  Log Message:
  -----------
  Revert "Reapply "[mlir-query] Add function extraction feature to mlir-query""

Commit fails on sanitizers.

This reverts commit 22f34ea3b05537235956c99fe942aa95b88762c0.


  Commit: 5b4759f9fd1419abc69e656c40f04a0fd9483d2a
      https://github.com/llvm/llvm-project/commit/5b4759f9fd1419abc69e656c40f04a0fd9483d2a
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/test/CodeGen/X86/2006-04-27-ISelFoldingBug.ll
    M llvm/test/CodeGen/X86/2007-08-09-IllegalX86-64Asm.ll
    M llvm/test/CodeGen/X86/2007-12-18-LoadCSEBug.ll
    M llvm/test/CodeGen/X86/2008-02-18-TailMergingBug.ll
    M llvm/test/CodeGen/X86/avx-cmp.ll
    M llvm/test/CodeGen/X86/cmp.ll
    M llvm/test/CodeGen/X86/dagcombine-and-setcc.ll
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-unsigned.ll
    M llvm/test/CodeGen/X86/inline-spiller-impdef-on-implicit-def-regression.ll
    M llvm/test/CodeGen/X86/lsr-addrecloops.ll
    M llvm/test/CodeGen/X86/movmsk-cmp.ll
    M llvm/test/CodeGen/X86/or-branch.ll
    M llvm/test/CodeGen/X86/peephole-na-phys-copy-folding.ll
    M llvm/test/CodeGen/X86/pr33747.ll
    M llvm/test/CodeGen/X86/pr37025.ll
    M llvm/test/CodeGen/X86/pr38795.ll
    M llvm/test/CodeGen/X86/setcc-logic.ll
    M llvm/test/CodeGen/X86/swifterror.ll
    M llvm/test/CodeGen/X86/tail-dup-merge-loop-headers.ll
    M llvm/test/CodeGen/X86/tail-opts.ll
    M llvm/test/CodeGen/X86/tailcall-extract.ll
    M llvm/test/CodeGen/X86/test-shrink-bug.ll
    M llvm/test/CodeGen/X86/x86-shrink-wrap-unwind.ll

  Log Message:
  -----------
  Revert "[X86] Don't always separate conditions in `(br (and/or cond0, cond1))` into separate branches"

This has been buggy for a while.

Reverts #81689
This reverts commit ae76dfb74701e05e5ab4be194e20e49f10768e46.


  Commit: 58b44c8102afb0e76d1cb70d4a5d089f70d2f657
      https://github.com/llvm/llvm-project/commit/58b44c8102afb0e76d1cb70d4a5d089f70d2f657
  Author: Jacques Pienaar <jpienaar at google.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Query/Matcher/ErrorBuilder.h
    M mlir/include/mlir/Query/Matcher/MatchersInternal.h
    M mlir/lib/Query/CMakeLists.txt
    M mlir/lib/Query/Matcher/Diagnostics.cpp
    M mlir/lib/Query/Matcher/Parser.cpp
    M mlir/lib/Query/Matcher/Parser.h
    M mlir/lib/Query/Matcher/RegistryManager.cpp
    M mlir/lib/Query/Matcher/RegistryManager.h
    M mlir/lib/Query/Query.cpp
    A mlir/test/mlir-query/function-extraction.mlir

  Log Message:
  -----------
  Reapply "Reapply "[mlir-query] Add function extraction feature to mlir-query""

Fix ASAN by erasing the op extracted post printing.

This reverts commit 732a5cba8c739ed40a7280b5d74ca717910c2c4c.


  Commit: 3ca73e03aaf516ed10df2ec79f92f73d9216c884
      https://github.com/llvm/llvm-project/commit/3ca73e03aaf516ed10df2ec79f92f73d9216c884
  Author: Jacques Pienaar <jpienaar at google.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M mlir/lib/Query/Query.cpp

  Log Message:
  -----------
  [mlir-query] Attempt to fix gcc7 build

I haven't tested via gcc7, but this should address the error reported.


  Commit: 03f150bb5688be72ae4dfb43fbe6795aae493e6d
      https://github.com/llvm/llvm-project/commit/03f150bb5688be72ae4dfb43fbe6795aae493e6d
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    R .arcconfig
    R .arclint
    M llvm/docs/Contributing.rst
    M llvm/docs/DeveloperPolicy.rst
    R llvm/docs/Phabricator.rst
    R llvm/docs/Phabricator_premerge_results.png
    R llvm/docs/Phabricator_premerge_unit_tests.png
    M llvm/docs/UserGuides.rst
    R utils/arcanist/clang-format.sh

  Log Message:
  -----------
  Removes arcanist and Phabricator information. (#82115)

Removes old arcanist configuration files and documentation of
Phabricator. This only removes the data that seems save to remove.


  Commit: 5f058398ab7a6c2cf3555daf190d3d13d68f78f5
      https://github.com/llvm/llvm-project/commit/5f058398ab7a6c2cf3555daf190d3d13d68f78f5
  Author: David Green <david.green at arm.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMInstrNEON.td
    M llvm/test/CodeGen/ARM/aes-erratum-fix.ll
    A llvm/test/CodeGen/ARM/aes.ll

  Log Message:
  -----------
  [ARM] Mark AESD and AESE instructions as commutative.

Similar to #83390, this marks AESD and AESE as commutative, as the logic of the
instructions starts as a XOR between the two operands.


  Commit: 0c89427b99f6f6d7c217c70ff880ca097340f9a4
      https://github.com/llvm/llvm-project/commit/0c89427b99f6f6d7c217c70ff880ca097340f9a4
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/Driver.cpp
    A clang/test/Driver/modules-print-library-module-manifest-path.cpp

  Log Message:
  -----------
  Reland "[clang][modules] Print library module manifest path." (#82160)

This implements a way for the compiler to find the modules.json
associated with the C++23 Standard library modules.

This is based on a discussion in SG15. At the moment no Standard library
installs this manifest. #75741 adds this feature in libc++.

This reverts commit 82f424f766be00b037a706a835d0a0663a2680f1.

Disables the tests on non-X86 platforms as suggested.


  Commit: 55357160d0e151c32f86e1d6683b4bddbb706aa1
      https://github.com/llvm/llvm-project/commit/55357160d0e151c32f86e1d6683b4bddbb706aa1
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M libcxx/include/__type_traits/remove_cv.h
    M libcxx/include/__type_traits/remove_cvref.h

  Log Message:
  -----------
  [libc++] Use GCC type traits builtins for remove_cv and remove_cvref (#81386)

They have been added recently to GCC without support for mangling. This
patch uses them in structs and adds aliases to these structs instead of
the builtins directly.


  Commit: 0c90e8837a9e5f27985ccaf85120083db9e1b43e
      https://github.com/llvm/llvm-project/commit/0c90e8837a9e5f27985ccaf85120083db9e1b43e
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M libcxx/src/iostream.cpp

  Log Message:
  -----------
  [libc++][NFC] Replace _ALIGNAS_TYPE with alignas in iostream.cpp


  Commit: 33de5a316caa3c9b07ee1ccc7fbc3434247ff787
      https://github.com/llvm/llvm-project/commit/33de5a316caa3c9b07ee1ccc7fbc3434247ff787
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__filesystem/path.h
    M libcxx/include/__functional/bind.h
    M libcxx/include/__functional/hash.h
    M libcxx/include/__functional/identity.h
    A libcxx/include/__fwd/functional.h
    R libcxx/include/__fwd/hash.h
    M libcxx/include/__thread/id.h
    M libcxx/include/__thread/support/pthread.h
    M libcxx/include/__type_traits/is_reference_wrapper.h
    M libcxx/include/__type_traits/unwrap_ref.h
    M libcxx/include/experimental/propagate_const
    M libcxx/include/filesystem
    M libcxx/include/libcxx.imp
    M libcxx/include/module.modulemap.in
    M libcxx/include/optional
    M libcxx/include/type_traits
    M libcxx/test/libcxx/transitive_includes/cxx23.csv
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    M libcxx/utils/generate_iwyu_mapping.py

  Log Message:
  -----------
  [libc++] Rename __fwd/hash.h to __fwd/functional.h and add reference_wrapper (#81445)

We forward declare `reference_wrapper` in multiple places already. This
moves the declaration to the canonical place and removes unnecessary
includes of `__functional/reference_wrapper.h`.


  Commit: 09b34b998d9d84fa4740c1f2821699250fc318cb
      https://github.com/llvm/llvm-project/commit/09b34b998d9d84fa4740c1f2821699250fc318cb
  Author: Aiden Grossman <agrossman154 at yahoo.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M .github/workflows/build-ci-container.yml

  Log Message:
  -----------
  [Github] Make CI container build more reliable (#83707)


  Commit: 5105f1551b4bc800f564e7c105fc95e2c51f1239
      https://github.com/llvm/llvm-project/commit/5105f1551b4bc800f564e7c105fc95e2c51f1239
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

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

  Log Message:
  -----------
  [gn build] Port 33de5a316caa


  Commit: 2435dcd83a32c63aef91c82cb19b08604ba96b64
      https://github.com/llvm/llvm-project/commit/2435dcd83a32c63aef91c82cb19b08604ba96b64
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    A llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [VPlan] Add initial pattern match implementation for VPInstruction. (#80563)

Add an initial version of a pattern match for VPValues and recipes,
starting with VPInstruction.

PR: https://github.com/llvm/llvm-project/pull/80563


  Commit: 3dd6750027cd168fce5fd9894b0bac0739652cf5
      https://github.com/llvm/llvm-project/commit/3dd6750027cd168fce5fd9894b0bac0739652cf5
  Author: David Majnemer <david.majnemer at gmail.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/CodeGen/ValueTypes.h
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
    M llvm/test/Analysis/CostModel/AArch64/reduce-fadd.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/lower-neon-vector-fcmp.mir
    M llvm/test/CodeGen/AArch64/implicitly-set-zero-high-64-bits.ll
    M llvm/test/CodeGen/AArch64/neon-compare-instructions.ll
    M llvm/test/CodeGen/AArch64/round-fptosi-sat-scalar.ll
    M llvm/test/CodeGen/AArch64/vector-fcopysign.ll

  Log Message:
  -----------
  [AArch64] Add more complete support for BF16

We can use a small amount of integer arithmetic to round FP32 to BF16
and extend BF16 to FP32.

While a number of operations still require promotion, this can be
reduced for some rather simple operations like abs, copysign, fneg but
these can be done in a follow-up.

A few neat optimizations are implemented:
- round-inexact-to-odd is used for F64 to BF16 rounding.
- quieting signaling NaNs for f32 -> bf16 tries to detect if a prior
  operation makes it unnecessary.


  Commit: b29301cd40441b5eb8cef9356429fb081e6b6a72
      https://github.com/llvm/llvm-project/commit/b29301cd40441b5eb8cef9356429fb081e6b6a72
  Author: Po-yao Chang <poyaoc97 at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libcxx/include/__format/parser_std_format_spec.h
    M libcxx/test/std/containers/container.adaptors/container.adaptors.format/format.functions.tests.h
    M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.range/format.range.fmtset/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.tuple/format.functions.tests.h

  Log Message:
  -----------
  [libc++][format] Handle range-underlying-spec (#81914)

An immediate colon signifeis that the range-format-spec contains only
range-underlying-spec.

This patch allows this code to compile and run:
```c++
std::println("{::<<9?}", std::span<const char>{"Hello", sizeof "Hello"});
```


  Commit: 5f058aa211995d2f0df2a0e063532832569cb7a8
      https://github.com/llvm/llvm-project/commit/5f058aa211995d2f0df2a0e063532832569cb7a8
  Author: Lu Weining <luweining at loongson.cn>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    M llvm/test/CodeGen/LoongArch/atomicrmw-uinc-udec-wrap.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/atomic-cmpxchg.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw-fp.ll

  Log Message:
  -----------
  [LoongArch] Override LoongArchTargetLowering::getExtendForAtomicCmpSwapArg (#83656)

This patch aims to solve Firefox issue:
https://bugzilla.mozilla.org/show_bug.cgi?id=1882301

Similar to 616289ed2922. Currently LoongArch uses an ll.[wd]/sc.[wd]
loop for ATOMIC_CMP_XCHG. Because the comparison in the loop is
full-width (i.e. the `bne` instruction), we must sign extend the input
comparsion argument.

Note that LoongArch ISA manual V1.1 has introduced compare-and-swap
instructions. We would change the implementation (return `ANY_EXTEND`)
when we support them.


  Commit: 8d1046ae49fdf7585f70cfbb35bcfc46725d9b29
      https://github.com/llvm/llvm-project/commit/8d1046ae49fdf7585f70cfbb35bcfc46725d9b29
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/PowerPC/insert_extract-inseltpoison.ll
    M llvm/test/Analysis/CostModel/PowerPC/insert_extract.ll

  Log Message:
  -----------
  [PowerPC] adjust cost for extract i64 from vector on P9 and above (#82963)

https://godbolt.org/z/Ma347Tx1W


  Commit: 61c283db4be0c8ff1832afa754a9a6b45dcf2b06
      https://github.com/llvm/llvm-project/commit/61c283db4be0c8ff1832afa754a9a6b45dcf2b06
  Author: Yeting Kuo <46629943+yetingk at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/ScalarizeMaskedMemIntrin.cpp
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-compressstore-fp.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-compressstore-int.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-expandload-fp.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-expandload-int.ll

  Log Message:
  -----------
  [ScalarizeMaskedMemIntrin] Use pointer alignment from pointer of masked.compressstore/expandload. (#83519)

Previously we used Align(1) for all scalarized load/stores from
masked.compressstore/expandload.
For targets not supporting unaligned accesses, it make backend need to
split
aligned large width loads/stores to byte loads/stores.
To solve this performance issue, this patch preserves the alignment of
base
pointer after scalarizing.


  Commit: 9606655fbb03b1cf1c69d624c7320630e85f33e6
      https://github.com/llvm/llvm-project/commit/9606655fbb03b1cf1c69d624c7320630e85f33e6
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Transforms/test-legalizer.mlir
    M mlir/test/lib/Dialect/Test/TestOps.td

  Log Message:
  -----------
  [mlir][Transforms] Fix use-after-free when accessing replaced block args (#83646)

This commit fixes a bug in a dialect conversion. Currently, when a block
is replaced via a signature conversion, the block is erased during the
"commit" phase. This is problematic because the block arguments may
still be referenced internal data structures of the dialect conversion
(`mapping`). Blocks should be treated same as ops: they should be erased
during the "cleanup" phase.

Note: The test case fails without this fix when running with ASAN, but
may pass when running without ASAN.


  Commit: 2b5cd8be3af43e5aa5b76b6aeb1edd3141b803ca
      https://github.com/llvm/llvm-project/commit/2b5cd8be3af43e5aa5b76b6aeb1edd3141b803ca
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M clang/include/clang/Driver/Driver.h
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/DragonFly.cpp
    M clang/lib/Driver/ToolChains/Fuchsia.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Driver/ToolChains/MSVC.cpp
    M clang/lib/Driver/ToolChains/MinGW.cpp
    M clang/lib/Driver/ToolChains/MipsLinux.cpp
    M clang/lib/Driver/ToolChains/OHOS.cpp
    M clang/lib/Driver/ToolChains/WebAssembly.cpp
    M clang/lib/Driver/ToolChains/ZOS.cpp

  Log Message:
  -----------
  [Driver] Remove InstallDir and getInstalledDir. NFC

Follow-up to #80527.


  Commit: ff72c83b017ba636be13750c7f96cd87fc22c465
      https://github.com/llvm/llvm-project/commit/ff72c83b017ba636be13750c7f96cd87fc22c465
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrVecCompiler.td
    M llvm/test/CodeGen/X86/avx512bf16-vl-intrinsics.ll
    M llvm/test/CodeGen/X86/bfloat.ll

  Log Message:
  -----------
  [X86] Add missing subvector_subreg_lowering for BF16 (#83720)

Fixes: #83358


  Commit: 938ddbf349276c6ded6ef2d65432f41c512a86c6
      https://github.com/llvm/llvm-project/commit/938ddbf349276c6ded6ef2d65432f41c512a86c6
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Darwin.cpp

  Log Message:
  -----------
  [Driver,Darwin] Simplify libc++ include path after #80527. NFC

My #80527 mentioned that `InstalledDir` was weird in the
-canonical-prefixes mode. #70817 was a workaround to find the libc++
include path for a symlinked clang. After #80527, `InstalledDir` was
identical to `Dir` and was subsequently removed, the code change #70817
can be reverted.


  Commit: ccc48d45b832def14c8bc1849cf64c805892368d
      https://github.com/llvm/llvm-project/commit/ccc48d45b832def14c8bc1849cf64c805892368d
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/half-constrained.ll

  Log Message:
  -----------
  [X86][NFC] Replace X32 check prefixes with X86

We try to only use X32 for gnux32 triple tests.


  Commit: b0c158bd947c360a4652eb0de3a4794f46deb88b
      https://github.com/llvm/llvm-project/commit/b0c158bd947c360a4652eb0de3a4794f46deb88b
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/extendbfsf2.c
    M compiler-rt/lib/builtins/fp_extend.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/include/llvm/IR/RuntimeLibcalls.def
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    A llvm/test/CodeGen/X86/bfloat-constrained.ll

  Log Message:
  -----------
  [SelectionDAG] Add `STRICT_BF16_TO_FP` and `STRICT_FP_TO_BF16` (#80056)

This patch adds the support for `STRICT_BF16_TO_FP` and
`STRICT_FP_TO_BF16`.


  Commit: e6e53ca8470d719882539359ebe3ad8b442a8cb0
      https://github.com/llvm/llvm-project/commit/e6e53ca8470d719882539359ebe3ad8b442a8cb0
  Author: Nathan Ridge <zeratul976 at hotmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang-tools-extra/clangd/HeuristicResolver.cpp
    M clang-tools-extra/clangd/HeuristicResolver.h
    M clang-tools-extra/clangd/unittests/FindTargetTests.cpp

  Log Message:
  -----------
  [clangd] [HeuristicResolver] Protect against infinite recursion on DependentNameTypes (#83542)

When resolving names inside templates that implement recursive
compile-time functions (e.g. waldo<N>::type is defined in terms
of waldo<N-1>::type), HeuristicResolver could get into an infinite
recursion, specifically one where resolveDependentNameType() can
be called recursively with the same DependentNameType*.

To guard against this, HeuristicResolver tracks, for each external
call into a HeuristicResolver function, the set of DependentNameTypes
that it has seen, and bails if it sees the same DependentNameType again.

To implement this, a helper class HeuristicResolverImpl is introduced
to store state that persists for the duration of an external call into
HeuristicResolver (but does not persist between such calls).

Fixes https://github.com/clangd/clangd/issues/1951


  Commit: 2c5d01c2cfa80fd734b94833bdf7b5b3f6f2ebb0
      https://github.com/llvm/llvm-project/commit/2c5d01c2cfa80fd734b94833bdf7b5b3f6f2ebb0
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt
    R compiler-rt/lib/builtins/extendbfsf2.c
    M compiler-rt/lib/builtins/fp_extend.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/include/llvm/IR/RuntimeLibcalls.def
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    R llvm/test/CodeGen/X86/bfloat-constrained.ll

  Log Message:
  -----------
  Revert "[SelectionDAG] Add `STRICT_BF16_TO_FP` and `STRICT_FP_TO_BF16` (#80056)"

This reverts commit b0c158bd947c360a4652eb0de3a4794f46deb88b.

The changes in `compiler-rt` broke tests.


  Commit: 8300f30a9234ee46b2b941e8b07cb7d104c846cb
      https://github.com/llvm/llvm-project/commit/8300f30a9234ee46b2b941e8b07cb7d104c846cb
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/extendbfsf2.c
    M compiler-rt/lib/builtins/fp_extend.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/include/llvm/IR/RuntimeLibcalls.def
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    A llvm/test/CodeGen/X86/bfloat-constrained.ll

  Log Message:
  -----------
  [SelectionDAG] Add `STRICT_BF16_TO_FP` and `STRICT_FP_TO_BF16` (#80056)

This patch adds the support for `STRICT_BF16_TO_FP` and
`STRICT_FP_TO_BF16`.


  Commit: aa6ebf9be124664945f32f2be1167e6453788f40
      https://github.com/llvm/llvm-project/commit/aa6ebf9be124664945f32f2be1167e6453788f40
  Author: Daniel Martinez <danielpedromartinez at duck.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M openmp/libomptarget/include/Shared/SourceInfo.h
    M openmp/libomptarget/include/omptarget.h
    M openmp/libomptarget/plugins-nextgen/common/include/RPC.h

  Log Message:
  -----------
  Replace some C headers with C++ ones (#82697)

#81434

Replaced some C headers with C++ ones

Co-authored-by: Daniel Martinez <danielmartinez at cock.li>


  Commit: 23bc5b6392c61980d24cc23a61a020f7aaf858bf
      https://github.com/llvm/llvm-project/commit/23bc5b6392c61980d24cc23a61a020f7aaf858bf
  Author: David Majnemer <david.majnemer at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp

  Log Message:
  -----------
  [AArch64] Mark bf16 as custom for truncating stores & add a comment

While we don't use SVE2 as a fallback for missing NEON instructions for
BF16, it is confusing to break symmetry with fp16.

While we are here, add a comment explaining how BF16 immediates work.


  Commit: 43222bd3091db5403e3320d23a241a534c1eefec
      https://github.com/llvm/llvm-project/commit/43222bd3091db5403e3320d23a241a534c1eefec
  Author: Michal Paszkowski <michal at paszkowski.org>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.h
    M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVMetadata.cpp
    M llvm/lib/Target/SPIRV/SPIRVMetadata.h
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.h
    M llvm/test/CodeGen/SPIRV/function/alloca-load-store.ll
    M llvm/test/CodeGen/SPIRV/half_no_extension.ll
    M llvm/test/CodeGen/SPIRV/instructions/undef-nested-composite-store.ll
    M llvm/test/CodeGen/SPIRV/instructions/undef-simple-composite-store.ll
    M llvm/test/CodeGen/SPIRV/opaque_pointers.ll
    M llvm/test/CodeGen/SPIRV/opencl/basic/get_global_offset.ll
    R llvm/test/CodeGen/SPIRV/opencl/metadata/kernel_arg_type_function_metadata.ll
    R llvm/test/CodeGen/SPIRV/opencl/metadata/kernel_arg_type_module_metadata.ll
    M llvm/test/CodeGen/SPIRV/opencl/vload2.ll
    A llvm/test/CodeGen/SPIRV/opencl/vstore2.ll
    A llvm/test/CodeGen/SPIRV/passes/SPIRVEmitIntrinsics-TargetExtType-arg-no-spv_assign_type.ll
    A llvm/test/CodeGen/SPIRV/passes/SPIRVEmitIntrinsics-no-divergent-spv_assign_ptr_type.ll
    A llvm/test/CodeGen/SPIRV/passes/SPIRVEmitIntrinsics-no-duplicate-spv_assign_type.ll
    M llvm/test/CodeGen/SPIRV/pointers/getelementptr-kernel-arg-char.ll
    A llvm/test/CodeGen/SPIRV/pointers/kernel-argument-builtin-vload-type-discrapency.ll
    A llvm/test/CodeGen/SPIRV/pointers/kernel-argument-pointer-type-deduction-mismatch.ll
    A llvm/test/CodeGen/SPIRV/pointers/kernel-argument-pointer-type-deduction-no-metadata.ll
    A llvm/test/CodeGen/SPIRV/pointers/ptr-argument-byref.ll
    A llvm/test/CodeGen/SPIRV/pointers/ptr-argument-byval.ll
    A llvm/test/CodeGen/SPIRV/pointers/store-operand-ptr-to-struct.ll
    A llvm/test/CodeGen/SPIRV/pointers/two-bitcast-or-param-users.ll
    R llvm/test/CodeGen/SPIRV/pointers/two-bitcast-users.ll
    M llvm/test/CodeGen/SPIRV/pointers/two-subsequent-bitcasts.ll
    M llvm/test/CodeGen/SPIRV/sitofp-with-bool.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/atomic_cmpxchg.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/atomic_legacy.ll
    M llvm/test/CodeGen/SPIRV/transcoding/spirv-private-array-initialization.ll
    M llvm/test/CodeGen/SPIRV/uitofp-with-bool.ll

  Log Message:
  -----------
  [SPIR-V] Do not use OpenCL metadata for ptr element type resolution (#82678)

This pull request aims to remove any dependency on OpenCL/SPIR-V type
information in LLVM IR metadata. While, using metadata might simplify
and prettify the resulting SPIR-V output (and restore some of the
information missed in the transformation to opaque pointers), the
overall methodology for resolving kernel parameter types is highly
inefficient.

The high-level strategy is to assign kernel parameter types in this order:

1. Resolving the types using builtin function calls as mangled names
must contain type information or by looking up builtin definition in
SPIRVBuiltins.td. Then:

- Assigning the type temporarily using an intrinsic and later setting
the right SPIR-V type in SPIRVGlobalRegistry after IRTranslation
 - Inserting a bitcast
2. Defaulting to LLVM IR types (in case of pointers the generic i8*
type or types from byval/byref attributes)

In case of type incompatibility (e.g. parameter defined initially as
sampler_t and later used as image_t) the error will be found early on
before IRTranslation (in the SPIRVEmitIntrinsics pass).


  Commit: 354deba10a99136a3204dfa8128e53cd6e9558a7
      https://github.com/llvm/llvm-project/commit/354deba10a99136a3204dfa8128e53cd6e9558a7
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/MemoryAllocation.cpp

  Log Message:
  -----------
  [flang] Fix use-after-free in `MemoryAllocation.cpp` (#83768)

`AllocaOpConversion` takes an `ArrayRef<Operation *>`, but the
underlying `SmallVector<Operation *>` was dead by the time the pattern
ran.


  Commit: a282109411596ef814aefeec735a2965d6aa4573
      https://github.com/llvm/llvm-project/commit/a282109411596ef814aefeec735a2965d6aa4573
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Transforms/DialectConversion.h
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/lib/Dialect/Test/TestPatterns.cpp

  Log Message:
  -----------
  [mlir][Transforms] Encapsulate dialect conversion options in `ConversionConfig` (#83754)

This commit adds a new `ConversionConfig` struct that allows users to
customize the dialect conversion. This configuration is similar to
`GreedyRewriteConfig` for the greedy pattern rewrite driver.

A few existing options are moved to this objects, simplifying the
dialect conversion API.

This is a re-upload of #82250. The Windows build breakage was fixed in #83768.

This reverts commit 60fbd6050107875956960c3ce35cf94b202d8675.


  Commit: 3a146d5720fb9857cebc17fbc2d42fb589647680
      https://github.com/llvm/llvm-project/commit/3a146d5720fb9857cebc17fbc2d42fb589647680
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    A llvm/test/tools/llvm-mca/AMDGPU/gfx940-mfma.s

  Log Message:
  -----------
  AMDGPU: Partially re-add scheduling test for gfx940

31295bbe83c3ea9d8a3372efe34342a299d1018a reverted the original patch.
Submit part of the test that happens to not hit the sanitizer error,
which covers the instructions I more need test coverage for.


  Commit: 8715f256911786520bb727ce067098d7082ac45c
      https://github.com/llvm/llvm-project/commit/8715f256911786520bb727ce067098d7082ac45c
  Author: Exile <2094247798 at qq.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp

  Log Message:
  -----------
  [clang][StaticAnalyzer] fix function evalCall() typo in CheckerDocumentation (#83677)

```bool evalCall(const CallEvent &Call, CheckerContext &C)``` is corret form.

Co-authored-by: miaozhiyuan <miaozhiyuan at feysh.com>


  Commit: 63725ab1196ac50509ad382fc12c56f6d8b5d874
      https://github.com/llvm/llvm-project/commit/63725ab1196ac50509ad382fc12c56f6d8b5d874
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    A llvm/test/CodeGen/RISCV/rvv/pr83017.ll

  Log Message:
  -----------
  [RISCV] Add test for aliasing miscompile fixed by #83017. NFC

Previously we incorrectly removed the scalar load store pair here assuming it
was dead, when it actually aliased with the memset.  This showed up as a
miscompile on SPEC CPU 2017 when compiling with -mrvv-vector-bits, and was only
triggered by the changes in #75531.  This was fixed in #83017, but this patch
adds a test case for this specific miscompile.

For reference, the incorrect codegen was:

	vsetvli	a1, zero, e8, m4, ta, ma
	vmv.v.i	v8, 0
	vs4r.v	v8, (a0)
	addi	a1, a0, 80
	vsetivli	zero, 16, e8, m1, ta, ma
	vmv.v.i	v8, 0
	vs1r.v	v8, (a1)
	addi	a0, a0, 64
	vs1r.v	v8, (a0)


  Commit: c7fdd8c11e54585dc9d15d63de9742067e0506b9
      https://github.com/llvm/llvm-project/commit/c7fdd8c11e54585dc9d15d63de9742067e0506b9
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/include/llvm/ADT/GenericConvergenceVerifier.h
    M llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    A llvm/include/llvm/CodeGen/MachineConvergenceVerifier.h
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/IR/GenericConvergenceVerifierImpl.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/Target.td
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/CodeGen/CMakeLists.txt
    A llvm/lib/CodeGen/MachineConvergenceVerifier.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/CodeGen/ValueTypes.cpp
    M llvm/lib/IR/ConvergenceVerifier.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    A llvm/test/CodeGen/AMDGPU/convergence-tokens.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-cc.ll
    M llvm/test/CodeGen/AMDGPU/kernel-vgpr-spill-mubuf-with-voffset.ll
    M llvm/test/CodeGen/AMDGPU/need-fp-from-vgpr-spills.ll
    M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-liverange-ir.ll
    M llvm/test/CodeGen/AMDGPU/vgpr_constant_to_sgpr.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-register-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
    M llvm/test/CodeGen/PowerPC/fmf-propagation.ll
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/basic.mir
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/cycles.mir
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/lit.local.cfg
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/mixed2.mir
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/region-nesting.mir
    M llvm/test/TableGen/GlobalISelCombinerEmitter/builtins/match-table-replacerreg.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-imms.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-intrinsics.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-patfrag-root.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-variadics.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td

  Log Message:
  -----------
  Restore "Implement convergence control in MIR using SelectionDAG (#71785)"

Original commit 79889734b940356ab3381423c93ae06f22e772c9.
Perviously reverted in commit a2afcd5721869d1d03c8146bae3885b3385ba15e.

LLVM function calls carry convergence control tokens as operand bundles, where
the tokens themselves are produced by convergence control intrinsics. This patch
implements convergence control tokens in MIR as follows:

1. Introduce target-independent ISD opcodes and MIR opcodes for convergence
   control intrinsics.
2. Model token values as untyped virtual registers in MIR.

The change also introduces an additional ISD opcode CONVERGENCECTRL_GLUE and a
corresponding machine opcode with the same spelling. This glues the convergence
control token to SDNodes that represent calls to intrinsics. The glued token is
later translated to an implicit argument in the MIR.

The lowering of calls to user-defined functions is target-specific. On AMDGPU,
the convergence control operand bundle at a non-intrinsic call is translated to
an explicit argument to the SI_CALL_ISEL instruction. Post-selection adjustment
converts this explicit argument to an implicit argument on the SI_CALL
instruction.


  Commit: 3d14e85578ab4f91bfe74497c69ad5dec3007621
      https://github.com/llvm/llvm-project/commit/3d14e85578ab4f91bfe74497c69ad5dec3007621
  Author: Ben Shi <2283975856 at qq.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AVR/AVRInstrInfo.td
    M llvm/lib/Target/AVR/AVRRegisterInfo.td

  Log Message:
  -----------
  [AVR][NFC] Reformat target description files (#83755)


  Commit: a015f591766e4e3a3a23bbab7ca5dfec8f8deb18
      https://github.com/llvm/llvm-project/commit/a015f591766e4e3a3a23bbab7ca5dfec8f8deb18
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M flang/test/Fir/memory-allocation-opt.fir

  Log Message:
  -----------
  [flang] disable memory-allocation-opt.fir test on windows (#83535)

It is randomly failing in windows pre-merge checks and causing noise in
Github PRs.

Not clear why it is crashing on windows, issue opened:
https://github.com/llvm/llvm-project/issues/83534


  Commit: 408d4e131ef7b30c3bc419f5219f7ca20ca9ac1d
      https://github.com/llvm/llvm-project/commit/408d4e131ef7b30c3bc419f5219f7ca20ca9ac1d
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M flang/include/flang/Optimizer/CodeGen/CodeGen.h
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp

  Log Message:
  -----------
  [flang][NFC] Expose FIR to LLVM patterns (#83492)

The FIR dialect has been initiated before many interfaces have been
introduced to MLIR. This patch expose the FIR to LLVM patterns in a
`populateFIRToLLVMConversionPatterns` function. The idea is to be able
to add the `ConvertToLLVMPatternInterface`. This is not directly
possible since the FIR dialect does not currently use the table
infrastructure for its definition.

Follow up patches will move the FIR dialect definition to table gen and
then implement the interface.


  Commit: 96b2c3bde72ec6b681b03370f9650cfd03e66753
      https://github.com/llvm/llvm-project/commit/96b2c3bde72ec6b681b03370f9650cfd03e66753
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
    A llvm/test/MC/X86/apx/long-instruction-err.s

  Log Message:
  -----------
  [X86][MC] Report error when the instruction length exceeds 15 bytes (#83708)

The instruction-size limit of 15 bytes still applies to APX
instructions.

Note that it is possible for an EVEX-encoded legacy instruction to reach
the 15-byte instruction length limit: 4
bytes of EVEX prefix + 1 byte of opcode + 1 byte of ModRM + 1 byte of
SIB + 4 bytes of displacement + 4 bytes of immediate = 15 bytes in
total, e.g.

```
addq    $184, -96, %rax   # encoding:
[0x62,0xf4,0xfc,0x18,0x81,0x04,0x25,0xa0,0xff,0xff,0xff,0xb8,0x00,0x00,0x00]
```

If we added a segment prefix like fs, the length would be 16.

In such a case, no additional (ASIZE or segment override) prefix can be
used.

To help users find this issue earlier, especially for assembler users,
we change
the internal compiler error to error in this patch.

Diagnostic is aligned with GAS
https://sourceware.org/bugzilla/show_bug.cgi?id=31323


  Commit: 7af4e8bcc354d2bd7e46ecf547172b1f19ddde3e
      https://github.com/llvm/llvm-project/commit/7af4e8bcc354d2bd7e46ecf547172b1f19ddde3e
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/test/Analysis/analyzer-config.c

  Log Message:
  -----------
  [clang][analyzer] Change default value of checker option in unix.StdCLibraryFunctions. (#80457)

Default value of checker option `ModelPOSIX` is changed to `true`.
Documentation is updated.


  Commit: db76af28f600a2607152096cf623560705f0215f
      https://github.com/llvm/llvm-project/commit/db76af28f600a2607152096cf623560705f0215f
  Author: Jacques Pienaar <jpienaar at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/lib/Query/Query.cpp

  Log Message:
  -----------
  [mlir-query] Fix ambiguous overload

gcc7 fix didn't work (but unfortunately didn't get a notification and
forgot to check), this should hopefully address the ambiguous overload.
I can't repro locally/trying to create docker image for testing.


  Commit: da5966e0c102f03ab853b906377814675db3623c
      https://github.com/llvm/llvm-project/commit/da5966e0c102f03ab853b906377814675db3623c
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/test/Analysis/analyzer-config.c

  Log Message:
  -----------
  Revert "[clang][analyzer] Change default value of checker option in unix.StdCLibraryFunctions. (#80457)"

This reverts commit 7af4e8bcc354d2bd7e46ecf547172b1f19ddde3e.


  Commit: aaf5c818b3b84a49f0c14879c141c7770f0fcf4b
      https://github.com/llvm/llvm-project/commit/aaf5c818b3b84a49f0c14879c141c7770f0fcf4b
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [mlir][Transforms][NFC] Simplify `BlockTypeConversionRewrite` (#83286)

When a block signature is converted during dialect conversion, a
`BlockTypeConversionRewrite` object is stored in the stack of rewrites.
Such an object represents multiple steps:
- Splitting the old block, i.e., creating a new block and moving all
operations over.
- Rewriting block arguments.
- Erasing the old block.

We have dedicated `IRRewrite` objects that represent "creating a block",
"moving an op" and "erasing a block". This commit reuses those rewrite
objects, so that there is less work to do in
`BlockTypeConversionRewrite::rollback` and
`BlockTypeConversionRewrite::commit`/`cleanup`.

Note: This change is in preparation of adding listener support to the
dialect conversion. The less work is done in a `commit` function, the
fewer notifications will have to be sent.


  Commit: 71c2a132b2713c568ef41b0d18f92c4fa8ee73a6
      https://github.com/llvm/llvm-project/commit/71c2a132b2713c568ef41b0d18f92c4fa8ee73a6
  Author: sinan <sinan.lin at linux.alibaba.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M bolt/lib/Core/Relocation.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/unittests/Core/BinaryContext.cpp

  Log Message:
  -----------
  [BOLT] support AArch64 JUMP26 createRelocation (#83531)

Add R_AARCH64_JUMP26 implementation for createRelocation, which
could significantly reduce the number of failed scan-refs cases if we
perform bolt on a selective range of functions.


  Commit: 310a278812319a7cae86239c975738019b5d90a3
      https://github.com/llvm/llvm-project/commit/310a278812319a7cae86239c975738019b5d90a3
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [mlir][Transforms][NFC] Simplify handling of erased IR (#83423)

The dialect conversion uses a `SingleEraseRewriter` to ensure that an
op/block is not erased twice. This can happen during the "commit" phase
when an unresolved materialization is inserted into a block and the
enclosing op is erased by the user. In that case, the unresolved
materialization should not be erased a second time later in the "commit"
phase.

This problem cannot happen during "rollback", so ops/block can be erased
directly without using the rewriter. With this change, the
`SingleEraseRewriter` is used only during "commit"/"cleanup". At that
point, the dialect conversion is guaranteed to succeed and no rollback
can happen. Therefore, it is not necessary to store the number of erased
IR objects (because we will never "reset" the rewriter to previous a
previous state).


  Commit: c6565f22bedc5074dd2b47f62ea6569ca9906c94
      https://github.com/llvm/llvm-project/commit/c6565f22bedc5074dd2b47f62ea6569ca9906c94
  Author: Ingo Müller <ingomueller at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [mlir][bazel] Remove defines of obsolete MLIR_GPU_TO_CUBIN_PASS_ENABLE. (#83006)

This macro is obsolete since the landing of #82486 but was forgotten to
be removed from the BUILD files.


  Commit: 5dc9e87c8cae7842edcaa4dd01308873109208da
      https://github.com/llvm/llvm-project/commit/5dc9e87c8cae7842edcaa4dd01308873109208da
  Author: NagyDonat <donat.nagy at ericsson.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp

  Log Message:
  -----------
   [analyzer] Improve some comments in ArrayBoundCheckerV2 (NFC) (#83545)

This comment-only change fixes a typo, clarifies some comments and
includes some thoughts about the difficulties in resolving a certain
FIXME.


  Commit: ded5de11faca916e0434df2e43653559d564c2df
      https://github.com/llvm/llvm-project/commit/ded5de11faca916e0434df2e43653559d564c2df
  Author: Dani <daniel.kiss at arm.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/include/llvm/IR/AutoUpgrade.h
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/Linker/IRMover.cpp
    M llvm/test/LTO/AArch64/link-branch-target-enforcement.ll
    A llvm/test/LTO/AArch64/link-sign-return-address.ll
    M llvm/test/Linker/link-arm-and-thumb.ll

  Log Message:
  -----------
  [llvm][AArch64] Autoupgrade function attributes from Module attributes. (#82763)

sign-return-address and similar module attributes should be propagated to
the function level before got merged because module flags may contradict and
this information is not recoverable.
Generated code will match with the normal linking flow.

Refactored version of  (#80640).
Run the attribute copy only during IRMove.


  Commit: f7d4236adf8e0865e734216626c378345f673ca5
      https://github.com/llvm/llvm-project/commit/f7d4236adf8e0865e734216626c378345f673ca5
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libc/src/__support/FPUtil/ManipulationFunctions.h
    M libc/src/__support/FPUtil/NormalFloat.h
    M libc/src/__support/FPUtil/generic/sqrt.h
    M libc/src/__support/FPUtil/generic/sqrt_80_bit_long_double.h
    M libc/src/__support/FPUtil/x86_64/sqrt.h
    M libc/src/__support/float_to_string.h
    M libc/src/__support/macros/properties/types.h
    M libc/src/__support/str_to_float.h
    M libc/test/src/__support/FPUtil/fpbits_test.cpp
    M libc/test/src/__support/str_to_long_double_test.cpp
    M libc/test/src/math/smoke/nanl_test.cpp
    M libc/test/src/stdio/sprintf_test.cpp
    M libc/test/src/stdio/sscanf_test.cpp
    M libc/test/src/stdlib/strtold_test.cpp

  Log Message:
  -----------
  [libc][NFC] Rename `LIBC_LONG_DOUBLE_IS_` macros (#83399)

Umbrella bug #83182


  Commit: 982e9022ca4abaad58c693d2b0aba0e908ee2d39
      https://github.com/llvm/llvm-project/commit/982e9022ca4abaad58c693d2b0aba0e908ee2d39
  Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-workgroup.ll

  Log Message:
  -----------
  [AMDGPU] Add GFX12 memory legalizer tests (#83814)


  Commit: cad6ad2759a782c48193f83886488dacc9f330e3
      https://github.com/llvm/llvm-project/commit/cad6ad2759a782c48193f83886488dacc9f330e3
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/test/Transforms/Inline/X86/call-abi-compatibility.ll

  Log Message:
  -----------
  [Inline] Add test for #67054 (NFC)


  Commit: 540d255167742b6464a01f052d31c704fc4dd5aa
      https://github.com/llvm/llvm-project/commit/540d255167742b6464a01f052d31c704fc4dd5aa
  Author: Vyacheslav Levytskyy <89994100+VyacheslavLevytskyy at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/CMakeLists.txt
    M llvm/lib/Target/SPIRV/SPIRV.h
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    A llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/add.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/and.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fadd.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmax.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmaximum.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmin.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fminimum.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmul.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/mul.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/or.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/smax.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/smin.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/umax.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/umin.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/xor.ll

  Log Message:
  -----------
  [SPIRV] Add vector reduction instructions (#82786)

This PR is to add vector reduction instructions according to
https://llvm.org/docs/GlobalISel/GenericOpcode.html#vector-reduction-operations
and widen in such a way a range of successful supported conversions,
covering new cases of vector reduction instructions which IRTranslator
is unable to resolve.

By legalizing vector reduction instructions we introduce a new
instruction patterns that should be addressed, including patterns that
are delegated to pre-legalize step. To address this problem, a new pass
is added that is to bring newly generated instructions after
legalization to an aspect required by instruction selection.

Expected overheads for existing cases is minimal, because a new pass is
working only with newly introduced instructions, otherwise it's just a
additional code traverse without any actions.


  Commit: ecc3bdaae14a02acc879c018e21d58a83329dc6e
      https://github.com/llvm/llvm-project/commit/ecc3bdaae14a02acc879c018e21d58a83329dc6e
  Author: Vyacheslav Levytskyy <89994100+VyacheslavLevytskyy at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    A llvm/test/CodeGen/SPIRV/bitcast.ll

  Log Message:
  -----------
  [SPIR-V] Fix bitcast legalization/instruction selection in SPIR-V Backend (#83139)

This PR is to fix a way how SPIR-V Backend describes legality of
OpBitcast instruction and how it is validated on a step of instruction
selection. Instead of checking a size of virtual registers (that makes
no sense due to lack of guarantee of direct relations between size of
virtual register and bit width associated with the type size), this PR
allows to legalize OpBitcast without size check and postpones validation
to the instruction selection step.

As an example, let's consider the next example that was copied as is
from a bigger test suite:

```
  %355:id(s16) = G_BITCAST %301:id(s32)
  %303:id(s16) = ASSIGN_TYPE %355:id(s16), %349:type(s32)
  %644:fid(s32) = G_FMUL %645:fid, %646:fid
  %301:id(s32) = ASSIGN_TYPE %644:fid(s32), %40:type(s32)
```

Without the PR this leads to a crash with complains to an illegal
bitcast, because %355 is s16 and %301 is s32. However, we must check not
virtual registers in this case, but types of %355 and %301, i.e.,
%349:type(s32) and %40:type(s32), which are perfectly well compatible in
a sense of OpBitcast in this case.

In a test case that is a part of this PR OpBitcast is legal, being
applied for `OpTypeInt 16` and `OpTypeFloat 16`, but would not be
legalized without this PR due to virtual registers defined as having
size 16 and 32.


  Commit: 67d5ba907789a187165b96d7862e3c67efdd7ac1
      https://github.com/llvm/llvm-project/commit/67d5ba907789a187165b96d7862e3c67efdd7ac1
  Author: Vyacheslav Levytskyy <89994100+VyacheslavLevytskyy at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
    M llvm/test/CodeGen/SPIRV/exec_mode_float_control_khr.ll

  Log Message:
  -----------
  [SPIR-V] Add support for SPV_KHR_float_controls (#83418)

This PR is to add explicit support for SPV_KHR_float_controls
(https://github.com/KhronosGroup/SPIRV-Registry/blob/main/extensions/KHR/SPV_KHR_float_controls.asciidoc).
This extension is included into SPIR-V after version 1.4, but in case of
lower versions it is to be included explicitly and OpExtension must be
present in the module with `OpExtension "SPV_KHR_float_controls"`.

This PR fixes this issue and fixes the test case
test/CodeGen/SPIRV/exec_mode_float_control_khr.ll to account for a
version lower than 1.4.


  Commit: 5c54f729018cb04b3cd42fcbef019f3479c9f9e8
      https://github.com/llvm/llvm-project/commit/5c54f729018cb04b3cd42fcbef019f3479c9f9e8
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/openmp-firstprivate.mlir

  Log Message:
  -----------
   [MLIR][OpenMP] Extend omp.private materialization support: `firstprivate` (#82164)

Extends current support for delayed privatization during translation to
LLVM IR. This adds support for one-block `firstprivate` `omp.private`
ops.


  Commit: eaf0d82529f30fd53b453886676821d67ccfe9af
      https://github.com/llvm/llvm-project/commit/eaf0d82529f30fd53b453886676821d67ccfe9af
  Author: Niwin Anto <niwinantop at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/test/Transforms/LoopVectorize/no-fold-tail-by-masking-iv-external-uses.ll

  Log Message:
  -----------
  [LV] Disable fold tail by masking when IV is used outside (#81609)

When induction variable are used outside the loop body, tail folding
by masking mis-compiles, because for users outside of the loop the
final value of the induction is computed separately from the vector
loop.

Fixes https://github.com/llvm/llvm-project/issues/76069
Fixes https://github.com/llvm/llvm-project/issues/51677


  Commit: 8f30b62395ff9a41fd66ef0f3a98bceffa0bf121
      https://github.com/llvm/llvm-project/commit/8f30b62395ff9a41fd66ef0f3a98bceffa0bf121
  Author: Vyacheslav Levytskyy <89994100+VyacheslavLevytskyy at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative1.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative2.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative3.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative4.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv.ll

  Log Message:
  -----------
  [SPIR-V] Add support for the SPIR-V extension SPV_INTEL_bfloat16_conversion (#83443)

This PR is to add support for the SPIR-V extension
SPV_INTEL_bfloat16_conversion
(https://github.com/KhronosGroup/SPIRV-Registry/blob/main/extensions/INTEL/SPV_INTEL_bfloat16_conversion.asciidoc)
and OpenCL extension cl_intel_bfloat16_conversions
(https://registry.khronos.org/OpenCL/extensions/intel/cl_intel_bfloat16_conversions.html).


  Commit: 00e4a4197137410129d4725ffb82bae9ce44bdde
      https://github.com/llvm/llvm-project/commit/00e4a4197137410129d4725ffb82bae9ce44bdde
  Author: James Westwood <james.westwood at arm.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
    M llvm/lib/Target/ARM/ARMFrameLowering.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.h
    M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
    A llvm/test/CodeGen/Thumb2/pacbti-m-frame-chain.ll

  Log Message:
  -----------
  [ARM] R11 not pushed adjacent to link register with PAC-M and AAPCS frame chain fix (#82801)

When code for M class architecture was compiled with AAPCS and PAC
enabled, the frame pointer, r11, was not pushed to the stack adjacent to
the link register. Due to PAC being enabled, r12 was placed between r11
and lr. This patch fixes this by adding an extra case to the already
existing code that splits the GPR push in two when R11 is the frame
pointer and certain paremeters are met. The differential revision for
this previous change can be found here:
https://reviews.llvm.org/D125649. This now ensures that r11 and lr are
pushed in a separate push instruction to the other GPRs when PAC and
AAPCS are enabled, meaning the frame pointer and link register are now
pushed onto the stack adjacent to each other.


  Commit: 7d55a3ba92368be55b392c20d623fde6ac82d86d
      https://github.com/llvm/llvm-project/commit/7d55a3ba92368be55b392c20d623fde6ac82d86d
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/conf.py
    M flang/docs/conf.py
    M llvm/docs/conf.py

  Log Message:
  -----------
  [Docs] Allow building man pages without myst_parser (#82402)

The man pages do not depend on the doc present in markdown files, so
they can be built without myst_parser.
Doing so might allow llvm distributions to have less development
dependencies.

As we do not have the ennvironment to test these configuration, this
capability is provided on a best-effort basis.

This restores a capability accidentally lost in #65664.


  Commit: c089fa5a729e217d0c0d4647656386dac1a1b135
      https://github.com/llvm/llvm-project/commit/c089fa5a729e217d0c0d4647656386dac1a1b135
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/Interp.h
    M clang/test/AST/Interp/arrays.cpp

  Log Message:
  -----------
  [clang][Interp] Fix assertion in InitElem{,Pop} ops

... when the pointer is an unknown size array.


  Commit: e4882d83d77f9d6a5198ecb7faabd5bf2ce4b730
      https://github.com/llvm/llvm-project/commit/e4882d83d77f9d6a5198ecb7faabd5bf2ce4b730
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/Decl.cpp
    A clang/test/Layout/dump-complete-invalid.cpp
    M clang/test/Layout/dump-complete.cpp

  Log Message:
  -----------
  [Clang] [Sema] Do not crash on dependent or invalid record decls when `-fdump-record-layouts-complete` is passed (#83688)

We no longer try to compute and dump the layout of types in cases where that isn’t possible.

This fixes #83684 and #83671.


  Commit: 906580bad3a68e3877f4ff7ac2b7fc1b7ee84fd5
      https://github.com/llvm/llvm-project/commit/906580bad3a68e3877f4ff7ac2b7fc1b7ee84fd5
  Author: Qiu Chaofan <qiucofan at cn.ibm.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/test/CodeGen/PowerPC/builtins-ppc-xlcompat-rotate.c
    M llvm/include/llvm/IR/IntrinsicsPowerPC.td
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/test/CodeGen/PowerPC/rldimi.ll
    M llvm/test/CodeGen/PowerPC/rlwimi.ll
    M llvm/test/CodeGen/PowerPC/rlwinm.ll

  Log Message:
  -----------
  [PowerPC] Add intrinsics for rldimi/rlwimi/rlwnm (#82968)

These builtins are already there in Clang, however current codegen may
produce suboptimal results due to their complex behavior. Implement them
as intrinsics to ensure expected instructions are emitted.


  Commit: 6b62a9135a28bd001263e5a9db08d4cff1123126
      https://github.com/llvm/llvm-project/commit/6b62a9135a28bd001263e5a9db08d4cff1123126
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/Transforms/Utils/Local.h
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/Transforms/CFGuard/CFGuard.cpp
    M llvm/lib/Transforms/Scalar/Reg2Mem.cpp
    M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
    M llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp
    M llvm/lib/Transforms/Utils/CallPromotionUtils.cpp
    M llvm/lib/Transforms/Utils/CanonicalizeFreezeInLoops.cpp
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    M llvm/lib/Transforms/Utils/DemoteRegToStack.cpp
    M llvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/LoopConstrainer.cpp
    M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
    M llvm/lib/Transforms/Utils/LoopSimplify.cpp
    M llvm/lib/Transforms/Utils/LoopUnroll.cpp
    M llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp
    M llvm/lib/Transforms/Utils/LowerGlobalDtors.cpp
    M llvm/lib/Transforms/Utils/LowerInvoke.cpp
    M llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
    M llvm/lib/Transforms/Utils/LowerSwitch.cpp
    M llvm/lib/Transforms/Utils/MatrixUtils.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
    M llvm/lib/Transforms/Utils/StripGCRelocates.cpp
    M llvm/lib/Transforms/Utils/UnifyLoopExits.cpp
    M llvm/tools/bugpoint/Miscompilation.cpp
    M llvm/unittests/IR/InstructionsTest.cpp

  Log Message:
  -----------
  [RemoveDIs] Reapply 3fda50d3915, insert instructions using iterators

I'd reverted this in 6c7805d5d1 after a bad stage. Original commit
messsage follows:

[NFC][RemoveDIs] Bulk update utilities to insert with iterators

As part of the RemoveDIs project we need LLVM to insert instructions using
iterators wherever possible, so that the iterators can carry a bit of
debug-info. This commit implements some of that by updating the contents of
llvm/lib/Transforms/Utils to always use iterator-versions of instruction
constructors.

There are two general flavours of update:
 * Almost all call-sites just call getIterator on an instruction
 * Several make use of an existing iterator (scenarios where the code is
   actually significant for debug-info)
The underlying logic is that any call to getFirstInsertionPt or similar
APIs that identify the start of a block need to have that iterator passed
directly to the insertion function, without being converted to a bare
Instruction pointer along the way.

I've also switched DemotePHIToStack to take an optional iterator: it needs
to take an iterator, and having a no-insert-location behaviour appears to
be important. The constructors for ICmpInst and FCmpInst have been updated
too. They're the only instructions that take block _references_ rather than
pointers for certain calls, and a future patch is going to make use of
default-null block insertion locations.

All of this should be NFC.


  Commit: 6e36cebc17417f88e70b4e87c9f177036b1443f4
      https://github.com/llvm/llvm-project/commit/6e36cebc17417f88e70b4e87c9f177036b1443f4
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/conf.py
    A clang/docs/ghlinks.py

  Log Message:
  -----------
  [Clang][Docs] Simpler syntax for Github links. (#82746)

Github links in release notes are often invalid rST, clutter the release
notes and are annoying to write.

This introduces a sphynx plugin that rewrites
 `#GH<NUMBER>` to a link to the corresponding issue.


  Commit: 530f0e64ec11327879c44f2fd55c7c28efdbaa2d
      https://github.com/llvm/llvm-project/commit/530f0e64ec11327879c44f2fd55c7c28efdbaa2d
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/test/CodeGen/AMDGPU/immv216.ll
    M llvm/test/CodeGen/AMDGPU/inline-constraints.ll
    M llvm/test/CodeGen/AMDGPU/shrink-add-sub-constant.ll

  Log Message:
  -----------
  [AMDGPU] Replace `isInlinableLiteral16` with specific version (#81345)


  Commit: 46d7876957deb817b48a5fa8a854b5a47a6a0653
      https://github.com/llvm/llvm-project/commit/46d7876957deb817b48a5fa8a854b5a47a6a0653
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/examples/BrainF/BrainF.cpp
    M llvm/examples/Fibonacci/fibonacci.cpp

  Log Message:
  -----------
  Follow up to 6b62a9135a2, fix llvm-examples build

This is due to the {I,F}CmpInst constructor being normalised to take a
pointer to a block rather than a reference (unlike any other Instruction).


  Commit: d9ae4a63ca875f3569e7a0b41bcc7352e3133e34
      https://github.com/llvm/llvm-project/commit/d9ae4a63ca875f3569e7a0b41bcc7352e3133e34
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libc/src/__support/FPUtil/dyadic_float.h

  Log Message:
  -----------
  [libc][NFC] Fix typo in dyadic_float.h (#83846)


  Commit: 27ce5121ee875c337dd0f977b00afcb756977f62
      https://github.com/llvm/llvm-project/commit/27ce5121ee875c337dd0f977b00afcb756977f62
  Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-nontemporal.ll

  Log Message:
  -----------
  [AMDGPU] Fix setting nontemporal in memory legalizer (#83815)

Iterator MI can advance in insertWait() but we need original instruction
to set temporal hint. Just move it before handling volatile.


  Commit: b3c2c5a834b32fad1f24aad074d1b4cf719f69f5
      https://github.com/llvm/llvm-project/commit/b3c2c5a834b32fad1f24aad074d1b4cf719f69f5
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/include/llvm/IR/DebugProgramInstruction.h
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/DebugProgramInstruction.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/test/DebugInfo/print-non-instruction-debug-info.ll

  Log Message:
  -----------
  [RemoveDIs][DebugInfo] Verifier and printing fixes for DPLabel (#83242)

`DPLabel`, the RemoveDI version of `llvm.dbg.label`, was landed recently
at the same time the RemoveDIs IR printing and verifier patches were
landing. The patches were updated to not miscompile, but did not have
full-featured and correct support for DPLabel built in; this patch makes
the remaining set of changes to enable DPLabel support.


  Commit: 1e429ff1439e0b26f4299faa8a29ed1947743fa3
      https://github.com/llvm/llvm-project/commit/1e429ff1439e0b26f4299faa8a29ed1947743fa3
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [Clang][Docs] Fix issue number

Fix typo introduced by 6e36cebc17417f88e70b4e87c9f177036b1443f4


  Commit: c1d8d0aa156f651ee48414fa002e9608d6998763
      https://github.com/llvm/llvm-project/commit/c1d8d0aa156f651ee48414fa002e9608d6998763
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Scope.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/Scope.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/CXX/temp/temp.res/temp.local/p6.cpp

  Log Message:
  -----------
  Reapply "[Clang][Sema] Diagnose function/variable templates that shadow their own template parameters (#78274)" (#79683)

Reapplies #78274 with the addition of a default-error warning
(`strict-primary-template-shadow`) that is issued for instances of
shadowing which were previously accepted prior to this patch.

I couldn't find an established convention for naming diagnostics related
to compatibility with previous versions of clang, so I just used the
prefix `ext_compat_`.


  Commit: bbeb946652f2830b3211dcd8c6836bce4dbdd188
      https://github.com/llvm/llvm-project/commit/bbeb946652f2830b3211dcd8c6836bce4dbdd188
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/test/Analysis/analyzer-config.c
    M clang/test/Analysis/std-c-library-functions.c

  Log Message:
  -----------
  [clang][analyzer] Change value of checker option in unix.StdCLibraryFunctions (second try). (#80457)

Default value of checker option `ModelPOSIX` is changed to `true`.
Documentation is updated.

This is a re-apply of commit 7af4e8bcc354d2bd7e46ecf547172b1f19ddde3e
that was reverted because a test failure (this is fixed now).


  Commit: 52a460f9d4640ddc04e65161c78958bdabaae2b2
      https://github.com/llvm/llvm-project/commit/52a460f9d4640ddc04e65161c78958bdabaae2b2
  Author: NagyDonat <donat.nagy at ericsson.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallDescription.h
    M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/lib/StaticAnalyzer/Core/CallDescription.cpp
    M clang/unittests/StaticAnalyzer/CallDescriptionTest.cpp

  Log Message:
  -----------
  [analyzer] Refactor CallDescription match mode (NFC) (#83432)

The class `CallDescription` is used to define patterns that are used for
matching `CallEvent`s. For example, a
`CallDescription{{"std", "find_if"}, 3}`
matches a call to `std::find_if` with 3 arguments.

However, these patterns are somewhat fuzzy, so this pattern could also
match something like `std::__1::find_if` (with an additional namespace
layer), or, unfortunately, a `CallDescription` for the well-known
function `free()` can match a C++ method named `free()`:
https://github.com/llvm/llvm-project/issues/81597

To prevent this kind of ambiguity this commit introduces the enum
`CallDescription::Mode` which can limit the pattern matching to
non-method function calls (or method calls etc.). After this NFC change,
one or more follow-up commits will apply the right pattern matching
modes in the ~30 checkers that use `CallDescription`s.

Note that `CallDescription` previously had a `Flags` field which had
only two supported values:
 - `CDF_None` was the default "match anything" mode,
 - `CDF_MaybeBuiltin` was a "match only C library functions and accept
some inexact matches" mode.
This commit preserves `CDF_MaybeBuiltin` under the more descriptive
name `CallDescription::Mode::CLibrary` (or `CDM::CLibrary`).

Instead of this "Flags" model I'm switching to a plain enumeration
becasue I don't think that there is a natural usecase to combine the
different matching modes. (Except for the default "match anything" mode,
which is currently kept for compatibility, but will be phased out in the
follow-up commits.)


  Commit: 07f8efa22e0d0254e4d6c696f07256bfe514038e
      https://github.com/llvm/llvm-project/commit/07f8efa22e0d0254e4d6c696f07256bfe514038e
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libc/include/llvm-libc-types/float128.h
    M libc/src/__support/macros/properties/types.h

  Log Message:
  -----------
  [libc][NFC] Don't expose how `float16` and `float128` types are provided (#83818)

Umbrella bug #83182


  Commit: c54064de80e93494d1d44550b56ce8f2f3cf9c4b
      https://github.com/llvm/llvm-project/commit/c54064de80e93494d1d44550b56ce8f2f3cf9c4b
  Author: Pranav Bhandarkar <pranav.bhandarkar at amd.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td

  Log Message:
  -----------
  [mlir][OpenMP][NFC] - Minor fix in OpenMP ops documentation (#83598)

This patch is a minor formatting fix in the OpenMP ops documentation
wherein the examples section in ``omp.private`` was breaking out into a
top level list item.


  Commit: f407f2df2ced195264d1a81df84143dc87c0cd24
      https://github.com/llvm/llvm-project/commit/f407f2df2ced195264d1a81df84143dc87c0cd24
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/test/tools/llvm-mca/AMDGPU/gfx940-mfma.s

  Log Message:
  -----------
  AMDGPU: Test a few more cycle counts for mfma ops


  Commit: 13a78fd1ac886b3119574bbffb327489f335e713
      https://github.com/llvm/llvm-project/commit/13a78fd1ac886b3119574bbffb327489f335e713
  Author: Tuan Chuong Goh <chuong.goh at arm.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-select.mir
    M llvm/test/CodeGen/AArch64/shufflevector.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Re-commit Legalize G_SHUFFLE_VECTOR for Odd-Sized Vectors (#83038)

Legalize smaller/larger than legal vectors with i8 and i16 element sizes.
Vectors with elements smaller than i8 will get widened to i8 elements.


  Commit: 89827863a3a65947e1665b436ca8dd1fbdb042fb
      https://github.com/llvm/llvm-project/commit/89827863a3a65947e1665b436ca8dd1fbdb042fb
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [SLP][NFC]Make canVectorizeLoads member of BoUpSLP class, NFC.


  Commit: d0521484c854adf082936824c99f9db101363cb8
      https://github.com/llvm/llvm-project/commit/d0521484c854adf082936824c99f9db101363cb8
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libcxx/utils/libcxx/test/format.py

  Log Message:
  -----------
  [libc++] Remove leftover .fail.cpp matcher in Lit test format (#83583)

This should have been removed in 8dcb8ea75cef, which removed support for
.fail.cpp tests in the libc++ test suite.


  Commit: f010b1bef4dda2c7082cbb41dbabf1f149cce306
      https://github.com/llvm/llvm-project/commit/f010b1bef4dda2c7082cbb41dbabf1f149cce306
  Author: Mitch Phillips <mitchp at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/include/llvm/ADT/GenericConvergenceVerifier.h
    M llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    R llvm/include/llvm/CodeGen/MachineConvergenceVerifier.h
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/IR/GenericConvergenceVerifierImpl.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/Target.td
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/CodeGen/CMakeLists.txt
    R llvm/lib/CodeGen/MachineConvergenceVerifier.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/CodeGen/ValueTypes.cpp
    M llvm/lib/IR/ConvergenceVerifier.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    R llvm/test/CodeGen/AMDGPU/convergence-tokens.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-cc.ll
    M llvm/test/CodeGen/AMDGPU/kernel-vgpr-spill-mubuf-with-voffset.ll
    M llvm/test/CodeGen/AMDGPU/need-fp-from-vgpr-spills.ll
    M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-liverange-ir.ll
    M llvm/test/CodeGen/AMDGPU/vgpr_constant_to_sgpr.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-register-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
    M llvm/test/CodeGen/PowerPC/fmf-propagation.ll
    R llvm/test/MachineVerifier/convergencectrl/AMDGPU/basic.mir
    R llvm/test/MachineVerifier/convergencectrl/AMDGPU/cycles.mir
    R llvm/test/MachineVerifier/convergencectrl/AMDGPU/lit.local.cfg
    R llvm/test/MachineVerifier/convergencectrl/AMDGPU/mixed2.mir
    R llvm/test/MachineVerifier/convergencectrl/AMDGPU/region-nesting.mir
    M llvm/test/TableGen/GlobalISelCombinerEmitter/builtins/match-table-replacerreg.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-imms.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-intrinsics.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-patfrag-root.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-variadics.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td

  Log Message:
  -----------
  Revert "Restore "Implement convergence control in MIR using SelectionDAG (#71785)""

This reverts commit c7fdd8c11e54585dc9d15d63de9742067e0506b9.

Reason: Broke the sanitizer buildbots. See the comments at
https://github.com/llvm/llvm-project/pull/71785
for more information.


  Commit: 89e41e2965b2b38a4aa1ad7757684566679ef762
      https://github.com/llvm/llvm-project/commit/89e41e2965b2b38a4aa1ad7757684566679ef762
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/InterpBuiltin.cpp
    M clang/test/AST/Interp/complex.cpp

  Log Message:
  -----------
  [clang][Interp] Implement __builtin_complex


  Commit: 03f852f704c343abc4a36db194027461b7b35afa
      https://github.com/llvm/llvm-project/commit/03f852f704c343abc4a36db194027461b7b35afa
  Author: Graham Hunter <graham.hunter at arm.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
    M llvm/test/Transforms/LoopUnroll/AArch64/scalable-vec-ins-ext.ll

  Log Message:
  -----------
  [AArch64] Improve cost model for legal subvec insert/extract (#81135)

Currently we model subvector inserts and extracts as shuffles,
potentially going as far as scalarizing. If the types are legal then
they can just be simple zip/unzip operations, or possible even no-ops.
Change the cost to a relatively small one to ensure that simple loops
featuring such operations between fixed and scalable vector types that
are effectively the same at a given sve width can be unrolled and
further optimized.


  Commit: 2a65941a7964644930dcf97559f73f8e5b81738e
      https://github.com/llvm/llvm-project/commit/2a65941a7964644930dcf97559f73f8e5b81738e
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [gn] port 8300f30a9234


  Commit: cedb9704bda4f4f9622ba60a18135d70569d0582
      https://github.com/llvm/llvm-project/commit/cedb9704bda4f4f9622ba60a18135d70569d0582
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [VPlan] Verify CFG invariants first (NFCI).

Verifying CFG invariants of a block before verifying its contents allows
contents verification to rely on the CFG invariants (e.g. that there's a
vector loop region that can be retrieved).

This avoids extra checks in
https://github.com/llvm/llvm-project/pull/76172.


  Commit: c240aca7a8a71f7218724aeb6c040289b51057dc
      https://github.com/llvm/llvm-project/commit/c240aca7a8a71f7218724aeb6c040289b51057dc
  Author: Kazushi (Jam) Marukawa <marukawa at nec.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/Driver.cpp
    R clang/test/Driver/modules-print-library-module-manifest-path.cpp

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

This reverts commit 0c89427b99f6f6d7c217c70ff880ca097340f9a4.


  Commit: de92615d68ff3ae206d5059f35a6e4ded8b38297
      https://github.com/llvm/llvm-project/commit/de92615d68ff3ae206d5059f35a6e4ded8b38297
  Author: Hongyu Chen <46539970+yugier at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/ExecutionEngine/CMakeLists.txt
    M llvm/lib/ExecutionEngine/IntelJITEvents/CMakeLists.txt
    M llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp
    R llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventsWrapper.h
    R llvm/lib/ExecutionEngine/IntelJITEvents/ittnotify_config.h
    R llvm/lib/ExecutionEngine/IntelJITEvents/ittnotify_types.h
    R llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.c
    R llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.h
    A llvm/lib/ExecutionEngine/IntelJITProfiling/CMakeLists.txt
    A llvm/lib/ExecutionEngine/IntelJITProfiling/IntelJITEventsWrapper.h
    A llvm/lib/ExecutionEngine/IntelJITProfiling/ittnotify_config.h
    A llvm/lib/ExecutionEngine/IntelJITProfiling/ittnotify_types.h
    A llvm/lib/ExecutionEngine/IntelJITProfiling/jitprofiling.c
    A llvm/lib/ExecutionEngine/IntelJITProfiling/jitprofiling.h
    M llvm/tools/llvm-jitlistener/llvm-jitlistener.cpp

  Log Message:
  -----------
  [ExecutionEngine] Move IntelJITEventsWrapper to its own library. NFC (#81825)

Split IntelJITEventsWrapper away from IntelJITEvents and rename it into
IntelJITProfiling.
NFC


  Commit: bc9c6c0c65e267a1a84e4eede81099d8ceb37558
      https://github.com/llvm/llvm-project/commit/bc9c6c0c65e267a1a84e4eede81099d8ceb37558
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/lib/AST/CMakeLists.txt
    M clang/lib/AST/Interp/ByteCodeEmitter.cpp
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    R clang/lib/AST/Interp/ByteCodeGenError.cpp
    R clang/lib/AST/Interp/ByteCodeGenError.h
    M clang/lib/AST/Interp/ByteCodeStmtGen.cpp
    M clang/lib/AST/Interp/Context.cpp
    M clang/lib/AST/Interp/Context.h
    M clang/lib/AST/Interp/EvalEmitter.cpp

  Log Message:
  -----------
  [clang][Interp][NFC] Remove ByteCodeGenError

Unused.


  Commit: 17efdad2296a2757813e4f11d0575ee6fb826e39
      https://github.com/llvm/llvm-project/commit/17efdad2296a2757813e4f11d0575ee6fb826e39
  Author: Hongyu Chen <46539970+yugier at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    A llvm/include/llvm/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.h
    A llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/JITLoaderVTune.h
    M llvm/lib/ExecutionEngine/Orc/Debugging/CMakeLists.txt
    A llvm/lib/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/CMakeLists.txt
    A llvm/lib/ExecutionEngine/Orc/TargetProcess/JITLoaderVTune.cpp
    A llvm/test/ExecutionEngine/JITLink/x86-64/ELF_vtune.s
    M llvm/test/ExecutionEngine/JITLink/x86-64/lit.local.cfg
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp

  Log Message:
  -----------
  [ORC][JITLink] Add Intel VTune support to JITLink (#81826)

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

This pull request is stacked on top of
https://github.com/llvm/llvm-project/pull/81825


  Commit: 57a720872128ea21e8ed22cdd9ae4c62154e6fb1
      https://github.com/llvm/llvm-project/commit/57a720872128ea21e8ed22cdd9ae4c62154e6fb1
  Author: ykhatav <yashasvi.khatavkar at intel.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp

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

Resolve a use-after-move bug for the parameter "DumpOpts" in the
DWARFVerifier constructor.


  Commit: f83858f87c5d7a634af717f18a7a53ed5ddde3bd
      https://github.com/llvm/llvm-project/commit/f83858f87c5d7a634af717f18a7a53ed5ddde3bd
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp

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


  Commit: af9c5ca820499b932e23d7644e90ea5ff04c3c5f
      https://github.com/llvm/llvm-project/commit/af9c5ca820499b932e23d7644e90ea5ff04c3c5f
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/Debugging/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/TargetProcess/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 17efdad2296a


  Commit: e6dff54f362f9bcae2a3dd8b0bf7aa6fc9f11017
      https://github.com/llvm/llvm-project/commit/e6dff54f362f9bcae2a3dd8b0bf7aa6fc9f11017
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/AST/BUILD.gn

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


  Commit: 252f3c98db1383ee0e1f25020d488ffb7b4ac392
      https://github.com/llvm/llvm-project/commit/252f3c98db1383ee0e1f25020d488ffb7b4ac392
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    A lldb/test/API/lang/cpp/gmodules/pch-chain/Makefile
    A lldb/test/API/lang/cpp/gmodules/pch-chain/TestPchChain.py
    A lldb/test/API/lang/cpp/gmodules/pch-chain/base-pch.h
    A lldb/test/API/lang/cpp/gmodules/pch-chain/main.cpp
    A lldb/test/API/lang/cpp/gmodules/pch-chain/pch.h

  Log Message:
  -----------
  [lldb][test] Add test for chained PCH debugging (#83582)

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

Currently clang doesn't emit the sekeleton CUs
required for LLDB to track all types on the pch chain. Thus this test is
XFAILed for now.


  Commit: bd7bce2c8465e9cb36a823846a52c9f553502575
      https://github.com/llvm/llvm-project/commit/bd7bce2c8465e9cb36a823846a52c9f553502575
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Sema/DeclSpec.h
    M clang/include/clang/Sema/ParsedAttr.h
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Sema/ParsedAttr.cpp
    A clang/test/Parser/cxx-declarator-attribute-crash.cpp

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

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

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

Additionally, this was put in as a bug report, so this
Fixes #83611


  Commit: 87e7140f72ba46330efb8d9110c2a4a1e6e94900
      https://github.com/llvm/llvm-project/commit/87e7140f72ba46330efb8d9110c2a4a1e6e94900
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp

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


  Commit: 2e0693abbcf844c138adfa29fc70ea07681e373f
      https://github.com/llvm/llvm-project/commit/2e0693abbcf844c138adfa29fc70ea07681e373f
  Author: Aart Bik <39774503+aartbik at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/sparse-gemm-lib.mlir
    M mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/sparse-matmul-lib.mlir
    M mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/sparse-sampled-matmul-lib.mlir
    M mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/sparse-sddmm-lib.mlir

  Log Message:
  -----------
  [mlir][sparse][gpu] migration to sparse_tensor.print (#83510)

Continuous efforts #83357 for our sparse CUDA tests


  Commit: 379e55ea40cbc5ae8b4a16d96236f6a88bd0a649
      https://github.com/llvm/llvm-project/commit/379e55ea40cbc5ae8b4a16d96236f6a88bd0a649
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  Fix release note bug reference from bd7bce2c8465e9cb


  Commit: ac783addc4dd5bda557cc07b90c08bab2d110ec3
      https://github.com/llvm/llvm-project/commit/ac783addc4dd5bda557cc07b90c08bab2d110ec3
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h

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

This should be more efficient since the vector can know how much
additional space to reserve before creating the new elements.


  Commit: 0097fd2b068e374b02571b391bd4a0a84e8ed3e2
      https://github.com/llvm/llvm-project/commit/0097fd2b068e374b02571b391bd4a0a84e8ed3e2
  Author: Félix-Antoine Constantin <60141446+felix642 at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.h
    M clang-tools-extra/clang-tidy/hicpp/IgnoredRemoveResultCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unused-return-value.rst
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-return-value-custom.cpp

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

The parameter `CheckedFunctions` now supports regexes

Fixes #63107


  Commit: 98418c27bc17946990e5980d56ef98ae82da8770
      https://github.com/llvm/llvm-project/commit/98418c27bc17946990e5980d56ef98ae82da8770
  Author: Jake Egan <Jake.egan at ibm.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libcxx/test/std/input.output/iostream.objects/narrow.stream.objects/cin.sh.cpp
    M libcxx/test/std/input.output/iostream.objects/wide.stream.objects/wcin-imbue.sh.cpp
    M libcxx/test/std/input.output/iostream.objects/wide.stream.objects/wcin.sh.cpp

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

When echo is used for piping, lit uses the system echo rather than the
builtin echo. The system echo on AIX doesn't support the `-n` option,
which causes these tests to fail. Use input redirection, so the builtin
echo can be used.


  Commit: 56754478e7184a68e88ccc578ffd31097da85d15
      https://github.com/llvm/llvm-project/commit/56754478e7184a68e88ccc578ffd31097da85d15
  Author: Kirill Stoimenov <kstoimenov at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    A llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out-no-ps.ll
    A llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out.ll

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

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

This reverts commit f6f79d46e580b34b2c98bd9bda7ede3a38f43f77.


  Commit: c996023f9a288f12f97de8e1a2b8fbb28d2ed0c3
      https://github.com/llvm/llvm-project/commit/c996023f9a288f12f97de8e1a2b8fbb28d2ed0c3
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libc/config/baremetal/arm/headers.txt
    M libc/config/baremetal/riscv/headers.txt
    M libc/config/darwin/arm/headers.txt
    M libc/config/darwin/x86_64/headers.txt
    M libc/config/gpu/headers.txt
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/arm/headers.txt
    M libc/config/linux/riscv/headers.txt
    M libc/config/linux/x86_64/headers.txt
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-macros/CMakeLists.txt
    A libc/include/llvm-libc-macros/stdint-macros.h
    A libc/include/stdint.h.def
    M libc/spec/stdc.td
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

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

Summary:
I've noticed one problem is that the user includes `stdint.h` the
compiler will do `#include_next <stdint.h>` potentially into a
conflicting implementation on systems with multiple headers installed.
The `clang` header is standards compliant and works with `clang` and
`gcc` which are both of our targets, so I simply copied it here. This
has the effect of including `stdint.h` on clang / LLVM libc behaving the
same as `-ffreestanding`.


  Commit: 32e2294b8abba6b70356aa37b65acf155506d457
      https://github.com/llvm/llvm-project/commit/32e2294b8abba6b70356aa37b65acf155506d457
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libc/src/__support/GPU/CMakeLists.txt

  Log Message:
  -----------
  [libc][NFC] Clean up GPU utilities directory after rework (#83692)

Summary:
This CMake can be cleaned up now that the AMDGPU and NVPTX builds do not
share a CMake invocation.


  Commit: 1da5db97cbf3451da05788b1d35b8a107a7f6a69
      https://github.com/llvm/llvm-project/commit/1da5db97cbf3451da05788b1d35b8a107a7f6a69
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M lldb/source/Symbol/Symtab.cpp
    M lldb/test/Shell/SymbolFile/Breakpad/symtab-sorted-by-size.test

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

Use sort-ordering for indexes when sorting by size. This addresses
Jason's post commit review feedback.


  Commit: 53a656d9a4032b842ad0c59489353e17daa54531
      https://github.com/llvm/llvm-project/commit/53a656d9a4032b842ad0c59489353e17daa54531
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/utils/not/not.cpp

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

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

Reviewed By: jh7370

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


  Commit: 081882eb9ca63ae9582399beb8b76c1d135d7062
      https://github.com/llvm/llvm-project/commit/081882eb9ca63ae9582399beb8b76c1d135d7062
  Author: AtariDreams <83477269+AtariDreams at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/maximum.ll
    M llvm/test/Transforms/InstCombine/maxnum.ll

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

If it is ever determined that min doesn't need one-use, then we can
remove the one-use requirement entirely.


  Commit: b32845cb94a81e6fd8b01a8631e3d276c9fc9e35
      https://github.com/llvm/llvm-project/commit/b32845cb94a81e6fd8b01a8631e3d276c9fc9e35
  Author: AMS21 <AMS21.github at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/use-after-move.rst
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/use-after-move.cpp

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

Add support for std::forward.

Fixes #82023


  Commit: 503075e4d4a9c1b3754b21ee9ec41f176e54fd83
      https://github.com/llvm/llvm-project/commit/503075e4d4a9c1b3754b21ee9ec41f176e54fd83
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M lldb/test/API/driver/quit_speed/TestQuitWithProcess.py
    M lldb/test/API/functionalities/progress_reporting/TestTrimmedProgressReporting.py
    M lldb/test/API/terminal/TestSTTYBeforeAndAfter.py

  Log Message:
  -----------
  [lldb][test][NFC] Narrow scope of `import pexpect`

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

Tangentially related: TestSTTYBeforeAndAfter.py is using a manual `@expectedFailureAll` for windows instead of the common `@skipIfWindows`. If `pexepect` is generally expected to not be available, we should not bother running the test at all.


  Commit: a81a7b9962f093f603d3890822e253120e074d13
      https://github.com/llvm/llvm-project/commit/a81a7b9962f093f603d3890822e253120e074d13
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/utils/git/code-format-helper.py

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

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


  Commit: a4951eca40c070e020aa5d2689c08177fbeb780d
      https://github.com/llvm/llvm-project/commit/a4951eca40c070e020aa5d2689c08177fbeb780d
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/test/CodeGen/X86/2006-04-27-ISelFoldingBug.ll
    M llvm/test/CodeGen/X86/2007-08-09-IllegalX86-64Asm.ll
    M llvm/test/CodeGen/X86/2007-12-18-LoadCSEBug.ll
    M llvm/test/CodeGen/X86/2008-02-18-TailMergingBug.ll
    M llvm/test/CodeGen/X86/avx-cmp.ll
    M llvm/test/CodeGen/X86/block-placement.ll
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-unsigned.ll
    M llvm/test/CodeGen/X86/inline-spiller-impdef-on-implicit-def-regression.ll
    M llvm/test/CodeGen/X86/movmsk-cmp.ll
    M llvm/test/CodeGen/X86/or-branch.ll
    M llvm/test/CodeGen/X86/peephole-na-phys-copy-folding.ll
    M llvm/test/CodeGen/X86/pr33747.ll
    M llvm/test/CodeGen/X86/pr37025.ll
    M llvm/test/CodeGen/X86/pr38795.ll
    M llvm/test/CodeGen/X86/setcc-logic.ll
    M llvm/test/CodeGen/X86/swifterror.ll
    M llvm/test/CodeGen/X86/tail-dup-merge-loop-headers.ll
    M llvm/test/CodeGen/X86/tail-opts.ll
    M llvm/test/CodeGen/X86/test-shrink-bug.ll
    M llvm/test/CodeGen/X86/x86-shrink-wrap-unwind.ll

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

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

Closes #81689


  Commit: df5252165524fbcabbd7287a8d923b5139247114
      https://github.com/llvm/llvm-project/commit/df5252165524fbcabbd7287a8d923b5139247114
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/examples/ParallelJIT/ParallelJIT.cpp

  Log Message:
  -----------
  [RemoveDIs] Follow up to 6b62a9135a2, fix a ICmpInst constructor call

Seemingly I either missed this on a buildbot or otherwise didn't
cover this :(


  Commit: f32c6b28b84130dc77e0e69d6d3b692aec933280
      https://github.com/llvm/llvm-project/commit/f32c6b28b84130dc77e0e69d6d3b692aec933280
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M lldb/unittests/Process/ProcessEventDataTest.cpp

  Log Message:
  -----------
  [lldb/Test] Fix oversight in ProcessEventDataTest::SetUp (NFC) (#83895)

This patch addresses an oversight in `ProcessEventDataTest::SetUp`
unittest to ensure the Debugger is initialized properly.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: abe4677d9f8ab82f722f29dbf57952052accd70b
      https://github.com/llvm/llvm-project/commit/abe4677d9f8ab82f722f29dbf57952052accd70b
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    A llvm/test/Transforms/InstCombine/pr82877.ll

  Log Message:
  -----------
  [InstCombine] Fix infinite loop due to incorrect `DoesConsume` (#82973)

When a call to `getFreelyInvertedImpl` with a select/phi node fails,
`DoesConsume` should not be changed.

Fixes https://github.com/llvm/llvm-project/issues/82877.


  Commit: 79e8f29ab06560d159389d940c35c563e0c8640e
      https://github.com/llvm/llvm-project/commit/79e8f29ab06560d159389d940c35c563e0c8640e
  Author: Alexander M <iammorjj at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M lldb/bindings/lua/CMakeLists.txt

  Log Message:
  -----------
  [lldb/lua] Fix Lua building on Windows (#83871)

Add `liblldb` dependency and use correct extension for compiled Lua
module.

Replace 'Python' with 'Lua' in install path name.

Fixes #55075.


  Commit: 0597644a6466ae9148b0b41cb8f95d5022e045c2
      https://github.com/llvm/llvm-project/commit/0597644a6466ae9148b0b41cb8f95d5022e045c2
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/test/Interfaces/TilingInterface/lower-to-loops-using-interface.mlir

  Log Message:
  -----------
  [mlir][transform] replace original op to loop ops (#83537)


  Commit: 930e7ff9aee24140e8c11f6527ba0e3e2208b55c
      https://github.com/llvm/llvm-project/commit/930e7ff9aee24140e8c11f6527ba0e3e2208b55c
  Author: David Majnemer <david.majnemer at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/f16-instructions.ll
    M llvm/test/CodeGen/AArch64/fabs.ll
    M llvm/test/CodeGen/AArch64/fcopysign.ll
    M llvm/test/CodeGen/AArch64/fneg.ll
    M llvm/test/CodeGen/AArch64/vector-fcopysign.ll

  Log Message:
  -----------
  [AArch64] Optimize abs, neg and copysign for fp16/bf16

We can use bitwise arithmetic to implement these, making them
considerably faster than legalization via promotion.


  Commit: 1c9125cdd5eb8f3e949313a57ff736d87b540546
      https://github.com/llvm/llvm-project/commit/1c9125cdd5eb8f3e949313a57ff736d87b540546
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MIMGInstructions.td

  Log Message:
  -----------
  AMDGPU: Proper use of HasImageInsts in vimage inst definitions, NFC (#83884)

This work corrects a few inappropriate uses of HasImageInsts predicate
in vimage instruction definitions.

In MnemonicAlias for VIMAGE_Atomic_gfx12_Renamed, we also need
HasImageInsts to be in the "Requires" predicate list for the alias to
depend on whether or not the GPU has image instruction support.

For nested uses of "let OtherPredicates = ..." around vimage instruction
definitions, the inner assignment will override the outer one. This
makes the outermost "let OtherPredicates = [HasImageInsts]" unused when
we have an inner assignment. As a result, HasImageInsts is not actually
used for some vimage instructions. To resove this issue, we propogate
the predicates in an outer assignment into the inner one.

We should avoid using nested "let SubtargetPredicate = ...". However, we
can always put the predicate into OtherPtredicates list.


  Commit: 3b5965e633bf6f945436dc8ac33bbb37ace4acf1
      https://github.com/llvm/llvm-project/commit/3b5965e633bf6f945436dc8ac33bbb37ace4acf1
  Author: PeterChou1 <peter.chou at mail.utoronto.ca>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/tools/dump_format_style.py
    M clang/include/clang/Format/Format.h

  Log Message:
  -----------
  [clang-format][doc] fix documentation for clang-format (#83415)

Fixes typo in documentation for clang-format 

Fixes #83207.


  Commit: 72cf95df2f69a1c023ef404298f3cce2e6b44d86
      https://github.com/llvm/llvm-project/commit/72cf95df2f69a1c023ef404298f3cce2e6b44d86
  Author: Michal Paszkowski <michal at paszkowski.org>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp

  Log Message:
  -----------
  [SPIR-V] Fix warning -Wsometimes-uninitialized (#83901)


  Commit: 93e423f19fc5317ee208f77d8f36e677db124cc8
      https://github.com/llvm/llvm-project/commit/93e423f19fc5317ee208f77d8f36e677db124cc8
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libc/test/include/stdbit_test.cpp

  Log Message:
  -----------
  [libc][test] update constants used in stdbit test (#83893)

Either:
- I forgot my alphabet (that E comes before F).
- My juvenile inner brain finds unsigned literal constants with the sequence FU
  funny.

¿Por qué no los dos?


  Commit: be3eeea7beb7dc701554a67773669c91367e7a81
      https://github.com/llvm/llvm-project/commit/be3eeea7beb7dc701554a67773669c91367e7a81
  Author: David Majnemer <david.majnemer at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td

  Log Message:
  -----------
  [AArch64] Use SHLLv4i16 to shift+widen BF16 to F32.


  Commit: bb97c992834a24632629dec4ec79ea7ffd1261fa
      https://github.com/llvm/llvm-project/commit/bb97c992834a24632629dec4ec79ea7ffd1261fa
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/test/ParserOpenACC/parse-clauses.c
    M clang/test/ParserOpenACC/parse-constructs.c
    M clang/test/SemaOpenACC/compute-construct-ast.cpp
    M clang/test/SemaOpenACC/no-branch-in-out.c
    M clang/test/SemaOpenACC/no-branch-in-out.cpp
    M clang/test/SemaOpenACC/parallel-assoc-stmt-inst.cpp
    M clang/test/SemaOpenACC/parallel-loc-and-stmt.c

  Log Message:
  -----------
  [OpenACC] Enable serial/kernels Compute Constructs

So far, all the work we've done for compute constructs has only used
'parallel'.  This patch does the work to enable the same logic for
'serial' and 'kernels' constructs as well, since they are the same
semantic behavior.


  Commit: e10dc60ad742f37e61fd6cf13e1b7d48d7f341d9
      https://github.com/llvm/llvm-project/commit/e10dc60ad742f37e61fd6cf13e1b7d48d7f341d9
  Author: Aart Bik <39774503+aartbik at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorAttrDefs.td
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorType.h
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp

  Log Message:
  -----------
  [mlir][sparse][nfc] fixed typo in "translate" (#83891)


  Commit: 2e93ee6a2389cc65faf9739cd7a6c438d5e05a9e
      https://github.com/llvm/llvm-project/commit/2e93ee6a2389cc65faf9739cd7a6c438d5e05a9e
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M third-party/benchmark/.ycm_extra_conf.py
    M third-party/benchmark/AUTHORS
    M third-party/benchmark/CMakeLists.txt
    M third-party/benchmark/CONTRIBUTORS
    M third-party/benchmark/README.md
    M third-party/benchmark/WORKSPACE
    M third-party/benchmark/bindings/python/build_defs.bzl
    M third-party/benchmark/bindings/python/google_benchmark/__init__.py
    M third-party/benchmark/bindings/python/google_benchmark/benchmark.cc
    M third-party/benchmark/bindings/python/google_benchmark/example.py
    R third-party/benchmark/bindings/python/pybind11.BUILD
    M third-party/benchmark/bindings/python/python_headers.BUILD
    R third-party/benchmark/bindings/python/requirements.txt
    M third-party/benchmark/cmake/CXXFeatureCheck.cmake
    M third-party/benchmark/cmake/GetGitVersion.cmake
    M third-party/benchmark/cmake/GoogleTest.cmake
    M third-party/benchmark/cmake/Modules/FindPFM.cmake
    M third-party/benchmark/cmake/benchmark.pc.in
    M third-party/benchmark/docs/AssemblyTests.md
    M third-party/benchmark/docs/_config.yml
    M third-party/benchmark/docs/dependencies.md
    M third-party/benchmark/docs/index.md
    M third-party/benchmark/docs/perf_counters.md
    M third-party/benchmark/docs/releasing.md
    M third-party/benchmark/docs/tools.md
    M third-party/benchmark/docs/user_guide.md
    M third-party/benchmark/include/benchmark/benchmark.h
    R third-party/benchmark/requirements.txt
    M third-party/benchmark/setup.py
    M third-party/benchmark/src/CMakeLists.txt
    M third-party/benchmark/src/benchmark.cc
    M third-party/benchmark/src/benchmark_api_internal.cc
    M third-party/benchmark/src/benchmark_api_internal.h
    M third-party/benchmark/src/benchmark_main.cc
    M third-party/benchmark/src/benchmark_name.cc
    M third-party/benchmark/src/benchmark_register.cc
    M third-party/benchmark/src/benchmark_register.h
    M third-party/benchmark/src/benchmark_runner.cc
    M third-party/benchmark/src/benchmark_runner.h
    M third-party/benchmark/src/check.h
    M third-party/benchmark/src/colorprint.cc
    M third-party/benchmark/src/commandlineflags.cc
    M third-party/benchmark/src/commandlineflags.h
    M third-party/benchmark/src/complexity.cc
    M third-party/benchmark/src/complexity.h
    M third-party/benchmark/src/console_reporter.cc
    M third-party/benchmark/src/counter.cc
    M third-party/benchmark/src/csv_reporter.cc
    M third-party/benchmark/src/cycleclock.h
    M third-party/benchmark/src/internal_macros.h
    M third-party/benchmark/src/json_reporter.cc
    M third-party/benchmark/src/log.h
    M third-party/benchmark/src/perf_counters.cc
    M third-party/benchmark/src/perf_counters.h
    M third-party/benchmark/src/re.h
    M third-party/benchmark/src/reporter.cc
    R third-party/benchmark/src/sleep.cc
    R third-party/benchmark/src/sleep.h
    M third-party/benchmark/src/statistics.cc
    M third-party/benchmark/src/statistics.h
    M third-party/benchmark/src/string_util.cc
    M third-party/benchmark/src/string_util.h
    M third-party/benchmark/src/sysinfo.cc
    M third-party/benchmark/src/thread_manager.h
    M third-party/benchmark/src/timers.cc
    M third-party/benchmark/test/AssemblyTests.cmake
    M third-party/benchmark/test/CMakeLists.txt
    M third-party/benchmark/test/args_product_test.cc
    M third-party/benchmark/test/basic_test.cc
    M third-party/benchmark/test/benchmark_gtest.cc
    M third-party/benchmark/test/benchmark_name_gtest.cc
    M third-party/benchmark/test/benchmark_random_interleaving_gtest.cc
    M third-party/benchmark/test/benchmark_setup_teardown_test.cc
    M third-party/benchmark/test/benchmark_test.cc
    M third-party/benchmark/test/clobber_memory_assembly_test.cc
    M third-party/benchmark/test/complexity_test.cc
    M third-party/benchmark/test/diagnostics_test.cc
    M third-party/benchmark/test/donotoptimize_assembly_test.cc
    M third-party/benchmark/test/donotoptimize_test.cc
    M third-party/benchmark/test/filter_test.cc
    M third-party/benchmark/test/fixture_test.cc
    M third-party/benchmark/test/link_main_test.cc
    M third-party/benchmark/test/map_test.cc
    M third-party/benchmark/test/memory_manager_test.cc
    M third-party/benchmark/test/multiple_ranges_test.cc
    M third-party/benchmark/test/options_test.cc
    M third-party/benchmark/test/output_test.h
    M third-party/benchmark/test/output_test_helper.cc
    M third-party/benchmark/test/perf_counters_gtest.cc
    M third-party/benchmark/test/perf_counters_test.cc
    M third-party/benchmark/test/register_benchmark_test.cc
    M third-party/benchmark/test/reporter_output_test.cc
    M third-party/benchmark/test/skip_with_error_test.cc
    M third-party/benchmark/test/spec_arg_test.cc
    M third-party/benchmark/test/statistics_gtest.cc
    M third-party/benchmark/test/string_util_gtest.cc
    M third-party/benchmark/test/user_counters_tabular_test.cc
    M third-party/benchmark/test/user_counters_test.cc
    M third-party/benchmark/test/user_counters_thousands_test.cc
    M third-party/benchmark/tools/compare.py
    M third-party/benchmark/tools/gbench/Inputs/test1_run1.json
    M third-party/benchmark/tools/gbench/Inputs/test1_run2.json
    M third-party/benchmark/tools/gbench/__init__.py
    M third-party/benchmark/tools/gbench/report.py
    M third-party/benchmark/tools/gbench/util.py
    M third-party/benchmark/tools/requirements.txt
    M third-party/benchmark/tools/strip_asm.py

  Log Message:
  -----------
  Update Benchmark (#83488)

Addresses the `third-party/benchmark` part of #81859 (by happening to remove `requirements.txt`)


  Commit: d95e6d027486876559f1a2a96c33b8ad93cc0ae4
      https://github.com/llvm/llvm-project/commit/d95e6d027486876559f1a2a96c33b8ad93cc0ae4
  Author: Guray Ozen <guray.ozen at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    A mlir/test/Integration/GPU/CUDA/sm90/python/lit.local.cfg
    A mlir/test/Integration/GPU/CUDA/sm90/python/matmul.py
    A mlir/test/Integration/GPU/CUDA/sm90/python/tools/lit.local.cfg
    A mlir/test/Integration/GPU/CUDA/sm90/python/tools/matmulBuilder.py
    A mlir/test/Integration/GPU/CUDA/sm90/python/tools/nvgpucompiler.py

  Log Message:
  -----------
  [mlir] GEMM Hopper Tensor Core Integration Test (#81478)


  Commit: 922a431e10fa28519eb5d62e094f19b1008612a1
      https://github.com/llvm/llvm-project/commit/922a431e10fa28519eb5d62e094f19b1008612a1
  Author: Alan Zhao <ayzhao at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/test/tools/llvm-profdata/binary-ids-padding.test
    M llvm/test/tools/llvm-profdata/large-binary-id-size.test
    M llvm/test/tools/llvm-profdata/malformed-not-space-for-another-header.test
    M llvm/test/tools/llvm-profdata/malformed-num-counters-zero.test
    M llvm/test/tools/llvm-profdata/malformed-ptr-to-counter-array.test
    M llvm/test/tools/llvm-profdata/misaligned-binary-ids-size.test
    M llvm/test/tools/llvm-profdata/raw-32-bits-be.test
    M llvm/test/tools/llvm-profdata/raw-32-bits-le.test
    M llvm/test/tools/llvm-profdata/raw-64-bits-be.test
    M llvm/test/tools/llvm-profdata/raw-64-bits-le.test
    M llvm/test/tools/llvm-profdata/raw-two-profiles.test

  Log Message:
  -----------
  [profdata][nfc] Disable several tests on Windows (#83907)

Several profdata tests pass the byte 012 to printf. This causes these
tests to fail when using GnuWin32's version of printf because printf
will detect that 012 is the LF character and will prepend the byte 015
(CR) in front of LF.

This change is required after
https://github.com/llvm/llvm-project/pull/82711 which bumped the version
number.


  Commit: aec6a04b8e99b42eca431fc0b56947937d3a14c2
      https://github.com/llvm/llvm-project/commit/aec6a04b8e99b42eca431fc0b56947937d3a14c2
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M third-party/benchmark/.ycm_extra_conf.py
    M third-party/benchmark/AUTHORS
    M third-party/benchmark/CMakeLists.txt
    M third-party/benchmark/CONTRIBUTORS
    M third-party/benchmark/README.md
    M third-party/benchmark/WORKSPACE
    M third-party/benchmark/bindings/python/build_defs.bzl
    M third-party/benchmark/bindings/python/google_benchmark/__init__.py
    M third-party/benchmark/bindings/python/google_benchmark/benchmark.cc
    M third-party/benchmark/bindings/python/google_benchmark/example.py
    A third-party/benchmark/bindings/python/pybind11.BUILD
    M third-party/benchmark/bindings/python/python_headers.BUILD
    A third-party/benchmark/bindings/python/requirements.txt
    M third-party/benchmark/cmake/CXXFeatureCheck.cmake
    M third-party/benchmark/cmake/GetGitVersion.cmake
    M third-party/benchmark/cmake/GoogleTest.cmake
    M third-party/benchmark/cmake/Modules/FindPFM.cmake
    M third-party/benchmark/cmake/benchmark.pc.in
    M third-party/benchmark/docs/AssemblyTests.md
    M third-party/benchmark/docs/_config.yml
    M third-party/benchmark/docs/dependencies.md
    M third-party/benchmark/docs/index.md
    M third-party/benchmark/docs/perf_counters.md
    M third-party/benchmark/docs/releasing.md
    M third-party/benchmark/docs/tools.md
    M third-party/benchmark/docs/user_guide.md
    M third-party/benchmark/include/benchmark/benchmark.h
    A third-party/benchmark/requirements.txt
    M third-party/benchmark/setup.py
    M third-party/benchmark/src/CMakeLists.txt
    M third-party/benchmark/src/benchmark.cc
    M third-party/benchmark/src/benchmark_api_internal.cc
    M third-party/benchmark/src/benchmark_api_internal.h
    M third-party/benchmark/src/benchmark_main.cc
    M third-party/benchmark/src/benchmark_name.cc
    M third-party/benchmark/src/benchmark_register.cc
    M third-party/benchmark/src/benchmark_register.h
    M third-party/benchmark/src/benchmark_runner.cc
    M third-party/benchmark/src/benchmark_runner.h
    M third-party/benchmark/src/check.h
    M third-party/benchmark/src/colorprint.cc
    M third-party/benchmark/src/commandlineflags.cc
    M third-party/benchmark/src/commandlineflags.h
    M third-party/benchmark/src/complexity.cc
    M third-party/benchmark/src/complexity.h
    M third-party/benchmark/src/console_reporter.cc
    M third-party/benchmark/src/counter.cc
    M third-party/benchmark/src/csv_reporter.cc
    M third-party/benchmark/src/cycleclock.h
    M third-party/benchmark/src/internal_macros.h
    M third-party/benchmark/src/json_reporter.cc
    M third-party/benchmark/src/log.h
    M third-party/benchmark/src/perf_counters.cc
    M third-party/benchmark/src/perf_counters.h
    M third-party/benchmark/src/re.h
    M third-party/benchmark/src/reporter.cc
    A third-party/benchmark/src/sleep.cc
    A third-party/benchmark/src/sleep.h
    M third-party/benchmark/src/statistics.cc
    M third-party/benchmark/src/statistics.h
    M third-party/benchmark/src/string_util.cc
    M third-party/benchmark/src/string_util.h
    M third-party/benchmark/src/sysinfo.cc
    M third-party/benchmark/src/thread_manager.h
    M third-party/benchmark/src/timers.cc
    M third-party/benchmark/test/AssemblyTests.cmake
    M third-party/benchmark/test/CMakeLists.txt
    M third-party/benchmark/test/args_product_test.cc
    M third-party/benchmark/test/basic_test.cc
    M third-party/benchmark/test/benchmark_gtest.cc
    M third-party/benchmark/test/benchmark_name_gtest.cc
    M third-party/benchmark/test/benchmark_random_interleaving_gtest.cc
    M third-party/benchmark/test/benchmark_setup_teardown_test.cc
    M third-party/benchmark/test/benchmark_test.cc
    M third-party/benchmark/test/clobber_memory_assembly_test.cc
    M third-party/benchmark/test/complexity_test.cc
    M third-party/benchmark/test/diagnostics_test.cc
    M third-party/benchmark/test/donotoptimize_assembly_test.cc
    M third-party/benchmark/test/donotoptimize_test.cc
    M third-party/benchmark/test/filter_test.cc
    M third-party/benchmark/test/fixture_test.cc
    M third-party/benchmark/test/link_main_test.cc
    M third-party/benchmark/test/map_test.cc
    M third-party/benchmark/test/memory_manager_test.cc
    M third-party/benchmark/test/multiple_ranges_test.cc
    M third-party/benchmark/test/options_test.cc
    M third-party/benchmark/test/output_test.h
    M third-party/benchmark/test/output_test_helper.cc
    M third-party/benchmark/test/perf_counters_gtest.cc
    M third-party/benchmark/test/perf_counters_test.cc
    M third-party/benchmark/test/register_benchmark_test.cc
    M third-party/benchmark/test/reporter_output_test.cc
    M third-party/benchmark/test/skip_with_error_test.cc
    M third-party/benchmark/test/spec_arg_test.cc
    M third-party/benchmark/test/statistics_gtest.cc
    M third-party/benchmark/test/string_util_gtest.cc
    M third-party/benchmark/test/user_counters_tabular_test.cc
    M third-party/benchmark/test/user_counters_test.cc
    M third-party/benchmark/test/user_counters_thousands_test.cc
    M third-party/benchmark/tools/compare.py
    M third-party/benchmark/tools/gbench/Inputs/test1_run1.json
    M third-party/benchmark/tools/gbench/Inputs/test1_run2.json
    M third-party/benchmark/tools/gbench/__init__.py
    M third-party/benchmark/tools/gbench/report.py
    M third-party/benchmark/tools/gbench/util.py
    M third-party/benchmark/tools/requirements.txt
    M third-party/benchmark/tools/strip_asm.py

  Log Message:
  -----------
  Revert "Update Benchmark (#83488)"

This reverts commit 2e93ee6a2389cc65faf9739cd7a6c438d5e05a9e.

buildbot failures, e.g.
`/third-party/benchmark/cmake/pthread_affinity.cpp`


  Commit: 6325dd57318bc4640dded8f59cadd315aa8185ae
      https://github.com/llvm/llvm-project/commit/6325dd57318bc4640dded8f59cadd315aa8185ae
  Author: Natalie Chouinard <sudonatalie at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/test/CodeGenHLSL/semantics/DispatchThreadID.hlsl
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/SV_DispatchThreadID.ll

  Log Message:
  -----------
  [HLSL][SPIR-V] Add SV_DispatchThreadID semantic support (#82536)

Add SPIR-V backend support for the HLSL SV_DispatchThreadID semantic
attribute, which is lowered to a @llvm.dx.thread.id intrinsic in LLVM
IR. In the SPIR-V backend, this is now correctly translated to a
`GlobalInvocationId` builtin variable.

Fixes #82534


  Commit: df9ba13579e298fcb57aa59c5c187ce6729881d6
      https://github.com/llvm/llvm-project/commit/df9ba13579e298fcb57aa59c5c187ce6729881d6
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/ScalarEvolution.h
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [LV] Handle scalable VFs in optimizeForVFAndUF (#82669)

Given a scalable VF of the form <NumElts * VScale>, this patch adds the
ability to discharge a backedge test for a loop whose trip count is
between (NumElts, MinVScale*NumElts).

A couple of notes on this:
* Annoyingly, I could not figure out to write a test for this case. My
attempt is checked in as test32_i8 in f67ef1a, but LV uses a fixed
vector in that case, and ignored the force flags.
* This depends on 9eb5f94f to avoid appearing like a regression. Since
SCEV doesn't know any upper bound on vscale without the vscale_range
attribute (it doesn't query TTI), the ranges overflow on the multiply.
Arguably, this is fixing a bug in the current LV code since in theory
vscale can be large enough to overflow for real, but no actual target is
going to see that case.


  Commit: eaa0d3b1336b82df01ff50dfbe50bb8cdd7ada87
      https://github.com/llvm/llvm-project/commit/eaa0d3b1336b82df01ff50dfbe50bb8cdd7ada87
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libc/test/src/stdbit/stdc_has_single_bit_uc_test.cpp
    M libc/test/src/stdbit/stdc_has_single_bit_ui_test.cpp
    M libc/test/src/stdbit/stdc_has_single_bit_ul_test.cpp
    M libc/test/src/stdbit/stdc_has_single_bit_ull_test.cpp
    M libc/test/src/stdbit/stdc_has_single_bit_us_test.cpp

  Log Message:
  -----------
  [libc][test][stdbit] fix has_single_bit test names (#83904)

This was copy+pasted from count_ones without updating the test name completely.


  Commit: a5b797172cc902db166e9a695716fb81405f86e4
      https://github.com/llvm/llvm-project/commit/a5b797172cc902db166e9a695716fb81405f86e4
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    A third-party/benchmark/.pre-commit-config.yaml
    M third-party/benchmark/.ycm_extra_conf.py
    M third-party/benchmark/AUTHORS
    M third-party/benchmark/CMakeLists.txt
    M third-party/benchmark/CONTRIBUTORS
    A third-party/benchmark/MODULE.bazel
    M third-party/benchmark/README.md
    M third-party/benchmark/WORKSPACE
    A third-party/benchmark/WORKSPACE.bzlmod
    A third-party/benchmark/bazel/benchmark_deps.bzl
    M third-party/benchmark/bindings/python/build_defs.bzl
    M third-party/benchmark/bindings/python/google_benchmark/__init__.py
    M third-party/benchmark/bindings/python/google_benchmark/benchmark.cc
    M third-party/benchmark/bindings/python/google_benchmark/example.py
    A third-party/benchmark/bindings/python/google_benchmark/version.py
    A third-party/benchmark/bindings/python/nanobind.BUILD
    R third-party/benchmark/bindings/python/pybind11.BUILD
    M third-party/benchmark/bindings/python/python_headers.BUILD
    R third-party/benchmark/bindings/python/requirements.txt
    M third-party/benchmark/cmake/CXXFeatureCheck.cmake
    M third-party/benchmark/cmake/GetGitVersion.cmake
    M third-party/benchmark/cmake/GoogleTest.cmake
    M third-party/benchmark/cmake/Modules/FindPFM.cmake
    M third-party/benchmark/cmake/benchmark.pc.in
    A third-party/benchmark/cmake/pthread_affinity.cpp
    M third-party/benchmark/docs/AssemblyTests.md
    M third-party/benchmark/docs/_config.yml
    A third-party/benchmark/docs/assets/images/icon.png
    A third-party/benchmark/docs/assets/images/icon.xcf
    A third-party/benchmark/docs/assets/images/icon_black.png
    A third-party/benchmark/docs/assets/images/icon_black.xcf
    M third-party/benchmark/docs/dependencies.md
    M third-party/benchmark/docs/index.md
    M third-party/benchmark/docs/perf_counters.md
    A third-party/benchmark/docs/python_bindings.md
    A third-party/benchmark/docs/reducing_variance.md
    M third-party/benchmark/docs/releasing.md
    M third-party/benchmark/docs/tools.md
    M third-party/benchmark/docs/user_guide.md
    M third-party/benchmark/include/benchmark/benchmark.h
    A third-party/benchmark/include/benchmark/export.h
    A third-party/benchmark/pyproject.toml
    R third-party/benchmark/requirements.txt
    M third-party/benchmark/setup.py
    M third-party/benchmark/src/CMakeLists.txt
    M third-party/benchmark/src/benchmark.cc
    M third-party/benchmark/src/benchmark_api_internal.cc
    M third-party/benchmark/src/benchmark_api_internal.h
    M third-party/benchmark/src/benchmark_main.cc
    M third-party/benchmark/src/benchmark_name.cc
    M third-party/benchmark/src/benchmark_register.cc
    M third-party/benchmark/src/benchmark_register.h
    M third-party/benchmark/src/benchmark_runner.cc
    M third-party/benchmark/src/benchmark_runner.h
    A third-party/benchmark/src/check.cc
    M third-party/benchmark/src/check.h
    M third-party/benchmark/src/colorprint.cc
    M third-party/benchmark/src/commandlineflags.cc
    M third-party/benchmark/src/commandlineflags.h
    M third-party/benchmark/src/complexity.cc
    M third-party/benchmark/src/complexity.h
    M third-party/benchmark/src/console_reporter.cc
    M third-party/benchmark/src/counter.cc
    M third-party/benchmark/src/csv_reporter.cc
    M third-party/benchmark/src/cycleclock.h
    M third-party/benchmark/src/internal_macros.h
    M third-party/benchmark/src/json_reporter.cc
    M third-party/benchmark/src/log.h
    M third-party/benchmark/src/perf_counters.cc
    M third-party/benchmark/src/perf_counters.h
    M third-party/benchmark/src/re.h
    M third-party/benchmark/src/reporter.cc
    R third-party/benchmark/src/sleep.cc
    R third-party/benchmark/src/sleep.h
    M third-party/benchmark/src/statistics.cc
    M third-party/benchmark/src/statistics.h
    M third-party/benchmark/src/string_util.cc
    M third-party/benchmark/src/string_util.h
    M third-party/benchmark/src/sysinfo.cc
    M third-party/benchmark/src/thread_manager.h
    M third-party/benchmark/src/timers.cc
    M third-party/benchmark/test/AssemblyTests.cmake
    M third-party/benchmark/test/CMakeLists.txt
    M third-party/benchmark/test/args_product_test.cc
    M third-party/benchmark/test/basic_test.cc
    M third-party/benchmark/test/benchmark_gtest.cc
    A third-party/benchmark/test/benchmark_min_time_flag_iters_test.cc
    A third-party/benchmark/test/benchmark_min_time_flag_time_test.cc
    M third-party/benchmark/test/benchmark_name_gtest.cc
    M third-party/benchmark/test/benchmark_random_interleaving_gtest.cc
    M third-party/benchmark/test/benchmark_setup_teardown_test.cc
    M third-party/benchmark/test/benchmark_test.cc
    M third-party/benchmark/test/clobber_memory_assembly_test.cc
    M third-party/benchmark/test/complexity_test.cc
    M third-party/benchmark/test/diagnostics_test.cc
    M third-party/benchmark/test/donotoptimize_assembly_test.cc
    M third-party/benchmark/test/donotoptimize_test.cc
    M third-party/benchmark/test/filter_test.cc
    M third-party/benchmark/test/fixture_test.cc
    M third-party/benchmark/test/link_main_test.cc
    M third-party/benchmark/test/map_test.cc
    M third-party/benchmark/test/memory_manager_test.cc
    A third-party/benchmark/test/min_time_parse_gtest.cc
    M third-party/benchmark/test/multiple_ranges_test.cc
    M third-party/benchmark/test/options_test.cc
    M third-party/benchmark/test/output_test.h
    M third-party/benchmark/test/output_test_helper.cc
    M third-party/benchmark/test/perf_counters_gtest.cc
    M third-party/benchmark/test/perf_counters_test.cc
    M third-party/benchmark/test/register_benchmark_test.cc
    M third-party/benchmark/test/reporter_output_test.cc
    M third-party/benchmark/test/skip_with_error_test.cc
    M third-party/benchmark/test/spec_arg_test.cc
    A third-party/benchmark/test/spec_arg_verbosity_test.cc
    M third-party/benchmark/test/statistics_gtest.cc
    M third-party/benchmark/test/string_util_gtest.cc
    A third-party/benchmark/test/time_unit_gtest.cc
    M third-party/benchmark/test/user_counters_tabular_test.cc
    M third-party/benchmark/test/user_counters_test.cc
    M third-party/benchmark/test/user_counters_thousands_test.cc
    M third-party/benchmark/tools/compare.py
    M third-party/benchmark/tools/gbench/Inputs/test1_run1.json
    M third-party/benchmark/tools/gbench/Inputs/test1_run2.json
    A third-party/benchmark/tools/gbench/Inputs/test5_run0.json
    A third-party/benchmark/tools/gbench/Inputs/test5_run1.json
    M third-party/benchmark/tools/gbench/__init__.py
    M third-party/benchmark/tools/gbench/report.py
    M third-party/benchmark/tools/gbench/util.py
    A third-party/benchmark/tools/libpfm.BUILD.bazel
    M third-party/benchmark/tools/requirements.txt
    M third-party/benchmark/tools/strip_asm.py

  Log Message:
  -----------
  Reapply "Update Benchmark (#83488)" (#83916)

This reverts commit aec6a04b8e99b42eca431fc0b56947937d3a14c2.

(google/benchmark still at hash 1576991177ba97a4b2ff6c45950f1fa6e9aa678c as it was in #83488. Also reapplied same extra local diffs)

Verified locally.


  Commit: 8848258f7bf67fbaf49213a2fb7edb8a3c2f0493
      https://github.com/llvm/llvm-project/commit/8848258f7bf67fbaf49213a2fb7edb8a3c2f0493
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/test/Transforms/SROA/phi-and-select.ll
    M llvm/test/Transforms/SROA/phi-gep.ll

  Log Message:
  -----------
  [SROA] Unfold gep of index phi (round 2) (#83494)

If a gep has only one phi as one of its operands and the remaining
indexes are constant, we can unfold `gep ptr, (phi idx1, idx2)` to `phi
((gep ptr, idx1), (gep ptr, idx2))`.

Take care not to unfold recursive phis.

Followup to #80983.

This was initially was #83087. Initial PR did not handle allocas in
entry block that weren't at the beginning of the function, causing GEPs
to be inserted after the first chunk of allocas but potentially before
an alloca not at the beginning. Insert GEPs at the end of the entry
block instead since constants/arguments/static allocas can all be used
there.


  Commit: 691fc7cdcc3679c5fb7963147a9c358ff9019ab7
      https://github.com/llvm/llvm-project/commit/691fc7cdcc3679c5fb7963147a9c358ff9019ab7
  Author: Aart Bik <39774503+aartbik at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
    M mlir/test/Integration/Dialect/SparseTensor/CPU/block.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/block_majors.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output_bf16.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output_f16.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_insert_3d.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_loose.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul_slice.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matrix_ops.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_print.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_re_im.mlir
    M mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/sparse-gemm-lib.mlir
    M mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/sparse-sampled-matmul-lib.mlir
    M mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/sparse-sddmm-lib.mlir

  Log Message:
  -----------
  [mlir][sparse] add dim/lvl information to sparse_tensor.print (#83913)

More information is more testing!
Also adjusts already migrated integration tests


  Commit: 8cc8fdaf5c2e799bc758919365bae601e59c03fc
      https://github.com/llvm/llvm-project/commit/8cc8fdaf5c2e799bc758919365bae601e59c03fc
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/itofp.ll

  Log Message:
  -----------
  [AArch64] Also promote vector bf16 INT_TP_FP to f32

This mirrors the scalar version.


  Commit: 52b69aa32f5280ce600fbfea1c16a6f17a979c4d
      https://github.com/llvm/llvm-project/commit/52b69aa32f5280ce600fbfea1c16a6f17a979c4d
  Author: Peiming Liu <36770114+PeimingLiu at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorStorageLayout.h
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorType.h
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.h
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.h
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorLevel.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorLevel.h
    A mlir/test/Dialect/SparseTensor/sparse_batch.mlir
    M mlir/test/Dialect/SparseTensor/sparse_conv_2d_slice_based.mlir

  Log Message:
  -----------
  [mlir][sparse] support sparsifying batch levels (#83898)


  Commit: 10ccde30e784622cfb16940f7dddd4bb3a94ce44
      https://github.com/llvm/llvm-project/commit/10ccde30e784622cfb16940f7dddd4bb3a94ce44
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/include/clang/InstallAPI/Frontend.h
    M clang/include/clang/InstallAPI/Visitor.h
    M clang/lib/InstallAPI/Frontend.cpp
    M clang/lib/InstallAPI/Visitor.cpp
    M clang/test/InstallAPI/objcclasses.test
    M llvm/include/llvm/TextAPI/Record.h
    M llvm/lib/TextAPI/RecordsSlice.cpp

  Log Message:
  -----------
  [InstallAPI] Collect symbols from ObjC Ivars (#83632)


  Commit: 3bc0ff28a4349f5b2836413fd2cc786997f388be
      https://github.com/llvm/llvm-project/commit/3bc0ff28a4349f5b2836413fd2cc786997f388be
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/lib/Analysis/DomConditionCache.cpp
    M llvm/lib/Analysis/ValueTracking.cpp

  Log Message:
  -----------
  [Analysis] Move `DomConditionCache::findAffectedValues` to a new file; NFC


  Commit: 6ee46aba0695bd004e5b229b73dabe8fd5a70513
      https://github.com/llvm/llvm-project/commit/6ee46aba0695bd004e5b229b73dabe8fd5a70513
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Analysis/AssumptionCache.cpp
    M llvm/lib/Analysis/ValueTracking.cpp

  Log Message:
  -----------
  [Analysis] Share `findAffectedValues` between DomConditionCache and AssumptionCache; NFC


  Commit: db3bbe03f1c93100434a1394d293d13d4e5c1a2e
      https://github.com/llvm/llvm-project/commit/db3bbe03f1c93100434a1394d293d13d4e5c1a2e
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Analysis/ValueTracking/numsignbits-from-assume.ll
    M llvm/test/Transforms/InstCombine/fpclass-from-dom-cond.ll

  Log Message:
  -----------
  [Analysis] Unify most of the tracking between AssumptionCache and DomConditionCache

This helps cover some missing cases in both and hopefully serves as
creating an easier framework for extending general condition based
analysis.

Closes #83161


  Commit: 82cc2a67014deb1ad7509eeb287ffd8e7fa1ea1b
      https://github.com/llvm/llvm-project/commit/82cc2a67014deb1ad7509eeb287ffd8e7fa1ea1b
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libc/config/baremetal/api.td
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/arm/headers.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/baremetal/riscv/headers.txt

  Log Message:
  -----------
  [libc] Include stdfix.h in baremetal targets (#83900)

Fixed-point arithmetic support is targeted towards baremetal targets.


  Commit: 6fd27d5b0321f65c8a09624e456e33874ae3730b
      https://github.com/llvm/llvm-project/commit/6fd27d5b0321f65c8a09624e456e33874ae3730b
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libcxx/docs/Contributing.rst
    M libcxx/include/CMakeLists.txt
    A libcxx/include/module.modulemap
    R libcxx/include/module.modulemap.in
    M libcxx/test/libcxx/lint/lint_headers.sh.py
    M libcxx/utils/libcxx/header_information.py

  Log Message:
  -----------
  [libc++] Don't generate the modulemap file (#80352)

We actually didn't generate anything in that file, so generating it via
CMake is useless.


  Commit: 4d80df0922ef7e48d53d4ae382977d8a2ff34ce0
      https://github.com/llvm/llvm-project/commit/4d80df0922ef7e48d53d4ae382977d8a2ff34ce0
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libcxx/include/iosfwd
    M libcxx/modules/std/iosfwd.inc

  Log Message:
  -----------
  [libc++] Do not forward-declare syncstream outside experimental (#82511)

We only define the classes in `<syncstream>` when experimental library
features are enabled, but we would forward-declare them in `<iosfwd>`
even when they are disabled. This led to confusing error messages about
being unable to instantiate an undefined template.


  Commit: 5174b3802575425dcbc58680ccce10961fdb8b67
      https://github.com/llvm/llvm-project/commit/5174b3802575425dcbc58680ccce10961fdb8b67
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libcxx/include/__config
    M libcxx/include/__iterator/wrap_iter.h
    M libcxx/include/array
    M libcxx/include/string_view

  Log Message:
  -----------
  [libc++] Use __wrap_iter in string_view and array in the unstable ABI (#74482)

std::string_view and std::array iterators don't have to be raw pointers,
and in fact other implementations don't represent them as raw pointers.
Them being raw pointers in libc++ makes it easier for users to write
non-portable code. This is bad in itself, but this is even worse when
considering efforts like hardening where we want an easy ability to
swap for a different iterator type. If users depend on iterators being
raw pointers, this becomes a build break.

Hence, this patch enables the use of __wrap_iter in the unstable ABI,
creating a long term path towards making this the default. This patch
may break code that assumes these iterators are raw pointers for
people compiling with the unstable ABI.

This patch also removes several assumptions that array iterators are
raw pointers in the code base and in the test suite.


  Commit: 40081a45a14f7aa6249fa034d961549c0b1762a0
      https://github.com/llvm/llvm-project/commit/40081a45a14f7aa6249fa034d961549c0b1762a0
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libcxx/include/atomic

  Log Message:
  -----------
  [libc++] Fix diagnostic for <stdatomic.h> before C++23 (#83351)

We normally try to issue a reasonable diagnostic when mixing
<stdatomic.h> and <atomic> before C++23. However, after granularizing
the <atomic> header, the check and the #error message was moved to
*after* the point where mixing both causes problems. When mixing both
headers, we would hence get the diagnostic burried under a pile of
previous diagnostics in e.g. __atomic/kill_dependency.h.

This patch moves the check earlier to restore the intended behavior. It
also switches from `#ifdef kill_dependency` to an explicit check of the
inclusion of the header and the Standard version, which seems to be more
reliable than checking whether a macro is defined.


  Commit: 07b1aebced8015c62d4ce0afe07358049afae5b1
      https://github.com/llvm/llvm-project/commit/07b1aebced8015c62d4ce0afe07358049afae5b1
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/cmake/modules/HandleLLVMOptions.cmake
    M runtimes/CMakeLists.txt

  Log Message:
  -----------
  [LLVM][NFC] Ignore including the GNUInstallDirs on the GPU (#83910)

Summary:
I've begun treating GPU runtimes builds as cross-compiling with the LLVM
infrastructure. However, we include a lot of random stuff that the GPU
build isn't prepared to handle. This currently emits a warning, and
while it's not striclty necessary, is annoying. This patch suppresses it
by not including the standard GNU install directory resources when used
from the GPU.


  Commit: 5000e4c2527ae53bf7c1a609f739a97cdc522bbe
      https://github.com/llvm/llvm-project/commit/5000e4c2527ae53bf7c1a609f739a97cdc522bbe
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M lldb/examples/python/crashlog.py
    A lldb/test/Shell/ScriptInterpreter/Python/Crashlog/Inputs/altered_threadState.crash
    A lldb/test/Shell/ScriptInterpreter/Python/Crashlog/altered_threadState.test

  Log Message:
  -----------
  [lldb/crashlog] Fix breaking changes in textual report format (#83861)

This patch should address some register parsing issue in the legacy
report format.

rdar://107210149

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: 488ac3d5ef31237e38de6da627a619459e0ca19a
      https://github.com/llvm/llvm-project/commit/488ac3d5ef31237e38de6da627a619459e0ca19a
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M lldb/test/API/functionalities/breakpoint/breakpoint_options/TestBreakpointOptions.py

  Log Message:
  -----------
  [lldb] Enable a test that was never enabled (#83925)

According to the git log (d9442afba1bd6), this test has never been
enabled/disabled, it was checked in without being called anywhere. But
it passes and it is useful, so this commit enables it.


  Commit: 05390df497535b26879a7a96e03a76af26c8bcd3
      https://github.com/llvm/llvm-project/commit/05390df497535b26879a7a96e03a76af26c8bcd3
  Author: Aart Bik <ajcbik at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_abs.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_binary.mlir

  Log Message:
  -----------
  [mlir][sparse] migration to sparse_tensor.print (#83926)

Continuing the efforts started in #83357


  Commit: 8e56fb824a43d54208d44a403366faa5d633ee8b
      https://github.com/llvm/llvm-project/commit/8e56fb824a43d54208d44a403366faa5d633ee8b
  Author: isuckatcs <65320245+isuckatcs at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
    M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
    A clang-tools-extra/clang-tidy/bugprone/CrtpConstructorAccessibilityCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/CrtpConstructorAccessibilityCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/crtp-constructor-accessibility.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/crtp-constructor-accessibility.cpp

  Log Message:
  -----------
  [clang-tidy] CRTP Constructor Accessibility Check (#82403)

Detects error-prone Curiously Recurring Template Pattern usage, when the CRTP
can be constructed outside itself and the derived class.


  Commit: 1ebbf97316729e38b3189c6c55516266a7909121
      https://github.com/llvm/llvm-project/commit/1ebbf97316729e38b3189c6c55516266a7909121
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/cmake/modules/AddLLVM.cmake

  Log Message:
  -----------
  [LLVM] Partially revert GPU change to include dirs

Summary:
Turns out that we need this for the header install directory. I didn't
notice because I had old values cached. Revert for now until I think of
a better way to suppress the error.


  Commit: bdfebc310e67c8e96909e155669277ab75d784ba
      https://github.com/llvm/llvm-project/commit/bdfebc310e67c8e96909e155669277ab75d784ba
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/masked_compressstore_isel.ll

  Log Message:
  -----------
  [X86] Use update_mir_test_checks.py to generate CHECK lines in masked_compressstore_isel.ll. NFC


  Commit: 8d6e867eb2de32ce28ece972c91405db976192c3
      https://github.com/llvm/llvm-project/commit/8d6e867eb2de32ce28ece972c91405db976192c3
  Author: Patrick O'Neill <102189596+patrick-rivos at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/lib/Transforms/Utils/LoopUtils.cpp
    A llvm/test/Transforms/LoopStrengthReduce/lsr-unreachable-bb-phi-node.ll

  Log Message:
  -----------
  [LSR][term-fold] Ensure the simple recurrence is from the current loop (#83085)

If the phi node found by matchSimpleRecurrence is not from the current
loop, then isAlmostDeadIV panics. With this patch we bail out early.

Signed-off-by: Patrick O'Neill <patrick at rivosinc.com>

---------

Signed-off-by: Patrick O'Neill <patrick at rivosinc.com>


  Commit: 57592e9ae78e16ffe4f2a2cd3190c422bcdba5a0
      https://github.com/llvm/llvm-project/commit/57592e9ae78e16ffe4f2a2cd3190c422bcdba5a0
  Author: michele-scandale <michele.scandale at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/BuiltinsBase.td

  Log Message:
  -----------
  [Clang] Fixes of builtin definitions after PR #68324. (#81022)

This commit addresses few differences between the `Builtins.def` file
before the refactoring done in PR #68324 and the currently generated
`Builtins.inc` file.


  Commit: 81617f85009b4bf5f7eb45f9ff0db53dc1bdf310
      https://github.com/llvm/llvm-project/commit/81617f85009b4bf5f7eb45f9ff0db53dc1bdf310
  Author: Brad Smith <brad at comstyle.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/lib/Driver/ToolChains/Fuchsia.cpp
    M clang/lib/Driver/ToolChains/Haiku.cpp
    M clang/lib/Driver/ToolChains/NetBSD.cpp
    M clang/lib/Driver/ToolChains/OpenBSD.cpp
    M clang/test/Driver/freebsd.c
    M clang/test/Driver/fuchsia.c
    M clang/test/Driver/haiku.c
    M clang/test/Driver/netbsd.c
    M clang/test/Driver/openbsd.c

  Log Message:
  -----------
  [Driver][RISCV] Forward --no-relax option to linker for RISC-V on *BS… (#83216)

…D, Fuchsia and Haiku

Based on https://github.com/llvm/llvm-project/pull/76432


  Commit: 3e40c96d8970f8a52a1f711b4f28aec5cb13e89e
      https://github.com/llvm/llvm-project/commit/3e40c96d8970f8a52a1f711b4f28aec5cb13e89e
  Author: AtariDreams <83477269+AtariDreams at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/test/CodeGen/X86/pr59305.ll

  Log Message:
  -----------
  [X86] Resolve FIXME: Add FPCW as a rounding control register (#82452)

To prevent tests from breaking, another fix had to be made: Now, we
check if the instruction after a waiting instruction is a call, and if
so, we insert the wait.


  Commit: 275fe3ae2dced8275a1dd85a4f892fee99d322e2
      https://github.com/llvm/llvm-project/commit/275fe3ae2dced8275a1dd85a4f892fee99d322e2
  Author: Aart Bik <ajcbik at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_complex_ops.mlir

  Log Message:
  -----------
  [mlir][sparse] support complex type for sparse_tensor.print (#83934)

With an integration test example


  Commit: a5c90e48b6f11bc6db7344503589648f76b16d80
      https://github.com/llvm/llvm-project/commit/a5c90e48b6f11bc6db7344503589648f76b16d80
  Author: wanglei <wanglei at loongson.cn>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchSubtarget.h
    M llvm/test/CodeGen/LoongArch/alloca.ll
    M llvm/test/CodeGen/LoongArch/alsl.ll
    M llvm/test/CodeGen/LoongArch/atomicrmw-uinc-udec-wrap.ll
    M llvm/test/CodeGen/LoongArch/bitreverse.ll
    M llvm/test/CodeGen/LoongArch/branch-relaxation.ll
    M llvm/test/CodeGen/LoongArch/bswap-bitreverse.ll
    M llvm/test/CodeGen/LoongArch/bswap.ll
    M llvm/test/CodeGen/LoongArch/bytepick.ll
    M llvm/test/CodeGen/LoongArch/calling-conv-common.ll
    M llvm/test/CodeGen/LoongArch/calling-conv-lp64d.ll
    M llvm/test/CodeGen/LoongArch/calling-conv-lp64s.ll
    M llvm/test/CodeGen/LoongArch/can-not-realign-stack.ll
    M llvm/test/CodeGen/LoongArch/cfr-pseudo-copy.mir
    M llvm/test/CodeGen/LoongArch/ctlz-cttz-ctpop.ll
    M llvm/test/CodeGen/LoongArch/fcopysign.ll
    M llvm/test/CodeGen/LoongArch/get-setcc-result-type.ll
    M llvm/test/CodeGen/LoongArch/ghc-cc.ll
    M llvm/test/CodeGen/LoongArch/intrinsic-memcpy.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/and.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/ashr.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/atomic-cmpxchg.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw-fp.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw-minmax.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/double-convert.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/float-convert.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/load-store.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/lshr.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/mul.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/shl.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/sub.ll
    M llvm/test/CodeGen/LoongArch/lasx/build-vector.ll
    M llvm/test/CodeGen/LoongArch/lasx/fma-v4f64.ll
    M llvm/test/CodeGen/LoongArch/lasx/fma-v8f32.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/add.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/and.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/ashr.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fadd.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fcmp.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fdiv.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fmul.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fsub.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/icmp.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/insertelement.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/lshr.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/mul.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/or.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/sdiv.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shl.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/sub.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/udiv.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/xor.ll
    M llvm/test/CodeGen/LoongArch/lasx/mulh.ll
    M llvm/test/CodeGen/LoongArch/lasx/vselect.ll
    M llvm/test/CodeGen/LoongArch/lsx/build-vector.ll
    M llvm/test/CodeGen/LoongArch/lsx/fma-v2f64.ll
    M llvm/test/CodeGen/LoongArch/lsx/fma-v4f32.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/add.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/and.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/ashr.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/extractelement.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fadd.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fcmp.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fdiv.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fmul.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fsub.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/icmp.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/insertelement.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/lshr.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/mul.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/or.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/sdiv.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shl.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/sub.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/udiv.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/xor.ll
    M llvm/test/CodeGen/LoongArch/lsx/mulh.ll
    M llvm/test/CodeGen/LoongArch/lsx/vselect.ll
    M llvm/test/CodeGen/LoongArch/preferred-alignments.ll
    M llvm/test/CodeGen/LoongArch/rotl-rotr.ll
    M llvm/test/CodeGen/LoongArch/select-to-shiftand.ll
    M llvm/test/CodeGen/LoongArch/shift-masked-shamt.ll
    M llvm/test/CodeGen/LoongArch/shrinkwrap.ll
    M llvm/test/CodeGen/LoongArch/smul-with-overflow.ll
    M llvm/test/CodeGen/LoongArch/soft-fp-to-int.ll
    M llvm/test/CodeGen/LoongArch/spill-ra-without-kill.ll
    M llvm/test/CodeGen/LoongArch/spill-reload-cfr.ll
    M llvm/test/CodeGen/LoongArch/tail-calls.ll
    M llvm/test/CodeGen/LoongArch/unaligned-access.ll
    M llvm/test/CodeGen/LoongArch/vararg.ll
    M llvm/test/CodeGen/LoongArch/vector-fp-imm.ll
    M llvm/test/CodeGen/LoongArch/zext-with-load-is-free.ll
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/loongarch_generated_funcs.ll.generated.expected
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/loongarch_generated_funcs.ll.nogenerated.expected

  Log Message:
  -----------
  [LoongArch] Switch to the Machine Scheduler (#83759)

The SelectionDAG scheduling preference now becomes source order
scheduling (machine scheduler generates better code -- even without
there being a machine model defined for LoongArch yet).

Most of the test changes are trivial instruction reorderings and
differing register allocations, without any obvious performance impact.

This is similar to commit: 3d0fbafd0bce43bb9106230a45d1130f7a40e5ec


  Commit: 6f5c4f2eacf24cecfc0faf0a204137ce65eecc2d
      https://github.com/llvm/llvm-project/commit/6f5c4f2eacf24cecfc0faf0a204137ce65eecc2d
  Author: Balaji V. Iyer <43187390+bviyer at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
    M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
    M mlir/test/Dialect/Vector/linearize.mlir
    M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp

  Log Message:
  -----------
  [mlir][vector]Add Vector bitwidth target to Linearize Vectorizable and Constant Ops (#83314)

Added a new flag `targetVectorBitwidth` to capture bit-width input.


  Commit: ccf0c8da1a0e6eea5e31fd5872ac864bf7005147
      https://github.com/llvm/llvm-project/commit/ccf0c8da1a0e6eea5e31fd5872ac864bf7005147
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
    A bolt/test/X86/linux-exceptions.s

  Log Message:
  -----------
  [BOLT] Add reading support for Linux kernel exception table (#83100)

Read Linux exception table and ignore functions with exceptions for now.
Proper support requires an introduction of new control flow since some
instructions with memory access can cause a control flow change.

Hence looking at disassembly or CFG with exceptions annotations is
valuable for code analysis, delay marking functions with exceptions as
non-simple until immediately before emitting the code.


  Commit: 1a67dee089130f06c9c60dccc1463a37d7b4fce8
      https://github.com/llvm/llvm-project/commit/1a67dee089130f06c9c60dccc1463a37d7b4fce8
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    R llvm/include/llvm/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.h
    R llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/JITLoaderVTune.h
    M llvm/lib/ExecutionEngine/Orc/Debugging/CMakeLists.txt
    R llvm/lib/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/CMakeLists.txt
    R llvm/lib/ExecutionEngine/Orc/TargetProcess/JITLoaderVTune.cpp
    R llvm/test/ExecutionEngine/JITLink/x86-64/ELF_vtune.s
    M llvm/test/ExecutionEngine/JITLink/x86-64/lit.local.cfg
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp

  Log Message:
  -----------
  Revert "[ORC][JITLink] Add Intel VTune support to JITLink (#81826)"

This reverts commit 17efdad2296a2757813e4f11d0575ee6fb826e39. It introduces a layering violation: https://github.com/llvm/llvm-project/pull/81826#issuecomment-1977455140


  Commit: 564b81db8541468ce296d3bdcacab05b9581297c
      https://github.com/llvm/llvm-project/commit/564b81db8541468ce296d3bdcacab05b9581297c
  Author: MalaySanghiIntel <148750629+MalaySanghiIntel at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    M llvm/lib/Target/X86/GISel/X86RegisterBankInfo.cpp
    M llvm/lib/Target/X86/GISel/X86RegisterBankInfo.h
    M llvm/lib/Target/X86/X86GenRegisterBankInfo.def
    M llvm/lib/Target/X86/X86RegisterBanks.td
    A llvm/test/CodeGen/X86/GlobalISel/regbankselect-x87.ll
    M llvm/test/CodeGen/X86/GlobalISel/x86_64-fallback.ll

  Log Message:
  -----------
  Add support for x87 registers on GISel register selection (#83528)

We handle 3 register classes for x87 - rfp32, rfp64 and rfp80.
1. X87 registers are assigned a pseudo register class. We need a new
register bank for these classes.
2. We add bank information and enums for these.
3. Legalizer is updated to allow 32b and 64b even in absence of SSE.
This is required because with SSE enabled, x86 doesn't use fp stack and
instead uses SSE registers.
4. Functions in X86RegisterBankInfo need to decide whether to use the
pseudo classes or SSE-enabled classes. I add MachineInstr as an argument
to static helper function getPartialMappingIdx to this end.

Add/Update tests.


  Commit: 377feaea8c6b2b55adfc56210159986eb5e37c46
      https://github.com/llvm/llvm-project/commit/377feaea8c6b2b55adfc56210159986eb5e37c46
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.h

  Log Message:
  -----------
  [X86][NFC] Clang-format X86DisassemblerDecoder.h

This is to extract NFC in #83863 into a separate commit.


  Commit: 65a8e3a400f23eaa1270a5a000e262df954a4ef6
      https://github.com/llvm/llvm-project/commit/65a8e3a400f23eaa1270a5a000e262df954a4ef6
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [MLIR] Fix crash in notifyBlockInserted() debug output (NFC)

notifyBlockInserted can be called when inserting a block in a region before
the op is built (like when building a scf::ForOp). This make us defensive
by checking the parent op before printing it.


  Commit: 0fbe45bdb909ee4c1a928cc1da030f8b09860431
      https://github.com/llvm/llvm-project/commit/0fbe45bdb909ee4c1a928cc1da030f8b09860431
  Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/test/Preprocessor/riscv-target-features.c
    M llvm/docs/RISCVUsage.rst
    M llvm/lib/Support/RISCVISAInfo.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/MC/RISCV/attribute-arch.s
    M llvm/unittests/Support/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Add support of Sscofpmf (#83831)

This is used in profile, but somehow we missed it.


  Commit: 9dab2e3064a2ad4d5ce65832d605787dc394cb72
      https://github.com/llvm/llvm-project/commit/9dab2e3064a2ad4d5ce65832d605787dc394cb72
  Author: Youngsuk Kim <joseph942010 at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaInit.cpp
    M clang/test/Analysis/stack-addr-ps.c

  Log Message:
  -----------
  [clang][Sema] Warn on return of pointer/reference to compound literal (#83741)

Emit a warning if pointer/reference to compound literal is returned from
a function.

In C, compound literals in block scope are lvalues that have automatic
storage duration. In C++, compound literals in block scope are
temporaries.

In either case, returning a pointer/reference to a compound literal can
cause a use-after-free bug.

Fixes #8678


  Commit: 7cd32688042988d2d02f791dd106286a67041b63
      https://github.com/llvm/llvm-project/commit/7cd32688042988d2d02f791dd106286a67041b63
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/MCTargetDesc/X86InstPrinterCommon.cpp
    M llvm/utils/TableGen/X86RecognizableInstr.cpp

  Log Message:
  -----------
  [X86][TableGen] Fix the mnemonic table for CMPCCXADD

The mnemonic of CMPCCXADD is `cmp${cond}xadd` and the condition code
is in the middle of mnemonic. When generating the function name for
CMPCCXADD, the substring `xadd` should be kept.

Before this patch, the name is `isCMPCC`. After this patch, the name
is `isCMPCCXADD`.


  Commit: cec2073f8e82c2d72a7246300aaa7b2a85ca4012
      https://github.com/llvm/llvm-project/commit/cec2073f8e82c2d72a7246300aaa7b2a85ca4012
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/Interp.h
    M clang/test/AST/Interp/functions.cpp

  Log Message:
  -----------
  [clang][Interp] Diagnose comparisions against weak function pointers


  Commit: d016712b2cbeecf13c0d558c7c8932fd66e14847
      https://github.com/llvm/llvm-project/commit/d016712b2cbeecf13c0d558c7c8932fd66e14847
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/llvm/enum_targets_gen.bzl
    M utils/bazel/llvm-project-overlay/mlir/tblgen.bzl

  Log Message:
  -----------
  [bzl] Remove obsolete `output_to_genfiles = True` (#83944)

The [bazel docs](https://bazel.build/rules/lib/globals/bzl#rule)
discourage setting this. The comments about being necessary for headers
or genrules seem to be obsolete, at least for the LLVM tree itself.

The effect of this is that generated files will go to `bazel-bin`
instead of `bazel-genfiles`.

One external use was fixed here:
https://github.com/google/jax/commit/32bb3b06132b4256cd8674fb98bce057dc968610.


  Commit: 662d821d44420566cd0bb649f30d7689562bdb88
      https://github.com/llvm/llvm-project/commit/662d821d44420566cd0bb649f30d7689562bdb88
  Author: Aart Bik <ajcbik at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_insert_1d.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_insert_2d.mlir

  Log Message:
  -----------
  [mlir][sparse] migrate datastructure tests to sparse_tensor.print (#83956)

Continuing the efforts started in llvm#83357


  Commit: ed6275868bd38ef87dac24ecec7a6f55129bd96d
      https://github.com/llvm/llvm-project/commit/ed6275868bd38ef87dac24ecec7a6f55129bd96d
  Author: Felix (Ting Wang) <Ting.Wang.SH at ibm.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/PowerPC/aix-tls-xcoff-reloc.ll

  Log Message:
  -----------
  [PowerPC][NFC] Update aix-tls-xcoff-reloc.ll (#83764)

Update test case changed by #66316


  Commit: 0c4736338596d6e527e286b7b551af4bb8b63a55
      https://github.com/llvm/llvm-project/commit/0c4736338596d6e527e286b7b551af4bb8b63a55
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/canonicalize-clamp-like-pattern-between-negative-and-positive-thresholds.ll
    M llvm/test/Transforms/InstCombine/nested-select.ll

  Log Message:
  -----------
  [InstCombine] Simplify nested selects with implied condition (#83739)

This patch does the following simplification:
```
sel1 = select cond1, X, Y 
sel2 = select cond2, sel1, Z
-->
sel2 = select cond2, X, Z if cond2 implies cond1
sel2 = select cond2, Y, Z if cond2 implies !cond1
```
Alive2: https://alive2.llvm.org/ce/z/9A_arU

It cannot be done in CVP/SCCP since we should guarantee that `cond2` is
not an undef.


  Commit: 3cb999c413b7e934828936ae2314b50a84205e89
      https://github.com/llvm/llvm-project/commit/3cb999c413b7e934828936ae2314b50a84205e89
  Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/docs/RISCVUsage.rst
    M llvm/lib/Target/RISCV/RISCVFeatures.td

  Log Message:
  -----------
  [RISCV] Remove note of Sscofpmf and add a newline after FeatureStdExtSscofpmf (#83958)

To address comments after committing #83831.


  Commit: 80f9458cf30d13eef21b09042ea590945c5e64db
      https://github.com/llvm/llvm-project/commit/80f9458cf30d13eef21b09042ea590945c5e64db
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/19.rst
    M libcxx/docs/Status/Cxx2cPapers.csv
    M libcxx/include/sstream
    M libcxx/include/version
    M libcxx/test/libcxx/transitive_includes/cxx03.csv
    M libcxx/test/libcxx/transitive_includes/cxx11.csv
    M libcxx/test/libcxx/transitive_includes/cxx14.csv
    M libcxx/test/libcxx/transitive_includes/cxx17.csv
    M libcxx/test/libcxx/transitive_includes/cxx20.csv
    M libcxx/test/libcxx/transitive_includes/cxx23.csv
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    A libcxx/test/std/input.output/string.streams/helper_concepts.h
    A libcxx/test/std/input.output/string.streams/helper_string_macros.h
    A libcxx/test/std/input.output/string.streams/helper_types.h
    A libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string_view.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string_view.mode.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string_view.mode.pass.cpp
    A libcxx/test/std/input.output/string.streams/istringstream/istringstream.members/str.string_view.pass.cpp
    A libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string_view.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string_view.mode.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string_view.mode.pass.cpp
    A libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.members/str.string_view.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/string_view.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/string_view.mode.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/string_view.mode.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.members/str.string_view.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string_view.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string_view.mode.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string_view.mode.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringstream/stringstream.members/str.string_view.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/sstream.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++][sstream] P2495R3: Interfacing `stringstream`s with `string_view` (#80552)

Implements P2495R3 <https://wg21.link/P2495R3>
- https://eel.is/c++draft/version.syn#headerref:%3csstream%3e
- https://eel.is/c++draft/stringbuf
- https://eel.is/c++draft/stringbuf.general
- https://eel.is/c++draft/stringbuf.cons
- https://eel.is/c++draft/stringbuf.members
- https://eel.is/c++draft/istringstream
- https://eel.is/c++draft/istringstream.general
- https://eel.is/c++draft/istringstream.cons
- https://eel.is/c++draft/istringstream.members
- https://eel.is/c++draft/ostringstream
- https://eel.is/c++draft/ostringstream.general
- https://eel.is/c++draft/ostringstream.cons
- https://eel.is/c++draft/ostringstream.members
- https://eel.is/c++draft/stringstream
- https://eel.is/c++draft/stringstream.general
- https://eel.is/c++draft/stringstream.cons
- https://eel.is/c++draft/stringstream.members

References:
- https://eel.is/c++draft/string.streams


  Commit: 9b672de9976084872fbca764898ed722dea1dd9b
      https://github.com/llvm/llvm-project/commit/9b672de9976084872fbca764898ed722dea1dd9b
  Author: Francesco Petrogalli <francesco.petrogalli at apple.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    A clang/test/TableGen/target-builtins-prototype-parser.td
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp

  Log Message:
  -----------
  [clang][Builtins] Parse clang extended vectors types. (#83584)

Clang extended vector types are mangled as follows:

    '_ExtVector<' <lanes> ',' <scalar type> '>'

This is used to defetmine the builtins signature for builtins that
use parameters defined as

    typedef <scalar type> ext_vector_type_<lanes>_<scalar type> __attribute__((ext_vector_type(<lanes>)))

or 

    template <unsigned N, class T>
    using _ExtVector __attribute__((ext_vector_type(N))) = T;

For example:

    typedef double ext_vector_type_4_double __attribute__((ext_vector_type(4)))


  Commit: 90e9e962e18fc4304c6aba81de2bb53069bcd358
      https://github.com/llvm/llvm-project/commit/90e9e962e18fc4304c6aba81de2bb53069bcd358
  Author: Andrei Golubev <andrey.golubev at intel.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Pass/Pass.h
    M mlir/tools/mlir-tblgen/PassGen.cpp

  Log Message:
  -----------
  [mlir][NFC] Apply rule of five to *Pass classes  (#80998)

Define all special member functions for mlir::Pass, mlir::OperationPass,
mlir::PassWrapper and PassGen types since these classes explicitly
specify copy-ctor. This, subsequently, should silence static analysis
checkers that report rule-of-3 / rule-of-5 violations.

Given the nature of the types, however, mark other special member
functions deleted: the semantics of a Pass type object seems to be that
it is only ever created by being wrapped in a smart pointer, so the
special member functions are never to be used externally (except for the
copy-ctor - it is "special" since it is a "delegating" ctor for derived
pass types to use during cloning - see https://reviews.llvm.org/D104302
for details).

Deleting other member functions means that `Pass x(std::move(y))` - that
used to silently work (via copy-ctor) - would fail to compile now. Yet,
as the copy ctors through the hierarchy are under 'protected' access,
the issue is unlikely to appear in practice.

Co-authored-by: Asya Pronina <anastasiya.pronina at intel.com>
Co-authored-by: Harald Rotuna <harald.razvan.rotuna at intel.com>


  Commit: a36b73e5a7f5b2f4b65f67544922be35bf81a67e
      https://github.com/llvm/llvm-project/commit/a36b73e5a7f5b2f4b65f67544922be35bf81a67e
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/lib/Analysis/Presburger/Barvinok.cpp

  Log Message:
  -----------
  Apply clang-tidy fixes for modernize-loop-convert in Barvinok.cpp (NFC)


  Commit: 991541814459bbee94db178a1328d344b2869d59
      https://github.com/llvm/llvm-project/commit/991541814459bbee94db178a1328d344b2869d59
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/lib/Analysis/Presburger/Barvinok.cpp

  Log Message:
  -----------
  Apply clang-tidy fixes for modernize-use-emplace in Barvinok.cpp (NFC)


  Commit: 2db8b9413862a159cd77ba47eda56abcda1b6dfd
      https://github.com/llvm/llvm-project/commit/2db8b9413862a159cd77ba47eda56abcda1b6dfd
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Analysis/Presburger/Barvinok.h
    M mlir/lib/Analysis/Presburger/Barvinok.cpp

  Log Message:
  -----------
  Apply clang-tidy fixes for performance-unnecessary-value-param in Barvinok.cpp (NFC)


  Commit: 1934fc6a0cad62cb80d66834e5481cb17f517802
      https://github.com/llvm/llvm-project/commit/1934fc6a0cad62cb80d66834e5481cb17f517802
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/lib/Analysis/Presburger/Barvinok.cpp

  Log Message:
  -----------
  Apply clang-tidy fixes for readability-container-size-empty in Barvinok.cpp (NFC)


  Commit: 1837579bbc9c5e0b49a54e60d99eed3d38b47d3b
      https://github.com/llvm/llvm-project/commit/1837579bbc9c5e0b49a54e60d99eed3d38b47d3b
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/lib/Analysis/Presburger/IntegerRelation.cpp

  Log Message:
  -----------
  Apply clang-tidy fixes for readability-simplify-boolean-expr in IntegerRelation.cpp (NFC)


  Commit: 46f65e45e0f5ce4cc0edabceebee681231d24687
      https://github.com/llvm/llvm-project/commit/46f65e45e0f5ce4cc0edabceebee681231d24687
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/lib/IR/PatternMatch.cpp
    A mlir/test/Transforms/gh-77420.mlir

  Log Message:
  -----------
  [mlir]use correct iterator when eraseOp (#83444)

#66771 introduce `llvm::post_order(&r.front())` which is equal to
`r.front().getSuccessor(...)`.
It will visit the succ block of current block. But actually here need to
visit all block of region in reverse order.
Fixes: #77420.


  Commit: eaa9ef678c63bf392ec2d5b736605db7ea7e7338
      https://github.com/llvm/llvm-project/commit/eaa9ef678c63bf392ec2d5b736605db7ea7e7338
  Author: Jinyang He <hejinyang at loongson.cn>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M lld/ELF/Arch/LoongArch.cpp
    A lld/test/ELF/loongarch-reloc-leb128.s

  Log Message:
  -----------
  [lld][LoongArch] Support the R_LARCH_{ADD,SUB}_ULEB128 relocation types (#81133)

For a label difference like `.uleb128 A-B`, MC generates a pair of
R_LARCH_{ADD,SUB}_ULEB128 if A-B cannot be folded as a constant. GNU
assembler generates a pair of relocations in more cases (when A or B is
in a code section with linker relaxation). It is similar to RISCV.

R_LARCH_{ADD,SUB}_ULEB128 relocations are created by Clang and GCC in
`.gcc_except_table` and other debug sections with linker relaxation
enabled. On LoongArch, first read the buf and count the available space.
Then add or sub the value. Finally truncate the expected value and fill
it into the available space.


  Commit: 0e337c67c8b9b0e04fb47712faba204c8d999af7
      https://github.com/llvm/llvm-project/commit/0e337c67c8b9b0e04fb47712faba204c8d999af7
  Author: MalaySanghiIntel <148750629+MalaySanghiIntel at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/MachinePipeliner.cpp

  Log Message:
  -----------
  Replace copy with a reference. (#82485)

These are relatively larger structures and we don't update them so ref
should be fine


  Commit: 3105cfe783d861e63c647469cc3a6c9b91f8bb4a
      https://github.com/llvm/llvm-project/commit/3105cfe783d861e63c647469cc3a6c9b91f8bb4a
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/FileCheck/FileCheck.cpp
    A llvm/test/FileCheck/empty-variable-name.txt

  Log Message:
  -----------
  [FileCheck] Fix parsing empty global and pseudo variable names (#83667)

Reland #82595 with fixes of build failures related to colored output.
See https://lab.llvm.org/buildbot/#/builders/139/builds/60549
Use `%ProtectFileCheckOutput` to avoid colored output.
Original commit message below.

In `Pattern::parseVariable`, for global variables (those starting with '$')
and for pseudo variables (those starting with '@') the first character is
consumed before actual variable name parsing. If the name is empty, it
leads to out-of-bound access to the corresponding `StringRef`.

This patch adds an if statement against the case described.


  Commit: ad5aea3712860f8173ea64773014f5b48fd08542
      https://github.com/llvm/llvm-project/commit/ad5aea3712860f8173ea64773014f5b48fd08542
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/test/Fir/memory-allocation-opt.fir

  Log Message:
  -----------
  Revert "[flang] disable memory-allocation-opt.fir test on windows" (#83822)

Reverts llvm/llvm-project#83535
Bug fixed by https://github.com/llvm/llvm-project/pull/83768


  Commit: 74dfded444ed97c1fe93cc541de1fcdd3a7f62ab
      https://github.com/llvm/llvm-project/commit/74dfded444ed97c1fe93cc541de1fcdd3a7f62ab
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/docs/Extensions.md
    M flang/lib/Lower/ConvertExprToHLFIR.cpp
    M flang/test/Lower/HLFIR/structure-constructor.f90

  Log Message:
  -----------
  [flang] Deallocate structure constructor allocatable components (#83824)

Allocatable components of structure constructors were not deallocated.
Deallocate them without calling final subroutines.
This was already properly done for array constructors.


  Commit: 2984699a3d9266926302d65dc57993f875be67e5
      https://github.com/llvm/llvm-project/commit/2984699a3d9266926302d65dc57993f875be67e5
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/lib/Lower/ConvertCall.cpp
    A flang/test/HLFIR/assumed-type-actual-args.f90

  Log Message:
  -----------
  [flang] Implement passing of assumed-type actual arguments. (#83851)

Passing `TYPE(*)`actual to `TYPE(*)` dummy was left TODO. Implement it.
The difference with other actual arguments is that `TYPE(*)` are not
represented as Fortran::evaluate::Expr<T>, so inquiries on
evaluate::Expr<T> must be updated to use evaluate::ActualArgument or
also handle semantics::Symbol case (except in portion of the code where
`TYPE(*)` is impossible, where asserts are added).


  Commit: 9a894e7d84892489826375f94c08ab16ccacc4bb
      https://github.com/llvm/llvm-project/commit/9a894e7d84892489826375f94c08ab16ccacc4bb
  Author: Shourya Goel <shouryagoel10000 at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/utils/git/github-automation.py

  Log Message:
  -----------
  [Github Automation] Allow colon after cherry-pick command (#81002)

Fixes: https://github.com/llvm/llvm-project/issues/64803

Removed unsupported branch command and changed Regex to
accept /cherry-pick: command.


  Commit: ff66e9b7e2fad71d1c65e884d6f94fb6ea5bdc21
      https://github.com/llvm/llvm-project/commit/ff66e9b7e2fad71d1c65e884d6f94fb6ea5bdc21
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/docs/Frontend/PerformanceTips.rst

  Log Message:
  -----------
  [Docs] Update frontend perfomance tips about loads/stores (#83833)

This contains two updates:

* Generalize the "no loads stores of aggregates" to "no values of
aggregate type" in general, and be clearer about the exceptions where it
is okay to use them.
 * Mention that you should not load/store non-byte-size types.


  Commit: d773c00e52f1acd68267c6f2f5bfa269b73810a0
      https://github.com/llvm/llvm-project/commit/d773c00e52f1acd68267c6f2f5bfa269b73810a0
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaExpr.cpp
    M clang/test/SemaCXX/cxx2a-consteval-default-params.cpp
    M clang/test/SemaCXX/source_location.cpp

  Log Message:
  -----------
  [Clang] Fix looking for immediate calls in default arguments. (#80690)

Due to improper use of RecursiveASTVisitor.

Fixes #80630


  Commit: 690bf64f077a281d434537b0907c9fc170123dcc
      https://github.com/llvm/llvm-project/commit/690bf64f077a281d434537b0907c9fc170123dcc
  Author: Amirreza Ashouri <ar.ashouri999 at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/test/Sema/static-assert.c
    M clang/test/SemaCXX/type-traits-nonobject.cpp

  Log Message:
  -----------
  [clang] Support `__is_trivially_copyable(int()&)==false` (#81298)

IMHO it would be productive to make a similar change for `typeid`, in
`ParseCXXTypeid`, in order to improve Clang's error message for
https://godbolt.org/z/oKKWxeYra
But that might be better done by adding a new DeclaratorContext
specifically for TypeidArg, instead of pretending that the argument to
`typeid` is a template argument, because I don't know what else that
change might affect.

Fixes #77585


  Commit: 686223376b43bf8489aed18262c60f8dbffdddbd
      https://github.com/llvm/llvm-project/commit/686223376b43bf8489aed18262c60f8dbffdddbd
  Author: Yeting Kuo <46629943+yetingk at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [LangRef] Add aligned attribute description into masked.compress/expandload sections. (#83808)

Align attribute has already been used for masked.compress/expandload in
commit #83519, #83763 and #83516.


  Commit: 88414c8862c58fa4e708a092acb87bd0687121ce
      https://github.com/llvm/llvm-project/commit/88414c8862c58fa4e708a092acb87bd0687121ce
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
    M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp

  Log Message:
  -----------
  [analyzer][NFC] Remove dead code (#83968)

Remove the unused method `CoreEngine::ExecuteWorkListWithInitialState`.


  Commit: c5d16e76892dc9dc733a844e46bf03c9c6e1d759
      https://github.com/llvm/llvm-project/commit/c5d16e76892dc9dc733a844e46bf03c9c6e1d759
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [IR] Update comment in Verifier::visitPHINode

Since svn r133708 visitPHINode no longer has to check basic block
argument types. Better 13 years late than never!


  Commit: 16f2a1fb97de0b0f57b025b1d9e79b1798a2c38f
      https://github.com/llvm/llvm-project/commit/16f2a1fb97de0b0f57b025b1d9e79b1798a2c38f
  Author: Adrian Kuegel <akuegel at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/include/mlir/IR/BuiltinAttributeInterfaces.h
    M mlir/lib/Bindings/Python/TransformInterpreter.cpp

  Log Message:
  -----------
  [mlir] Apply ClangTidy findings

move constructors should be marked noexcept


  Commit: 56abb8d5355420cf7f66183f2d526009471b4fcc
      https://github.com/llvm/llvm-project/commit/56abb8d5355420cf7f66183f2d526009471b4fcc
  Author: Graham Hunter <graham.hunter at arm.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp

  Log Message:
  -----------
  [AArch64] Be stricter about insert/extract index

Post-commit fixup patch for a request on
https://github.com/llvm/llvm-project/pull/81135


  Commit: 0709eeb583bd6cc029019c6ec2b3e210ff6d402d
      https://github.com/llvm/llvm-project/commit/0709eeb583bd6cc029019c6ec2b3e210ff6d402d
  Author: Adrian Kuegel <akuegel at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/include/mlir/IR/BuiltinAttributeInterfaces.h

  Log Message:
  -----------
  [mlir] Followup fix, added noexcept in wrong place


  Commit: b585c43dccb2c608f698419a9c8d7645d3120fdb
      https://github.com/llvm/llvm-project/commit/b585c43dccb2c608f698419a9c8d7645d3120fdb
  Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    A flang/test/Lower/OpenMP/workshare.f90

  Log Message:
  -----------
  [Flang][OpenMP] : Add a temporary lowering for workshare directive (#78268)

As a temporary solution, lower workshare to the single directive


  Commit: a668846202bcc34b1742f300ba1eb1a0e64fa36d
      https://github.com/llvm/llvm-project/commit/a668846202bcc34b1742f300ba1eb1a0e64fa36d
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    A llvm/test/CodeGen/RISCV/rvv/pr83920.ll

  Log Message:
  -----------
  [DAGCombiner] Handle extending EXTRACT_VECTOR_ELTs in calculateByteProvider (#83963)

An EXTRACT_VECTOR_ELT can extend the element to the width of its result
type, leaving the high bits undefined. Previously if we attempted to
query the bytes in these high bits we would recurse and hit an
assertion. This fixes it by bailing if the index is outside of the
vector element size.

I think the assertion Index < ByteWidth may still be incorrect, since
ByteWidth is calculated from Op.getValueSizeInBits(). I believe this
should be Op.getScalarValueSizeInBits() whenever VectorIndex is set
since we're querying the element now, not the vector. But I couldn't
think of a test case to trigger it. It can be addressed in a follow-up
patch.

Fixes #83920


  Commit: 762f762504967efbe159db5c737154b989afc9bb
      https://github.com/llvm/llvm-project/commit/762f762504967efbe159db5c737154b989afc9bb
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td

  Log Message:
  -----------
  [AMDGPU] Rename get_MUBUF_ps and use it for MTBUF too. NFC. (#83991)

This allows removing a couple of MTBUF helper (multi)classes.


  Commit: 923ddf65f4e21ec67018cf56e823895de18d83bc
      https://github.com/llvm/llvm-project/commit/923ddf65f4e21ec67018cf56e823895de18d83bc
  Author: AtariDreams <83477269+AtariDreams at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/test/CodeGenObjC/constant-non-fragile-ivar-offset.m

  Log Message:
  -----------
  [ObjC] Check entire chain of superclasses to see if class layout is statically known (#81335)

As of now, we only check if a class directly inherits from NSObject to
determine if said class has fixed offsets and can therefore "opt-out"
from the non-fragile ABI for ivars.

However, if an NSObject subclass has fixed offsets, then so must the
subclasses of that subclass, so this allows us to optimize instances of
subclasses of subclasses that inherit from NSObject and so on.

To determine this, we need to find that the compiler can see the
implementation of each intermediate class, as that means it is
statically linked.

Fixes: #81369


  Commit: 191f7678f7a76436b2b368d2c15f5ed61b9c5e2d
      https://github.com/llvm/llvm-project/commit/191f7678f7a76436b2b368d2c15f5ed61b9c5e2d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/2007-03-15-GEP-Idx-Sink.ll

  Log Message:
  -----------
  [X86] 2007-03-15-GEP-Idx-Sink.ll - regenerate test checks


  Commit: 49f95052c8cd6e611bd46e5d2730b432f1df6815
      https://github.com/llvm/llvm-project/commit/49f95052c8cd6e611bd46e5d2730b432f1df6815
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/pr59305.ll

  Log Message:
  -----------
  [X86] pr59305.ll - replace "X86-64" check prefix with "X64"


  Commit: d1d2932cb1dc24e0c8149f07b75599981ac405a7
      https://github.com/llvm/llvm-project/commit/d1d2932cb1dc24e0c8149f07b75599981ac405a7
  Author: martinboehme <mboehme at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/unittests/Support/RegexTest.cpp

  Log Message:
  -----------
  [Support][NFC] Add test documenting that empty `Regex` pattern matches nothing. (#83849)

I was wondering about this when I recently used `Regex`, and I thought
it would
be nice to have a test documenting this behavior.


  Commit: 20895965b2ed1bd037c64430dba98245ffa1232b
      https://github.com/llvm/llvm-project/commit/20895965b2ed1bd037c64430dba98245ffa1232b
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/test/CodeGen/NVPTX/i16x2-instructions.ll

  Log Message:
  -----------
  [NVPTX] Remove sub.s16x2 instruction

According to the PTX ISA this doesn't exist (and ptxas rejects it)

See https://github.com/pytorch/pytorch/issues/118589


  Commit: 94a0dd5a1960e1ace0a161228f91c2e18865d061
      https://github.com/llvm/llvm-project/commit/94a0dd5a1960e1ace0a161228f91c2e18865d061
  Author: SahilPatidar <89641424+SahilPatidar at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/cast-int-fcmp-eq-0.ll
    M llvm/test/Transforms/InstCombine/clamp-to-minmax.ll
    M llvm/test/Transforms/InstCombine/sitofp.ll

  Log Message:
  -----------
  [InstCombine] Fix Failure to convert vector fp comparisons that can be represented as integers #82241 (#83274)

Resolve #82241

---------

Co-authored-by: SahilPatidar <patidarsahil at 2001gmail.com>


  Commit: de1f33873beff93063577195e1214a9509e229e0
      https://github.com/llvm/llvm-project/commit/de1f33873beff93063577195e1214a9509e229e0
  Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Target/TargetSchedule.td
    M llvm/test/TableGen/MacroFusion.td
    M llvm/utils/TableGen/MacroFusionPredicatorEmitter.cpp

  Log Message:
  -----------
  [TableGen] Fix wrong codegen of BothFusionPredicateWithMCInstPredicate (#83990)

We should generate the `MCInstPredicate` twice, one with `FirstMI`
and another with `SecondMI`.


  Commit: 4693efe19c1cbb19ecac61e46802ffe74bd1a7ce
      https://github.com/llvm/llvm-project/commit/4693efe19c1cbb19ecac61e46802ffe74bd1a7ce
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td

  Log Message:
  -----------
  [AMDGPU] Remove Base_MUBUF_Real_Atomic_gfx11. NFC. (#83994)

This class only existed to set the dlc bit for GFX11 atomics. It is
simpler to set dlc for all loads/stores/atomics in the base class.


  Commit: 67a7a5e89d31cc332f2d782c30623dd3ddbd0862
      https://github.com/llvm/llvm-project/commit/67a7a5e89d31cc332f2d782c30623dd3ddbd0862
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td

  Log Message:
  -----------
  [AMDGPU] Only use the BUF Base_ prefix for multiple architectures. NFC.

The Base_ prefix seems redundant on a class that is only used for GFX11.


  Commit: 90e97e71060cea8cb8bc4099d724d1fe9912cfc4
      https://github.com/llvm/llvm-project/commit/90e97e71060cea8cb8bc4099d724d1fe9912cfc4
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M libc/cmake/modules/LLVMLibCTestRules.cmake

  Log Message:
  -----------
  [libc] Disable verbose logging messages on hermetic tests (#83954)

Summary:
The other test locations only give these messages when we are in verbose
logging mode. The average user does not care about which tests are not
being built, and most platforms will have missing tests.


  Commit: 341d674b6f1863d027ed30c44a14cd32599eb42d
      https://github.com/llvm/llvm-project/commit/341d674b6f1863d027ed30c44a14cd32599eb42d
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SchedA510.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseN2.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    M llvm/test/CodeGen/AArch64/sve-fixed-length-mask-opt.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-gather.ll
    M llvm/test/CodeGen/AArch64/sve-fp-int-min-max.ll
    M llvm/test/CodeGen/AArch64/sve-gather-scatter-dag-combine.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-32bit-scaled-offsets.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-32bit-unscaled-offsets.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-64bit-scaled-offset.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-64bit-unscaled-offset.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-vector-base-imm-offset.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-vector-base-scalar-offset.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ffr-manipulation.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-loads-ff.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-loads-nf.ll
    M llvm/test/CodeGen/AArch64/sve-ldnf1.mir
    M llvm/test/CodeGen/AArch64/sve-masked-gather-legalize.ll
    M llvm/test/CodeGen/AArch64/sve-ptest-removal-rdffr.mir
    M llvm/test/tools/llvm-mca/AArch64/A64FX/A64FX-sve-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A510-sve-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-sve-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-sve-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-sve-instructions.s

  Log Message:
  -----------
  [LLVM][AArch64][CodeGen] Mark FFR as a reserved register. (#83437)

This allows the removal of FFR related psuedo nodes that only existed to
work round machine verifier failures.


  Commit: c00c901f1cb714ebd053de5c6af564dc81754d3e
      https://github.com/llvm/llvm-project/commit/c00c901f1cb714ebd053de5c6af564dc81754d3e
  Author: Atousa Duprat <atousa.p at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/test/AST/Interp/c.c
    M clang/test/C/drs/dr0xx.c
    M clang/test/C/drs/dr2xx.c
    M clang/test/Sema/integer-overflow.c
    M clang/test/Sema/switch-1.c
    M clang/test/SemaCXX/enum.cpp
    M clang/test/SemaCXX/integer-overflow.cpp
    M clang/test/SemaObjC/integer-overflow.m
    M clang/test/SemaObjC/objc-literal-nsnumber.m
    M llvm/include/llvm/ADT/APInt.h
    M llvm/include/llvm/ADT/StringExtras.h
    M llvm/lib/Support/APInt.cpp
    M llvm/unittests/ADT/APIntTest.cpp

  Log Message:
  -----------
  [clang] Use separator for large numeric values in overflow diagnostic (#80939)

Add functionality to APInt::toString() that allows it to insert
separators between groups of digits, using the C++ literal
separator ' between groups.

Fixes issue #58228

Reviewers:  @AaronBallman, @cjdb, @tbaederr


  Commit: d95a0d7c0ff324c1e84606d26591416e6bf02984
      https://github.com/llvm/llvm-project/commit/d95a0d7c0ff324c1e84606d26591416e6bf02984
  Author: Yeting Kuo <46629943+yetingk at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/test/CodeGen/X86/masked_compressstore_isel.ll
    A llvm/test/CodeGen/X86/masked_expandload_isel.ll

  Log Message:
  -----------
  [DAG] Teach SelectionDAGBuilder to read parameter alignment of compressstore/expandload. (#83763)

Previously SelectionDAGBuilder used ABI alignment for
compressstore/expandload. This patch allows SelectionDAGBuilder to use
parameter alignment like vp intrinsics. This does not follow the
original code to default use vector type alignment, since it is possible
implemented to unaligned vector alignment.


  Commit: d51fcd4ed86ac6075c8a25b053c2b66051feaf62
      https://github.com/llvm/llvm-project/commit/d51fcd4ed86ac6075c8a25b053c2b66051feaf62
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    A llvm/test/Transforms/InstCombine/pr83931.ll
    M llvm/test/Transforms/InstCombine/select.ll
    M llvm/test/Transforms/InstCombine/vscale_cmp.ll

  Log Message:
  -----------
  [InstCombine] Handle scalable splat in `getFlippedStrictnessPredicateAndConstant` (#83980)

This patch adds support for canonicalization of icmp with a scalable
splat. Some optimizations assume that `icmp pred X, APInt C` is in
canonical form.

Fixes https://github.com/llvm/llvm-project/issues/83931.


  Commit: e84182af919d136d74b75ded4d599b38fb47dfb0
      https://github.com/llvm/llvm-project/commit/e84182af919d136d74b75ded4d599b38fb47dfb0
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Transforms/Inline/X86/call-abi-compatibility.ll

  Log Message:
  -----------
  [X86][Inline] Skip inline asm in inlining target feature check (#83820)

When inlining across functions with different target features, we
perform roughly two checks:
 1. The caller features must be a superset of the callee features.
2. Calls in the callee cannot use types where the target features would
change the call ABI (e.g. by changing whether something is passed in a
zmm or two ymm registers). The latter check is very crude right now.

The latter check currently also catches inline asm "calls". I believe
that inline asm should be excluded from this check, as it is independent
from the usual call ABI, and instead governed by the inline asm
constraint string.

Fixes https://github.com/llvm/llvm-project/issues/67054.


  Commit: 894f52fc0d4adbe8782e97ce7dd100da02abf020
      https://github.com/llvm/llvm-project/commit/894f52fc0d4adbe8782e97ce7dd100da02abf020
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td

  Log Message:
  -----------
  [AMDGPU] Use BUF multiclasses to reduce repetition. NFC. (#84003)

Define BUF Real instructions with this general pattern for all
architectures (not just GFX11):

  multiclass Something_Real_gfx11<...> {
    defvar ps = !cast<Pseudo>(NAME);
    def _gfx11 : ...;
  }

This allows removing a huge amount of repetition in the definitions of
individual Real instructions, where they would have to !cast their own
name to a Pseudo and pass that in as a class argument.


  Commit: a642eb89bdaf10c6b4994fc1187de27b441236ed
      https://github.com/llvm/llvm-project/commit/a642eb89bdaf10c6b4994fc1187de27b441236ed
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    A clang/test/SemaTemplate/unqual-unresolved-using-value.cpp

  Log Message:
  -----------
  [Clang][Sema] Fix crash when using name of UnresolvedUsingValueDecl with template arguments (#83842)

The following snippet causes a crash:
```
template<typename T>
struct A : T {
  using T::f;
  void f();

  void g() {
    f<int>(); // crash here
  }
};
```
This happens because we cast the result of `getAsTemplateNameDecl` as a
`TemplateDecl` in `Sema::ClassifyName`, which we cannot do for an
`UnresolvedUsingValueDecl`. This patch fixes the crash by considering a name
to be that of a template if _any_ function declaration is found per [temp.names] p3.3.


  Commit: 0d8e16a0967cfd2dbcd00c7bb7a56f476c0e64fb
      https://github.com/llvm/llvm-project/commit/0d8e16a0967cfd2dbcd00c7bb7a56f476c0e64fb
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp

  Log Message:
  -----------
  [analyzer][NFC] Make CheckerDocumentation checker in-sync with actual checker callbacks (#83973)

In PR #83677 I was surprised to see that outdated checker callback
signatures are a problem. It turns out, we need the `registerChecker...`
function to invoke the `Mgr.registerChecker<>()` which would instantiate
the `_register` calls, that would take the address of the defined
checker callbacks. Consequently, if the expected signatures mismatch, it
won't compile from now on, so we have static guarantee that this issue
never pops up again.

Given we need the `register` call, at this point we could just hook this
checker into the `debug` package and make it never registered. It
shouldn't hurt anyone :)


  Commit: 4ce737bfd6fd0aafb436eb220c3e724bfc831db4
      https://github.com/llvm/llvm-project/commit/4ce737bfd6fd0aafb436eb220c3e724bfc831db4
  Author: Douglas Deslauriers <48334845+vapdrs at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/lib/Sema/SemaChecking.cpp
    A clang/test/SemaCXX/warn-unsequenced-paren-list-init.cpp

  Log Message:
  -----------
  [clang] Sequence C++20 Parenthesized List Init (#83476)

Parenthesized list intializers are sequenced operations, see C++20
[decl.init]p16.5 and [decl.init]p16.6.2.2 for more details.

Fixes #83474


  Commit: 4cf8b298cf1837e75243a299ddefd59e6ed80e1b
      https://github.com/llvm/llvm-project/commit/4cf8b298cf1837e75243a299ddefd59e6ed80e1b
  Author: bcahoon <59846893+bcahoon at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
    A llvm/test/CodeGen/AMDGPU/promote-alloca-non-constant-index.ll

  Log Message:
  -----------
  [AMDGPU][PromoteAlloca] Correctly handle a variable vector index (#83597)

The promote alloca to vector transformation assumes that the
vector index is a constant value. If it is not a constant, then
either an assert occurs or the tranformation generates an
incorrect index.


  Commit: d9b435c24ddddcc8148fd97b42f6bb1124e52307
      https://github.com/llvm/llvm-project/commit/d9b435c24ddddcc8148fd97b42f6bb1124e52307
  Author: Weining Lu <luweining at loongson.cn>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M lld/test/ELF/loongarch-reloc-leb128.s

  Log Message:
  -----------
  [lld][test] Fix sanitizer buildbot failure

Buildbot failure:
https://lab.llvm.org/buildbot/#/builders/5/builds/41530/steps/9/logs/stdio


  Commit: a1a590ef120c273b5c278f2412c4c4eac5280f23
      https://github.com/llvm/llvm-project/commit/a1a590ef120c273b5c278f2412c4c4eac5280f23
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/VectorUtils.h
    M llvm/lib/Analysis/VectorUtils.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    A llvm/test/Transforms/InstCombine/pr83947.ll

  Log Message:
  -----------
  [InstCombine] Fix miscompilation in PR83947 (#83993)

https://github.com/llvm/llvm-project/blob/762f762504967efbe159db5c737154b989afc9bb/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp#L394-L407

Comment from @topperc:
> This transforms assumes the mask is a non-zero splat. We only know its
a splat and not provably all 0s. The mask is a constexpr that includes
the address of the global variable. We can't resolve the constant
expression to an exact value.

Fixes #83947.


  Commit: b2c16e7ff48a41eead168e1b95ed0c7813dd3b9c
      https://github.com/llvm/llvm-project/commit/b2c16e7ff48a41eead168e1b95ed0c7813dd3b9c
  Author: James Westwood <james.westwood at arm.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
    M llvm/lib/Target/ARM/ARMFrameLowering.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.h
    M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
    R llvm/test/CodeGen/Thumb2/pacbti-m-frame-chain.ll

  Log Message:
  -----------
  Revert "[ARM] R11 not pushed adjacent to link register with PAC-M and… (#84019)

… AAPCS frame chain fix (#82801)"

This reverts commit 00e4a4197137410129d4725ffb82bae9ce44bdde. This patch
was found to cause miscompilations and compilation failures.


  Commit: f3be8427288a8888a0343e5f9ea7bf6573897ae5
      https://github.com/llvm/llvm-project/commit/f3be8427288a8888a0343e5f9ea7bf6573897ae5
  Author: Ingo Müller <ingomueller at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/CMakeLists.txt
    M mlir/include/mlir/Config/mlir-config.h.cmake
    M mlir/lib/Dialect/GPU/Transforms/ModuleToBinary.cpp
    M mlir/lib/Target/LLVM/ROCDL/Target.cpp
    M mlir/unittests/Target/LLVM/SerializeROCDLTarget.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir] Expose MLIR_ROCM_CONVERSIONS_ENABLED in mlir-config.h. (#83977)

This is a follow up of #83004, which made the same change for
`MLIR_CUDA_CONVERSIONS_ENABLED`. As the previous PR, this PR commit
exposes mentioned CMake variable through `mlir-config.h` and uses the
macro that is introduced with the same name. This replaces the macro
`MLIR_ROCM_CONVERSIONS_ENABLED`, which the CMake files previously
defined manually.


  Commit: 1c2b79add6ec913441a3420ba13c03de0e20fd4f
      https://github.com/llvm/llvm-project/commit/1c2b79add6ec913441a3420ba13c03de0e20fd4f
  Author: Alexey Bataev <5361294+alexey-bataev at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/RISCV/strided-loads-vectorized.ll

  Log Message:
  -----------
  [SLP]Add runtime stride support for strided loads.

Added support for runtime strides.

Reviewers: preames, RKSimon

Reviewed By: preames

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


  Commit: a64975f9660e02f5f6688f8bcc55daf9eaa99fda
      https://github.com/llvm/llvm-project/commit/a64975f9660e02f5f6688f8bcc55daf9eaa99fda
  Author: Fehr Mathieu <mathieu.fehr at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/include/mlir/IR/CommonTypeConstraints.td
    M mlir/test/tblgen-to-irdl/CMathDialect.td
    A mlir/test/tblgen-to-irdl/TestDialect.td
    M mlir/tools/tblgen-to-irdl/OpDefinitionsGen.cpp

  Log Message:
  -----------
  [mlir][irdl] Add support for basic structural constraints in tblgen-to-irdl (#82862)


  Commit: fac791d4e1d879c19bfbbbfa89dc4186f56af34c
      https://github.com/llvm/llvm-project/commit/fac791d4e1d879c19bfbbbfa89dc4186f56af34c
  Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/CMakeLists.txt

  Log Message:
  -----------
  Export `LLVM_VERSION_MAJOR` CMake variable as a directory property (#83346)

This allows users who include `llvm-project` as a subrepository to
access the `LLVM_VERSION_MAJOR` variable on par with if they were
relying on an installed LLVM and `FindLLVM.cmake`. They just need to do
something like:

```
  get_directory_property(LLVM_VERSION_MAJOR DIRECTORY "third_party/llvm-project/llvm" LLVM_VERSION_MAJOR)
```

Context: https://github.com/openxla/iree/pull/16606 -- like other
projects with similar needs that I found by some googling, our
work-around had been to rely on the CMake cached variable
`CLANG_EXECUTABLE_VERSION`. Being cached, it over time inevitably ended
up having a wrong value.


  Commit: a691f65a845d6d5e639a83e8240a2543663c103a
      https://github.com/llvm/llvm-project/commit/a691f65a845d6d5e639a83e8240a2543663c103a
  Author: Oleksandr "Alex" Zinenko <zinenko at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/python/mlir/dialects/arith.py
    M mlir/test/python/dialects/arith_dialect.py

  Log Message:
  -----------
  [mlir][py] better support for arith.constant construction (#83259)

Arithmetic constants for vector types can be constructed from objects
implementing Python buffer protocol such as `array.array`. Note that
until Python 3.12, there is no typing support for buffer protocol
implementers, so the annotations use array explicitly.


  Commit: 2fe81edef6f0b35abffbbc59b649b30ea9c15a62
      https://github.com/llvm/llvm-project/commit/2fe81edef6f0b35abffbbc59b649b30ea9c15a62
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/include/llvm/IR/Dominators.h
    M llvm/include/llvm/Transforms/Scalar/Reassociate.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Transforms/Coroutines/CoroElide.cpp
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/lib/Transforms/Coroutines/Coroutines.cpp
    M llvm/lib/Transforms/IPO/ArgumentPromotion.cpp
    M llvm/lib/Transforms/IPO/Attributor.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp
    M llvm/lib/Transforms/IPO/GlobalOpt.cpp
    M llvm/lib/Transforms/IPO/IROutliner.cpp
    M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
    M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
    M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/KCFI.cpp
    M llvm/lib/Transforms/ObjCARC/ObjCARC.cpp
    M llvm/lib/Transforms/ObjCARC/ObjCARC.h
    M llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp
    M llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
    M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Scalar/DivRemPairs.cpp
    M llvm/lib/Transforms/Scalar/GVN.cpp
    M llvm/lib/Transforms/Scalar/GuardWidening.cpp
    M llvm/lib/Transforms/Scalar/IndVarSimplify.cpp
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/lib/Transforms/Scalar/JumpThreading.cpp
    M llvm/lib/Transforms/Scalar/LICM.cpp
    M llvm/lib/Transforms/Scalar/LoopFlatten.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
    M llvm/lib/Transforms/Scalar/LoopLoadElimination.cpp
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/lib/Transforms/Scalar/NaryReassociate.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    M llvm/lib/Transforms/Scalar/PlaceSafepoints.cpp
    M llvm/lib/Transforms/Scalar/Reassociate.cpp
    M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
    M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
    M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp

  Log Message:
  -----------
  [NFC][RemoveDIs] Insert instruction using iterators in Transforms/

As part of the RemoveDIs project we need LLVM to insert instructions using
iterators wherever possible, so that the iterators can carry a bit of
debug-info. This commit implements some of that by updating the contents of
llvm/lib/Transforms/Utils to always use iterator-versions of instruction
constructors.

There are two general flavours of update:
 * Almost all call-sites just call getIterator on an instruction
 * Several make use of an existing iterator (scenarios where the code is
   actually significant for debug-info)
The underlying logic is that any call to getFirstInsertionPt or similar
APIs that identify the start of a block need to have that iterator passed
directly to the insertion function, without being converted to a bare
Instruction pointer along the way.

Noteworthy changes:
 * FindInsertedValue now takes an optional iterator rather than an
   instruction pointer, as we need to always insert with iterators,
 * I've added a few iterator-taking versions of some value-tracking and
   DomTree methods -- they just unwrap the iterator. These are purely
   convenience methods to avoid extra syntax in some passes.
 * A few calls to getNextNode become std::next instead (to keep in the
   theme of using iterators for positions),
 * SeparateConstOffsetFromGEP has it's insertion-position field changed.
   Noteworthy because it's not a purely localised spelling change.

All this should be NFC.


  Commit: a41bcb3930534ef1525b4fc30e53e818b39e2b60
      https://github.com/llvm/llvm-project/commit/a41bcb3930534ef1525b4fc30e53e818b39e2b60
  Author: Weining Lu <luweining at loongson.cn>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [lld][LoongArch] Fix handleUleb128


  Commit: 6409c21857373bbb5563b37c3bacc066ad633658
      https://github.com/llvm/llvm-project/commit/6409c21857373bbb5563b37c3bacc066ad633658
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
    A llvm/test/Transforms/LoopStrengthReduce/X86/pr83404.ll

  Log Message:
  -----------
  [SCEVExpander] Use PoisoningVH for OrigFlags

It's common to delete some instructions after using SCEVExpander,
while it is still live (but will not be used afterwards). In that
case, the AssertingVH may trigger. Replace it with a PoisoningVH
so that we only detect the case where the SCEVExpander actually is
used in a problematic fashion after the instruction removal.

The alternative would be to add clear() calls to more code paths.

Fixes https://github.com/llvm/llvm-project/issues/83404.


  Commit: 08e036e734fe842cde9af13fceb8bb3d951b56a6
      https://github.com/llvm/llvm-project/commit/08e036e734fe842cde9af13fceb8bb3d951b56a6
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    A llvm/test/Transforms/PhaseOrdering/X86/pr67803.ll

  Log Message:
  -----------
  [PhaseOrdering][X86] Add test coverage for #67803


  Commit: da63746bdfaf8a077131d932d04c1e349e715536
      https://github.com/llvm/llvm-project/commit/da63746bdfaf8a077131d932d04c1e349e715536
  Author: Natalie Chouinard <sudonatalie at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M .github/workflows/containers/github-action-ci/stage2.Dockerfile

  Log Message:
  -----------
  [infra] Add git to Linux container (#82687)

Fixes #82646


  Commit: ec7062d9d822df42dee6dccada13f42798976f3c
      https://github.com/llvm/llvm-project/commit/ec7062d9d822df42dee6dccada13f42798976f3c
  Author: David Goldman <dallasftball at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang-tools-extra/clangd/refactor/Rename.cpp

  Log Message:
  -----------
  [clangd] Add metric for rename decl kind (#83867)

This will give us insight into what users are renaming in practice - for
instance, try to gauge the impact of the ObjC rename support.


  Commit: 88d82b747cdc521686e6bbc108b021753842a902
      https://github.com/llvm/llvm-project/commit/88d82b747cdc521686e6bbc108b021753842a902
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M libc/src/__support/blockstore.h
    M libc/src/__support/integer_to_string.h
    M libc/src/__support/math_extras.h
    M libc/src/math/generic/hypotf.cpp
    M libc/src/string/memory_utils/op_generic.h
    M libc/src/string/memory_utils/op_x86.h
    M libc/src/string/memory_utils/utils.h
    M libc/src/string/memory_utils/x86_64/inline_memcpy.h
    M libc/src/string/memory_utils/x86_64/inline_memset.h

  Log Message:
  -----------
  [libc] fix more readability-identifier-naming lints (#83914)

Found via:

    $ ninja -k2000 libc-lint 2>&1 | grep readability-identifier-naming

Auto fixed via:

    $ clang-tidy -p build/compile_commands.json \
      -checks="-*,readability-identifier-naming" \
      <filename> --fix

This doesn't fix all instances, just the obvious simple cases where it makes
sense to change the identifier names.  Subsequent PRs will fix up the
stragglers.


  Commit: 640c85748ec823e91a3cd412829f644cf4f10ffc
      https://github.com/llvm/llvm-project/commit/640c85748ec823e91a3cd412829f644cf4f10ffc
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M libc/src/string/memory_utils/op_generic.h
    M libc/src/string/memory_utils/utils.h

  Log Message:
  -----------
  [libc] fix readability-identifier-naming in memory_utils/utils.h (#83919)

Fixes:

    libc/src/string/memory_utils/utils.h:345:13: warning: invalid case style
    for member 'offset_' [readability-identifier-naming]

Having a trailing underscore for members is a google3 style, not LLVM style.
Removing the underscore is insufficient, as we would then have 2 members with
the same identifier which is not allowed (it is a compile time error). Remove
the getter, and just access the renamed member that's now made public.


  Commit: 2aa22ca2ca4c7cd709665624ccc51be4676c6fd3
      https://github.com/llvm/llvm-project/commit/2aa22ca2ca4c7cd709665624ccc51be4676c6fd3
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M libc/src/__support/UInt.h
    M libc/src/string/memory_utils/op_generic.h

  Log Message:
  -----------
  [libc] suppress readability-identifier-naming for std::numeric_limits interfaces (#83921)

These templates are made to match the ergonomics of std::numeric_limits.
Because our style for constexpr variables is ALL_CAPS, we must silence the
linter for these manually.

Link:
https://clang.llvm.org/extra/clang-tidy/#suppressing-undesired-diagnostics


  Commit: 169824ba401d87707d72634cb7c2db48667b8fbe
      https://github.com/llvm/llvm-project/commit/169824ba401d87707d72634cb7c2db48667b8fbe
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr.ll
    A llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr2.ll

  Log Message:
  -----------
  [SLP][NFC]SPlit test/Transforms/SLPVectorizer/AArch64/getelementptr.ll,
NFC.


  Commit: 3b84b6f1763159dbcdc487b201aa46a5c1c7b074
      https://github.com/llvm/llvm-project/commit/3b84b6f1763159dbcdc487b201aa46a5c1c7b074
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    A llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector-codesize.ll
    A llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector-latency.ll
    A llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector-sizelatency.ll
    A llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector.ll

  Log Message:
  -----------
  [CostModel][X86] Add test coverage for 'concat subvector' style shuffles

Shows 2 major issues:
 - SSE should be free as it splits everything to 128-bit
 - Negative costs for 128 -> 512 concat shuffles


  Commit: afb05cd6469215232bd83e7cfbe59d2e1852567f
      https://github.com/llvm/llvm-project/commit/afb05cd6469215232bd83e7cfbe59d2e1852567f
  Author: agozillon <Andrew.Gozillon at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    A flang/docs/OpenMP-declare-target.md
    M flang/docs/index.md
    M flang/include/flang/Lower/OpenMP.h
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.h
    A flang/test/Lower/OpenMP/declare-target-deferred-marking.f90

  Log Message:
  -----------
  [Flang][MLIR][OpenMP] Create a deferred declare target marking process for Bridge.cpp (#78502)

This patch seeks to create a process that happens on module finalization
for OpenMP, in which a list of operations that had declare target
directives applied to them and were not generated at the time of
processing the original declare target directive are re-checked to apply
the appropriate declare target semantics.

This works by maintaining a vector of declare target related data inside
of the FIR converter, in this case the symbol and the two relevant
unsigned integers representing the enumerators. This vector is added to
via a new function called from Bridge.cpp, insertDeferredDeclareTargets,
which happens prior to the processing of the directive (similarly to
getDeclareTargetFunctionDevice currently for requires), it effectively
checks if the Operation the declare target directive is applied to
currently exists, if it doesn't it appends to the vector. This is a
seperate function to the processing of the declare target via the
overloaded genOMP as we unfortunately do not have access to the list
without passing it through every call, as the AbstractConverter we pass
will not allow access to it (I've seen no other cases of casting it to a
FirConverter, so I opted to not do that).

The list is then processed at the end of the module in the
finalizeOpenMPLowering function in Bridge by calling a new function
markDelayedDeclareTargetFunctions which marks the latently generated
operations. In certain cases, some still will not be generated, e.g. if
an interface is defined, marked as declare target, but has no definition
or usage in the module then it will not be emitted to the module, so due
to these cases we must silently ignore when an operation has not been
found via it's symbol.

The main use-case for this (although, I imagine there is others) is for
processing interfaces that have been declared in a module with a declare
target directive but do not have their implementation defined in the
same module. For example, inside of a seperate C++ module that will be
linked in. In cases where the interface is called inside of a target
region it'll be marked as used on device appropriately (although,
realistically a user should explicitly mark it to match the
corresponding definition), however, in cases where it's used in a
non-clear manner through something like a function pointer passed to an
external call we require this explicit marking, which this patch adds
support for (currently will cause the compiler to crash).

This patch also adds documentation on the declare target process and 
mechanisms within the compiler currently.


  Commit: 7df43ccf08e40468354d0564f9bcd7dfe681590b
      https://github.com/llvm/llvm-project/commit/7df43ccf08e40468354d0564f9bcd7dfe681590b
  Author: Vadim D <36827317+vvd170501 at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaInit.cpp
    M clang/test/SemaCXX/cxx2a-initializer-aggregates.cpp

  Log Message:
  -----------
  [clang] Add -Wmissing-designated-field-initializers (#81364)

#56628 changed the behavior of `-Wmissing-field-initializers`, which
introduces many new warnings in C++ code that uses partial designated
initializers. If such code is being built with `-Wextra -Werror`, this
change will break the build.

This PR adds a new flag that allows to disable these new warnings and
keep the old ones, as was suggested by @AaronBallman in the original
issue:
https://github.com/llvm/llvm-project/issues/56628#issuecomment-1761510850

Fixes  #68933


  Commit: e49479b881f856e0473b2b3f0e6489feeddf2418
      https://github.com/llvm/llvm-project/commit/e49479b881f856e0473b2b3f0e6489feeddf2418
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td

  Log Message:
  -----------
  [AMDGPU] Remove unneeded BUF _impl multiclasses. NFC. (#84034)

Remove MUBUF_Real_gfx11_impl and others. By converting the underlying
class MUBUF_Real_gfx11 into a multiclass, the _impl wrapper is no longer
needed.


  Commit: 26058e68ea24602e0b7f4e7baa0e17c7db75a623
      https://github.com/llvm/llvm-project/commit/26058e68ea24602e0b7f4e7baa0e17c7db75a623
  Author: elhewaty <mohamedatef1698 at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/X86/vselect.ll

  Log Message:
  -----------
  [DAG] select (sext m), (add X, C), X --> (add X, (and C, (sext m)))) (#83640)

- [DAG][X86] Add tests for Folding select m, add(X, C), X --> add (X, and(C, m))(NFC)
- [DAG][X86] Fold select (sext m), (add X, C), X --> (add X, (and C, (sext m))))
- Fixes: https://github.com/llvm/llvm-project/issues/66101


  Commit: 6b5888c27f2d7cfc5fce582500a12a7eda16a7e2
      https://github.com/llvm/llvm-project/commit/6b5888c27f2d7cfc5fce582500a12a7eda16a7e2
  Author: Yuta Mukai <mukai.yuta at fujitsu.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    A llvm/test/CodeGen/AArch64/ldp-stp-unknown-size.mir

  Log Message:
  -----------
  [AArch64] Verify ldp/stp alignment stricter (#83948)

When ldp-aligned-only/stp-aligned-only is specified, modified to cancel
ldp/stp transformation if MachineMemOperand is not present or the access
size is unknown.
In the previous implementation, the test passed when there was no
MachineMemOperand. Also, if the size was unknown, an incorrect value was
used or an assertion failed. (But actually, if there is no
MachineMemOperand, it will be excluded from the target by
isCandidateToMergeOrPair() before reaching the part.)

A statistic NumFailedAlignmentCheck is added. NumPairCreated is modified
so that it only counts if it is not cancelled.


  Commit: a8cb9db5f59dc97c9b3d0370a5879539e7b233d8
      https://github.com/llvm/llvm-project/commit/a8cb9db5f59dc97c9b3d0370a5879539e7b233d8
  Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/SystemZ/CMakeLists.txt
    M llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
    A llvm/lib/Target/SystemZ/SystemZTargetObjectFile.cpp
    A llvm/lib/Target/SystemZ/SystemZTargetObjectFile.h

  Log Message:
  -----------
  [SystemZ] Use proper relocation for TLS variable debug info (#83975)

Debug info refering to a TLS variable via DW_OP_GNU_push_tls_address
needs to use a R_390_TLS_LDO64 relocation instead of R_390_64.

Fixed by adding a SystemZELFTargetObjectFile override class and proving
a getDebugThreadLocalSymbol implementation.


  Commit: 1e828f838cc0f15074f3dbbb04929c06ef0c9729
      https://github.com/llvm/llvm-project/commit/1e828f838cc0f15074f3dbbb04929c06ef0c9729
  Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/test/Transforms/SROA/vector-promotion.ll

  Log Message:
  -----------
  [SROA]: Only defer trying partial sized ptr or ptr vector types

Change-Id: Ic77f87290905addadd5819dff2d0c62f031022ab


  Commit: f33f66be7dc586a597437d7ce7619d87e8637209
      https://github.com/llvm/llvm-project/commit/f33f66be7dc586a597437d7ce7619d87e8637209
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
    M llvm/lib/Target/ARM/MVEGatherScatterLowering.cpp
    M llvm/lib/Target/PowerPC/PPCBoolRetToInt.cpp
    M llvm/lib/Target/RISCV/RISCVGatherScatterLowering.cpp
    M llvm/lib/Target/X86/X86LowerAMXIntrinsics.cpp
    M polly/lib/CodeGen/BlockGenerators.cpp

  Log Message:
  -----------
  [NFC][RemoveDIs] Always use iterators for inserting PHIs

It's becoming potentially unsafe to insert a PHI instruction using a plain
Instruction pointer. Switch all the remaining sites that create and insert
PHIs to use iterators instead. For example, the code in
ComplexDeinterleavingPass.cpp is definitely at-risk of mixing PHIs and
debug-info.


  Commit: f836048a2b452f5f2a8440c9f5945ee1a7bcdac2
      https://github.com/llvm/llvm-project/commit/f836048a2b452f5f2a8440c9f5945ee1a7bcdac2
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [gn] port 6fd27d5b0321f (no more module.modulemap.in)


  Commit: 1b1aea79194117d8f1729ef9c8f80454aea381fe
      https://github.com/llvm/llvm-project/commit/1b1aea79194117d8f1729ef9c8f80454aea381fe
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SOPInstructions.td

  Log Message:
  -----------
  AMDGPU: Make s_wait_samplecnt(_bvhcnt) dependent on hasImageInsts, NFC (#83932)


  Commit: a730ed7c1a4a35f5219df720ffb0ba6122d64fe4
      https://github.com/llvm/llvm-project/commit/a730ed7c1a4a35f5219df720ffb0ba6122d64fe4
  Author: Alexey Bataev <5361294+alexey-bataev at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/ext-trunc.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr2.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-add-i64.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/PR35777.ll
    M llvm/test/Transforms/SLPVectorizer/X86/int-bitcast-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-multiuse-with-insertelement.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-transformed-operand.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minimum-sizes.ll
    M llvm/test/Transforms/SLPVectorizer/X86/phi-undef-input.ll
    M llvm/test/Transforms/SLPVectorizer/X86/resched.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reused-reductions-with-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/X86/store-insertelement-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/alt-cmp-vectorize.ll

  Log Message:
  -----------
  [SLP]Improve minbitwidth analysis.

This improves overall analysis for minbitwidth in SLP. It allows to
analyze the trees with store/insertelement root nodes. Also, instead of
using single minbitwidth, detected from the very first analysis stage,
it tries to detect the best one for each trunc/ext subtree in the graph
and use it for the subtree.
Results in better code and less vector register pressure.

Metric: size..text

Program                                                                                                                                                size..text
                                                                                                                                                       results     results0    diff
                                                                      test-suite :: SingleSource/Benchmarks/Adobe-C++/simple_types_loop_invariant.test    92549.00    92609.00  0.1%
                                                                                  test-suite :: External/SPEC/CINT2017speed/625.x264_s/625.x264_s.test   663381.00   663493.00  0.0%
                                                                                   test-suite :: External/SPEC/CINT2017rate/525.x264_r/525.x264_r.test   663381.00   663493.00  0.0%
                                                                                               test-suite :: MultiSource/Benchmarks/Bullet/bullet.test   307182.00   307214.00  0.0%
                                                                             test-suite :: External/SPEC/CFP2017speed/638.imagick_s/638.imagick_s.test  1394420.00  1394484.00  0.0%
                                                                              test-suite :: External/SPEC/CFP2017rate/538.imagick_r/538.imagick_r.test  1394420.00  1394484.00  0.0%
                                                                                test-suite :: External/SPEC/CFP2017rate/510.parest_r/510.parest_r.test  2040257.00  2040273.00  0.0%

                                                                              test-suite :: External/SPEC/CFP2017rate/526.blender_r/526.blender_r.test 12396098.00 12395858.00 -0.0%
                                                                                         test-suite :: External/SPEC/CINT2006/445.gobmk/445.gobmk.test   909944.00   909768.00 -0.0%

SingleSource/Benchmarks/Adobe-C++/simple_types_loop_invariant - 4 scalar
instructions remain scalar (good).
Spec2017/x264 - the whole function idct4x4dc is vectorized using <16
x i16> instead of <16 x i32>, also zext/trunc are removed. In other
places last vector zext/sext removed and replaced by
extractelement + scalar zext/sext pair.
MultiSource/Benchmarks/Bullet/bullet - reduce or <4 x i32> replaced by
reduce or <4 x i8>
Spec2017/imagick - Removed extra zext from 2 packs of the operations.
Spec2017/parest - Removed extra zext, replaced by extractelement+scalar
zext
Spec2017/blender - the whole bunch of vector zext/sext replaced by
extractelement+scalar zext/sext, some extra code vectorized in smaller
types.
Spec2006/gobmk - fixed cost estimation, some small code remains scalar.

Reviewers: RKSimon

Reviewed By: RKSimon

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


  Commit: 643b31dbe8a515e007a0f1b2e1072c34e461b778
      https://github.com/llvm/llvm-project/commit/643b31dbe8a515e007a0f1b2e1072c34e461b778
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaChecking.cpp
    A clang/test/CodeGenHLSL/builtins/mad.hlsl
    A clang/test/SemaHLSL/BuiltIns/mad-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/lib/Target/DirectX/DXIL.td
    A llvm/test/CodeGen/DirectX/fmad.ll
    A llvm/test/CodeGen/DirectX/imad.ll
    A llvm/test/CodeGen/DirectX/umad.ll

  Log Message:
  -----------
  [HLSL] implement `mad` intrinsic (#83826)

This change implements #83736
The dot product lowering needs a tertiary multipy add operation. DXIL
has three mad opcodes for `fmad`(46), `imad`(48), and `umad`(49). Dot
product in DXIL only uses `imad`\ `umad`, but for completeness and
because the hlsl `mad` intrinsic requires it `fmad` was also included.
Two new intrinsics were needed to be created to complete this change.
the `fmad` case already supported by llvm via `fmuladd` intrinsic.

- `hlsl_intrinsics.h` - exposed mad api call.
- `Builtins.td` - exposed a `mad` builtin.
- `Sema.h` - make `tertiary` calls check for float types optional. 
- `CGBuiltin.cpp` - pick the intrinsic for singed\unsigned & float also
reuse `int_fmuladd`.
- `SemaChecking.cpp` - type checks for `__builtin_hlsl_mad`. 
- `IntrinsicsDirectX.td` create the two new intrinsics for
`imad`\`umad`/
- `DXIL.td` - create the llvm intrinsic to  `DXIL` opcode mapping.

---------

Co-authored-by: Farzon Lotfi <farzon at farzon.com>


  Commit: 06fea93341ae7d0d0faa82c4c8704591963c2d8c
      https://github.com/llvm/llvm-project/commit/06fea93341ae7d0d0faa82c4c8704591963c2d8c
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/TextAPI/Platform.cpp

  Log Message:
  -----------
  [TextAPI] add missing platforms for translating triples to tapi targets


  Commit: b2ca23aed802abc43ed216ce9bf4c80c056a04c0
      https://github.com/llvm/llvm-project/commit/b2ca23aed802abc43ed216ce9bf4c80c056a04c0
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    A clang/test/CodeGenHLSL/builtins/exp.hlsl
    A clang/test/CodeGenHLSL/builtins/exp2.hlsl
    A clang/test/SemaHLSL/BuiltIns/exp-errors.hlsl
    M llvm/lib/Target/DirectX/DXIL.td
    A llvm/test/CodeGen/DirectX/exp2.ll

  Log Message:
  -----------
  [HLSL] implement exp intrinsic (#83832)

This change implements: #70072

- `hlsl_intrinsics.h` - add the `exp` api
- `DXIL.td` - add the llvm intrinsic to DXIL opcode lowering mapping.
- This change reuses llvm's existing intrinsic
`__builtin_elementwise_exp` \ `int_exp` & `__builtin_elementwise_exp2` \
`int_exp2`
- This PR is part 1 of 2.
- Part 2 requires an intrinsic to instructions lowering.
Part2 will expand `int_exp` to 
```
A = Builder.CreateFMul(log2eConst, val);
int_exp2(A)
```
just like we do in
[TranslateExp](https://github.com/microsoft/DirectXShaderCompiler/blob/main/lib/HLSL/HLOperationLower.cpp#L2220C1-L2236C2)


  Commit: 2807ea6b8047780b5e66a122faf09fae786c917b
      https://github.com/llvm/llvm-project/commit/2807ea6b8047780b5e66a122faf09fae786c917b
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Headers/hlsl/hlsl_basic_types.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaChecking.cpp
    A clang/test/CodeGenHLSL/builtins/any.hlsl
    A clang/test/SemaHLSL/BuiltIns/any-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td

  Log Message:
  -----------
  [HLSL] implement the any intrinsic (#83903)

This PR implements the frontend for #70076
This PR is part 1 of 2.
Part 2 requires an intrinsic to instructions lowering.

- `Builtins.td` - add an `any` builtin
- `CGBuiltin.cpp` add the builtin to intrinsic lowering
- `hlsl_basic_types.h` -add the `bool` vectors since that is an input
for any
- `hlsl_intrinsics.h` - add the `any`  api
- `SemaChecking.cpp` - addy `any` builtin checking
- `IntrinsicsDirectX.td` - add the llvm intrinsic


  Commit: 9f67f19614e952ede385a59bb62f7b57771ca4c3
      https://github.com/llvm/llvm-project/commit/9f67f19614e952ede385a59bb62f7b57771ca4c3
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/lib/scudo/BUILD.gn
    R llvm/utils/gn/secondary/compiler-rt/lib/scudo/standalone/benchmarks/BUILD.gn
    R llvm/utils/gn/secondary/third-party/benchmark/BUILD.gn

  Log Message:
  -----------
  [gn] Remove ScudoBenchmarks

It's the only thing depending on third-party/benchmark.
The recent third-party/benchmark uprev made it not build in the
GN build, so remove ScudoBenchmarks until someone feels motivated
to update the third-party/benchmark BUILD.gn file.


  Commit: 233f750c3dad14e330f5358e8dbcc6c30e805edb
      https://github.com/llvm/llvm-project/commit/233f750c3dad14e330f5358e8dbcc6c30e805edb
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/lib/Evaluate/check-expression.cpp
    M flang/test/Semantics/init01.f90

  Log Message:
  -----------
  [flang] Catch more bad pointer initialization targets (#83731)

A pointer variable initialization or pointer component default
initialization cannot reference another pointer.

Fixes https://github.com/llvm/llvm-project/issues/82944.


  Commit: 041638c4294a9a8375851e0add1ab2c99412c032
      https://github.com/llvm/llvm-project/commit/041638c4294a9a8375851e0add1ab2c99412c032
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/stdbit.rst
    M libc/include/llvm-libc-macros/stdbit-macros.h
    M libc/spec/stdc.td
    M libc/src/stdbit/CMakeLists.txt
    A libc/src/stdbit/stdc_bit_width_uc.cpp
    A libc/src/stdbit/stdc_bit_width_uc.h
    A libc/src/stdbit/stdc_bit_width_ui.cpp
    A libc/src/stdbit/stdc_bit_width_ui.h
    A libc/src/stdbit/stdc_bit_width_ul.cpp
    A libc/src/stdbit/stdc_bit_width_ul.h
    A libc/src/stdbit/stdc_bit_width_ull.cpp
    A libc/src/stdbit/stdc_bit_width_ull.h
    A libc/src/stdbit/stdc_bit_width_us.cpp
    A libc/src/stdbit/stdc_bit_width_us.h
    M libc/test/include/stdbit_test.cpp
    M libc/test/src/stdbit/CMakeLists.txt
    A libc/test/src/stdbit/stdc_bit_width_uc_test.cpp
    A libc/test/src/stdbit/stdc_bit_width_ui_test.cpp
    A libc/test/src/stdbit/stdc_bit_width_ul_test.cpp
    A libc/test/src/stdbit/stdc_bit_width_ull_test.cpp
    A libc/test/src/stdbit/stdc_bit_width_us_test.cpp

  Log Message:
  -----------
  [libc][stdbit] implement stdc_bit_width (C23) (#83892)


  Commit: aa4e3d594a0cfc01f1260378552dccc0943a9268
      https://github.com/llvm/llvm-project/commit/aa4e3d594a0cfc01f1260378552dccc0943a9268
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/Debugging/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/TargetProcess/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 1a67dee08913


  Commit: 97e9780e4cca0dd2e47ac6ba8462fa965b32da76
      https://github.com/llvm/llvm-project/commit/97e9780e4cca0dd2e47ac6ba8462fa965b32da76
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 8e56fb824a43


  Commit: caad3794f081321e7c9f370ebe69f297fc13097e
      https://github.com/llvm/llvm-project/commit/caad3794f081321e7c9f370ebe69f297fc13097e
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/SystemZ/BUILD.gn

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


  Commit: ee044d5e651787c5d73b37b2cbb7ca6444bb0502
      https://github.com/llvm/llvm-project/commit/ee044d5e651787c5d73b37b2cbb7ca6444bb0502
  Author: Michael Spencer <bigcheesegs at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/lib/Frontend/CompilerInstance.cpp
    R clang/test/Modules/Inputs/config.h
    M clang/test/Modules/Inputs/module.modulemap
    M clang/test/Modules/config_macros.m

  Log Message:
  -----------
  [clang] Diagnose config_macros before building modules (#83641)

Before this patch, if a module fails to build because of a missing
config_macro, the user will never see the config macro warning. This
patch diagnoses this before building, and each subsequent time a module
is imported.

rdar://123921931


  Commit: 083d8aa03aca55b88098a91e41e41a8e321a5721
      https://github.com/llvm/llvm-project/commit/083d8aa03aca55b88098a91e41e41a8e321a5721
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [SLP][NFC]Use TargetTransformInfo:: instead of TTI:: in BoUpSLP to avoid
some compilers confusion.


  Commit: 1b812f9cd64c14ab7600626c147da88f21e0217c
      https://github.com/llvm/llvm-project/commit/1b812f9cd64c14ab7600626c147da88f21e0217c
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M lldb/source/Host/common/Host.cpp

  Log Message:
  -----------
  [lldb] Log to system log instead of stderr from Host::SystemLog (#83366)

Currently, calls to Host::SystemLog print to stderr on all host
platforms except Darwin. This severely limits its value on the command
line, where we don't want to overload the user with log messages. Switch
to using the syslog function on POSIX systems to send messages to the
system logger instead of stdout.

On Darwin systems this sends the log message to os_log, which matches
what we do today. Nevertheless I kept the current implementation that
uses os_log directly as it gives us more freedom.

I'm not sure if there's an equivalent on Windows, so I kept the existing
behavior of logging to stderr.


  Commit: 3cef82d60796b1f18deebf0d844f38d6e85cd4e7
      https://github.com/llvm/llvm-project/commit/3cef82d60796b1f18deebf0d844f38d6e85cd4e7
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/lib/Semantics/check-declarations.cpp
    M flang/test/Semantics/declarations06.f90

  Log Message:
  -----------
  [flang] Fix bogus error message about invalid polymorphic entity (#83733)

The check for declarations of polymorphic entities was emitting a bogus
error for one (or more) layers of pointers to procedures returning
pointers to polymorphic types.

Fixes https://github.com/llvm/llvm-project/issues/83292.


  Commit: 61c06775c96a93bf2b6ac0145b78b4ecb1a858b6
      https://github.com/llvm/llvm-project/commit/61c06775c96a93bf2b6ac0145b78b4ecb1a858b6
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Support/KnownBits.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/Support/KnownBits.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/unittests/Support/KnownBitsTest.cpp

  Log Message:
  -----------
  [KnownBits] Add API for `nuw` flag in `computeForAddSub`; NFC


  Commit: 17162b61c2e6968482fab928f89bdca8b4ac06d9
      https://github.com/llvm/llvm-project/commit/17162b61c2e6968482fab928f89bdca8b4ac06d9
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Support/KnownBits.h
    M llvm/lib/Support/KnownBits.cpp
    M llvm/test/CodeGen/AArch64/sve-cmp-folds.ll
    M llvm/test/CodeGen/AArch64/sve-extract-element.ll
    M llvm/test/CodeGen/AMDGPU/ds-sub-offset.ll
    M llvm/test/Transforms/InstCombine/fold-log2-ceil-idiom.ll
    M llvm/test/Transforms/InstCombine/icmp-sub.ll
    M llvm/test/Transforms/InstCombine/sub.ll
    M llvm/unittests/Support/KnownBitsTest.cpp

  Log Message:
  -----------
  [KnownBits] Make `nuw` and `nsw` support in `computeForAddSub` optimal

Just some improvements that should hopefully strengthen analysis.

Closes #83580


  Commit: 9a20612d960bbcbf6bd59d2d94400574a3cccde0
      https://github.com/llvm/llvm-project/commit/9a20612d960bbcbf6bd59d2d94400574a3cccde0
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/test/Semantics/null01.f90

  Log Message:
  -----------
  [flang] NULL(NULL(NULL(...(NULL()...))) means NULL() (#83738)

When the actual MOLD= argument of a reference to the intrinsic function
NULL is itself just NULL() (possibly nested), treat the MOLD= as if it
had not been present.

Fixes https://github.com/llvm/llvm-project/issues/83572.


  Commit: d35f2c439a12b8e97e1bad02b6cc4349c9914345
      https://github.com/llvm/llvm-project/commit/d35f2c439a12b8e97e1bad02b6cc4349c9914345
  Author: Martin Wehking <martin.wehking at codeplay.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

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

  Log Message:
  -----------
  Remove constant local variable (#83850)

Remove isThisReturn, which always has the value false.
Replace its uses with false directly.


  Commit: 069aee0793064b800f130e740e37dd7d264b7802
      https://github.com/llvm/llvm-project/commit/069aee0793064b800f130e740e37dd7d264b7802
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/include/flang/Semantics/type.h
    M flang/lib/Semantics/check-select-type.cpp
    M flang/lib/Semantics/type.cpp
    A flang/test/Semantics/selecttype04.f90

  Log Message:
  -----------
  [flang] Rework F'2023 constraint C1167 checking (#83888)

The code that verifies that the type in a TYPE IS or CLASS IS clause is
a match or an extension of the type of the SELECT TYPE selector needs
rework to avoid emitting a bogus error for a test.

Fixes https://github.com/llvm/llvm-project/issues/83612.


  Commit: cc7544e230f8943e52b779d7f1e4392fd30a0c1a
      https://github.com/llvm/llvm-project/commit/cc7544e230f8943e52b779d7f1e4392fd30a0c1a
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    R third-party/benchmark/WORKSPACE
    M third-party/update_benchmark.sh

  Log Message:
  -----------
  [benchmark] Delete WORKSPACE bzl files (#84013)

As like 48d868493fa74025e7768afacdbbbd3ea9c82468, `WORKSPACE` is another
bazel-specific file that is unused. LLVM's bazel configuration is
entirely in `utils/bazel`.


  Commit: a9304edf20756dd63f896a98bad89e9eac54aebd
      https://github.com/llvm/llvm-project/commit/a9304edf20756dd63f896a98bad89e9eac54aebd
  Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/include/mlir/IR/ValueRange.h
    M mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp
    M mlir/lib/Dialect/ControlFlow/Transforms/BufferDeallocationOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
    M mlir/lib/IR/OperationSupport.cpp
    M mlir/lib/Transforms/Utils/CFGToSCF.cpp

  Log Message:
  -----------
  Fix remaining build failures with GCC 8.3 (#83266)

When compiling for GCC 8.x (< 8.4), SFINAE is disabled for
iterator_range constructor causing ambiguous resolution to construct an
OperandRange from a MutableOperatorRange, even in the presence of a
static_cast<OperatorRange>. This adds an explicit conversion method to
lift the ambiguity.

Tested with a full MLIR build with GCC 8.3.


  Commit: 13cd0a905beab77fc31e08282c466246aae7eda6
      https://github.com/llvm/llvm-project/commit/13cd0a905beab77fc31e08282c466246aae7eda6
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Semantics/resolve09.f90

  Log Message:
  -----------
  [flang] Skim usage before marking unknown module externals as subrout… (#83897)

…ines

Name resolution needs to delay its default determination of module
external procedures as subroutines until after it has skimmed the
execution parts of module procedures.

Fixes https://github.com/llvm/llvm-project/issues/83622.


  Commit: b3b408bbb379a1cfdac66a71534d86c23a9cf3f1
      https://github.com/llvm/llvm-project/commit/b3b408bbb379a1cfdac66a71534d86c23a9cf3f1
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [Fuchsia] Include baremetal ARM builtins and libc (#83949)

For now we only include the armv6m-unknown-eabi target but we plan to
include more targets in the future (including multilibs).


  Commit: 83ca78deb9075e764f89fad83af926357eb78967
      https://github.com/llvm/llvm-project/commit/83ca78deb9075e764f89fad83af926357eb78967
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/include/flang/Semantics/symbol.h
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/resolve-names-utils.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/symbol.cpp
    M flang/lib/Semantics/tools.cpp
    A flang/test/Semantics/modfile64.f90

  Log Message:
  -----------
  [flang] Emit "raw" name for procedure interface in module file (#83915)

Save both the raw procedure interface symbol as well as the result of
passing it through GetUltimate() and BypassGeneric() in symbol table
entries with ProcEntityDetails. The raw symbol of the interface needs to
be the one used for emitting procedure symbols to module files.

Fixes https://github.com/llvm/llvm-project/issues/83836.


  Commit: 2f343fc1574f36b3b5ff1acf63407c53dcdac331
      https://github.com/llvm/llvm-project/commit/2f343fc1574f36b3b5ff1acf63407c53dcdac331
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M lldb/tools/driver/Driver.cpp

  Log Message:
  -----------
  [lldb] Print a message when background tasks take a while to complete (#82799)

When terminating the debugger, we wait for all background tasks to
complete. Given that there's no way to interrupt those treads, this can
take a while. When that happens, the debugger appears to hang at exit.

The above situation is unfortunately not uncommon when background
downloading of dSYMs is enabled (`symbols.auto-download background`).
Even when calling dsymForUUID with a reasonable timeout, it can take a
while to complete.

This patch improves the user experience by printing a message from the
driver when it takes more than one (1) second to terminate the debugger.


  Commit: c8b3edcddd221a5007565507fb16a07a027d32bc
      https://github.com/llvm/llvm-project/commit/c8b3edcddd221a5007565507fb16a07a027d32bc
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  Revert "[SLP][NFC]Use TargetTransformInfo:: instead of TTI:: in BoUpSLP to avoid"

This reverts commit 083d8aa03aca55b88098a91e41e41a8e321a5721.


  Commit: aae152f1be1db1b4760c7464a3accd3d72b5f4bd
      https://github.com/llvm/llvm-project/commit/aae152f1be1db1b4760c7464a3accd3d72b5f4bd
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/ext-trunc.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr2.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-add-i64.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/PR35777.ll
    M llvm/test/Transforms/SLPVectorizer/X86/int-bitcast-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-multiuse-with-insertelement.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-transformed-operand.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minimum-sizes.ll
    M llvm/test/Transforms/SLPVectorizer/X86/phi-undef-input.ll
    M llvm/test/Transforms/SLPVectorizer/X86/resched.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reused-reductions-with-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/X86/store-insertelement-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/alt-cmp-vectorize.ll

  Log Message:
  -----------
  Revert "[SLP]Improve minbitwidth analysis."

This reverts commit a730ed7c1a4a35f5219df720ffb0ba6122d64fe4 to fix
compile time issue.


  Commit: 64faa52b1ef7778d1cde9a7191fbd0a167e9dfd8
      https://github.com/llvm/llvm-project/commit/64faa52b1ef7778d1cde9a7191fbd0a167e9dfd8
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M .clang-tidy

  Log Message:
  -----------
  Disable clang-tidy misc-include-cleaner (#83945)

This does not apply well to LLVM which intentionally rely on forward
declarations. Also depending on the config flags passed to CMake the
result can be different.


  Commit: b6ca602658c101b783540418130ac5fadc0b2360
      https://github.com/llvm/llvm-project/commit/b6ca602658c101b783540418130ac5fadc0b2360
  Author: Aart Bik <ajcbik at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/CPU/concatenate_dim_0.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_block_matmul.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_complex32.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_complex64.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_ds.mlir

  Log Message:
  -----------
  [mlir][sparse] migrate tests to sparse_tensor.print (#84055)

Continuing the efforts started in #83357


  Commit: b8c6252bc19e05fc968c6504b69f5fed208f32d4
      https://github.com/llvm/llvm-project/commit/b8c6252bc19e05fc968c6504b69f5fed208f32d4
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M libcxxabi/src/CMakeLists.txt

  Log Message:
  -----------
  [libc++abi] Always re-export std:: exception types from libc++abi (#84031)

We always provide the std:: exception types, even when exceptions are
disabled. This is a bit counter-intuitive, but these exception types are
just normal types at the end of the day so we made the decision to
always provide their definition. Failure to re-export these types would
cause libc++ to fail to link on Apple platforms when exceptions are
disabled.


  Commit: eccc71783c4a7682e4cc876f62feca74889fb192
      https://github.com/llvm/llvm-project/commit/eccc71783c4a7682e4cc876f62feca74889fb192
  Author: Neumann Hon <neumann.hon at ibm.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCObjectFileInfo.h
    M llvm/lib/MC/MCObjectFileInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp

  Log Message:
  -----------
  [SystemZ] [z/OS] Emit offset to PPA2 in separate MCSection (#84043)

The ppa2list section isn't really part of the ppa2 section. The ppa2list
section contains the offset to the ppa2, and must be created with a
special section name (specifically, C_@@QPPA2). The binder searches for
a section with this name, then uses this value to locate the ppa2.

In GOFF terms, these are entirely separate sections; the PPA2 section
isn't even really a section but rather belongs to the code section. On
the other hand, the ppa2list section is a section in its own right and
resides in a separate TXT record.


  Commit: 4a4fb930a539c91eb4e9d8b1ea427a7cef72d054
      https://github.com/llvm/llvm-project/commit/4a4fb930a539c91eb4e9d8b1ea427a7cef72d054
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M bolt/include/bolt/Core/ParallelUtilities.h
    M bolt/lib/Core/ParallelUtilities.cpp
    M bolt/lib/Passes/IdenticalCodeFolding.cpp
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    M llvm/tools/llvm-reduce/deltas/Delta.cpp
    M mlir/lib/ExecutionEngine/AsyncRuntime.cpp

  Log Message:
  -----------
  Use the new ThreadPoolInterface base class instead of the concrete implementation (NFC) (#84056)


  Commit: 13bb726be31c1e48cea946217badceb5b3d9db95
      https://github.com/llvm/llvm-project/commit/13bb726be31c1e48cea946217badceb5b3d9db95
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/lib/AST/StmtOpenACC.cpp

  Log Message:
  -----------
  [OpenACC] Fix typo in StmtOpenACC.cpp header.


  Commit: 9faca1e4015582534028f9a5cd14eed7063dbedd
      https://github.com/llvm/llvm-project/commit/9faca1e4015582534028f9a5cd14eed7063dbedd
  Author: rohit-rao <rohitrao at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M compiler-rt/cmake/Modules/CompilerRTDarwinUtils.cmake

  Log Message:
  -----------
  [compiler-rt/darwin] Disable building sanitizers on platforms without fork(). (#83485)

The watchOS and tvOS sanitizers do not compile with publicly-available
SDKs, failing on calls such as fork() and posix_spawn(). Updating the
darwin_test_archs test program to include a call to fork() allows cmake
to exclude those platforms when compiling runtimes. This allows public
builds to enable watchOS/tvOS and compile builtins but not sanitizers.


  Commit: 7de6f61a9da3b73a729413a41477d400d9f08b84
      https://github.com/llvm/llvm-project/commit/7de6f61a9da3b73a729413a41477d400d9f08b84
  Author: bwlodarcz <bertrand.wlodarczyk at intel.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp

  Log Message:
  -----------
  [SPIR-V] Memory leak fix in SPIRVEmitIntrinsics (#83015)

The architecture of SPIRVEmitIntrinsics is build in such way that every
private method is called by one main function runOnFunction which then
calls private methods. Private member IRB is allocated in runOnFunction
method but it's not freed. Due to that every time when IR function
contains intrinsics to emit, runOnFunction is entered and memory is
leaked on exit. It's especially true when there are two or more IR
functions to emit. IRB is set to nullptr during construction of object
and it's left without pointing resource until runOnFunction is entered.
This also create possibility of simple mistake when private method is
called but there is no resource pointed. Change requires passing
IRBuilder by reference to private methods. The visit* functions create
it's own IRBuilder thus IRB is eliminated from class scope. In addition
there is a small performance improvement because IRBuilder is not
allocated by heap.


  Commit: a5095b9892123fb41fd894a1b08fa45c6b3c7f03
      https://github.com/llvm/llvm-project/commit/a5095b9892123fb41fd894a1b08fa45c6b3c7f03
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/vle_vid-vfcvt.ll

  Log Message:
  -----------
  [RISCV] Add test for incorrect FP build vector lowering. NFC

The lowering is not distinquishing -2147483648.0 and 2147483648.0.


  Commit: 5a5266248d4f7af101ad5a54960cbd814599a8d6
      https://github.com/llvm/llvm-project/commit/5a5266248d4f7af101ad5a54960cbd814599a8d6
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaChecking.cpp
    A clang/test/CodeGenHLSL/builtins/rcp.hlsl
    A clang/test/SemaHLSL/BuiltIns/rcp-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td

  Log Message:
  -----------
  [HLSL] implement the rcp  intrinsic (#83857)

This PR implements the frontend for llvm#70100
This PR is part 1 of 2.
Part 2 requires an intrinsic to instructions lowering.


- `Builtins.td` - add an `rcp` builtin
- `CGBuiltin.cpp` - add the builtin to intrinsic lowering
-  `hlsl_intrinsics.h` - add the `rcp`  api
- `SemaChecking.cpp` - reuse frac's sema checks
- `IntrinsicsDirectX.td` - add the llvm intrinsic


  Commit: 50d848d0761e052e203136f3de9a332bd619595a
      https://github.com/llvm/llvm-project/commit/50d848d0761e052e203136f3de9a332bd619595a
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/runtime/CMakeLists.txt
    M flang/runtime/Float128Math/CMakeLists.txt
    R flang/runtime/Float128Math/cabs.cpp
    A flang/runtime/Float128Math/complex-math.c
    A flang/runtime/Float128Math/complex-math.h
    M flang/runtime/Float128Math/exponent.cpp
    M flang/runtime/Float128Math/fraction.cpp
    M flang/runtime/Float128Math/math-entries.h
    M flang/runtime/Float128Math/mod-real.cpp
    M flang/runtime/Float128Math/modulo-real.cpp
    M flang/runtime/Float128Math/nearest.cpp
    M flang/runtime/Float128Math/rrspacing.cpp
    M flang/runtime/Float128Math/scale.cpp
    M flang/runtime/Float128Math/set-exponent.cpp
    M flang/runtime/Float128Math/spacing.cpp
    M flang/runtime/numeric.cpp
    A flang/test/Lower/Intrinsics/acos_complex16.f90
    A flang/test/Lower/Intrinsics/acosh_complex16.f90
    A flang/test/Lower/Intrinsics/asin_complex16.f90
    A flang/test/Lower/Intrinsics/asinh_complex16.f90
    A flang/test/Lower/Intrinsics/atan_complex16.f90
    A flang/test/Lower/Intrinsics/atanh_complex16.f90
    A flang/test/Lower/Intrinsics/cos_complex16.f90
    A flang/test/Lower/Intrinsics/cosh_complex16.f90
    A flang/test/Lower/Intrinsics/exp_complex16.f90
    A flang/test/Lower/Intrinsics/log_complex16.f90
    R flang/test/Lower/Intrinsics/missing-math-runtime.f90
    A flang/test/Lower/Intrinsics/pow_complex16.f90
    A flang/test/Lower/Intrinsics/sin_complex16.f90
    A flang/test/Lower/Intrinsics/sinh_complex16.f90
    A flang/test/Lower/Intrinsics/sqrt_complex16.f90
    A flang/test/Lower/Intrinsics/tan_complex16.f90
    A flang/test/Lower/Intrinsics/tanh_complex16.f90

  Log Message:
  -----------
  [flang] Added lowering and runtime for COMPLEX(16) intrinsics. (#83874)

For `LDBL_MANT_DIG == 113` targets the FortranFloat128Math library
is just an interface library that provides sources and compilation
options to be used for building FortranRuntime - there are not extra
dependencies on other libraries, so it can be a part of FortranRuntime,
which helps to avoid extra linking steps in the compiler driver.
Targets with __float128 support in libc will also use this path.
Other targets, where the math support comes from
FLANG_RUNTIME_F128_MATH_LIB,
FortranFloat128Math is built as a standalone static library,
and the compiler driver needs to conduct the linking.

Flang APIs for COMPLEX(16) are just thin C wrappers around
the C math functions. Flang uses C _Complex ABI for passing/returning
COMPLEX values, so the runtime is aligned to this.


  Commit: bf631c63d01057321c070520a56a150ede32e47d
      https://github.com/llvm/llvm-project/commit/bf631c63d01057321c070520a56a150ede32e47d
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/DSDIRInstructions.td

  Log Message:
  -----------
  AMDGPU: Copy SubtargetPredicate from pseudo for DSDIR_Real (#84057)


  Commit: 201572e34b2cb0861a60e00fd7dc2965e6af1587
      https://github.com/llvm/llvm-project/commit/201572e34b2cb0861a60e00fd7dc2965e6af1587
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/CallLowering.cpp
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/call-rv-marker.ll
    M llvm/test/CodeGen/AArch64/nonlazybind.ll

  Log Message:
  -----------
  [AArch64] Implement -fno-plt for SelectionDAG/GlobalISel

Clang sets the nonlazybind attribute for certain ObjC features. The
AArch64 SelectionDAG implementation for non-intrinsic calls
(46e36f0953aabb5e5cd00ed8d296d60f9f71b424) is behind a cl option.

GCC implements -fno-plt for a few ELF targets. In Clang, -fno-plt also
sets the nonlazybind attribute. For SelectionDAG, make the cl option not
affect ELF so that non-intrinsic calls to a dso_preemptable function use
GOT. Adjust AArch64TargetLowering::LowerCall to handle intrinsic calls.

For FastISel, change `fastLowerCall` to bail out when a call is due to
-fno-plt.

For GlobalISel, handle non-intrinsic calls in CallLowering::lowerCall
and intrinsic calls in AArch64CallLowering::lowerCall (where the
target-independent CallLowering::lowerCall is not called).
The GlobalISel test in `call-rv-marker.ll` is therefore updated.

Note: the current -fno-plt -fpic implementation does not use GOT for a
preemptable function.

Link: #78275

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


  Commit: f51ade25b9205efee09a4915031848cebe772805
      https://github.com/llvm/llvm-project/commit/f51ade25b9205efee09a4915031848cebe772805
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
    A bolt/test/X86/linux-parainstructions.s

  Log Message:
  -----------
  [BOLT] Add reading support for Linux kernel .parainstructions section (#83965)

Read .parainstruction section and mark call instructions with ParaSite
annotations.


  Commit: e96c0c1d5e0a9916098b1a31acb006ea6c1108fb
      https://github.com/llvm/llvm-project/commit/e96c0c1d5e0a9916098b1a31acb006ea6c1108fb
  Author: Quentin Dian <dianqk at dianqk.net>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/test/Transforms/InstCombine/bitcast.ll

  Log Message:
  -----------
   [InstCombine] Fix shift calculation in InstCombineCasts (#84027)

Fixes #84025.


  Commit: 58d8805ff9f0a9947ac122b463c00d6c0656eae6
      https://github.com/llvm/llvm-project/commit/58d8805ff9f0a9947ac122b463c00d6c0656eae6
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/vle_vid-vfcvt.ll

  Log Message:
  -----------
  [RISCV] Always use signed APSInt in getExactInteger. (#84070)

We were setting based on whether the FP value is positive/negative, but
we really want to know whether the resulting integer will be treated as
a signed or unsigned value. Since we use SINT_TO_FP to convert the
integer to FP, we should always used signed here.

Without this we convert +2147483648.0 to an integer 0x80000000 and
convert it using sint_to_fp which produces -2147483648.0.


  Commit: e77a473601314cc7e7aa912579982a38326d334c
      https://github.com/llvm/llvm-project/commit/e77a473601314cc7e7aa912579982a38326d334c
  Author: Lang Hames <lhames at Langs-MacBook-Pro.local>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/MachOBuilder.h
    M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
    M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp

  Log Message:
  -----------
  [ORC][MachO] Simplify use of LC_BUILD_VERSION in JITDylib headers.

API clients can now set a MachO::HeaderOptions::BuildVersionOpts field to have
MachOPlatform add an LC_BUILD_VERSION load command to the Mach header for each
JITDylib.

No testcase yet. In the future we'll try to add a MachO parser to the ORC
runtime and extra test options to llvm-jitlink for this.

This commit also incidentally fixes a bug in the MachOBuilder class that lead to
a delegation cycle.


  Commit: d6c52c1e2d16ef79737c5666db46e872e943c18a
      https://github.com/llvm/llvm-project/commit/d6c52c1e2d16ef79737c5666db46e872e943c18a
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/EXPInstructions.td
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SOPInstructions.td

  Log Message:
  -----------
  AMDGPU: Define HasExpOrExportInsts for export instruction definitions. (#84083)


  Commit: 6f11c95d06d51e98e635d08cd3143fb88b58b6a9
      https://github.com/llvm/llvm-project/commit/6f11c95d06d51e98e635d08cd3143fb88b58b6a9
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    R llvm/test/CodeGen/AArch64/ldp-stp-unknown-size.mir

  Log Message:
  -----------
  Revert "[AArch64] Verify ldp/stp alignment stricter" (#84096)

Reverts llvm/llvm-project#83948

This broke the ASan buildbot:
https://lab.llvm.org/buildbot/#/builders/168/builds/19054/steps/10/logs/stdio


  Commit: 55c466da2f2f0baa509eb709b8de8926bd498b9b
      https://github.com/llvm/llvm-project/commit/55c466da2f2f0baa509eb709b8de8926bd498b9b
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/test/CodeGen/X86/bfloat.ll

  Log Message:
  -----------
  [X86][AVX512BF16] Add a few missing insert/extract patterns

These are really the same as the f16 (and i16) instructions, but we need
them for any type that can occur.


  Commit: 0207270494cda484f80abd3b654c871dc4cf8099
      https://github.com/llvm/llvm-project/commit/0207270494cda484f80abd3b654c871dc4cf8099
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/mgather-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/mscatter-sdnode.ll

  Log Message:
  -----------
  [RISCV] Don't remove extends for i1 indices in mgather/mscatter (#83951)


  Commit: 6c39e3fa113d2956cb5b5f6769d2ad9a266377e5
      https://github.com/llvm/llvm-project/commit/6c39e3fa113d2956cb5b5f6769d2ad9a266377e5
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/Sema/riscv-vector-float64-check.c

  Log Message:
  -----------
  [clang][RISCV] Reorder sema check for RVV type (#83553)

Currently using the command `clang -cc1 -triple riscv64` to compile the
code below:
```
#include <riscv_vector.h>
void foo() {
  vfloat64m1_t f64m1;
}
```
would get the error message "RISC-V type 'vfloat64m1_t' ... requires the
'zve64x' extension"
which is supposed to be "RISC-V type 'vfloat64m1_t' ... requires the
'zve64d' extension".


  Commit: 2a1b09fee4b4b22f4f7189695ce3e858b91a8d69
      https://github.com/llvm/llvm-project/commit/2a1b09fee4b4b22f4f7189695ce3e858b91a8d69
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/docs/RISCVUsage.rst

  Log Message:
  -----------
  [RISCV][SiFive] Add RISCVUsage for SiFive Intelligence Extensions (#84010)


  Commit: 11f74cd4bb487e956c92132b4991e8cde1dd1a81
      https://github.com/llvm/llvm-project/commit/11f74cd4bb487e956c92132b4991e8cde1dd1a81
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/test/Driver/riscv-arch.c
    M llvm/lib/Support/RISCVISAInfo.cpp
    M llvm/unittests/Support/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Improve error message when the extension is not supported (#83989)

If the "march" has some extension with version that is not supported, it
returns the error message like: "error: invalid arch name 'some_arch',
unsupported version number 2.0 for extension 'some_arch'", which is not
precise enough, it should return the message that only tells users "the
extension is not supported".


  Commit: aeda1a6e800e0dd6c91c0332b4db95094ad5b301
      https://github.com/llvm/llvm-project/commit/aeda1a6e800e0dd6c91c0332b4db95094ad5b301
  Author: wanglei <wanglei at loongson.cn>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/test/CodeGen/LoongArch/intrinsic-la32.c
    M clang/test/CodeGen/LoongArch/intrinsic-la64.c

  Log Message:
  -----------
  [Clang][LoongArch] Precommit test for fix wrong return value type of __iocsrrd_h. NFC


  Commit: 8b326d59467b941831942c651c585055b3d512e4
      https://github.com/llvm/llvm-project/commit/8b326d59467b941831942c651c585055b3d512e4
  Author: Qizhi Hu <836744285 at qq.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/missing-std-forward.cpp

  Log Message:
  -----------
  [clang-tidy] fix false negative in cppcoreguidelines-missing-std-forward (#83987)

Try to fix https://github.com/llvm/llvm-project/issues/83845
When `std::forward` is invoked in a function, make sure it uses correct
parameter by checking if the bounded `var` equals the parameter.

Co-authored-by: huqizhi <836744285 at qq.com>


  Commit: 889d99a50f38150570f6fca903d61ee9770bd932
      https://github.com/llvm/llvm-project/commit/889d99a50f38150570f6fca903d61ee9770bd932
  Author: Kolya Panchenko <87679760+nikolaypanchenko at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.h
    M llvm/lib/Transforms/Scalar/ScalarizeMaskedMemIntrin.cpp

  Log Message:
  -----------
  [TTI] Add alignment argument to TTI for compress/expand support (#83516)

Since `llvm.compressstore` and `llvm.expandload` do require memory
access, it's essential for some target to check if alignment is good to
be able to lower them to target-specific instructions


  Commit: 31c304ba7ba8bb5c236072df55640154ea49b588
      https://github.com/llvm/llvm-project/commit/31c304ba7ba8bb5c236072df55640154ea49b588
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/test/Analysis/ScalarEvolution/2008-11-18-Stride1.ll
    M llvm/test/Analysis/ScalarEvolution/2008-11-18-Stride2.ll
    M llvm/test/Analysis/ScalarEvolution/exhaustive-trip-counts.ll
    M llvm/test/Analysis/ScalarEvolution/exponential-behavior.ll
    M llvm/test/Analysis/ScalarEvolution/load-with-range-metadata.ll
    M llvm/test/Analysis/ScalarEvolution/max-trip-count-address-space.ll
    M llvm/test/Analysis/ScalarEvolution/pr25369.ll
    M llvm/test/Analysis/ScalarEvolution/shift-op.ll
    M llvm/test/Analysis/ScalarEvolution/sle.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-pow2.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-switch.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-unknown-stride.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count12.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count13.ll

  Log Message:
  -----------
  [SCEV] Migrate some tests to be autogenerated

In advance of a change which needs to update these.  This batch was the
"easy" ones, I'll be landing the harder set a few a time for easier
review.


  Commit: 716042a63f26cd020eb72960f72fa97b9a197382
      https://github.com/llvm/llvm-project/commit/716042a63f26cd020eb72960f72fa97b9a197382
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M bolt/lib/Core/ParallelUtilities.cpp
    M bolt/tools/merge-fdata/merge-fdata.cpp
    M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
    M clang-tools-extra/clang-include-fixer/find-all-symbols/tool/FindAllSymbolsMain.cpp
    M clang/lib/Tooling/AllTUsExecution.cpp
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp
    M lld/MachO/Writer.cpp
    M lldb/source/Core/Debugger.cpp
    M llvm/docs/ORCv2.rst
    M llvm/examples/SpeculativeJIT/SpeculativeJIT.cpp
    M llvm/include/llvm/ExecutionEngine/Orc/LLJIT.h
    M llvm/include/llvm/Support/ThreadPool.h
    M llvm/lib/CodeGen/ParallelCG.cpp
    M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
    M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.cpp
    M llvm/lib/DebugInfo/GSYM/DwarfTransformer.cpp
    M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/LTO/LTOBackend.cpp
    M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
    M llvm/lib/Support/BalancedPartitioning.cpp
    M llvm/tools/dsymutil/dsymutil.cpp
    M llvm/tools/llvm-cov/CodeCoverage.cpp
    M llvm/tools/llvm-cov/CoverageExporterJson.cpp
    M llvm/tools/llvm-cov/CoverageReport.cpp
    M llvm/tools/llvm-debuginfod/llvm-debuginfod.cpp
    M llvm/tools/llvm-profdata/llvm-profdata.cpp
    M llvm/tools/llvm-reduce/deltas/Delta.cpp
    M llvm/unittests/ADT/LazyAtomicPointerTest.cpp
    M llvm/unittests/Debuginfod/HTTPServerTests.cpp
    M llvm/unittests/Support/ParallelTest.cpp
    M llvm/unittests/Support/ThreadPool.cpp
    M llvm/unittests/Support/ThreadSafeAllocatorTest.cpp
    M mlir/include/mlir/IR/MLIRContext.h
    M mlir/lib/CAPI/IR/Support.cpp
    M mlir/lib/ExecutionEngine/AsyncRuntime.cpp
    M mlir/lib/IR/MLIRContext.cpp

  Log Message:
  -----------
  Rename llvm::ThreadPool -> llvm::DefaultThreadPool (NFC) (#83702)

The base class llvm::ThreadPoolInterface will be renamed
llvm::ThreadPool in a subsequent commit.

This is a breaking change: clients who use to create a ThreadPool must
now create a DefaultThreadPool instead.


  Commit: 2f479b811274fede36535e34ecb545ac22e399c3
      https://github.com/llvm/llvm-project/commit/2f479b811274fede36535e34ecb545ac22e399c3
  Author: wanglei <wanglei at loongson.cn>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/lib/Headers/larchintrin.h
    M clang/test/CodeGen/LoongArch/intrinsic-la32.c
    M clang/test/CodeGen/LoongArch/intrinsic-la64.c

  Log Message:
  -----------
  [Clang][LoongArch] Fix wrong return value type of __iocsrrd_h (#84100)

relate:
https://gcc.gnu.org/pipermail/gcc-patches/2024-February/645016.html


  Commit: 987fe6fa507adb28602e84b471e6fe309830e361
      https://github.com/llvm/llvm-project/commit/987fe6fa507adb28602e84b471e6fe309830e361
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/test/Analysis/ScalarEvolution/max-trip-count.ll
    M llvm/test/Analysis/ScalarEvolution/pr34538.ll

  Log Message:
  -----------
  [SCEV] Migrate a couple tests to be auto generated

A few notes:
* pr34538.ll has bitrotten.  The original test printed the analysis after transforms in some cases, but this appears to been lost during migration to new pass manager.  Remove the now redundant pass invocations and simplify the test setup.


  Commit: d32bcbf6a7f5beb63ce435c2bea737d33d5b7468
      https://github.com/llvm/llvm-project/commit/d32bcbf6a7f5beb63ce435c2bea737d33d5b7468
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M lldb/source/Core/Debugger.cpp

  Log Message:
  -----------
  [lldb] Fix build failure in Debugger.cpp (NFC)

llvm-project/lldb/source/Core/Debugger.cpp:107:14:
error: no type named 'DefaultThreadPoolThreadPool' in namespace 'llvm'
static llvm::DefaultThreadPoolThreadPool *g_thread_pool = nullptr;
       ~~~~~~^
1 error generated.


  Commit: f439c7137373575b5d8e7a2e7056b8dd59e62a26
      https://github.com/llvm/llvm-project/commit/f439c7137373575b5d8e7a2e7056b8dd59e62a26
  Author: wanglei <wanglei at loongson.cn>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/ProfileData/InstrProf.cpp

  Log Message:
  -----------
  [InstrProf][NFC] Fix -Wimplicit-fallthrough warning in InstrProf.cpp after #82711


  Commit: 49ec8b747c83b8dec8317614c30e5610d133790e
      https://github.com/llvm/llvm-project/commit/49ec8b747c83b8dec8317614c30e5610d133790e
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/VINTERPInstructions.td

  Log Message:
  -----------
  AMDGPU: Define and Use HasInterpInsts for interp inst definitions (#84102)


  Commit: 85388a06b6022d0a7bc984bcaff86cf96f045338
      https://github.com/llvm/llvm-project/commit/85388a06b6022d0a7bc984bcaff86cf96f045338
  Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/include/llvm/TargetParser/RISCVTargetParser.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/TargetParser/RISCVTargetParser.cpp
    M llvm/unittests/Target/RISCV/CMakeLists.txt
    R llvm/unittests/Target/RISCV/RISCVBaseInfoTest.cpp
    M llvm/unittests/TargetParser/CMakeLists.txt
    A llvm/unittests/TargetParser/RISCVTargetParserTest.cpp

  Log Message:
  -----------
  [RISCV] Move RISCVVType namespace to TargetParser (#83222)

Clang and some middle-end optimizations may need these helper
functions.

This can reduce some duplications.


  Commit: 96fc54828a0e72e60f90d237e571b47cad5bab87
      https://github.com/llvm/llvm-project/commit/96fc54828a0e72e60f90d237e571b47cad5bab87
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/python/mlir/dialects/arith.py
    M mlir/test/python/dialects/arith_dialect.py

  Log Message:
  -----------
  Revert "[mlir][py] better support for arith.constant construction" (#84103)

Reverts llvm/llvm-project#83259

This broke an integration test on Windows


  Commit: 929ceec70578c24b47018e7cf11ed3bd99896515
      https://github.com/llvm/llvm-project/commit/929ceec70578c24b47018e7cf11ed3bd99896515
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/unittests/Target/RISCV/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/TargetParser/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 85388a06b602


  Commit: 0fa04b6e2cd2169a8e3d22ae879394dbf07c0466
      https://github.com/llvm/llvm-project/commit/0fa04b6e2cd2169a8e3d22ae879394dbf07c0466
  Author: Ye Luo <yeluo at anl.gov>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M openmp/libomptarget/plugins-nextgen/amdgpu/CMakeLists.txt

  Log Message:
  -----------
  [libomptarget] Fix libomptarget.rtl.amdgpu.so installation

If AMD GPUs don't exist when building libomptarget, the early return causes skipping the plugin installation.


  Commit: ae709c192953be2af61f47e91a3ec9f8d5ffb027
      https://github.com/llvm/llvm-project/commit/ae709c192953be2af61f47e91a3ec9f8d5ffb027
  Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/MCA/CMakeLists.txt

  Log Message:
  -----------
  [RISCV] Add TargetParser to MCA (#84109)

This fixes buildbot failures:
https://lab.llvm.org/buildbot/#/builders/57/builds/33206


  Commit: 403b9cf1bb29d550c419ac5ecd2f764bf5cfa3c0
      https://github.com/llvm/llvm-project/commit/403b9cf1bb29d550c419ac5ecd2f764bf5cfa3c0
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils.h
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/lib/Transforms/Utils/Mem2Reg.cpp
    M llvm/test/CodeGen/WebAssembly/ref-type-mem2local.ll

  Log Message:
  -----------
  [WebAssembly] Use RefTypeMem2Local instead of Mem2Reg (#83196)

When reference-types feature is enabled, forcing mem2reg unconditionally
even in `-O0` has some problems described in #81575. This uses
RefTypeMem2Local pass added in #81965 instead. This also removes
`IsForced` parameter added in

https://github.com/llvm/llvm-project/commit/890146b19206827bc48ee1ae1dc1534ff2ff18d7
given that we don't need it anymore.

This may still hurt debug info related to reference type variables a
little during the backend transformation given that they are not stored
in memory anymore, but reference type variables are presumably rare and
it would be still a lot less damage than forcing mem2reg on the whole
program. Also this fixes the EH problem described in #81575.

Fixes #81575.


  Commit: 433b71188da9649a9040f0db5338c65369fa3e90
      https://github.com/llvm/llvm-project/commit/433b71188da9649a9040f0db5338c65369fa3e90
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/lib/Driver/Driver.cpp
    M clang/test/Driver/cuda-detect.cu
    M clang/test/Driver/cuda-march.cu
    M clang/test/Driver/cuda-omp-unsupported-debug-options.cu
    M clang/test/Driver/cuda-options.cu
    M clang/test/Driver/cuda-ptxas-path.cu
    M clang/test/Driver/dwarf-target-version-clamp.cu

  Log Message:
  -----------
  [CUDA] Correctly set CUDA default architecture (#84017)

Summary:
We already had a special CUDA default that better tracked the state as
of modern CUDA installations. Recently this was bumped up to `sm_52`,
but there was a location that wasn't respecting this. Fix that.


  Commit: a30233f5765071c8b269189758e8b907e19c4724
      https://github.com/llvm/llvm-project/commit/a30233f5765071c8b269189758e8b907e19c4724
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M libc/CMakeLists.txt
    M libc/cmake/modules/prepare_libc_gpu_build.cmake

  Log Message:
  -----------
  [libc] Fix standalone cross compiling build for the GPU (#84042)

Summary:
This patch fixes some issues with building the GPU target manually
without the runtimes bootstrapping build. This fixes the install
directory and sets the default namespace to something more sensible if
not set. Also I got rid of the check on `-mcpu=native`. it was a neat
trick, but CMake in its INFINITE wisdom does not allow you to set link
flags on the compiler flag check. So I just went with the old tool
usage.


  Commit: 0f3628a93749433df51b763ff675152d82a25973
      https://github.com/llvm/llvm-project/commit/0f3628a93749433df51b763ff675152d82a25973
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/SISchedule.td
    A llvm/test/tools/llvm-mca/AMDGPU/gfx90a-mfma.s
    M llvm/test/tools/llvm-mca/AMDGPU/gfx940-mfma.s

  Log Message:
  -----------
  AMDGPU: Correct cycle counts for f64 mfma on gfx940 (#83782)


  Commit: 5549b0173661155d4ca9acf4958fe6dce34c2cd5
      https://github.com/llvm/llvm-project/commit/5549b0173661155d4ca9acf4958fe6dce34c2cd5
  Author: Nathan Ridge <zeratul976 at hotmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang-tools-extra/clangd/ClangdServer.cpp
    M clang-tools-extra/clangd/IncludeCleaner.cpp
    M clang-tools-extra/clangd/IncludeCleaner.h
    M clang-tools-extra/clangd/ParsedAST.cpp
    M clang-tools-extra/clangd/unittests/IncludeCleanerTests.cpp

  Log Message:
  -----------
  [clangd] Make all calls to format::getStyle() go through getFormatStyleForFile() (#82948)


  Commit: d1aec79a2ce077e49da7699c4ca2dee239d0a249
      https://github.com/llvm/llvm-project/commit/d1aec79a2ce077e49da7699c4ca2dee239d0a249
  Author: Nathan Ridge <zeratul976 at hotmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang-tools-extra/clangd/FindSymbols.cpp
    M clang-tools-extra/clangd/unittests/FindSymbolsTests.cpp

  Log Message:
  -----------
  [clangd] Remove calls to getFileLoc() in declToSym() (#83532)

toHalfOpenFileRange() already handles translating macro locations to
file locations, and it can provide a better result by knowing about both
ends of the range.

Fixes https://github.com/clangd/clangd/issues/1941


  Commit: b930b14d5d8084425cec75f2037746ab99768c0f
      https://github.com/llvm/llvm-project/commit/b930b14d5d8084425cec75f2037746ab99768c0f
  Author: Kai Sasaki <lewuathe at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M mlir/lib/Conversion/ComplexToStandard/ComplexToStandard.cpp
    M mlir/test/Conversion/ComplexToStandard/convert-to-standard.mlir

  Log Message:
  -----------
  [mlir][complex] Support fast math flag in converting complex.atan2 op (#82101)

When converting complex.atan2 op to standard, we need to keep the fast
math flag given to the op.

See:
https://discourse.llvm.org/t/rfc-fastmath-flags-support-in-complex-dialect/71981


  Commit: 7bad74e66756ca2fd1fe4f5864e7123fb4553d78
      https://github.com/llvm/llvm-project/commit/7bad74e66756ca2fd1fe4f5864e7123fb4553d78
  Author: Qwinci <32550582+Qwinci at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
    M clang/lib/Sema/SemaCodeComplete.cpp

  Log Message:
  -----------
  [clangd] Show argument names for function pointer struct fields (#69011)

Show argument names in signature help when calling a function pointer
struct field.


  Commit: 5fb331106dbcfba21f82b2a84c22a65ee9d4d014
      https://github.com/llvm/llvm-project/commit/5fb331106dbcfba21f82b2a84c22a65ee9d4d014
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp

  Log Message:
  -----------
  [RISCV] Use uint32_t for NumOfVReg in getVLENFactoredAmount. (#84110)

The rest of the code pretty much assumed this anyway.


  Commit: 2a13422b8bcee449405e3ebff957b4020805f91c
      https://github.com/llvm/llvm-project/commit/2a13422b8bcee449405e3ebff957b4020805f91c
  Author: AtariDreams <83477269+AtariDreams at users.noreply.github.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIOptimizeExecMasking.cpp
    M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
    M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZElimCompare.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZShortenInst.cpp
    M llvm/lib/Target/X86/X86FloatingPoint.cpp
    M llvm/test/CodeGen/AArch64/arm64-shrink-wrapping.ll
    M llvm/test/CodeGen/AArch64/stack-probing-no-scratch-reg.mir
    M llvm/test/CodeGen/Thumb/PR35481.ll

  Log Message:
  -----------
  Convert many LivePhysRegs uses to LiveRegUnits (#83905)


  Commit: 3f7aa042b657671319f994ad3fb7c3eb79a6fe00
      https://github.com/llvm/llvm-project/commit/3f7aa042b657671319f994ad3fb7c3eb79a6fe00
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicInst.h

  Log Message:
  -----------
  [nfc] Fix RTTI for `InstrProf` intrinsics (#83511)


  Commit: 9e759f3523e9e7fa955e4af58a6b4f63634dcb24
      https://github.com/llvm/llvm-project/commit/9e759f3523e9e7fa955e4af58a6b4f63634dcb24
  Author: David Majnemer <david.majnemer at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/arm64-convert-v4f64.ll
    M llvm/test/CodeGen/AArch64/arm64-fast-isel-conversion-fallback.ll
    M llvm/test/CodeGen/AArch64/cvt-fp-int-fp.ll
    M llvm/test/CodeGen/AArch64/itofp.ll

  Log Message:
  -----------
  [AArch64] Fix fptoi/itofp for bf16

There were a number of issues that needed to be addressed:
- i64 to bf16 did not correctly round
- strict rounding needed to yield a chain
- fastisel did not have logic to bail on bf16


  Commit: 8f1e69246002e18c658ee306a4782cdbaf982045
      https://github.com/llvm/llvm-project/commit/8f1e69246002e18c658ee306a4782cdbaf982045
  Author: wangpc <wangpengcheng.pp at bytedance.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    R .arcconfig
    R .arclint
    M .ci/monolithic-windows.sh
    M .clang-tidy
    M .git-blame-ignore-revs
    M .github/CODEOWNERS
    M .github/new-prs-labeler.yml
    M .github/workflows/build-ci-container.yml
    R .github/workflows/containers/github-action-ci/Dockerfile
    A .github/workflows/containers/github-action-ci/bootstrap.patch
    A .github/workflows/containers/github-action-ci/stage1.Dockerfile
    A .github/workflows/containers/github-action-ci/stage2.Dockerfile
    A .github/workflows/containers/github-action-ci/storage.conf
    M .github/workflows/docs.yml
    A .github/workflows/email-check.yaml
    M .github/workflows/issue-release-workflow.yml
    M .github/workflows/libclc-tests.yml
    M .github/workflows/lldb-tests.yml
    M .github/workflows/llvm-project-tests.yml
    A .github/workflows/llvm-project-workflow-tests.yml
    A .github/workflows/merged-prs.yml
    M .github/workflows/pr-code-format.yml
    M .github/workflows/release-tasks.yml
    M .github/workflows/spirv-tests.yml
    M README.md
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Core/BinaryFunction.h
    M bolt/include/bolt/Core/BinarySection.h
    M bolt/include/bolt/Core/DIEBuilder.h
    M bolt/include/bolt/Core/DebugData.h
    A bolt/include/bolt/Core/DebugNames.h
    M bolt/include/bolt/Core/DynoStats.h
    M bolt/include/bolt/Core/Exceptions.h
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/include/bolt/Core/ParallelUtilities.h
    M bolt/include/bolt/Passes/ADRRelaxationPass.h
    M bolt/include/bolt/Passes/Aligner.h
    M bolt/include/bolt/Passes/AllocCombiner.h
    M bolt/include/bolt/Passes/AsmDump.h
    M bolt/include/bolt/Passes/BinaryPasses.h
    M bolt/include/bolt/Passes/CMOVConversion.h
    M bolt/include/bolt/Passes/CacheMetrics.h
    M bolt/include/bolt/Passes/FixRISCVCallsPass.h
    M bolt/include/bolt/Passes/FixRelaxationPass.h
    M bolt/include/bolt/Passes/FrameOptimizer.h
    M bolt/include/bolt/Passes/Hugify.h
    M bolt/include/bolt/Passes/IdenticalCodeFolding.h
    M bolt/include/bolt/Passes/IndirectCallPromotion.h
    M bolt/include/bolt/Passes/Inliner.h
    M bolt/include/bolt/Passes/Instrumentation.h
    M bolt/include/bolt/Passes/JTFootprintReduction.h
    M bolt/include/bolt/Passes/LongJmp.h
    M bolt/include/bolt/Passes/LoopInversionPass.h
    M bolt/include/bolt/Passes/PLTCall.h
    M bolt/include/bolt/Passes/PatchEntries.h
    M bolt/include/bolt/Passes/RegReAssign.h
    M bolt/include/bolt/Passes/ReorderData.h
    M bolt/include/bolt/Passes/ReorderFunctions.h
    M bolt/include/bolt/Passes/RetpolineInsertion.h
    M bolt/include/bolt/Passes/ShrinkWrapping.h
    M bolt/include/bolt/Passes/SplitFunctions.h
    M bolt/include/bolt/Passes/StokeInfo.h
    M bolt/include/bolt/Passes/TailDuplication.h
    M bolt/include/bolt/Passes/ThreeWayBranch.h
    M bolt/include/bolt/Passes/ValidateInternalCalls.h
    M bolt/include/bolt/Passes/ValidateMemRefs.h
    M bolt/include/bolt/Passes/VeneerElimination.h
    M bolt/include/bolt/Profile/BoltAddressTranslation.h
    M bolt/include/bolt/Rewrite/BinaryPassManager.h
    M bolt/include/bolt/Rewrite/DWARFRewriter.h
    M bolt/include/bolt/Rewrite/RewriteInstance.h
    M bolt/include/bolt/Utils/CommandLineOpts.h
    M bolt/lib/Core/BinaryBasicBlock.cpp
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Core/BinaryEmitter.cpp
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Core/BinarySection.cpp
    M bolt/lib/Core/CMakeLists.txt
    M bolt/lib/Core/DIEBuilder.cpp
    M bolt/lib/Core/DebugData.cpp
    A bolt/lib/Core/DebugNames.cpp
    M bolt/lib/Core/DynoStats.cpp
    M bolt/lib/Core/Exceptions.cpp
    M bolt/lib/Core/MCPlusBuilder.cpp
    M bolt/lib/Core/ParallelUtilities.cpp
    M bolt/lib/Core/Relocation.cpp
    M bolt/lib/Passes/ADRRelaxationPass.cpp
    M bolt/lib/Passes/Aligner.cpp
    M bolt/lib/Passes/AllocCombiner.cpp
    M bolt/lib/Passes/AsmDump.cpp
    M bolt/lib/Passes/BinaryFunctionCallGraph.cpp
    M bolt/lib/Passes/BinaryPasses.cpp
    M bolt/lib/Passes/CMOVConversion.cpp
    M bolt/lib/Passes/CacheMetrics.cpp
    M bolt/lib/Passes/FixRISCVCallsPass.cpp
    M bolt/lib/Passes/FixRelaxationPass.cpp
    M bolt/lib/Passes/FrameAnalysis.cpp
    M bolt/lib/Passes/FrameOptimizer.cpp
    M bolt/lib/Passes/Hugify.cpp
    M bolt/lib/Passes/IdenticalCodeFolding.cpp
    M bolt/lib/Passes/IndirectCallPromotion.cpp
    M bolt/lib/Passes/Inliner.cpp
    M bolt/lib/Passes/Instrumentation.cpp
    M bolt/lib/Passes/JTFootprintReduction.cpp
    M bolt/lib/Passes/LongJmp.cpp
    M bolt/lib/Passes/LoopInversionPass.cpp
    M bolt/lib/Passes/PLTCall.cpp
    M bolt/lib/Passes/PatchEntries.cpp
    M bolt/lib/Passes/RegAnalysis.cpp
    M bolt/lib/Passes/RegReAssign.cpp
    M bolt/lib/Passes/ReorderData.cpp
    M bolt/lib/Passes/ReorderFunctions.cpp
    M bolt/lib/Passes/RetpolineInsertion.cpp
    M bolt/lib/Passes/ShrinkWrapping.cpp
    M bolt/lib/Passes/SplitFunctions.cpp
    M bolt/lib/Passes/StokeInfo.cpp
    M bolt/lib/Passes/TailDuplication.cpp
    M bolt/lib/Passes/ThreeWayBranch.cpp
    M bolt/lib/Passes/ValidateInternalCalls.cpp
    M bolt/lib/Passes/ValidateMemRefs.cpp
    M bolt/lib/Passes/VeneerElimination.cpp
    M bolt/lib/Profile/BoltAddressTranslation.cpp
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/Profile/StaleProfileMatching.cpp
    M bolt/lib/Profile/YAMLProfileReader.cpp
    M bolt/lib/Rewrite/BinaryPassManager.cpp
    M bolt/lib/Rewrite/BoltDiff.cpp
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
    M bolt/lib/Rewrite/MachORewriteInstance.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
    M bolt/lib/Target/X86/X86MCSymbolizer.cpp
    M bolt/lib/Target/X86/X86MCSymbolizer.h
    M bolt/lib/Utils/CommandLineOpts.cpp
    M bolt/test/AArch64/exclusive-instrument.s
    M bolt/test/AArch64/ifunc.c
    A bolt/test/X86/Inputs/dwarf5-debug-names-helper.s
    A bolt/test/X86/Inputs/dwarf5-debug-names-main.s
    A bolt/test/X86/Inputs/dwarf5-df-debug-names-helper.s
    A bolt/test/X86/Inputs/dwarf5-df-debug-names-main.s
    A bolt/test/X86/Inputs/dwarf5-df-types-debug-names-helper.s
    A bolt/test/X86/Inputs/dwarf5-df-types-debug-names-main.s
    A bolt/test/X86/Inputs/dwarf5-empty-arange-helper.s
    A bolt/test/X86/Inputs/dwarf5-empty-arange-main.s
    A bolt/test/X86/Inputs/dwarf5-types-debug-names-helper.s
    A bolt/test/X86/Inputs/dwarf5-types-debug-names-main.s
    M bolt/test/X86/dwarf4-subprogram-single-gc-ranges.test
    A bolt/test/X86/dwarf5-debug-names-generate-debug-names.test
    A bolt/test/X86/dwarf5-debug-names.test
    A bolt/test/X86/dwarf5-df-debug-names-generate-debug-names.test
    A bolt/test/X86/dwarf5-df-debug-names.test
    A bolt/test/X86/dwarf5-df-one-cu-debug-names.test
    A bolt/test/X86/dwarf5-df-types-debug-names.test
    A bolt/test/X86/dwarf5-df-types-one-cu-debug-names.test
    A bolt/test/X86/dwarf5-empty-arange.test
    A bolt/test/X86/dwarf5-empty-function-ranges.s
    A bolt/test/X86/dwarf5-loclist-out-of-order.s
    A bolt/test/X86/dwarf5-one-cu-debug-names.test
    M bolt/test/X86/dwarf5-subprogram-single-gc-ranges.test
    A bolt/test/X86/dwarf5-types-debug-names.test
    A bolt/test/X86/dwarf5-types-one-cu-debug-names.test
    A bolt/test/X86/fatal-error.s
    A bolt/test/X86/linux-exceptions.s
    M bolt/test/X86/linux-orc.s
    A bolt/test/X86/linux-parainstructions.s
    A bolt/test/X86/linux-static-calls.s
    A bolt/test/X86/log.test
    A bolt/test/X86/phdr-out-of-order.test
    A bolt/test/runtime/X86/instrument-wrong-target.s
    R bolt/test/runtime/instrument-wrong-target.s
    M bolt/tools/bat-dump/bat-dump.cpp
    M bolt/tools/driver/llvm-bolt.cpp
    M bolt/tools/merge-fdata/merge-fdata.cpp
    M bolt/unittests/Core/BinaryContext.cpp
    M bolt/unittests/Core/MCPlusBuilder.cpp
    M clang-tools-extra/clang-apply-replacements/tool/ClangApplyReplacementsMain.cpp
    M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
    M clang-tools-extra/clang-include-fixer/find-all-symbols/tool/FindAllSymbolsMain.cpp
    M clang-tools-extra/clang-move/Move.cpp
    M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
    M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.h
    M clang-tools-extra/clang-tidy/add_new_check.py
    M clang-tools-extra/clang-tidy/altera/KernelNameRestrictionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
    M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
    A clang-tools-extra/clang-tidy/bugprone/CrtpConstructorAccessibilityCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/CrtpConstructorAccessibilityCheck.h
    M clang-tools-extra/clang-tidy/bugprone/DynamicStaticInitializersCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/DynamicStaticInitializersCheck.h
    M clang-tools-extra/clang-tidy/bugprone/NonZeroEnumToBoolConversionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ReservedIdentifierCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousIncludeCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousIncludeCheck.h
    M clang-tools-extra/clang-tidy/bugprone/TooSmallLoopVariableCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UnusedLocalNonTrivialVariableCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.h
    M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
    M clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp
    M clang-tools-extra/clang-tidy/cert/CMakeLists.txt
    R clang-tools-extra/clang-tidy/cert/PostfixOperatorCheck.cpp
    R clang-tools-extra/clang-tidy/cert/PostfixOperatorCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.h
    M clang-tools-extra/clang-tidy/google/ExplicitConstructorCheck.cpp
    M clang-tools-extra/clang-tidy/google/GlobalNamesInHeadersCheck.cpp
    M clang-tools-extra/clang-tidy/google/GlobalNamesInHeadersCheck.h
    M clang-tools-extra/clang-tidy/google/UnnamedNamespaceInHeaderCheck.cpp
    M clang-tools-extra/clang-tidy/google/UnnamedNamespaceInHeaderCheck.h
    M clang-tools-extra/clang-tidy/hicpp/IgnoredRemoveResultCheck.cpp
    M clang-tools-extra/clang-tidy/llvm/HeaderGuardCheck.h
    M clang-tools-extra/clang-tidy/llvm/IncludeOrderCheck.cpp
    M clang-tools-extra/clang-tidy/llvmlibc/RestrictSystemLibcHeadersCheck.cpp
    M clang-tools-extra/clang-tidy/misc/DefinitionsInHeadersCheck.cpp
    M clang-tools-extra/clang-tidy/misc/DefinitionsInHeadersCheck.h
    M clang-tools-extra/clang-tidy/misc/HeaderIncludeCycleCheck.cpp
    M clang-tools-extra/clang-tidy/misc/UnusedUsingDeclsCheck.cpp
    M clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.cpp
    M clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.h
    M clang-tools-extra/clang-tidy/modernize/AvoidCArraysCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/AvoidCArraysCheck.h
    M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
    M clang-tools-extra/clang-tidy/modernize/DeprecatedHeadersCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/MacroToEnumCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/ModernizeTidyModule.cpp
    A clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.cpp
    A clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseOverrideCheck.cpp
    M clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitialization.cpp
    M clang-tools-extra/clang-tidy/portability/RestrictSystemIncludesCheck.cpp
    M clang-tools-extra/clang-tidy/portability/RestrictSystemIncludesCheck.h
    M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
    M clang-tools-extra/clang-tidy/readability/DuplicateIncludeCheck.cpp
    M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantInlineSpecifierCheck.cpp
    A clang-tools-extra/clang-tidy/readability/UseStdMinMaxCheck.cpp
    A clang-tools-extra/clang-tidy/readability/UseStdMinMaxCheck.h
    M clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
    M clang-tools-extra/clang-tidy/utils/CMakeLists.txt
    M clang-tools-extra/clang-tidy/utils/DeclRefExprUtils.cpp
    M clang-tools-extra/clang-tidy/utils/DeclRefExprUtils.h
    A clang-tools-extra/clang-tidy/utils/DesignatedInitializers.cpp
    A clang-tools-extra/clang-tidy/utils/DesignatedInitializers.h
    M clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp
    M clang-tools-extra/clang-tidy/utils/HeaderGuard.h
    M clang-tools-extra/clang-tidy/utils/IncludeInserter.cpp
    M clang-tools-extra/clangd/CMakeLists.txt
    M clang-tools-extra/clangd/ClangdLSPServer.cpp
    M clang-tools-extra/clangd/ClangdLSPServer.h
    M clang-tools-extra/clangd/ClangdServer.cpp
    M clang-tools-extra/clangd/ClangdServer.h
    M clang-tools-extra/clangd/FindSymbols.cpp
    M clang-tools-extra/clangd/Headers.cpp
    M clang-tools-extra/clangd/HeuristicResolver.cpp
    M clang-tools-extra/clangd/HeuristicResolver.h
    M clang-tools-extra/clangd/IncludeCleaner.cpp
    M clang-tools-extra/clangd/IncludeCleaner.h
    M clang-tools-extra/clangd/InlayHints.cpp
    M clang-tools-extra/clangd/ParsedAST.cpp
    M clang-tools-extra/clangd/Protocol.cpp
    M clang-tools-extra/clangd/Protocol.h
    M clang-tools-extra/clangd/SemanticHighlighting.cpp
    M clang-tools-extra/clangd/TidyFastChecks.inc
    M clang-tools-extra/clangd/index/IndexAction.cpp
    M clang-tools-extra/clangd/index/SymbolCollector.cpp
    M clang-tools-extra/clangd/refactor/Rename.cpp
    M clang-tools-extra/clangd/refactor/Rename.h
    M clang-tools-extra/clangd/refactor/tweaks/ExtractVariable.cpp
    M clang-tools-extra/clangd/test/initialize-params.test
    M clang-tools-extra/clangd/test/rename.test
    M clang-tools-extra/clangd/tool/CMakeLists.txt
    M clang-tools-extra/clangd/unittests/CMakeLists.txt
    M clang-tools-extra/clangd/unittests/ClangdLSPServerTests.cpp
    M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
    M clang-tools-extra/clangd/unittests/DiagnosticsTests.cpp
    M clang-tools-extra/clangd/unittests/FindSymbolsTests.cpp
    M clang-tools-extra/clangd/unittests/FindTargetTests.cpp
    M clang-tools-extra/clangd/unittests/IncludeCleanerTests.cpp
    M clang-tools-extra/clangd/unittests/LSPClient.cpp
    M clang-tools-extra/clangd/unittests/LSPClient.h
    M clang-tools-extra/clangd/unittests/RenameTests.cpp
    M clang-tools-extra/clangd/unittests/ReplayPeambleTests.cpp
    M clang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
    M clang-tools-extra/clangd/unittests/SymbolCollectorTests.cpp
    M clang-tools-extra/clangd/unittests/tweaks/ExtractVariableTests.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/crtp-constructor-accessibility.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-include.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/too-small-loop-variable.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unused-local-non-trivial-variable.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unused-return-value.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/use-after-move.rst
    R clang-tools-extra/docs/clang-tidy/checks/cert/dcl21-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/prefer-member-initializer.rst
    M clang-tools-extra/docs/clang-tidy/checks/google/build-namespaces.rst
    M clang-tools-extra/docs/clang-tidy/checks/google/global-names-in-headers.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    M clang-tools-extra/docs/clang-tidy/checks/llvm/header-guard.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/definitions-in-headers.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/unused-using-decls.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/use-anonymous-namespace.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-c-arrays.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/deprecated-headers.rst
    A clang-tools-extra/docs/clang-tidy/checks/modernize/use-designated-initializers.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-override.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/avoid-return-with-void-value.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/container-contains.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/use-anyofallof.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/use-std-min-max.rst
    M clang-tools-extra/include-cleaner/lib/Record.cpp
    M clang-tools-extra/include-cleaner/lib/WalkAST.cpp
    M clang-tools-extra/include-cleaner/unittests/WalkASTTest.cpp
    M clang-tools-extra/modularize/CoverageChecker.cpp
    M clang-tools-extra/modularize/PreprocessorTracker.cpp
    M clang-tools-extra/pp-trace/PPCallbacksTracker.cpp
    M clang-tools-extra/pp-trace/PPCallbacksTracker.h
    A clang-tools-extra/test/clang-apply-replacements/Inputs/format_header/no.cpp
    A clang-tools-extra/test/clang-apply-replacements/Inputs/format_header/no.yaml
    A clang-tools-extra/test/clang-apply-replacements/Inputs/format_header/yes.cpp
    A clang-tools-extra/test/clang-apply-replacements/Inputs/format_header/yes.yaml
    A clang-tools-extra/test/clang-apply-replacements/format-header.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/crtp-constructor-accessibility.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/implicit-widening-of-multiplication-result-char.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/non-zero-enum-to-bool-conversion.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/too-small-loop-variable.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-local-non-trivial-variable.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-return-value-custom.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/use-after-move.cpp
    R clang-tools-extra/test/clang-tidy/checkers/cert/dcl21-cpp.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/missing-std-forward.cpp
    R clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/prefer-member-initializer-modernize-use-default-member-init-assignment.cpp
    R clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/prefer-member-initializer-modernize-use-default-member-init.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/prefer-member-initializer.cpp
    A clang-tools-extra/test/clang-tidy/checkers/google/explicit-constructor-cxx20.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-c-arrays-ignores-strings.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-c-arrays.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-basic.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-designated-initializers.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-copy-initialization.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/identifier-naming/symlink/include/.clang-tidy
    A clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/identifier-naming/symlink/include/test.h
    A clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-symlink.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-inline-specifier.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/use-std-min-max.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/diagnostic.cpp
    M clang-tools-extra/test/pp-trace/pp-trace-include.cpp
    M clang-tools-extra/unittests/clang-tidy/DeclRefExprUtilsTest.cpp
    M clang/cmake/caches/Fuchsia-stage2.cmake
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/ClangLinkerWrapper.rst
    M clang/docs/HIPSupport.rst
    A clang/docs/HLSL/ExpectedDifferences.rst
    M clang/docs/HLSL/HLSLDocs.rst
    M clang/docs/LanguageExtensions.rst
    M clang/docs/LibASTMatchersReference.html
    M clang/docs/OffloadingDesign.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/ShadowCallStack.rst
    M clang/docs/StandardCPlusPlusModules.rst
    M clang/docs/UndefinedBehaviorSanitizer.rst
    M clang/docs/UsersManual.rst
    M clang/docs/analyzer/checkers.rst
    M clang/docs/conf.py
    A clang/docs/ghlinks.py
    M clang/docs/tools/clang-formatted-files.txt
    M clang/docs/tools/dump_ast_matchers.py
    M clang/docs/tools/dump_format_style.py
    M clang/include/clang-c/Index.h
    M clang/include/clang/APINotes/APINotesWriter.h
    M clang/include/clang/APINotes/Types.h
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/ASTNodeTraverser.h
    M clang/include/clang/AST/Availability.h
    M clang/include/clang/AST/CommentCommandTraits.h
    M clang/include/clang/AST/ComparisonCategories.h
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/FormatString.h
    M clang/include/clang/AST/JSONNodeDumper.h
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/OperationKinds.def
    M clang/include/clang/AST/RawCommentList.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/StmtObjC.h
    A clang/include/clang/AST/StmtOpenACC.h
    M clang/include/clang/AST/StmtOpenMP.h
    M clang/include/clang/AST/StmtVisitor.h
    M clang/include/clang/AST/TextNodeDumper.h
    M clang/include/clang/AST/Type.h
    M clang/include/clang/AST/TypeLoc.h
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/include/clang/Analysis/Analyses/PostOrderCFGView.h
    M clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h
    M clang/include/clang/Analysis/Analyses/UnsafeBufferUsage.h
    M clang/include/clang/Analysis/Analyses/UnsafeBufferUsageGadgets.def
    M clang/include/clang/Analysis/CFG.h
    M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysis.h
    M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysisContext.h
    M clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h
    M clang/include/clang/Analysis/FlowSensitive/DataflowValues.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/BuiltinsAArch64.def
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/include/clang/Basic/BuiltinsBase.td
    M clang/include/clang/Basic/BuiltinsNVPTX.def
    R clang/include/clang/Basic/BuiltinsRISCV.def
    A clang/include/clang/Basic/BuiltinsRISCV.td
    M clang/include/clang/Basic/CMakeLists.txt
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Basic/DiagnosticCommonKinds.td
    M clang/include/clang/Basic/DiagnosticDocs.td
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticLexKinds.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/DiagnosticSerializationKinds.td
    M clang/include/clang/Basic/FileManager.h
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Basic/Module.h
    M clang/include/clang/Basic/OpenACCKinds.h
    M clang/include/clang/Basic/Specifiers.h
    M clang/include/clang/Basic/StmtNodes.td
    M clang/include/clang/Basic/TargetBuiltins.h
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/Basic/TargetOSMacros.def
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Basic/TokenKinds.h
    M clang/include/clang/Basic/Visibility.h
    M clang/include/clang/Basic/arm_neon.td
    M clang/include/clang/Basic/arm_sme.td
    M clang/include/clang/Basic/riscv_vector.td
    M clang/include/clang/CodeGen/CGFunctionInfo.h
    M clang/include/clang/Driver/ClangOptionDocs.td
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Driver/ToolChain.h
    M clang/include/clang/ExtractAPI/API.h
    R clang/include/clang/ExtractAPI/AvailabilityInfo.h
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    M clang/include/clang/Format/Format.h
    M clang/include/clang/Frontend/ASTUnit.h
    M clang/include/clang/Frontend/CompilerInstance.h
    M clang/include/clang/Frontend/CompilerInvocation.h
    A clang/include/clang/InstallAPI/Context.h
    A clang/include/clang/InstallAPI/FileList.h
    A clang/include/clang/InstallAPI/Frontend.h
    A clang/include/clang/InstallAPI/HeaderFile.h
    A clang/include/clang/InstallAPI/Visitor.h
    M clang/include/clang/Lex/HeaderSearch.h
    M clang/include/clang/Lex/HeaderSearchOptions.h
    M clang/include/clang/Lex/PPCallbacks.h
    M clang/include/clang/Lex/PreprocessingRecord.h
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Lex/Token.h
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Parse/RAIIObjectsForParser.h
    M clang/include/clang/Rewrite/Core/HTMLRewrite.h
    M clang/include/clang/Sema/AnalysisBasedWarnings.h
    M clang/include/clang/Sema/CodeCompleteConsumer.h
    M clang/include/clang/Sema/CodeCompleteOptions.h
    M clang/include/clang/Sema/DeclSpec.h
    M clang/include/clang/Sema/DelayedDiagnostic.h
    M clang/include/clang/Sema/Lookup.h
    M clang/include/clang/Sema/Overload.h
    M clang/include/clang/Sema/ParsedAttr.h
    M clang/include/clang/Sema/Scope.h
    M clang/include/clang/Sema/ScopeInfo.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/TemplateDeduction.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/include/clang/Serialization/ModuleFile.h
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugSuppression.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallDescription.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h
    M clang/include/clang/Support/RISCVVIntrinsicUtils.h
    M clang/include/clang/Tooling/DependencyScanning/DependencyScanningFilesystem.h
    M clang/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
    M clang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h
    M clang/include/clang/Tooling/Inclusions/IncludeStyle.h
    M clang/include/module.modulemap
    M clang/lib/APINotes/APINotesReader.cpp
    M clang/lib/APINotes/APINotesWriter.cpp
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTDumper.cpp
    M clang/lib/AST/ASTStructuralEquivalence.cpp
    M clang/lib/AST/ASTTypeTraits.cpp
    A clang/lib/AST/Availability.cpp
    M clang/lib/AST/CMakeLists.txt
    M clang/lib/AST/ComparisonCategories.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclBase.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/FormatString.cpp
    M clang/lib/AST/Interp/ByteCodeEmitter.cpp
    M clang/lib/AST/Interp/ByteCodeEmitter.h
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/ByteCodeExprGen.h
    R clang/lib/AST/Interp/ByteCodeGenError.cpp
    R clang/lib/AST/Interp/ByteCodeGenError.h
    M clang/lib/AST/Interp/ByteCodeStmtGen.cpp
    M clang/lib/AST/Interp/Context.cpp
    M clang/lib/AST/Interp/Context.h
    M clang/lib/AST/Interp/Descriptor.cpp
    M clang/lib/AST/Interp/Descriptor.h
    M clang/lib/AST/Interp/Disasm.cpp
    M clang/lib/AST/Interp/EvalEmitter.cpp
    M clang/lib/AST/Interp/EvalEmitter.h
    M clang/lib/AST/Interp/EvaluationResult.cpp
    M clang/lib/AST/Interp/EvaluationResult.h
    M clang/lib/AST/Interp/Function.h
    M clang/lib/AST/Interp/FunctionPointer.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/InterpBuiltin.cpp
    M clang/lib/AST/Interp/InterpFrame.cpp
    M clang/lib/AST/Interp/InterpFrame.h
    A clang/lib/AST/Interp/InterpShared.cpp
    A clang/lib/AST/Interp/InterpShared.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/AST/Interp/PrimType.h
    M clang/lib/AST/Interp/Program.cpp
    M clang/lib/AST/Interp/Program.h
    M clang/lib/AST/Interp/Record.h
    M clang/lib/AST/Interp/Source.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/Linkage.h
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/PrintfFormatString.cpp
    M clang/lib/AST/RecordLayoutBuilder.cpp
    M clang/lib/AST/Stmt.cpp
    A clang/lib/AST/StmtOpenACC.cpp
    M clang/lib/AST/StmtPrinter.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/AST/TypeLoc.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/Analysis/CFG.cpp
    M clang/lib/Analysis/FlowSensitive/ControlFlowContext.cpp
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
    M clang/lib/Analysis/FlowSensitive/HTMLLogger.cpp
    M clang/lib/Analysis/FlowSensitive/HTMLLogger.css
    M clang/lib/Analysis/FlowSensitive/HTMLLogger.html
    M clang/lib/Analysis/FlowSensitive/Transfer.cpp
    M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
    M clang/lib/Analysis/ReachableCode.cpp
    M clang/lib/Analysis/ThreadSafetyCommon.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Basic/FileManager.cpp
    M clang/lib/Basic/IdentifierTable.cpp
    M clang/lib/Basic/Module.cpp
    M clang/lib/Basic/Sarif.cpp
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/AArch64.h
    M clang/lib/Basic/Targets/AMDGPU.cpp
    M clang/lib/Basic/Targets/AMDGPU.h
    M clang/lib/Basic/Targets/ARM.h
    M clang/lib/Basic/Targets/Mips.h
    M clang/lib/Basic/Targets/NVPTX.cpp
    M clang/lib/Basic/Targets/NVPTX.h
    M clang/lib/Basic/Targets/PPC.cpp
    M clang/lib/Basic/Targets/PPC.h
    M clang/lib/Basic/Targets/RISCV.cpp
    M clang/lib/Basic/Targets/SPIR.h
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/Basic/Targets/X86.h
    M clang/lib/CMakeLists.txt
    M clang/lib/CodeGen/ABIInfo.cpp
    M clang/lib/CodeGen/ABIInfo.h
    M clang/lib/CodeGen/BackendConsumer.h
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/lib/CodeGen/CGCUDARuntime.h
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGCall.h
    M clang/lib/CodeGen/CGCleanup.h
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGGPUBuiltin.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGObjC.cpp
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.h
    M clang/lib/CodeGen/CGRecordLayout.h
    M clang/lib/CodeGen/CGRecordLayoutBuilder.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CodeGenPGO.h
    M clang/lib/CodeGen/CodeGenTBAA.cpp
    M clang/lib/CodeGen/CodeGenTBAA.h
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M clang/lib/CodeGen/CoverageMappingGen.h
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/LinkInModulesPass.cpp
    A clang/lib/CodeGen/MCDCState.h
    M clang/lib/CodeGen/MacroPPCallbacks.cpp
    M clang/lib/CodeGen/MacroPPCallbacks.h
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/lib/CodeGen/Targets/ARM.cpp
    M clang/lib/CodeGen/Targets/NVPTX.cpp
    M clang/lib/CodeGen/Targets/RISCV.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/OffloadBundler.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.h
    M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
    M clang/lib/Driver/ToolChains/Arch/AArch64.cpp
    M clang/lib/Driver/ToolChains/Arch/ARM.cpp
    M clang/lib/Driver/ToolChains/Arch/Sparc.cpp
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.h
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Darwin.h
    M clang/lib/Driver/ToolChains/DragonFly.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Driver/ToolChains/Flang.h
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/lib/Driver/ToolChains/Fuchsia.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.cpp
    M clang/lib/Driver/ToolChains/HIPUtility.cpp
    M clang/lib/Driver/ToolChains/Haiku.cpp
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Driver/ToolChains/MSVC.cpp
    M clang/lib/Driver/ToolChains/MinGW.cpp
    M clang/lib/Driver/ToolChains/MipsLinux.cpp
    M clang/lib/Driver/ToolChains/NetBSD.cpp
    M clang/lib/Driver/ToolChains/OHOS.cpp
    M clang/lib/Driver/ToolChains/OpenBSD.cpp
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/lib/Driver/ToolChains/RISCVToolchain.cpp
    M clang/lib/Driver/ToolChains/RISCVToolchain.h
    M clang/lib/Driver/ToolChains/Solaris.cpp
    M clang/lib/Driver/ToolChains/WebAssembly.cpp
    M clang/lib/Driver/ToolChains/ZOS.cpp
    M clang/lib/Edit/RewriteObjCFoundationAPI.cpp
    R clang/lib/ExtractAPI/AvailabilityInfo.cpp
    M clang/lib/ExtractAPI/CMakeLists.txt
    M clang/lib/ExtractAPI/ExtractAPIConsumer.cpp
    M clang/lib/Format/BreakableToken.cpp
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/ContinuationIndenter.h
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/FormatToken.cpp
    M clang/lib/Format/FormatToken.h
    M clang/lib/Format/FormatTokenLexer.cpp
    M clang/lib/Format/MacroCallReconstructor.cpp
    M clang/lib/Format/Macros.h
    M clang/lib/Format/QualifierAlignmentFixer.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Format/TokenAnnotator.h
    M clang/lib/Format/UnwrappedLineFormatter.cpp
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Format/UnwrappedLineParser.h
    M clang/lib/Format/WhitespaceManager.cpp
    M clang/lib/Format/WhitespaceManager.h
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/DependencyFile.cpp
    M clang/lib/Frontend/DependencyGraph.cpp
    M clang/lib/Frontend/FrontendAction.cpp
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Frontend/ModuleDependencyCollector.cpp
    M clang/lib/Frontend/PrecompiledPreamble.cpp
    M clang/lib/Frontend/PrintPreprocessedOutput.cpp
    M clang/lib/Frontend/Rewrite/InclusionRewriter.cpp
    M clang/lib/Frontend/TextDiagnostic.cpp
    M clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
    M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M clang/lib/Headers/arm_acle.h
    M clang/lib/Headers/cpuid.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/fmaintrin.h
    M clang/lib/Headers/hlsl/hlsl_basic_types.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Headers/ia32intrin.h
    M clang/lib/Headers/intrin.h
    M clang/lib/Headers/larchintrin.h
    M clang/lib/Headers/mmintrin.h
    M clang/lib/Headers/prfchwintrin.h
    M clang/lib/Headers/smmintrin.h
    M clang/lib/Headers/stdatomic.h
    M clang/lib/Headers/tmmintrin.h
    M clang/lib/Index/IndexSymbol.cpp
    M clang/lib/Index/IndexingAction.cpp
    A clang/lib/InstallAPI/CMakeLists.txt
    A clang/lib/InstallAPI/FileList.cpp
    A clang/lib/InstallAPI/Frontend.cpp
    A clang/lib/InstallAPI/HeaderFile.cpp
    A clang/lib/InstallAPI/Visitor.cpp
    M clang/lib/Lex/DependencyDirectivesScanner.cpp
    M clang/lib/Lex/HeaderSearch.cpp
    M clang/lib/Lex/Lexer.cpp
    M clang/lib/Lex/LiteralSupport.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/Lex/PPExpressions.cpp
    M clang/lib/Lex/PPMacroExpansion.cpp
    M clang/lib/Lex/PreprocessingRecord.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseObjc.cpp
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Parse/ParseTemplate.cpp
    M clang/lib/Parse/ParseTentative.cpp
    M clang/lib/Parse/Parser.cpp
    M clang/lib/Rewrite/HTMLRewrite.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/CMakeLists.txt
    M clang/lib/Sema/DeclSpec.cpp
    M clang/lib/Sema/JumpDiagnostics.cpp
    M clang/lib/Sema/ParsedAttr.cpp
    M clang/lib/Sema/Scope.cpp
    M clang/lib/Sema/Sema.cpp
    A clang/lib/Sema/SemaAPINotes.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaCodeComplete.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaDeclObjC.cpp
    M clang/lib/Sema/SemaExceptionSpec.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaObjCProperty.cpp
    A clang/lib/Sema/SemaOpenACC.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaRISCVVectorLookup.cpp
    M clang/lib/Sema/SemaStmt.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp
    M clang/lib/StaticAnalyzer/Checkers/BoolAssignmentChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCUnusedIVarsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/TaggedUnionModeling.h
    M clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedCallArgsChecker.cpp
    M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
    M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
    M clang/lib/StaticAnalyzer/Core/CallDescription.cpp
    M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
    M clang/lib/StaticAnalyzer/Core/Environment.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
    M clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
    M clang/lib/Tooling/AllTUsExecution.cpp
    M clang/lib/Tooling/CMakeLists.txt
    M clang/lib/Tooling/DependencyScanning/DependencyScanningFilesystem.cpp
    M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
    M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
    M clang/lib/Tooling/Inclusions/HeaderIncludes.cpp
    M clang/lib/Tooling/Inclusions/IncludeStyle.cpp
    M clang/test/AST/Interp/arrays.cpp
    A clang/test/AST/Interp/atomic.c
    A clang/test/AST/Interp/atomic.cpp
    M clang/test/AST/Interp/builtin-functions.cpp
    M clang/test/AST/Interp/builtins.cpp
    M clang/test/AST/Interp/c.c
    A clang/test/AST/Interp/comma.cpp
    A clang/test/AST/Interp/complex.c
    M clang/test/AST/Interp/complex.cpp
    A clang/test/AST/Interp/crash-GH49103-2.cpp
    A clang/test/AST/Interp/cxx03.cpp
    M clang/test/AST/Interp/cxx11.cpp
    M clang/test/AST/Interp/cxx17.cpp
    M clang/test/AST/Interp/cxx20.cpp
    M clang/test/AST/Interp/cxx23.cpp
    M clang/test/AST/Interp/cxx98.cpp
    M clang/test/AST/Interp/functions.cpp
    M clang/test/AST/Interp/intap.cpp
    M clang/test/AST/Interp/lambda.cpp
    M clang/test/AST/Interp/literals.cpp
    A clang/test/AST/Interp/nullable.cpp
    A clang/test/AST/Interp/pointer-addition.c
    M clang/test/AST/Interp/records.cpp
    M clang/test/AST/Interp/shifts.cpp
    A clang/test/AST/Interp/spaceship.cpp
    M clang/test/AST/Interp/switch.cpp
    M clang/test/AST/ast-dump-for-range-lifetime.cpp
    A clang/test/AST/ast-dump-pack-indexing-crash.cpp
    A clang/test/AST/ast-dump-static-operators.cpp
    M clang/test/AST/ast-dump-using.cpp
    M clang/test/AST/ast-print-method-decl.cpp
    A clang/test/AST/fixed-point-zero-init.cpp
    M clang/test/AST/ms-constexpr.cpp
    A clang/test/Analysis/Checkers/WebKit/assignment-to-refptr.cpp
    R clang/test/Analysis/Checkers/WebKit/call-args-dynamic-downcast.cpp
    A clang/test/Analysis/Checkers/WebKit/call-args-protected-return-value.cpp
    A clang/test/Analysis/Checkers/WebKit/call-args-safe-functions.cpp
    A clang/test/Analysis/Checkers/WebKit/call-args-wtf-containers.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args.cpp
    A clang/test/Analysis/Checkers/WebKit/implicit-cast-to-base-class-with-deref-in-superclass.cpp
    A clang/test/Analysis/Checkers/WebKit/member-function-pointer-crash.cpp
    M clang/test/Analysis/Checkers/WebKit/mock-types.h
    A clang/test/Analysis/Checkers/WebKit/ref-allowing-partially-destroyed.cpp
    M clang/test/Analysis/Checkers/WebKit/ref-cntbl-base-virtual-dtor.cpp
    A clang/test/Analysis/Checkers/WebKit/ref-countable-default-arg-nullptr.cpp
    A clang/test/Analysis/Checkers/WebKit/ref-ptr-accessor.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-lambda-captures.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-members.cpp
    A clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
    M clang/test/Analysis/Inputs/expected-plists/unix-fns.c.plist
    M clang/test/Analysis/Inputs/std-c-library-functions-POSIX.h
    M clang/test/Analysis/ObjCRetSigs.m
    M clang/test/Analysis/analyzer-config.c
    M clang/test/Analysis/bitwise-shift-common.c
    M clang/test/Analysis/builtin-functions.cpp
    M clang/test/Analysis/copypaste/suspicious-clones.cpp
    M clang/test/Analysis/errno-stdlibraryfunctions.c
    A clang/test/Analysis/html_diagnostics/counter.c
    M clang/test/Analysis/objc_invalidation.m
    M clang/test/Analysis/out-of-bounds-diagnostics.c
    A clang/test/Analysis/out-of-bounds-notes.c
    M clang/test/Analysis/out-of-bounds.c
    M clang/test/Analysis/scan-build/html_output.test
    M clang/test/Analysis/stack-addr-ps.c
    M clang/test/Analysis/std-c-library-functions-POSIX.c
    M clang/test/Analysis/std-c-library-functions-path-notes.c
    M clang/test/Analysis/std-c-library-functions.c
    M clang/test/Analysis/stream-errno-note.c
    M clang/test/Analysis/stream-errno.c
    M clang/test/Analysis/stream-error.c
    A clang/test/Analysis/stream-invalidate.c
    M clang/test/Analysis/stream-noopen.c
    M clang/test/Analysis/stream-note.c
    M clang/test/Analysis/stream.c
    M clang/test/Analysis/suppression-attr-doc.cpp
    A clang/test/Analysis/suppression-attr.cpp
    M clang/test/Analysis/suppression-attr.m
    M clang/test/Analysis/taint-diagnostic-visitor.c
    M clang/test/Analysis/taint-generic.c
    M clang/test/Analysis/templates.cpp
    A clang/test/Analysis/unix-fns-o_creat.c
    M clang/test/Analysis/unix-fns.c
    M clang/test/Analysis/unused-ivars.m
    A clang/test/C/C2x/n2549.c
    M clang/test/C/C2x/n2934.c
    M clang/test/C/C2x/n3042.c
    M clang/test/C/drs/dr0xx.c
    M clang/test/C/drs/dr2xx.c
    M clang/test/CMakeLists.txt
    M clang/test/CXX/class.access/p4.cpp
    M clang/test/CXX/class.derived/class.member.lookup/p11.cpp
    A clang/test/CXX/dcl.dcl/dcl.enum/p1.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.type/dcl.type.elab/p1.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.type/dcl.type.elab/p3.cpp
    A clang/test/CXX/dcl.dcl/dcl.spec/dcl.type/dcl.type.elab/p4.cpp
    A clang/test/CXX/dcl.decl/dcl.meaning/dcl.fct/p23.cpp
    A clang/test/CXX/dcl.decl/dcl.meaning/dcl.meaning.general/p3.cpp
    M clang/test/CXX/drs/dr11xx.cpp
    A clang/test/CXX/drs/dr124.cpp
    M clang/test/CXX/drs/dr12xx.cpp
    M clang/test/CXX/drs/dr13xx.cpp
    M clang/test/CXX/drs/dr14xx.cpp
    M clang/test/CXX/drs/dr15xx.cpp
    M clang/test/CXX/drs/dr16xx.cpp
    M clang/test/CXX/drs/dr17xx.cpp
    A clang/test/CXX/drs/dr185.cpp
    M clang/test/CXX/drs/dr18xx.cpp
    A clang/test/CXX/drs/dr193.cpp
    A clang/test/CXX/drs/dr199.cpp
    M clang/test/CXX/drs/dr1xx.cpp
    A clang/test/CXX/drs/dr201.cpp
    M clang/test/CXX/drs/dr20xx.cpp
    A clang/test/CXX/drs/dr210.cpp
    M clang/test/CXX/drs/dr22xx.cpp
    M clang/test/CXX/drs/dr2335.cpp
    M clang/test/CXX/drs/dr23xx.cpp
    M clang/test/CXX/drs/dr24xx.cpp
    A clang/test/CXX/drs/dr2504.cpp
    M clang/test/CXX/drs/dr25xx.cpp
    M clang/test/CXX/drs/dr27xx.cpp
    A clang/test/CXX/drs/dr28xx.cpp
    A clang/test/CXX/drs/dr292.cpp
    M clang/test/CXX/drs/dr2xx.cpp
    M clang/test/CXX/drs/dr4xx.cpp
    M clang/test/CXX/drs/dr5xx.cpp
    M clang/test/CXX/drs/dr7xx.cpp
    A clang/test/CXX/except/except.spec/p13.cpp
    A clang/test/CXX/expr/expr.prim/expr.prim.id/expr.prim.id.qual/p3.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.lambda/blocks.mm
    M clang/test/CXX/module/module.interface/p2-2.cpp
    M clang/test/CXX/over/over.match/over.match.best/p1-2a.cpp
    M clang/test/CXX/temp/p3.cpp
    M clang/test/CXX/temp/temp.decls/temp.class/temp.mem.enum/p1.cpp
    M clang/test/CXX/temp/temp.decls/temp.class/temp.mem.func/p1.cpp
    A clang/test/CXX/temp/temp.names/p5.cpp
    M clang/test/CXX/temp/temp.res/temp.dep/temp.dep.type/p1.cpp
    M clang/test/CXX/temp/temp.res/temp.local/p6.cpp
    M clang/test/CXX/temp/temp.spec/part.spec.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p16.cpp
    A clang/test/ClangScanDeps/empty.cpp
    A clang/test/ClangScanDeps/missing-vfs.m
    A clang/test/ClangScanDeps/optimize-canonicalize-macros.m
    A clang/test/ClangScanDeps/optimize-fmodulemap.m
    A clang/test/ClangScanDeps/optimize-vfs-edgecases.m
    A clang/test/ClangScanDeps/optimize-vfs-leak.m
    A clang/test/ClangScanDeps/optimize-vfs-pch.m
    A clang/test/ClangScanDeps/optimize-vfs.m
    M clang/test/CodeGen/LoongArch/atomics.c
    M clang/test/CodeGen/LoongArch/intrinsic-la32.c
    M clang/test/CodeGen/LoongArch/intrinsic-la64.c
    A clang/test/CodeGen/Mips/inline-asm-constraints.c
    M clang/test/CodeGen/PowerPC/aix-tls-model.cpp
    M clang/test/CodeGen/PowerPC/builtins-ppc-xlcompat-rotate.c
    M clang/test/CodeGen/PowerPC/quadword-atomics.c
    M clang/test/CodeGen/RISCV/ntlh-intrinsics/riscv32-zihintntl.c
    M clang/test/CodeGen/RISCV/riscv-atomics.c
    M clang/test/CodeGen/RISCV/riscv-inline-asm.c
    A clang/test/CodeGen/RISCV/riscv-metadata-arch.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vfncvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vfwcvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vfwmaccbf16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vget.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vset.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg2e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg2e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg2e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg3e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg3e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg3e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg4e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg4e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg4e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg5e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg5e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg5e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg6e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg6e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg6e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg7e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg7e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg7e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg8e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg8e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg8e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg2e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg2e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg2e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg3e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg3e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg3e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg4e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg4e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg4e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg5e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg5e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg5e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg6e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg6e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg6e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg7e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg7e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg7e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg8e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg8e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg8e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg8ei8.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vfncvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vfwcvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vfwmaccbf16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vget.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vset.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg2e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg2e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg2e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg3e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg3e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg3e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg4e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg4e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg4e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg5e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg5e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg5e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg6e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg6e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg6e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg7e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg7e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg7e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg8e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg8e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg8e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg2e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg2e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg2e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg3e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg3e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg3e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg4e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg4e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg4e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg5e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg5e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg5e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg6e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg6e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg6e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg7e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg7e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg7e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg8e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg8e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg8e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg8ei8.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vfncvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vfwcvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vfwmaccbf16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg2e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg2e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg2e32ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg2e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg2e64ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg2e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg2e8ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg3e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg3e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg3e32ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg3e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg3e64ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg3e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg3e8ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg4e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg4e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg4e32ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg4e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg4e64ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg4e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg4e8ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg5e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg5e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg5e32ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg5e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg5e64ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg5e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg5e8ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg6e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg6e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg6e32ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg6e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg6e64ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg6e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg6e8ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg7e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg7e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg7e32ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg7e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg7e64ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg7e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg7e8ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg8e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg8e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg8e32ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg8e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg8e64ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg8e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg8e8ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg2e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg2e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg2e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg3e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg3e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg3e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg4e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg4e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg4e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg5e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg5e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg5e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg6e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg6e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg6e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg7e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg7e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg7e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg8e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg8e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg8e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg8ei8.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vfncvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vfwcvtbf16.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vfwmaccbf16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg2e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg2e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg2e32ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg2e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg2e64ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg2e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg2e8ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg3e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg3e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg3e32ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg3e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg3e64ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg3e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg3e8ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg4e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg4e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg4e32ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg4e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg4e64ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg4e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg4e8ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg5e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg5e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg5e32ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg5e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg5e64ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg5e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg5e8ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg6e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg6e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg6e32ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg6e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg6e64ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg6e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg6e8ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg7e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg7e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg7e32ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg7e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg7e64ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg7e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg7e8ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg8e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg8e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg8e32ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg8e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg8e64ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg8e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg8e8ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg2e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg2e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg2e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg3e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg3e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg3e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg4e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg4e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg4e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg5e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg5e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg5e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg6e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg6e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg6e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg7e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg7e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg7e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg8e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg8e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg8e8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-handcrafted/rvv-tuple-type.c
    M clang/test/CodeGen/SystemZ/gnu-atomic-builtins-i128-8Al.c
    M clang/test/CodeGen/aarch64-ABI-align-packed-assembly.c
    M clang/test/CodeGen/aarch64-ABI-align-packed.c
    A clang/test/CodeGen/aarch64-cpu-supports-target.c
    A clang/test/CodeGen/aarch64-cpu-supports.c
    M clang/test/CodeGen/aarch64-fix-cortex-a53-835769.c
    M clang/test/CodeGen/aarch64-inline-asm.c
    M clang/test/CodeGen/aarch64-ls64-inline-asm.c
    M clang/test/CodeGen/aarch64-ls64.c
    M clang/test/CodeGen/aarch64-matmul.cpp
    M clang/test/CodeGen/aarch64-neon-intrinsics.c
    M clang/test/CodeGen/aarch64-neon-ldst-one-rcpc3.c
    A clang/test/CodeGen/aarch64-sme-inline-streaming-attrs.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/aarch64-sme-attrs.cpp
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_add-i32.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_add-i64.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_cnt.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_ld1.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_ld1_vnum.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_ldr.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mopa-za32.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mopa-za64.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mops-za32.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mops-za64.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_read.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_st1.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_st1_vnum.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_state_funs.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_str.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_write.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_zero.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_add.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_bmop.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_clamp.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvtn.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_frint.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_max.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_maxnm.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_min.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_minnm.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mop.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_read.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_reinterpret_svcount_svbool.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sub.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_add.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_qrshr.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_rshl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_write.c
    M clang/test/CodeGen/aarch64-targetattr-arch.c
    M clang/test/CodeGen/aarch64-targetattr-crypto.c
    M clang/test/CodeGen/aarch64-targetattr.c
    M clang/test/CodeGen/aarch64-tme.cpp
    A clang/test/CodeGen/aix-builtin-cpu-is.c
    M clang/test/CodeGen/arm-atomics-m.c
    M clang/test/CodeGen/arm-atomics-m0.c
    M clang/test/CodeGen/arm64-microsoft-intrinsics.c
    M clang/test/CodeGen/arm64-mte.c
    M clang/test/CodeGen/atomic-ops-libcall.c
    M clang/test/CodeGen/atomic-ops.c
    M clang/test/CodeGen/atomics-inlining.c
    M clang/test/CodeGen/attr-riscv-rvv-vector-bits-bitcast.c
    M clang/test/CodeGen/attr-riscv-rvv-vector-bits-call.c
    M clang/test/CodeGen/attr-riscv-rvv-vector-bits-cast.c
    M clang/test/CodeGen/attr-riscv-rvv-vector-bits-codegen.c
    M clang/test/CodeGen/attr-riscv-rvv-vector-bits-globals.c
    M clang/test/CodeGen/attr-target-clones-aarch64.c
    M clang/test/CodeGen/attr-target-version.c
    M clang/test/CodeGen/builtins-hexagon.c
    M clang/test/CodeGen/builtins-nvptx.c
    M clang/test/CodeGen/builtins.c
    M clang/test/CodeGen/c11atomics.c
    M clang/test/CodeGen/debug-info-cc.c
    M clang/test/CodeGen/fat-lto-objects.c
    M clang/test/CodeGen/fp128_complex.c
    M clang/test/CodeGen/fp16-ops-strictfp.c
    M clang/test/CodeGen/fp16-ops.c
    M clang/test/CodeGen/integer-overflow.c
    M clang/test/CodeGen/ms-intrinsics-other.c
    M clang/test/CodeGen/ms-intrinsics-underaligned.c
    M clang/test/CodeGen/preserve-call-conv.c
    M clang/test/CodeGen/target-builtin-noerror.c
    M clang/test/CodeGen/tbaa-struct.cpp
    A clang/test/CodeGen/ubsan-shift-bitint.c
    M clang/test/CodeGenCUDA/amdgpu-code-object-version-linking.cu
    M clang/test/CodeGenCUDA/amdgpu-code-object-version.cu
    M clang/test/CodeGenCUDA/amdgpu-workgroup-size.cu
    M clang/test/CodeGenCUDA/device-stub.cu
    M clang/test/CodeGenCUDA/host-used-device-var.cu
    A clang/test/CodeGenCUDA/printf-builtin.cu
    M clang/test/CodeGenCXX/atomic-inline.cpp
    M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
    M clang/test/CodeGenCXX/attr-target-version.cpp
    M clang/test/CodeGenCXX/cxx2a-consteval.cpp
    M clang/test/CodeGenCXX/cxx2b-static-call-operator.cpp
    M clang/test/CodeGenCXX/cxx2b-static-subscript-operator.cpp
    M clang/test/CodeGenCXX/debug-info-structured-binding-bitfield.cpp
    M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
    A clang/test/CodeGenCXX/dynamic-cast-dead.cpp
    M clang/test/CodeGenCXX/dynamic-cast.cpp
    M clang/test/CodeGenCXX/module-funcs-from-imports.cppm
    A clang/test/CodeGenHIP/printf-builtin.hip
    A clang/test/CodeGenHLSL/BasicFeatures/standard_conversion_sequences.hlsl
    M clang/test/CodeGenHLSL/builtins/RWBuffer-constructor.hlsl
    M clang/test/CodeGenHLSL/builtins/ScalarSwizzles.hlsl
    M clang/test/CodeGenHLSL/builtins/abs.hlsl
    A clang/test/CodeGenHLSL/builtins/any.hlsl
    M clang/test/CodeGenHLSL/builtins/ceil.hlsl
    M clang/test/CodeGenHLSL/builtins/cos.hlsl
    A clang/test/CodeGenHLSL/builtins/dot-builtin.hlsl
    A clang/test/CodeGenHLSL/builtins/dot.hlsl
    A clang/test/CodeGenHLSL/builtins/exp.hlsl
    A clang/test/CodeGenHLSL/builtins/exp2.hlsl
    M clang/test/CodeGenHLSL/builtins/floor.hlsl
    A clang/test/CodeGenHLSL/builtins/frac.hlsl
    A clang/test/CodeGenHLSL/builtins/lerp-builtin.hlsl
    A clang/test/CodeGenHLSL/builtins/lerp.hlsl
    M clang/test/CodeGenHLSL/builtins/log.hlsl
    M clang/test/CodeGenHLSL/builtins/log10.hlsl
    M clang/test/CodeGenHLSL/builtins/log2.hlsl
    A clang/test/CodeGenHLSL/builtins/mad.hlsl
    M clang/test/CodeGenHLSL/builtins/max.hlsl
    M clang/test/CodeGenHLSL/builtins/min.hlsl
    M clang/test/CodeGenHLSL/builtins/pow.hlsl
    A clang/test/CodeGenHLSL/builtins/rcp.hlsl
    M clang/test/CodeGenHLSL/builtins/reversebits.hlsl
    A clang/test/CodeGenHLSL/builtins/round.hlsl
    M clang/test/CodeGenHLSL/builtins/sin.hlsl
    M clang/test/CodeGenHLSL/builtins/sqrt.hlsl
    M clang/test/CodeGenHLSL/builtins/trunc.hlsl
    M clang/test/CodeGenHLSL/semantics/DispatchThreadID.hlsl
    M clang/test/CodeGenHLSL/semantics/GroupIndex-codegen.hlsl
    A clang/test/CodeGenHLSL/shift-mask.hlsl
    M clang/test/CodeGenObjC/constant-non-fragile-ivar-offset.m
    M clang/test/CodeGenOpenCL/atomic-ops-libcall.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-dl-insts-gfx11.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12-err.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-wave32.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-wave64.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-wmma-w32-gfx10-err.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-wmma-w64-gfx10-err.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-wmma-w64.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
    A clang/test/CodeGenOpenCL/reflect.cl
    M clang/test/CodeGenSYCL/address-space-conversions.cpp
    A clang/test/CodeGenSYCL/amd-address-space-conversions.cpp
    A clang/test/CodeGenSYCL/cuda-address-space-conversions.cpp
    A clang/test/CoverageMapping/conditional-operator.c
    M clang/test/CoverageMapping/if.cpp
    A clang/test/CoverageMapping/single-byte-counters.cpp
    M clang/test/CoverageMapping/templates.cpp
    A clang/test/Driver/Inputs/hip.h
    A clang/test/Driver/Inputs/resource_dir/lib/aarch64-unknown-linux/libclang_rt.hwasan.a
    A clang/test/Driver/Inputs/resource_dir/lib/aarch64-unknown-linux/libclang_rt.hwasan.a.syms
    A clang/test/Driver/Inputs/resource_dir/lib/i386-unknown-linux/libclang_rt.asan.a
    A clang/test/Driver/Inputs/resource_dir/lib/i386-unknown-linux/libclang_rt.asan.a.syms
    A clang/test/Driver/Inputs/resource_dir/lib/i686-unknown-linux/clang_rt.crtbegin.o
    A clang/test/Driver/Inputs/resource_dir/lib/i686-unknown-linux/clang_rt.crtend.o
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.asan-i386.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.asan-x86_64.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.hwasan-aarch64.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.hwasan-x86_64.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.msan-x86_64.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.msan_cxx-x86_64.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.tsan-x86_64.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.tsan_cxx-x86_64.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.ubsan-i386.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.ubsan-x86_64.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.ubsan_cxx-i386.a.syms
    R clang/test/Driver/Inputs/resource_dir/lib/linux/libclang_rt.ubsan_cxx-x86_64.a.syms
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/clang_rt.crtbegin.o
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/clang_rt.crtend.o
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.asan.a
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.asan.a.syms
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.hwasan.a
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.hwasan.a.syms
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.msan.a
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.msan.a.syms
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.msan_cxx.a
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.msan_cxx.a.syms
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.tsan.a
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.tsan.a.syms
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.tsan_cxx.a
    A clang/test/Driver/Inputs/resource_dir/lib/x86_64-unknown-linux/libclang_rt.tsan_cxx.a.syms
    A clang/test/Driver/Inputs/rocm/amdgcn/bitcode/oclc_abi_version_600.bc
    M clang/test/Driver/aarch64-cssc.c
    M clang/test/Driver/aarch64-fix-cortex-a53-835769.c
    M clang/test/Driver/aarch64-mgeneral_regs_only.c
    M clang/test/Driver/aarch64-pauth-lr.c
    M clang/test/Driver/aarch64-rdm.c
    M clang/test/Driver/aarch64-target-as-march.s
    M clang/test/Driver/amdgpu-macros.cl
    M clang/test/Driver/amdgpu-mcpu.cl
    M clang/test/Driver/amdgpu-openmp-toolchain.c
    M clang/test/Driver/amdgpu-toolchain-opencl.cl
    M clang/test/Driver/android-link.cpp
    R clang/test/Driver/android-version.cpp
    M clang/test/Driver/arch-specific-libdir.c
    M clang/test/Driver/arm-alignment.c
    M clang/test/Driver/arm-compiler-rt.c
    M clang/test/Driver/arm-no-neg-immediates.c
    M clang/test/Driver/autocomplete.c
    M clang/test/Driver/baremetal-multilib.yaml
    M clang/test/Driver/baremetal-sysroot.cpp
    M clang/test/Driver/baremetal.cpp
    A clang/test/Driver/basic-block-address-map.c
    M clang/test/Driver/clang-offload-bundler.c
    M clang/test/Driver/clang_f_opts.c
    M clang/test/Driver/compiler-rt-unwind.c
    M clang/test/Driver/coverage-ld.c
    M clang/test/Driver/cuda-cross-compiling.c
    M clang/test/Driver/cuda-detect.cu
    M clang/test/Driver/cuda-march.cu
    M clang/test/Driver/cuda-omp-unsupported-debug-options.cu
    M clang/test/Driver/cuda-options.cu
    M clang/test/Driver/cuda-ptxas-path.cu
    M clang/test/Driver/darwin-header-search-libcxx.cpp
    M clang/test/Driver/dwarf-target-version-clamp.cu
    M clang/test/Driver/fbasic-block-sections.c
    M clang/test/Driver/fdefine-target-os-macros.c
    M clang/test/Driver/freebsd.c
    M clang/test/Driver/fuchsia.c
    M clang/test/Driver/gpu-libc-headers.c
    M clang/test/Driver/haiku.c
    M clang/test/Driver/hip-code-object-version.hip
    M clang/test/Driver/hip-device-libs.hip
    M clang/test/Driver/hip-options.hip
    A clang/test/Driver/hip-partial-link.hip
    M clang/test/Driver/hip-toolchain-mllvm.hip
    M clang/test/Driver/hip-toolchain-rdc.hip
    M clang/test/Driver/hlsl-lang-targets.hlsl
    M clang/test/Driver/instrprof-ld.c
    A clang/test/Driver/invalid-version.cpp
    M clang/test/Driver/linker-wrapper-image.c
    M clang/test/Driver/linker-wrapper.c
    M clang/test/Driver/linux-ld.c
    M clang/test/Driver/mingw-sysroot.cpp
    M clang/test/Driver/mingw.cpp
    M clang/test/Driver/mips-features.c
    A clang/test/Driver/modules-skip-odr-check-in-gmf.cpp
    M clang/test/Driver/netbsd.c
    M clang/test/Driver/no-canonical-prefixes.c
    M clang/test/Driver/openbsd.c
    M clang/test/Driver/openmp-offload-gpu.c
    M clang/test/Driver/print-libgcc-file-name-clangrt.c
    M clang/test/Driver/print-multi-selection-flags.c
    M clang/test/Driver/program-path-priority.c
    M clang/test/Driver/range.c
    M clang/test/Driver/riscv-arch.c
    M clang/test/Driver/riscv-features.c
    M clang/test/Driver/rocm-detect.hip
    M clang/test/Driver/sanitizer-ld.c
    A clang/test/Driver/sparc-fixed-register.c
    A clang/test/Driver/sparc64-codemodel.c
    M clang/test/Driver/tls-dialect.c
    M clang/test/Driver/unknown-arg.c
    M clang/test/Driver/wasm-features.c
    A clang/test/Driver/xros-driver-requires-darwin-host.c
    M clang/test/FixIt/fixit-c++11.cpp
    M clang/test/Format/clang-format-ignore.cpp
    M clang/test/Format/dump-config-objc-stdin.m
    M clang/test/Format/verbose.cpp
    M clang/test/Frontend/embed-bitcode.ll
    M clang/test/Frontend/fixed_point_bit_widths.c
    M clang/test/Frontend/fixed_point_declarations.c
    M clang/test/Frontend/fixed_point_errors.cpp
    M clang/test/Frontend/gnu-mcount.c
    M clang/test/Frontend/verify.c
    M clang/test/Headers/__clang_hip_cmath.hip
    M clang/test/Headers/__clang_hip_math.hip
    M clang/test/Headers/arm-acle-header.c
    M clang/test/Headers/xmmintrin-unsupported.c
    M clang/test/Import/cxx-default-init-expr/test.cpp
    A clang/test/InstallAPI/basic.test
    A clang/test/InstallAPI/driver-invalid-options.test
    A clang/test/InstallAPI/objcclasses.test
    A clang/test/InstallAPI/variables.test
    M clang/test/Interpreter/cxx20-modules.cppm
    A clang/test/Layout/dump-complete-invalid.cpp
    M clang/test/Layout/dump-complete.cpp
    M clang/test/Lexer/gnu-flags.c
    A clang/test/Lexer/raw-string-dlim-invalid.cpp
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    M clang/test/Misc/target-invalid-cpu-note.c
    M clang/test/Misc/warning-flags.c
    R clang/test/Modules/Inputs/config.h
    M clang/test/Modules/Inputs/module.modulemap
    M clang/test/Modules/aarch64-sme-keywords.cppm
    A clang/test/Modules/compile-pcm-with-pic.cppm
    M clang/test/Modules/concept.cppm
    M clang/test/Modules/config_macros.m
    M clang/test/Modules/polluted-operator.cppm
    M clang/test/Modules/pr76638.cppm
    A clang/test/Modules/pr81745.cppm
    A clang/test/Modules/skip-odr-check-in-gmf.cppm
    M clang/test/OpenMP/atomic_ast_print.cpp
    M clang/test/OpenMP/atomic_messages.cpp
    M clang/test/OpenMP/bug60602.cpp
    A clang/test/OpenMP/bug69085.c
    M clang/test/OpenMP/declare_simd_messages.cpp
    M clang/test/OpenMP/distribute_codegen.cpp
    M clang/test/OpenMP/distribute_firstprivate_codegen.cpp
    M clang/test/OpenMP/distribute_lastprivate_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_firstprivate_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_if_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_lastprivate_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_num_threads_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_private_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_proc_bind_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_if_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_num_threads_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_private_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_proc_bind_codegen.cpp
    M clang/test/OpenMP/distribute_private_codegen.cpp
    M clang/test/OpenMP/distribute_simd_codegen.cpp
    M clang/test/OpenMP/distribute_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/distribute_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/distribute_simd_private_codegen.cpp
    M clang/test/OpenMP/distribute_simd_reduction_codegen.cpp
    M clang/test/OpenMP/for_loop_auto.cpp
    A clang/test/OpenMP/interop_codegen.cpp
    M clang/test/OpenMP/map_struct_ordering.cpp
    M clang/test/OpenMP/nvptx_lambda_capturing.cpp
    M clang/test/OpenMP/openmp_offload_registration.cpp
    M clang/test/OpenMP/reduction_implicit_map.cpp
    M clang/test/OpenMP/scan_ast_print.cpp
    M clang/test/OpenMP/target_codegen.cpp
    M clang/test/OpenMP/target_codegen_global_capture.cpp
    M clang/test/OpenMP/target_codegen_registration.cpp
    M clang/test/OpenMP/target_depend_codegen.cpp
    M clang/test/OpenMP/target_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_has_device_addr_codegen.cpp
    M clang/test/OpenMP/target_has_device_addr_codegen_01.cpp
    M clang/test/OpenMP/target_is_device_ptr_codegen.cpp
    M clang/test/OpenMP/target_map_codegen_03.cpp
    M clang/test/OpenMP/target_map_codegen_hold.cpp
    M clang/test/OpenMP/target_map_deref_array_codegen.cpp
    M clang/test/OpenMP/target_map_member_expr_codegen.cpp
    M clang/test/OpenMP/target_offload_mandatory_codegen.cpp
    M clang/test/OpenMP/target_ompx_dyn_cgroup_mem_codegen.cpp
    M clang/test/OpenMP/target_parallel_codegen.cpp
    M clang/test/OpenMP/target_parallel_codegen_registration.cpp
    M clang/test/OpenMP/target_parallel_depend_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_codegen_registration.cpp
    M clang/test/OpenMP/target_parallel_for_depend_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_simd_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_simd_codegen_registration.cpp
    M clang/test/OpenMP/target_parallel_for_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_parallel_generic_loop_codegen-1.cpp
    M clang/test/OpenMP/target_parallel_generic_loop_codegen-2.cpp
    M clang/test/OpenMP/target_parallel_generic_loop_depend_codegen.cpp
    M clang/test/OpenMP/target_parallel_generic_loop_uses_allocators_codegen.cpp
    M clang/test/OpenMP/target_parallel_if_codegen.cpp
    M clang/test/OpenMP/target_parallel_num_threads_codegen.cpp
    M clang/test/OpenMP/target_simd_codegen.cpp
    M clang/test/OpenMP/target_simd_codegen_registration.cpp
    M clang/test/OpenMP/target_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_task_affinity_codegen.cpp
    M clang/test/OpenMP/target_teams_codegen.cpp
    M clang/test/OpenMP/target_teams_codegen_registration.cpp
    M clang/test/OpenMP/target_teams_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_codegen_registration.cpp
    M clang/test/OpenMP/target_teams_distribute_collapse_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_dist_schedule_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_lastprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_collapse_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_dist_schedule_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_if_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_lastprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_order_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_proc_bind_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_reduction_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_schedule_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_codegen_registration.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_collapse_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_dist_schedule_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_if_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_proc_bind_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_reduction_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_schedule_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_private_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_reduction_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_codegen_registration.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_collapse_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_dist_schedule_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_private_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_reduction_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen-1.cpp
    M clang/test/OpenMP/target_teams_generic_loop_collapse_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_if_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_order_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_reduction_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_uses_allocators_codegen.cpp
    M clang/test/OpenMP/target_teams_map_codegen.cpp
    M clang/test/OpenMP/target_teams_num_teams_codegen.cpp
    M clang/test/OpenMP/target_teams_thread_limit_codegen.cpp
    M clang/test/OpenMP/teams_codegen.cpp
    M clang/test/OpenMP/teams_distribute_codegen.cpp
    M clang/test/OpenMP/teams_distribute_collapse_codegen.cpp
    M clang/test/OpenMP/teams_distribute_dist_schedule_codegen.cpp
    M clang/test/OpenMP/teams_distribute_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_lastprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_collapse_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_copyin_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_dist_schedule_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_if_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_lastprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_num_threads_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_private_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_proc_bind_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_reduction_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_schedule_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_collapse_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_dist_schedule_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_if_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_num_threads_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_private_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_proc_bind_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_reduction_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_schedule_codegen.cpp
    M clang/test/OpenMP/teams_distribute_private_codegen.cpp
    M clang/test/OpenMP/teams_distribute_reduction_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_collapse_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_dist_schedule_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_private_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_reduction_codegen.cpp
    M clang/test/OpenMP/teams_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_generic_loop_codegen-1.cpp
    M clang/test/OpenMP/teams_generic_loop_collapse_codegen.cpp
    M clang/test/OpenMP/teams_generic_loop_private_codegen.cpp
    M clang/test/OpenMP/teams_generic_loop_reduction_codegen.cpp
    M clang/test/OpenMP/teams_private_codegen.cpp
    A clang/test/Parser/c11-keywords.c
    M clang/test/Parser/c2x-alignas.c
    M clang/test/Parser/cxx-concepts-requires-clause.cpp
    M clang/test/Parser/cxx-decl.cpp
    A clang/test/Parser/cxx-declarator-attribute-crash.cpp
    M clang/test/Parser/cxx0x-decl.cpp
    M clang/test/ParserOpenACC/parse-cache-construct.c
    M clang/test/ParserOpenACC/parse-cache-construct.cpp
    M clang/test/ParserOpenACC/parse-clauses.c
    M clang/test/ParserOpenACC/parse-clauses.cpp
    M clang/test/ParserOpenACC/parse-constructs.c
    M clang/test/ParserOpenACC/parse-constructs.cpp
    A clang/test/ParserOpenACC/parse-wait-clause.c
    M clang/test/ParserOpenACC/parse-wait-construct.c
    M clang/test/ParserOpenACC/unimplemented.c
    M clang/test/ParserOpenACC/unimplemented.cpp
    M clang/test/Preprocessor/aarch64-target-features.c
    A clang/test/Preprocessor/fixed-point.c
    M clang/test/Preprocessor/has_attribute.cpp
    A clang/test/Preprocessor/has_builtin_cpuid.c
    M clang/test/Preprocessor/init-aarch64.c
    M clang/test/Preprocessor/init.c
    A clang/test/Preprocessor/no-fixed-point.c
    M clang/test/Preprocessor/predefined-arch-macros.c
    M clang/test/Preprocessor/riscv-target-features.c
    M clang/test/Preprocessor/wasm-target-features.c
    M clang/test/Profile/c-mcdc-class.cpp
    M clang/test/Profile/c-mcdc-logicalop-ternary.c
    M clang/test/Profile/c-mcdc-nested-ternary.c
    M clang/test/Profile/c-mcdc-not.c
    M clang/test/Profile/c-mcdc.c
    M clang/test/Sema/PR2919-builtin-types-compat-strips-crv.c
    A clang/test/Sema/aarch64-cpu-supports.c
    M clang/test/Sema/aarch64-sme-func-attrs.c
    A clang/test/Sema/aarch64-sme-intrinsics/acle_sme_zero.c
    A clang/test/Sema/aarch64-sme2p1-diagnostics.c
    M clang/test/Sema/aarch64-tme-errors.c
    M clang/test/Sema/aarch64-tme-tcancel-errors.c
    M clang/test/Sema/aix-attr-tls_model.c
    A clang/test/Sema/aix-builtin-cpu-unsupports.c
    M clang/test/Sema/atomic-expr.c
    M clang/test/Sema/attr-aligned.c
    M clang/test/Sema/attr-function-return.c
    M clang/test/Sema/attr-nonnull.c
    M clang/test/Sema/attr-target-clones-aarch64.c
    M clang/test/Sema/auto-type.c
    M clang/test/Sema/builtin-cpu-supports.c
    A clang/test/Sema/builtin-popcountg.c
    M clang/test/Sema/builtins-elementwise-math.c
    M clang/test/Sema/c2x-auto.c
    M clang/test/Sema/c2x-bool.c
    M clang/test/Sema/callingconv-iamcu.c
    M clang/test/Sema/callingconv.c
    M clang/test/Sema/check-increment.c
    M clang/test/Sema/conversion-64-32.c
    A clang/test/Sema/conversion-implicit-int-includes-64-to-32.c
    M clang/test/Sema/enum.c
    A clang/test/Sema/format-fixed-point.c
    M clang/test/Sema/fp-eval-pragma-with-float-double_t-1.c
    M clang/test/Sema/fp-eval-pragma-with-float-double_t-2.c
    M clang/test/Sema/fp-eval-pragma-with-float-double_t-3.c
    M clang/test/Sema/inline-asm-validate-aarch64.c
    A clang/test/Sema/inline-asm-validate-mips.c
    M clang/test/Sema/inline-asm-validate-riscv.c
    M clang/test/Sema/integer-overflow.c
    M clang/test/Sema/mips-interrupt-attr.c
    M clang/test/Sema/ms_predefined_expr.cpp
    M clang/test/Sema/no_callconv.cpp
    M clang/test/Sema/objc-bool-constant-conversion.m
    A clang/test/Sema/preserve-none-call-conv.c
    M clang/test/Sema/riscv-interrupt-attr.c
    M clang/test/Sema/riscv-vector-float64-check.c
    M clang/test/Sema/rvv-required-features-invalid.c
    M clang/test/Sema/static-assert.c
    M clang/test/Sema/struct-cast.c
    M clang/test/Sema/switch-1.c
    M clang/test/Sema/warn-cast-qual.c
    M clang/test/Sema/warn-char-subscripts.c
    A clang/test/Sema/warn-compare-enum-types-mismatch.c
    R clang/test/Sema/warn-conditional-emum-types-mismatch.c
    A clang/test/Sema/warn-conditional-enum-types-mismatch.c
    M clang/test/Sema/warn-infinity-nan-disabled-lnx.cpp
    M clang/test/Sema/warn-infinity-nan-disabled-win.cpp
    M clang/test/Sema/warn-int-in-bool-context.c
    M clang/test/Sema/warn-overlap.c
    M clang/test/Sema/zero_call_used_regs.c
    M clang/test/SemaCUDA/float16.cu
    A clang/test/SemaCXX/GH83461.cpp
    M clang/test/SemaCXX/PR20334-std_initializer_list_diagnosis_assertion.cpp
    M clang/test/SemaCXX/PR40395.cpp
    M clang/test/SemaCXX/PR68542.cpp
    A clang/test/SemaCXX/_Alignas.cpp
    M clang/test/SemaCXX/attr-declspec-ignored.cpp
    M clang/test/SemaCXX/attr-gnu.cpp
    M clang/test/SemaCXX/attr-nonnull.cpp
    M clang/test/SemaCXX/attr-suppress.cpp
    A clang/test/SemaCXX/attr-target-mv-warn-unused.cpp
    M clang/test/SemaCXX/attr-target-version.cpp
    M clang/test/SemaCXX/bool.cpp
    M clang/test/SemaCXX/builtin-std-move.cpp
    M clang/test/SemaCXX/builtins-overflow.cpp
    M clang/test/SemaCXX/compare-modules-cxx2a.cpp
    M clang/test/SemaCXX/compound-literal.cpp
    M clang/test/SemaCXX/concept-crash-on-diagnostic.cpp
    M clang/test/SemaCXX/conditional-expr.cpp
    A clang/test/SemaCXX/coroutine-unreachable-warning.cpp
    A clang/test/SemaCXX/crash-GH10518.cpp
    A clang/test/SemaCXX/crash-GH49103-2.cpp
    A clang/test/SemaCXX/crash-GH67914.cpp
    A clang/test/SemaCXX/crash-GH78388.cpp
    A clang/test/SemaCXX/cxx03-cxx11-attr.cpp
    M clang/test/SemaCXX/cxx11-default-member-initializers.cpp
    M clang/test/SemaCXX/cxx1z-copy-omission.cpp
    M clang/test/SemaCXX/cxx1z-lambda-star-this.cpp
    M clang/test/SemaCXX/cxx20-using-enum.cpp
    M clang/test/SemaCXX/cxx23-static-callop-lambda-expression.cpp
    M clang/test/SemaCXX/cxx2a-consteval-default-params.cpp
    M clang/test/SemaCXX/cxx2a-initializer-aggregates.cpp
    M clang/test/SemaCXX/cxx2a-ms-no-unique-address.cpp
    M clang/test/SemaCXX/cxx2b-consteval-propagate.cpp
    M clang/test/SemaCXX/cxx2b-deducing-this.cpp
    A clang/test/SemaCXX/cxx2b-static-operator.cpp
    M clang/test/SemaCXX/cxx2c-pack-indexing.cpp
    M clang/test/SemaCXX/cxx98-compat.cpp
    M clang/test/SemaCXX/datasizeof.cpp
    M clang/test/SemaCXX/decomposition-openmp.cpp
    M clang/test/SemaCXX/enum-scoped.cpp
    M clang/test/SemaCXX/enum.cpp
    M clang/test/SemaCXX/expression-traits.cpp
    M clang/test/SemaCXX/function-type-qual.cpp
    A clang/test/SemaCXX/gh53815.cpp
    M clang/test/SemaCXX/integer-overflow.cpp
    A clang/test/SemaCXX/libstdcxx_is_nothrow_convertible_hack.cpp
    M clang/test/SemaCXX/ms-uuid.cpp
    M clang/test/SemaCXX/nested-name-spec.cpp
    M clang/test/SemaCXX/pr72025.cpp
    A clang/test/SemaCXX/restrict-this.cpp
    M clang/test/SemaCXX/self-comparison.cpp
    M clang/test/SemaCXX/source_location.cpp
    M clang/test/SemaCXX/static-assert.cpp
    M clang/test/SemaCXX/type-traits-nonobject.cpp
    M clang/test/SemaCXX/type-traits.cpp
    M clang/test/SemaCXX/undefined-internal.cpp
    M clang/test/SemaCXX/warn-bool-conversion.cpp
    M clang/test/SemaCXX/warn-consumed-parsing.cpp
    M clang/test/SemaCXX/warn-overaligned-type-thrown.cpp
    M clang/test/SemaCXX/warn-shadow-in-lambdas.cpp
    A clang/test/SemaCXX/warn-unsafe-buffer-usage-array.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-debug.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-add-assign.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-addressof-arraysubscript.cpp
    A clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-array-assign-to-ptr.cpp
    A clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-array-inits-ptr.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-assign-to-array-subscr-on-ptr.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-deref-simple-ptr-arith.cpp
    A clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-local-var-array.cpp
    A clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-local-var-span-cv-qualifiers.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-local-var-span.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-multi-parm-span.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-pointer-access.cpp
    A clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-pointer-arg-to-func-ptr-call.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-pointer-deref.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-pre-increment.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-unevaluated-context.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-multi-decl-fixits-test.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-multi-decl-ptr-init-fixits.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-multi-decl-uuc-fixits.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-pragma-fixit.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage.cpp
    A clang/test/SemaCXX/warn-unsequenced-paren-list-init.cpp
    A clang/test/SemaCXX/warn-unused-filescoped-fmv.cpp
    M clang/test/SemaCXX/warn-unused-variables.cpp
    A clang/test/SemaHLSL/BuiltIns/any-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/dot-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/exp-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/frac-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/lerp-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/mad-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/rcp-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/round-errors.hlsl
    M clang/test/SemaHLSL/BuiltIns/vector-constructors-erros.hlsl
    A clang/test/SemaHLSL/OverloadResolutionBugs.hlsl
    M clang/test/SemaHLSL/Types/BuiltinVector/ScalarSwizzles.hlsl
    A clang/test/SemaHLSL/VectorOverloadResolution.hlsl
    M clang/test/SemaHLSL/shader_type_attr.hlsl
    A clang/test/SemaHLSL/standard_conversion_sequences.hlsl
    M clang/test/SemaObjC/attr-suppress.m
    M clang/test/SemaObjC/integer-overflow.m
    M clang/test/SemaObjC/objc-literal-nsnumber.m
    A clang/test/SemaOpenACC/compute-construct-ast.cpp
    A clang/test/SemaOpenACC/no-branch-in-out.c
    A clang/test/SemaOpenACC/no-branch-in-out.cpp
    A clang/test/SemaOpenACC/parallel-assoc-stmt-inst.cpp
    A clang/test/SemaOpenACC/parallel-loc-and-stmt.c
    A clang/test/SemaOpenACC/parallel-loc-and-stmt.cpp
    A clang/test/SemaOpenACC/unimplemented-construct.c
    M clang/test/SemaOpenCL/builtins-amdgcn-error-wave32.cl
    M clang/test/SemaOpenCL/builtins-amdgcn-error-wave64.cl
    M clang/test/SemaOpenCL/operators.cl
    M clang/test/SemaTemplate/class-template-noexcept.cpp
    M clang/test/SemaTemplate/class-template-spec.cpp
    M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
    M clang/test/SemaTemplate/concepts-recovery-expr.cpp
    M clang/test/SemaTemplate/deduction.cpp
    M clang/test/SemaTemplate/default-parm-init.cpp
    M clang/test/SemaTemplate/elaborated-type-specifier.cpp
    M clang/test/SemaTemplate/ms-lookup-template-base-classes.cpp
    M clang/test/SemaTemplate/qualified-id.cpp
    M clang/test/SemaTemplate/temp_arg_nontype_cxx20.cpp
    A clang/test/SemaTemplate/unqual-unresolved-using-value.cpp
    A clang/test/TableGen/target-builtins-prototype-parser.td
    M clang/test/lit.cfg.py
    M clang/tools/CMakeLists.txt
    M clang/tools/c-index-test/core_main.cpp
    M clang/tools/clang-format/ClangFormat.cpp
    A clang/tools/clang-installapi/CMakeLists.txt
    A clang/tools/clang-installapi/ClangInstallAPI.cpp
    A clang/tools/clang-installapi/Options.cpp
    A clang/tools/clang-installapi/Options.h
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td
    M clang/tools/clang-offload-packager/ClangOffloadPackager.cpp
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp
    M clang/tools/driver/cc1_main.cpp
    M clang/tools/driver/cc1as_main.cpp
    M clang/tools/driver/driver.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CXCursor.cpp
    M clang/tools/libclang/CXType.cpp
    M clang/tools/libclang/Indexing.cpp
    M clang/tools/scan-build/bin/scan-build
    M clang/tools/scan-build/man/scan-build.1
    M clang/tools/scan-build/share/scan-build/sorttable.js
    A clang/unittests/AST/ASTDumperTest.cpp
    M clang/unittests/AST/ASTExprTest.cpp
    M clang/unittests/AST/CMakeLists.txt
    M clang/unittests/AST/Interp/Descriptor.cpp
    M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
    M clang/unittests/Analysis/CFGTest.cpp
    M clang/unittests/Analysis/FlowSensitive/LoggerTest.cpp
    M clang/unittests/Analysis/FlowSensitive/SignAnalysisTest.cpp
    M clang/unittests/Analysis/FlowSensitive/TestingSupport.h
    M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
    M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
    M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
    M clang/unittests/Basic/SourceManagerTest.cpp
    M clang/unittests/CMakeLists.txt
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/DefinitionBlockSeparatorTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/FormatTestCSharp.cpp
    M clang/unittests/Format/FormatTestComments.cpp
    M clang/unittests/Format/FormatTestMacroExpansion.cpp
    M clang/unittests/Format/FormatTestTableGen.cpp
    M clang/unittests/Format/MacroCallReconstructorTest.cpp
    M clang/unittests/Format/QualifierFixerTest.cpp
    M clang/unittests/Format/SortIncludesTest.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    A clang/unittests/InstallAPI/CMakeLists.txt
    A clang/unittests/InstallAPI/FileListTest.cpp
    A clang/unittests/InstallAPI/HeaderFileTest.cpp
    M clang/unittests/Lex/DependencyDirectivesScannerTest.cpp
    M clang/unittests/Lex/PPCallbacksTest.cpp
    M clang/unittests/Serialization/CMakeLists.txt
    M clang/unittests/Serialization/ModuleCacheTest.cpp
    A clang/unittests/Serialization/PreambleInNamedModulesTest.cpp
    M clang/unittests/Serialization/VarDeclConstantInitTest.cpp
    M clang/unittests/StaticAnalyzer/CallDescriptionTest.cpp
    M clang/utils/TableGen/ClangAttrEmitter.cpp
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp
    M clang/utils/TableGen/ClangOpcodesEmitter.cpp
    M clang/utils/TableGen/ClangOptionDocEmitter.cpp
    M clang/utils/TableGen/RISCVVEmitter.cpp
    M clang/utils/TableGen/SveEmitter.cpp
    M clang/utils/perf-training/CMakeLists.txt
    M clang/utils/perf-training/perf-helper.py
    M clang/www/analyzer/alpha_checks.html
    M clang/www/cxx_dr_status.html
    M clang/www/make_cxx_dr_status
    M compiler-rt/CMakeLists.txt
    M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
    M compiler-rt/cmake/Modules/CompilerRTCompile.cmake
    M compiler-rt/cmake/Modules/CompilerRTDarwinUtils.cmake
    M compiler-rt/include/profile/InstrProfData.inc
    M compiler-rt/lib/asan/asan_descriptions.cpp
    M compiler-rt/lib/asan/asan_fuchsia.cpp
    M compiler-rt/lib/asan/asan_interceptors.cpp
    M compiler-rt/lib/asan/asan_internal.h
    M compiler-rt/lib/asan/asan_linux.cpp
    M compiler-rt/lib/asan/asan_mac.cpp
    M compiler-rt/lib/asan/asan_report.cpp
    M compiler-rt/lib/asan/asan_rtl.cpp
    M compiler-rt/lib/asan/asan_win.cpp
    M compiler-rt/lib/asan_abi/asan_abi_shim.cpp
    M compiler-rt/lib/builtins/CMakeLists.txt
    M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/apple.inc
    M compiler-rt/lib/builtins/cpu_model/x86.c
    M compiler-rt/lib/builtins/divtc3.c
    A compiler-rt/lib/builtins/extendbfsf2.c
    M compiler-rt/lib/builtins/fp_extend.h
    M compiler-rt/lib/builtins/fp_lib.h
    M compiler-rt/lib/builtins/i386/chkstk.S
    M compiler-rt/lib/builtins/int_types.h
    M compiler-rt/lib/builtins/multc3.c
    M compiler-rt/lib/builtins/os_version_check.c
    M compiler-rt/lib/builtins/x86_64/chkstk.S
    M compiler-rt/lib/dfsan/dfsan_custom.cpp
    M compiler-rt/lib/dfsan/done_abilist.txt
    M compiler-rt/lib/dfsan/libc_ubuntu1404_abilist.txt
    M compiler-rt/lib/fuzzer/FuzzerUtilFuchsia.cpp
    M compiler-rt/lib/hwasan/hwasan.cpp
    M compiler-rt/lib/hwasan/hwasan_report.cpp
    M compiler-rt/lib/hwasan/hwasan_thread_list.cpp
    M compiler-rt/lib/hwasan/hwasan_thread_list.h
    M compiler-rt/lib/interception/interception.h
    M compiler-rt/lib/memprof/memprof_allocator.cpp
    M compiler-rt/lib/memprof/memprof_allocator.h
    M compiler-rt/lib/memprof/memprof_descriptions.cpp
    M compiler-rt/lib/memprof/memprof_interceptors.cpp
    M compiler-rt/lib/memprof/memprof_internal.h
    M compiler-rt/lib/memprof/memprof_linux.cpp
    M compiler-rt/lib/memprof/memprof_malloc_linux.cpp
    M compiler-rt/lib/memprof/memprof_mapping.h
    M compiler-rt/lib/memprof/memprof_rtl.cpp
    M compiler-rt/lib/profile/InstrProfiling.h
    M compiler-rt/lib/profile/InstrProfilingBuffer.c
    M compiler-rt/lib/profile/InstrProfilingFile.c
    M compiler-rt/lib/profile/InstrProfilingInternal.h
    M compiler-rt/lib/profile/InstrProfilingMerge.c
    M compiler-rt/lib/profile/InstrProfilingPlatformAIX.c
    M compiler-rt/lib/profile/InstrProfilingPlatformDarwin.c
    M compiler-rt/lib/profile/InstrProfilingPlatformLinux.c
    M compiler-rt/lib/profile/InstrProfilingPlatformOther.c
    M compiler-rt/lib/profile/InstrProfilingPlatformWindows.c
    M compiler-rt/lib/profile/InstrProfilingWriter.c
    M compiler-rt/lib/sanitizer_common/sanitizer_common.h
    M compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.h
    M compiler-rt/lib/sanitizer_common/sanitizer_posix.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_procmaps_bsd.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_printer.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_win.cpp
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_stackdepot_test.cpp
    M compiler-rt/lib/scudo/standalone/allocator_common.h
    M compiler-rt/lib/scudo/standalone/checksum.cpp
    M compiler-rt/lib/scudo/standalone/checksum.h
    M compiler-rt/lib/scudo/standalone/combined.h
    M compiler-rt/lib/scudo/standalone/crc32_hw.cpp
    M compiler-rt/lib/scudo/standalone/fuzz/get_error_info_fuzzer.cpp
    M compiler-rt/lib/scudo/standalone/platform.h
    M compiler-rt/lib/scudo/standalone/primary32.h
    M compiler-rt/lib/scudo/standalone/primary64.h
    M compiler-rt/lib/scudo/standalone/secondary.h
    M compiler-rt/lib/scudo/standalone/stack_depot.h
    M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/primary_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/tsd_test.cpp
    M compiler-rt/lib/scudo/standalone/tsd_exclusive.h
    M compiler-rt/lib/scudo/standalone/tsd_shared.h
    M compiler-rt/lib/scudo/standalone/wrappers_c_bionic.cpp
    M compiler-rt/lib/ubsan/ubsan_signals_standalone.cpp
    M compiler-rt/test/CMakeLists.txt
    A compiler-rt/test/builtins/Unit/aarch64_cpu_features_test.c
    M compiler-rt/test/builtins/Unit/cpu_model_test.c
    M compiler-rt/test/builtins/Unit/ctor_dtor.c
    M compiler-rt/test/dfsan/reaches_function.c
    A compiler-rt/test/hwasan/TestCases/longjmp-out-of-range.c
    M compiler-rt/test/hwasan/TestCases/stack-uas.c
    A compiler-rt/test/profile/AIX/bexpfull-pgo.c
    M compiler-rt/test/profile/instrprof-basic.c
    M compiler-rt/test/profile/instrprof-block-coverage.c
    M compiler-rt/test/profile/instrprof-entry-coverage.c
    M compiler-rt/test/profile/instrprof-write-buffer-internal.c
    M compiler-rt/test/ubsan/TestCases/Misc/Linux/static-link.cpp
    M flang/CMakeLists.txt
    M flang/docs/AliasingAnalysisFIR.md
    M flang/docs/Directives.md
    M flang/docs/Extensions.md
    M flang/docs/FIRArrayOperations.md
    M flang/docs/FlangDriver.md
    M flang/docs/FlangOptionsDocs.td
    M flang/docs/FortranLLVMTestSuite.md
    M flang/docs/GettingInvolved.md
    M flang/docs/HighLevelFIR.md
    M flang/docs/Intrinsics.md
    M flang/docs/OpenACC-descriptor-management.md
    A flang/docs/OpenMP-declare-target.md
    A flang/docs/OpenMP-descriptor-management.md
    M flang/docs/Overview.md
    M flang/docs/ParameterizedDerivedTypes.md
    M flang/docs/PolymorphicEntities.md
    M flang/docs/ProcedurePointer.md
    M flang/docs/conf.py
    M flang/docs/fstack-arrays.md
    M flang/docs/index.md
    M flang/include/flang/Common/Fortran-features.h
    M flang/include/flang/Common/float128.h
    M flang/include/flang/Evaluate/characteristics.h
    M flang/include/flang/Evaluate/tools.h
    M flang/include/flang/ISO_Fortran_binding.h
    M flang/include/flang/Lower/AbstractConverter.h
    M flang/include/flang/Lower/Bridge.h
    M flang/include/flang/Lower/ConvertCall.h
    M flang/include/flang/Lower/ConvertVariable.h
    M flang/include/flang/Lower/LoweringOptions.def
    M flang/include/flang/Lower/OpenMP.h
    M flang/include/flang/Lower/PFTBuilder.h
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Builder/HLFIRTools.h
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/MutableBox.h
    M flang/include/flang/Optimizer/CodeGen/CGPasses.td
    M flang/include/flang/Optimizer/CodeGen/CodeGen.h
    A flang/include/flang/Optimizer/CodeGen/CodeGenOpenMP.h
    M flang/include/flang/Optimizer/CodeGen/Target.h
    M flang/include/flang/Optimizer/Dialect/FIRAttr.td
    M flang/include/flang/Optimizer/Dialect/FIRDialect.h
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
    M flang/include/flang/Optimizer/Dialect/FIRType.h
    M flang/include/flang/Optimizer/Dialect/Support/FIRContext.h
    M flang/include/flang/Optimizer/HLFIR/HLFIROps.td
    M flang/include/flang/Optimizer/Support/InitFIR.h
    M flang/include/flang/Optimizer/Support/Utils.h
    M flang/include/flang/Optimizer/Transforms/Passes.h
    M flang/include/flang/Optimizer/Transforms/Passes.td
    A flang/include/flang/Optimizer/Transforms/Utils.h
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Parser/provenance.h
    M flang/include/flang/Parser/source.h
    M flang/include/flang/Runtime/descriptor.h
    M flang/include/flang/Runtime/io-api.h
    M flang/include/flang/Runtime/reduction.h
    M flang/include/flang/Semantics/expression.h
    A flang/include/flang/Semantics/module-dependences.h
    M flang/include/flang/Semantics/semantics.h
    M flang/include/flang/Semantics/symbol.h
    M flang/include/flang/Semantics/type.h
    M flang/include/flang/Tools/CLOptions.inc
    M flang/include/flang/Tools/CrossToolHelpers.h
    M flang/lib/Decimal/decimal-to-binary.cpp
    M flang/lib/Evaluate/characteristics.cpp
    M flang/lib/Evaluate/check-expression.cpp
    M flang/lib/Evaluate/fold-integer.cpp
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Frontend/CMakeLists.txt
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/lib/Lower/Allocatable.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/CMakeLists.txt
    M flang/lib/Lower/CallInterface.cpp
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/ConvertExpr.cpp
    M flang/lib/Lower/ConvertExprToHLFIR.cpp
    M flang/lib/Lower/ConvertType.cpp
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Lower/DirectivesCommon.h
    M flang/lib/Lower/HostAssociations.cpp
    M flang/lib/Lower/IO.cpp
    M flang/lib/Lower/Mangler.cpp
    M flang/lib/Lower/OpenACC.cpp
    R flang/lib/Lower/OpenMP.cpp
    A flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    A flang/lib/Lower/OpenMP/ClauseProcessor.h
    A flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    A flang/lib/Lower/OpenMP/DataSharingProcessor.h
    A flang/lib/Lower/OpenMP/OpenMP.cpp
    A flang/lib/Lower/OpenMP/ReductionProcessor.cpp
    A flang/lib/Lower/OpenMP/ReductionProcessor.h
    A flang/lib/Lower/OpenMP/Utils.cpp
    A flang/lib/Lower/OpenMP/Utils.h
    M flang/lib/Lower/PFTBuilder.cpp
    M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Builder/HLFIRTools.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/MutableBox.cpp
    M flang/lib/Optimizer/Builder/Runtime/Reduction.cpp
    M flang/lib/Optimizer/CodeGen/CMakeLists.txt
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    A flang/lib/Optimizer/CodeGen/CodeGenOpenMP.cpp
    M flang/lib/Optimizer/CodeGen/Target.cpp
    M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
    M flang/lib/Optimizer/CodeGen/TypeConverter.cpp
    M flang/lib/Optimizer/Dialect/FIRAttr.cpp
    M flang/lib/Optimizer/Dialect/FIRDialect.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/lib/Optimizer/Dialect/Support/FIRContext.cpp
    M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/BufferizeHLFIR.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/CMakeLists.txt
    M flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIRIntrinsics.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
    M flang/lib/Optimizer/Transforms/ArrayValueCopy.cpp
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    M flang/lib/Optimizer/Transforms/FunctionAttr.cpp
    M flang/lib/Optimizer/Transforms/MemoryAllocation.cpp
    A flang/lib/Optimizer/Transforms/OMPDescriptorMapInfoGen.cpp
    M flang/lib/Optimizer/Transforms/SimplifyIntrinsics.cpp
    M flang/lib/Parser/Fortran-parsers.cpp
    M flang/lib/Parser/preprocessor.cpp
    M flang/lib/Parser/preprocessor.h
    M flang/lib/Parser/prescan.cpp
    M flang/lib/Parser/provenance.cpp
    M flang/lib/Parser/source.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/canonicalize-omp.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-call.h
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/check-directive-structure.h
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-select-type.cpp
    M flang/lib/Semantics/data-to-inits.cpp
    M flang/lib/Semantics/definable.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/mod-file.h
    M flang/lib/Semantics/pointer-assignment.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-names-utils.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/resolve-names.h
    M flang/lib/Semantics/runtime-type-info.cpp
    M flang/lib/Semantics/semantics.cpp
    M flang/lib/Semantics/symbol.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/lib/Semantics/type.cpp
    M flang/module/__cuda_builtins.f90
    M flang/module/__fortran_builtins.f90
    M flang/module/__fortran_ieee_exceptions.f90
    M flang/module/__fortran_type_info.f90
    M flang/module/__ppc_types.f90
    M flang/module/ieee_arithmetic.f90
    M flang/module/ieee_exceptions.f90
    M flang/module/ieee_features.f90
    M flang/module/iso_c_binding.f90
    M flang/runtime/CMakeLists.txt
    A flang/runtime/Float128Math/CMakeLists.txt
    A flang/runtime/Float128Math/acos.cpp
    A flang/runtime/Float128Math/acosh.cpp
    A flang/runtime/Float128Math/asin.cpp
    A flang/runtime/Float128Math/asinh.cpp
    A flang/runtime/Float128Math/atan.cpp
    A flang/runtime/Float128Math/atan2.cpp
    A flang/runtime/Float128Math/atanh.cpp
    A flang/runtime/Float128Math/ceil.cpp
    A flang/runtime/Float128Math/complex-math.c
    A flang/runtime/Float128Math/complex-math.h
    A flang/runtime/Float128Math/cos.cpp
    A flang/runtime/Float128Math/cosh.cpp
    A flang/runtime/Float128Math/erf.cpp
    A flang/runtime/Float128Math/erfc.cpp
    A flang/runtime/Float128Math/exp.cpp
    A flang/runtime/Float128Math/exponent.cpp
    A flang/runtime/Float128Math/floor.cpp
    A flang/runtime/Float128Math/fraction.cpp
    A flang/runtime/Float128Math/hypot.cpp
    A flang/runtime/Float128Math/j0.cpp
    A flang/runtime/Float128Math/j1.cpp
    A flang/runtime/Float128Math/jn.cpp
    A flang/runtime/Float128Math/lgamma.cpp
    A flang/runtime/Float128Math/llround.cpp
    A flang/runtime/Float128Math/log.cpp
    A flang/runtime/Float128Math/log10.cpp
    A flang/runtime/Float128Math/lround.cpp
    A flang/runtime/Float128Math/math-entries.h
    A flang/runtime/Float128Math/mod-real.cpp
    A flang/runtime/Float128Math/modulo-real.cpp
    A flang/runtime/Float128Math/nearest.cpp
    A flang/runtime/Float128Math/norm2.cpp
    A flang/runtime/Float128Math/numeric-template-specs.h
    A flang/runtime/Float128Math/pow.cpp
    A flang/runtime/Float128Math/round.cpp
    A flang/runtime/Float128Math/rrspacing.cpp
    A flang/runtime/Float128Math/scale.cpp
    A flang/runtime/Float128Math/set-exponent.cpp
    A flang/runtime/Float128Math/sin.cpp
    A flang/runtime/Float128Math/sinh.cpp
    A flang/runtime/Float128Math/spacing.cpp
    A flang/runtime/Float128Math/sqrt.cpp
    A flang/runtime/Float128Math/tan.cpp
    A flang/runtime/Float128Math/tanh.cpp
    A flang/runtime/Float128Math/tgamma.cpp
    A flang/runtime/Float128Math/trunc.cpp
    A flang/runtime/Float128Math/y0.cpp
    A flang/runtime/Float128Math/y1.cpp
    A flang/runtime/Float128Math/yn.cpp
    M flang/runtime/assign.cpp
    M flang/runtime/complex-reduction.c
    M flang/runtime/complex-reduction.h
    M flang/runtime/copy.cpp
    M flang/runtime/derived.cpp
    M flang/runtime/extrema.cpp
    M flang/runtime/io-api.cpp
    A flang/runtime/numeric-templates.h
    M flang/runtime/numeric.cpp
    M flang/runtime/product.cpp
    M flang/runtime/reduction-templates.h
    M flang/runtime/sum.cpp
    M flang/runtime/tools.h
    M flang/runtime/unit.cpp
    M flang/runtime/unit.h
    A flang/test/Analysis/AliasAnalysis/alias-analysis-8.fir
    A flang/test/Driver/aarch64-outline-atomics.f90
    M flang/test/Driver/driver-help-hidden.f90
    M flang/test/Driver/driver-help.f90
    M flang/test/Driver/flang-experimental-polymorphism-flag.f90
    A flang/test/Driver/func-attr-fast-math.f90
    M flang/test/Driver/linker-flags.f90
    A flang/test/Driver/masm.f90
    M flang/test/Driver/omp-driver-offload.f90
    A flang/test/Driver/predefined-macros-powerpc.f90
    M flang/test/Driver/prescanner-diag.f90
    M flang/test/Driver/save-mlir-temps.f90
    M flang/test/Driver/target-cpu-features.f90
    A flang/test/Fir/OpenACC/legalize-data.fir
    A flang/test/Fir/OpenACC/propagate-attr-folding.fir
    M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
    M flang/test/Fir/fir-ops.fir
    M flang/test/Fir/ignore-missing-type-descriptor.fir
    M flang/test/Fir/polymorphic.fir
    A flang/test/Fir/target-rewrite-target-cpu.fir
    A flang/test/Fir/target-rewrite-target-features.fir
    M flang/test/Fir/tbaa.fir
    M flang/test/Fir/type-descriptor.fir
    M flang/test/HLFIR/all-lowering.fir
    M flang/test/HLFIR/any-lowering.fir
    A flang/test/HLFIR/as_expr-codegen-polymorphic.fir
    A flang/test/HLFIR/assumed-type-actual-args.f90
    M flang/test/HLFIR/bufferize-poly-expr.fir
    M flang/test/HLFIR/count-lowering-default-int-kinds.fir
    M flang/test/HLFIR/count-lowering.fir
    M flang/test/HLFIR/dot_product-lowering.fir
    M flang/test/HLFIR/extents-of-shape-of.f90
    M flang/test/HLFIR/invalid.fir
    M flang/test/HLFIR/matmul-lowering.fir
    M flang/test/HLFIR/maxloc-elemental.fir
    M flang/test/HLFIR/maxloc-lowering.fir
    M flang/test/HLFIR/maxval-lowering.fir
    M flang/test/HLFIR/minloc-elemental.fir
    M flang/test/HLFIR/minloc-lowering.fir
    M flang/test/HLFIR/minval-lowering.fir
    M flang/test/HLFIR/mul_transpose.f90
    M flang/test/HLFIR/product-lowering.fir
    M flang/test/HLFIR/sum-lowering.fir
    M flang/test/HLFIR/transpose-lowering.fir
    A flang/test/Integration/OpenMP/copyprivate.f90
    M flang/test/Integration/OpenMP/map-types-and-sizes.f90
    A flang/test/Integration/aarch64-outline-atomics.f90
    A flang/test/Integration/iso-fortran-binding.cpp
    M flang/test/Lower/AMD/code-object-version.f90
    A flang/test/Lower/CUDA/cuda-data-attribute.cuf
    A flang/test/Lower/CUDA/cuda-kernel-calls.cuf
    A flang/test/Lower/CUDA/cuda-kernel-loop-directive.cuf
    A flang/test/Lower/CUDA/cuda-mod.cuf
    A flang/test/Lower/CUDA/cuda-module-use.cuf
    A flang/test/Lower/CUDA/cuda-proc-attribute.cuf
    M flang/test/Lower/HLFIR/allocatable-end-of-scope-dealloc.f90
    M flang/test/Lower/HLFIR/array-ctor-character.f90
    M flang/test/Lower/HLFIR/bindc_internal_proc.f90
    A flang/test/Lower/HLFIR/block_bindc_pocs.f90
    M flang/test/Lower/HLFIR/function-return-as-expr.f90
    M flang/test/Lower/HLFIR/internal-procedures-2.f90
    A flang/test/Lower/HLFIR/internal-procedures-polymorphic.f90
    M flang/test/Lower/HLFIR/internal-procedures.f90
    A flang/test/Lower/HLFIR/issue80884.f90
    M flang/test/Lower/HLFIR/minval.f90
    M flang/test/Lower/HLFIR/procedure-pointer.f90
    M flang/test/Lower/HLFIR/structure-constructor.f90
    A flang/test/Lower/Intrinsics/acos_complex16.f90
    A flang/test/Lower/Intrinsics/acos_real16.f90
    A flang/test/Lower/Intrinsics/acosd.f90
    A flang/test/Lower/Intrinsics/acosh_complex16.f90
    A flang/test/Lower/Intrinsics/acosh_real16.f90
    A flang/test/Lower/Intrinsics/aint_real16.f90
    A flang/test/Lower/Intrinsics/anint_real16.f90
    A flang/test/Lower/Intrinsics/asin_complex16.f90
    A flang/test/Lower/Intrinsics/asin_real16.f90
    A flang/test/Lower/Intrinsics/asind.f90
    A flang/test/Lower/Intrinsics/asinh_complex16.f90
    A flang/test/Lower/Intrinsics/asinh_real16.f90
    M flang/test/Lower/Intrinsics/associated-proc-pointers.f90
    A flang/test/Lower/Intrinsics/atan2_real16.f90
    A flang/test/Lower/Intrinsics/atan2d.f90
    A flang/test/Lower/Intrinsics/atan2pi.f90
    A flang/test/Lower/Intrinsics/atan_complex16.f90
    A flang/test/Lower/Intrinsics/atan_real16.f90
    M flang/test/Lower/Intrinsics/atand.f90
    A flang/test/Lower/Intrinsics/atanh_complex16.f90
    A flang/test/Lower/Intrinsics/atanh_real16.f90
    A flang/test/Lower/Intrinsics/atanpi.f90
    A flang/test/Lower/Intrinsics/bessel_j0_real16.f90
    A flang/test/Lower/Intrinsics/bessel_j1_real16.f90
    A flang/test/Lower/Intrinsics/bessel_jn_real16.f90
    A flang/test/Lower/Intrinsics/bessel_y0_real16.f90
    A flang/test/Lower/Intrinsics/bessel_y1_real16.f90
    A flang/test/Lower/Intrinsics/bessel_yn_real16.f90
    A flang/test/Lower/Intrinsics/cabs_real16.f90
    A flang/test/Lower/Intrinsics/ceiling_real16.f90
    A flang/test/Lower/Intrinsics/cos_complex16.f90
    A flang/test/Lower/Intrinsics/cos_real16.f90
    A flang/test/Lower/Intrinsics/cosh_complex16.f90
    A flang/test/Lower/Intrinsics/cosh_real16.f90
    A flang/test/Lower/Intrinsics/erf_real16.f90
    A flang/test/Lower/Intrinsics/erfc_real16.f90
    A flang/test/Lower/Intrinsics/exp_complex16.f90
    A flang/test/Lower/Intrinsics/exp_real16.f90
    A flang/test/Lower/Intrinsics/floor_real16.f90
    A flang/test/Lower/Intrinsics/gamma_real16.f90
    A flang/test/Lower/Intrinsics/hypot_real16.f90
    A flang/test/Lower/Intrinsics/log10_real16.f90
    A flang/test/Lower/Intrinsics/log_complex16.f90
    A flang/test/Lower/Intrinsics/log_gamma_real16.f90
    A flang/test/Lower/Intrinsics/log_real16.f90
    R flang/test/Lower/Intrinsics/missing-math-runtime.f90
    A flang/test/Lower/Intrinsics/nint_real16.f90
    M flang/test/Lower/Intrinsics/norm2.f90
    A flang/test/Lower/Intrinsics/pow_complex16.f90
    A flang/test/Lower/Intrinsics/pow_real16.f90
    A flang/test/Lower/Intrinsics/powi_real16.f90
    M flang/test/Lower/Intrinsics/random.f90
    A flang/test/Lower/Intrinsics/sin_complex16.f90
    A flang/test/Lower/Intrinsics/sin_real16.f90
    A flang/test/Lower/Intrinsics/sinh_complex16.f90
    A flang/test/Lower/Intrinsics/sinh_real16.f90
    A flang/test/Lower/Intrinsics/sqrt_complex16.f90
    A flang/test/Lower/Intrinsics/sqrt_real16.f90
    A flang/test/Lower/Intrinsics/tan_complex16.f90
    A flang/test/Lower/Intrinsics/tan_real16.f90
    A flang/test/Lower/Intrinsics/tanh_complex16.f90
    A flang/test/Lower/Intrinsics/tanh_real16.f90
    M flang/test/Lower/Intrinsics/ubound01.f90
    M flang/test/Lower/OpenACC/acc-bounds.f90
    M flang/test/Lower/OpenACC/acc-data-operands.f90
    M flang/test/Lower/OpenACC/acc-data.f90
    M flang/test/Lower/OpenACC/acc-declare.f90
    M flang/test/Lower/OpenACC/acc-enter-data.f90
    M flang/test/Lower/OpenACC/acc-exit-data.f90
    M flang/test/Lower/OpenACC/acc-host-data.f90
    M flang/test/Lower/OpenACC/acc-kernels-loop.f90
    M flang/test/Lower/OpenACC/acc-kernels.f90
    M flang/test/Lower/OpenACC/acc-loop.f90
    M flang/test/Lower/OpenACC/acc-parallel-loop.f90
    M flang/test/Lower/OpenACC/acc-parallel.f90
    M flang/test/Lower/OpenACC/acc-private.f90
    M flang/test/Lower/OpenACC/acc-reduction.f90
    M flang/test/Lower/OpenACC/acc-routine04.f90
    M flang/test/Lower/OpenACC/acc-serial-loop.f90
    M flang/test/Lower/OpenACC/acc-serial.f90
    M flang/test/Lower/OpenACC/acc-update.f90
    M flang/test/Lower/OpenMP/FIR/array-bounds.f90
    A flang/test/Lower/OpenMP/FIR/delayed-privatization-firstprivate.f90
    A flang/test/Lower/OpenMP/FIR/delayed-privatization-private.f90
    M flang/test/Lower/OpenMP/FIR/parallel-reduction-add.f90
    M flang/test/Lower/OpenMP/FIR/target.f90
    M flang/test/Lower/OpenMP/FIR/target_cpu_features.f90
    M flang/test/Lower/OpenMP/FIR/threadprivate-use-association-2.f90
    M flang/test/Lower/OpenMP/FIR/wsloop-reduction-add.f90
    M flang/test/Lower/OpenMP/FIR/wsloop-reduction-iand.f90
    M flang/test/Lower/OpenMP/FIR/wsloop-reduction-ieor.f90
    M flang/test/Lower/OpenMP/FIR/wsloop-reduction-ior.f90
    R flang/test/Lower/OpenMP/FIR/wsloop-reduction-logical-and.f90
    M flang/test/Lower/OpenMP/FIR/wsloop-reduction-logical-eqv.f90
    M flang/test/Lower/OpenMP/FIR/wsloop-reduction-logical-neqv.f90
    R flang/test/Lower/OpenMP/FIR/wsloop-reduction-logical-or.f90
    M flang/test/Lower/OpenMP/FIR/wsloop-reduction-max.f90
    M flang/test/Lower/OpenMP/FIR/wsloop-reduction-min.f90
    R flang/test/Lower/OpenMP/FIR/wsloop-reduction-mul.f90
    R flang/test/Lower/OpenMP/Todo/copyprivate.f90
    A flang/test/Lower/OpenMP/allocatable-array-bounds.f90
    A flang/test/Lower/OpenMP/allocatable-map.f90
    M flang/test/Lower/OpenMP/array-bounds.f90
    A flang/test/Lower/OpenMP/copyprivate.f90
    A flang/test/Lower/OpenMP/declare-target-deferred-marking.f90
    M flang/test/Lower/OpenMP/default-clause.f90
    A flang/test/Lower/OpenMP/delayed-privatization-firstprivate.f90
    A flang/test/Lower/OpenMP/delayed-privatization-private-firstprivate.f90
    A flang/test/Lower/OpenMP/delayed-privatization-private.f90
    A flang/test/Lower/OpenMP/delayed-privatization-reduction.f90
    M flang/test/Lower/OpenMP/parallel-reduction-add.f90
    A flang/test/Lower/OpenMP/parallel-reduction.f90
    M flang/test/Lower/OpenMP/target.f90
    M flang/test/Lower/OpenMP/target_cpu_features.f90
    A flang/test/Lower/OpenMP/threadprivate-commonblock-use.f90
    M flang/test/Lower/OpenMP/threadprivate-use-association-2-hlfir.f90
    A flang/test/Lower/OpenMP/workshare.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-add-hlfir.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-add.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-iand.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-ieor.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-ior.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-and.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-or.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-max-2.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-max-hlfir.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-max.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-min.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-mul.f90
    M flang/test/Lower/PowerPC/ppc-vector-types.f90
    M flang/test/Lower/allocatable-polymorphic.f90
    M flang/test/Lower/array-temp.f90
    M flang/test/Lower/convert.f90
    M flang/test/Lower/derived-pointer-components.f90
    A flang/test/Lower/derived-types-kind-params-2.f90
    M flang/test/Lower/dummy-arguments.f90
    M flang/test/Lower/dummy-procedure-character.f90
    M flang/test/Lower/equivalence-with-host-assoc.f90
    M flang/test/Lower/explicit-interface-results-2.f90
    M flang/test/Lower/forall/array-constructor.f90
    M flang/test/Lower/forall/character-1.f90
    M flang/test/Lower/global-initialization.f90
    M flang/test/Lower/host-associated-functions.f90
    M flang/test/Lower/host-associated-globals.f90
    M flang/test/Lower/host-associated.f90
    A flang/test/Lower/io-asynchronous.f90
    M flang/test/Lower/io-statement-1.f90
    M flang/test/Lower/module-and-internal-proc.f90
    M flang/test/Lower/nullify-polymorphic.f90
    M flang/test/Lower/parent-component.f90
    M flang/test/Lower/polymorphic.f90
    M flang/test/Lower/program-units-fir-mangling.f90
    A flang/test/Lower/target-features-amdgcn.f90
    A flang/test/Lower/target-features-x86_64.f90
    A flang/test/Parser/assume-aligned.f90
    M flang/test/Preprocessing/include-comment.F90
    A flang/test/Preprocessing/macro-in-include.F90
    M flang/test/Preprocessing/pp005.F
    M flang/test/Preprocessing/pp006.F
    M flang/test/Preprocessing/pp105.F90
    M flang/test/Preprocessing/pp106.F90
    M flang/test/Preprocessing/pp134.F90
    A flang/test/Semantics/Inputs/dir1/modfile63a.mod
    A flang/test/Semantics/Inputs/dir1/modfile63b.mod
    A flang/test/Semantics/Inputs/dir2/modfile63a.mod
    A flang/test/Semantics/Inputs/dir2/modfile63b.mod
    M flang/test/Semantics/OpenACC/acc-loop.f90
    M flang/test/Semantics/OpenMP/clause-validity01.f90
    M flang/test/Semantics/OpenMP/copyprivate03.f90
    M flang/test/Semantics/OpenMP/default-none.f90
    M flang/test/Semantics/OpenMP/device-constructs.f90
    M flang/test/Semantics/OpenMP/loop-association.f90
    A flang/test/Semantics/OpenMP/struct.f90
    M flang/test/Semantics/assign04.f90
    M flang/test/Semantics/bind-c03.f90
    M flang/test/Semantics/bind-c04.f90
    M flang/test/Semantics/call03.f90
    M flang/test/Semantics/cuf03.cuf
    A flang/test/Semantics/data21.f90
    A flang/test/Semantics/data22.f90
    M flang/test/Semantics/declarations06.f90
    M flang/test/Semantics/getsymbols02.f90
    A flang/test/Semantics/image_index01.f90
    A flang/test/Semantics/image_index02.f90
    A flang/test/Semantics/implicit14.f90
    M flang/test/Semantics/init01.f90
    A flang/test/Semantics/intrinsics03.f90
    M flang/test/Semantics/local-vs-global.f90
    A flang/test/Semantics/modfile63.f90
    A flang/test/Semantics/modfile64.f90
    M flang/test/Semantics/namelist01.f90
    M flang/test/Semantics/null01.f90
    M flang/test/Semantics/resolve09.f90
    M flang/test/Semantics/resolve17.f90
    M flang/test/Semantics/resolve61.f90
    M flang/test/Semantics/resolve91.f90
    A flang/test/Semantics/selecttype04.f90
    M flang/test/Semantics/separate-mp02.f90
    M flang/test/Semantics/test_modfile.py
    A flang/test/Semantics/typed-subr.f90
    A flang/test/Semantics/typeinfo09.f90
    A flang/test/Semantics/typeinfo10.f90
    A flang/test/Transforms/omp-descriptor-map-info-gen.fir
    M flang/test/Transforms/simplifyintrinsics.fir
    M flang/test/lit.cfg.py
    M flang/test/lit.site.cfg.py.in
    M flang/tools/bbc/bbc.cpp
    M flang/tools/fir-opt/fir-opt.cpp
    M flang/tools/flang-driver/driver.cpp
    M flang/tools/tco/tco.cpp
    M flang/unittests/Optimizer/FIRContextTest.cpp
    M flang/unittests/Optimizer/FortranVariableTest.cpp
    M flang/unittests/Runtime/NumericalFormatTest.cpp
    M libc/.clang-tidy
    M libc/AOR_v20.02/string/arm/memchr.S
    M libc/CMakeLists.txt
    M libc/benchmarks/automemcpy/README.md
    M libc/benchmarks/automemcpy/lib/CMakeLists.txt
    M libc/cmake/modules/CheckCompilerFeatures.cmake
    M libc/cmake/modules/LLVMLibCArchitectures.cmake
    M libc/cmake/modules/LLVMLibCCheckMPFR.cmake
    A libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
    M libc/cmake/modules/LLVMLibCFlagRules.cmake
    M libc/cmake/modules/LLVMLibCHeaderRules.cmake
    M libc/cmake/modules/LLVMLibCLibraryRules.cmake
    M libc/cmake/modules/LLVMLibCObjectRules.cmake
    M libc/cmake/modules/LLVMLibCRules.cmake
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    A libc/cmake/modules/compiler_features/check_fixed_point.cpp
    M libc/cmake/modules/compiler_features/check_float128.cpp
    M libc/cmake/modules/prepare_libc_gpu_build.cmake
    M libc/config/baremetal/api.td
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/arm/headers.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/baremetal/riscv/headers.txt
    M libc/config/config.json
    M libc/config/darwin/arm/headers.txt
    M libc/config/darwin/x86_64/entrypoints.txt
    M libc/config/darwin/x86_64/headers.txt
    M libc/config/gpu/entrypoints.txt
    M libc/config/gpu/headers.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/api.td
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/arm/headers.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/riscv/headers.txt
    M libc/config/linux/syscall_numbers.h.inc
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/linux/x86_64/exclude.txt
    M libc/config/linux/x86_64/headers.txt
    M libc/config/windows/entrypoints.txt
    A libc/docs/c23.rst
    M libc/docs/configure.rst
    M libc/docs/contributing.rst
    M libc/docs/date_and_time.rst
    M libc/docs/dev/clang_tidy_checks.rst
    M libc/docs/dev/code_style.rst
    M libc/docs/dev/config_options.rst
    M libc/docs/dev/printf_behavior.rst
    M libc/docs/dev/undefined_behavior.rst
    M libc/docs/full_cross_build.rst
    M libc/docs/gpu/motivation.rst
    M libc/docs/gpu/rpc.rst
    M libc/docs/gpu/testing.rst
    M libc/docs/gpu/using.rst
    M libc/docs/index.rst
    A libc/docs/libc_search.rst
    M libc/docs/math/index.rst
    M libc/docs/math/log.rst
    A libc/docs/math/stdfix.rst
    M libc/docs/porting.rst
    A libc/docs/stdbit.rst
    M libc/docs/stdio.rst
    M libc/docs/strings.rst
    M libc/fuzzing/stdio/CMakeLists.txt
    A libc/fuzzing/stdio/printf_fixed_conv_fuzz.cpp
    M libc/include/CMakeLists.txt
    M libc/include/__llvm-libc-common.h
    M libc/include/errno.h.def
    M libc/include/fcntl.h.def
    M libc/include/inttypes.h.def
    M libc/include/llvm-libc-macros/CMakeLists.txt
    M libc/include/llvm-libc-macros/containerof-macro.h
    M libc/include/llvm-libc-macros/fcntl-macros.h
    M libc/include/llvm-libc-macros/features-macros.h
    M libc/include/llvm-libc-macros/fenv-macros.h
    M libc/include/llvm-libc-macros/file-seek-macros.h
    M libc/include/llvm-libc-macros/float-macros.h
    M libc/include/llvm-libc-macros/generic-error-number-macros.h
    M libc/include/llvm-libc-macros/gpu/time-macros.h
    A libc/include/llvm-libc-macros/inttypes-macros.h
    M libc/include/llvm-libc-macros/limits-macros.h
    M libc/include/llvm-libc-macros/linux/fcntl-macros.h
    M libc/include/llvm-libc-macros/linux/sched-macros.h
    M libc/include/llvm-libc-macros/linux/signal-macros.h
    M libc/include/llvm-libc-macros/linux/sys-ioctl-macros.h
    M libc/include/llvm-libc-macros/linux/sys-random-macros.h
    M libc/include/llvm-libc-macros/linux/sys-resource-macros.h
    M libc/include/llvm-libc-macros/linux/sys-socket-macros.h
    M libc/include/llvm-libc-macros/linux/sys-stat-macros.h
    M libc/include/llvm-libc-macros/linux/sys-time-macros.h
    M libc/include/llvm-libc-macros/linux/sys-wait-macros.h
    M libc/include/llvm-libc-macros/linux/termios-macros.h
    M libc/include/llvm-libc-macros/linux/time-macros.h
    M libc/include/llvm-libc-macros/linux/unistd-macros.h
    M libc/include/llvm-libc-macros/math-macros.h
    M libc/include/llvm-libc-macros/null-macro.h
    M libc/include/llvm-libc-macros/offsetof-macro.h
    M libc/include/llvm-libc-macros/sched-macros.h
    M libc/include/llvm-libc-macros/signal-macros.h
    M libc/include/llvm-libc-macros/stdbit-macros.h
    A libc/include/llvm-libc-macros/stdckdint-macros.h
    A libc/include/llvm-libc-macros/stdfix-macros.h
    A libc/include/llvm-libc-macros/stdint-macros.h
    M libc/include/llvm-libc-macros/stdio-macros.h
    M libc/include/llvm-libc-macros/stdlib-macros.h
    M libc/include/llvm-libc-macros/sys-auxv-macros.h
    M libc/include/llvm-libc-macros/sys-ioctl-macros.h
    M libc/include/llvm-libc-macros/sys-mman-macros.h
    M libc/include/llvm-libc-macros/sys-queue-macros.h
    M libc/include/llvm-libc-macros/sys-random-macros.h
    M libc/include/llvm-libc-macros/sys-resource-macros.h
    M libc/include/llvm-libc-macros/sys-select-macros.h
    M libc/include/llvm-libc-macros/sys-socket-macros.h
    M libc/include/llvm-libc-macros/sys-stat-macros.h
    M libc/include/llvm-libc-macros/sys-time-macros.h
    M libc/include/llvm-libc-macros/sys-wait-macros.h
    M libc/include/llvm-libc-macros/termios-macros.h
    M libc/include/llvm-libc-macros/time-macros.h
    M libc/include/llvm-libc-macros/unistd-macros.h
    M libc/include/llvm-libc-macros/wchar-macros.h
    M libc/include/llvm-libc-types/ACTION.h
    M libc/include/llvm-libc-types/CMakeLists.txt
    M libc/include/llvm-libc-types/DIR.h
    M libc/include/llvm-libc-types/ENTRY.h
    M libc/include/llvm-libc-types/FILE.h
    M libc/include/llvm-libc-types/__atexithandler_t.h
    M libc/include/llvm-libc-types/__atfork_callback_t.h
    M libc/include/llvm-libc-types/__bsearchcompare_t.h
    M libc/include/llvm-libc-types/__call_once_func_t.h
    M libc/include/llvm-libc-types/__exec_argv_t.h
    M libc/include/llvm-libc-types/__exec_envp_t.h
    M libc/include/llvm-libc-types/__futex_word.h
    R lldb/third_party/Python/module/unittest2/unittest2/test/dummy.py

  Log Message:
  -----------
  Rebase and use RISCVVtype helpers

Created using spr 1.3.4


Compare: https://github.com/llvm/llvm-project/compare/28e571f7e8af...8f1e69246002

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