[qt/clang/llvm-project]: Summary of bulk changes made

KDE Git Services - Bulk Change <[email protected]>
Newsgroups gmane.comp.kde.cvs
Message-ID <[email protected]>
Git repository change summary for qt/clang/llvm-project
Pushed by mirror-service into branch 'upstream/users/jeanPerier/merge_memory_passes_5'.
Changed from 0878b6676049c96ce5336a9af28f37cc3ffab5fc to 5ee248e30ecc9452f03908af00d58e8b1e74202e
Acknowledgement was received that this change introduces only existing code that has been pushed to another public open source repository.

This change contains the following new commits:

Git commit 29bc0749034c4f2bda0752360ecacd4e89d7439c by GitHub (on behalf of Ebuka Ezike) on 29/07/2026 at 11:30..
[lldb] Fix crash on creating string error (#212503)

It crashes because the `default` error string may not be a format string
compared to the `fallback` error string
https://invent.kde.org/qt/clang/llvm-project/-/commit/29bc0749034c4f2bda0752360ecacd4e89d7439c

Git commit 5989d40ab1d0db8333b5976d957a49525d36cf35 by GitHub (on behalf of jeanPerier) on 29/07/2026 at 11:31..
[flang] Wire allocation-placement into the optimizer pipeline (default off) - memory passes unification [3/5] (#210745)

Add a hidden -enable-allocation-placement flag that, when set, replaces
the stack-arrays and memory-allocation-opt passes in the default FIR
optimizer pipeline with the unified allocation-placement pass. The flag
is off by default, so the legacy passes remain the default path and
behavior is unchanged.

When enabled, the pass runs with its default byte-size thresholds; the
-fstack-arrays strategy is forwarded through the new stackArrays option.

Assisted-by: AI
https://invent.kde.org/qt/clang/llvm-project/-/commit/5989d40ab1d0db8333b5976d957a49525d36cf35

Git commit 26e3b7c257dae5582cc7732d1521b44510a7cf1f by jeanPerier (on behalf of Jean Perier) on 29/07/2026 at 11:31..
[flang] Enable allocation-placement pass by default

Make the unified allocation-placement pass the default in the FIR optimizer
pipeline in place of the legacy stack-arrays and memory-allocation-opt passes,
by defaulting -enable-allocation-placement to true. Passing
-enable-allocation-placement=false restores the legacy passes for comparison.

Add a -disable-allocation-placement switch that skips the pass entirely (wired
through addAllocationPlacement like the other optimizer passes), so codegen
tests can opt out of placement policy independently of the legacy fallback.

Update the pipeline-dump tests to expect AllocationPlacement, and disable the
pass in the alloca/allocmem codegen tests (alloc.fir, coordinateof.fir) so they
keep testing lowering rather than placement policy. Document the unified pass,
its policy, thresholds, and options in fstack-arrays.md.
https://invent.kde.org/qt/clang/llvm-project/-/commit/26e3b7c257dae5582cc7732d1521b44510a7cf1f

Git commit 5ee248e30ecc9452f03908af00d58e8b1e74202e by jeanPerier (on behalf of root) on 29/07/2026 at 11:31..
[flang] Remove legacy stack-arrays and memory-allocation-opt passes

The unified allocation-placement pass now supersedes both the heap-to-stack
stack-arrays pass and the stack-to-heap memory-allocation-opt pass, and is the
default in the FIR optimizer pipeline. Remove the two legacy passes: their
TableGen definitions, the MemoryAllocation.cpp source, the memory-allocation-opt
command-line options, the enable-allocation-placement fallback switch, and the
addMemoryAllocationOpt pipeline helper. The pass-only portions of
StackArrays.cpp are dropped while its analysis and rewrite pattern, now shared
with allocation-placement, are kept.

The legacy tests are retargeted onto allocation-placement to show it reproduces
both prior behaviors: the stack-arrays tests use "stack-arrays=true", and the
memory-allocation-opt tests use the default policy (runtime-sized and big
constant-size temporaries go on the heap).
https://invent.kde.org/qt/clang/llvm-project/-/commit/5ee248e30ecc9452f03908af00d58e8b1e74202e
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.