LLVM/project 3bb61e8llvm/test/CodeGen/AMDGPU amdgcn.bitcast.1024bit.ll, llvm/test/CodeGen/RISCV clmul.ll

Merge branch 'main' into users/ziqingluo/PR-179150798
DeltaFile
+25,784-36,416llvm/test/CodeGen/RISCV/rvv/clmulh-sdnode.ll
+12,227-23,140llvm/test/CodeGen/RISCV/rvv/clmul-sdnode.ll
+12,991-3,310llvm/test/MC/AMDGPU/gfx13_asm_vop3_dpp16.s
+11,856-3,719llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp16.s
+4,004-11,142llvm/test/CodeGen/RISCV/clmul.ll
+6,940-6,782llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+73,802-84,5092,934 files not shown
+198,728-209,3352,940 files

LLVM/project c7e815bclang/lib/CodeGen CGExpr.cpp, clang/test/CodeGenHLSL/BasicFeatures OutArgLifetime.hlsl

[HLSL] Emit lifetime.start before copy-in for inout parameters (#191917)

For inout parameters, Clang was emitting lifetime.start after the
copy-in store that initializes the temporary. Per LLVM's lifetime
semantics, any access to memory outside its lifetime is undefined
behavior, so the copy-in store was technically UB and the value was
undefined after lifetime.start.

Move EmitLifetimeStart into EmitHLSLOutArgLValues so that it is emitted
before EmitInitializationToLValue, putting the copy-in store within the
lifetime of the temporary.

---------

Co-authored-by: Alexandre Isoard <alexandre.isoard at amd.com>
Co-authored-by: Deric C. <cheung.deric at gmail.com>
DeltaFile
+91-0clang/test/CodeGenHLSL/BasicFeatures/OutArgLifetime.hlsl
+5-2clang/lib/CodeGen/CGExpr.cpp
+96-22 files

LLVM/project 38df8cblldb/test/API/macosx/deny-attach main.c TestDenyAttach.py, lldb/tools/debugserver/source/MacOSX MachProcess.mm

[lldb] Survive ptrace(PT_DENY_ATTACH) when attaching (#204688) (#205198)

A process can opt out of being debugged with ptrace(PT_DENY_ATTACH). The
XNU kernel enforces this by delivering SIGSEGV to the *attaching*
process while it is still inside the ptrace(PT_ATTACHEXC) syscall. This
means debugserver gets killed before it can inspect the result. LLDB
only sees the dropped connection ("error: attach failed: lost
connection").

The condition can't be detected up front: the target's P_LNOATTACH flag
is not exposed to userspace. To work around this, install a temporary
SIGSEGV handler around the ptrace(PT_ATTACHEXC) call in AttachForDebug
and siglongjmp back out if it fires, turning the fatal signal into an
EPERM that propagates to lldb as a clear message:

```
error: attach failed: cannot attach to process N because it has
disabled debugging via ptrace(PT_DENY_ATTACH)
```

    [7 lines not shown]
DeltaFile
+87-5lldb/tools/debugserver/source/MacOSX/MachProcess.mm
+60-0lldb/test/API/macosx/deny-attach/main.c
+36-0lldb/test/API/macosx/deny-attach/TestDenyAttach.py
+3-0lldb/test/API/macosx/deny-attach/Makefile
+186-54 files

LLVM/project ff4bc6eclang/docs ReleaseNotes.rst, clang/lib/Sema SemaExpr.cpp

[Clang] Fix crash when comparing fixed point type with BitInt (#199912)

Fixes #196948

Added checks in `handleFixedPointConversion`: reject fixed point/BitInt
comparisons

Now clang properly emits an error instead of crashing.

---------

Co-authored-by: cry <2091136672 at foxmail.com>
DeltaFile
+6-1clang/test/SemaCXX/ext-int.cpp
+4-0clang/lib/Sema/SemaExpr.cpp
+1-0clang/docs/ReleaseNotes.rst
+11-13 files

LLVM/project febe8f0clang/test/Analysis/Scalable/PointerFlow entity-name-no-conflict.cpp benign-entity-name-conflict.cpp

Change 'benign-entity-name-conflict.cpp' to
'entity-name-no-conflict.cpp' because it is a USR generation bug even
though the erroneous behavior is benign in this example.
DeltaFile
+27-0clang/test/Analysis/Scalable/PointerFlow/entity-name-no-conflict.cpp
+0-24clang/test/Analysis/Scalable/PointerFlow/benign-entity-name-conflict.cpp
+27-242 files

LLVM/project bc4aadblldb/source/Plugins/ScriptInterpreter/Lua LuaState.cpp

[lldb] Fix LuaState after #205210 (#205219)
DeltaFile
+2-2lldb/source/Plugins/ScriptInterpreter/Lua/LuaState.cpp
+2-21 files

LLVM/project 0b46f55llvm/docs LangRef.md

Migrate 11 tables back from list-table to regular markdown tables
DeltaFile
+80-202llvm/docs/LangRef.md
+80-2021 files

LLVM/project a6986f0flang/lib/Semantics mod-file.cpp, flang/test/Semantics modfile84.f90

[flang][cuda][openacc] Emit an error when CUDA symbols are imported with CUDA disabled (#205207)
DeltaFile
+29-0flang/lib/Semantics/mod-file.cpp
+17-0flang/test/Semantics/modfile84.f90
+46-02 files

LLVM/project 2d0b2fblldb/source/Plugins/Process/gdb-remote ProcessGDBRemote.cpp ProcessGDBRemote.h

Revert "[lldb][Windows] Remember server's primary stop thread on gdb-remote stops" (#205220)

Reverts llvm/llvm-project#203525 because it breaks TestRealDefinition.py
DeltaFile
+0-9lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
+0-3lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
+0-122 files

LLVM/project 97394f0llvm/docs LangRef.md

[docs] Rewrite LangRef.md as Markdown
DeltaFile
+14,624-17,431llvm/docs/LangRef.md
+14,624-17,4311 files

LLVM/project c2bc2accompiler-rt/lib/instrumentor-examples/flop-counter rt.h instrumentor_runtime.h, compiler-rt/test/instrumentor-examples lit.cfg.py

[Instrumentor] Add runtime examples: [1/N] A flop counter

This adds a instrumentor-examples folder into compiler RT to showcase
use cases of the instrumentor. The initial example is a program that,
via instrumentation, counts the number of flops performed.

Partially developped by Claude (AI), tested and verified by me.
DeltaFile
+295-0compiler-rt/lib/instrumentor-examples/flop-counter/rt.h
+295-0compiler-rt/lib/instrumentor-examples/flop-counter/instrumentor_runtime.h
+181-0compiler-rt/lib/instrumentor-examples/flop-counter/flop_counter_runtime.cpp
+107-0compiler-rt/lib/instrumentor-examples/flop-counter/README.md
+78-4llvm/lib/Transforms/IPO/Instrumentor.cpp
+70-0compiler-rt/test/instrumentor-examples/lit.cfg.py
+1,026-413 files not shown
+1,406-519 files

LLVM/project bb00708lldb/source/Plugins/Process/gdb-remote ProcessGDBRemote.cpp ProcessGDBRemote.h

Revert "[lldb][Windows] Remember server's primary stop thread on gdb-remote s…"

This reverts commit bd89ac741dff1a6edec15821b719a34ab5646f3f.
DeltaFile
+0-9lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
+0-3lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
+0-122 files

LLVM/project c994d6b.github new-prs-labeler.yml, llvm/docs LangRef.md LangRef.rst

[docs] Rename LangRef.{rst|md}

Tracking issue: #201242

This commit does not use valid markdown, so the docs will not build, but they will be fixed in an immediate follow-up commit that does the migration.
DeltaFile
+33,097-0llvm/docs/LangRef.md
+0-33,097llvm/docs/LangRef.rst
+1-1.github/new-prs-labeler.yml
+1-1llvm/docs/AddingConstrainedIntrinsics.rst
+33,099-33,0994 files

LLVM/project a7263belldb/include/lldb/Breakpoint Breakpoint.h, lldb/source/Breakpoint Breakpoint.cpp

[lldb] Remove ConstString from Breakpoint::GetMatchingFileLine (#205210)
DeltaFile
+2-1lldb/source/Breakpoint/Breakpoint.cpp
+1-1lldb/include/lldb/Breakpoint/Breakpoint.h
+1-1lldb/source/Commands/CommandObjectBreakpoint.cpp
+4-33 files

LLVM/project e522c11clang/lib/CIR/CodeGen CIRGenExprScalar.cpp, clang/test/CIR/CodeGen unary-expr-or-type-trait-32bit.cpp

[CIR] Use the AST result type for sizeof/alignof constants (#203942)

On targets where `size_t` is narrower than 64 bits (e.g. `i686`), CIR
codegen for `sizeof`/`alignof`/`__builtin_vectorelements` crashes with a
type/value bitwidth mismatch.

The result of these expressions is `size_t`, but the emitted integer
constant was built with a hardcoded 64-bit type. `EvaluateKnownConstInt`
returns an `APSInt` with the width of the AST result type (32 bits on
this target), so it no longer matches the `IntAttr`'s type and trips the
`IntAttr` verifier.

  ### How to Reproduce
  ```c++
  using size_t = decltype(sizeof(int));
  size_t size_of_int() { return sizeof(int); }

  clang -cc1 -std=c++20 -triple i686-unknown-linux-gnu -fclangir \
    -emit-cir test.cpp -o test.cir

    [9 lines not shown]
DeltaFile
+38-0clang/test/CIR/CodeGen/unary-expr-or-type-trait-32bit.cpp
+5-3clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
+43-32 files

LLVM/project 62a3a16llvm/lib/Target/AMDGPU AMDGPUISelLowering.cpp SIISelLowering.cpp, llvm/test/CodeGen/AMDGPU s-barrier-signal-var-gep.ll

[AMDGPU] Fold constant offsets into named barrier addresses

Allow isOffsetFoldingLegal to fold a constant offset into an LDS
named-barrier global, and include the node offset when materializing the
LDS address in LowerGlobalAddress. s_barrier_signal_var on a GEP'd named
barrier now selects the immediate form, matching a bare global and GlobalISel.

Change-Id: I2ce500917c3d47cd3687473406decc7430d73361
Assisted-by: Cursor
DeltaFile
+11-5llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
+12-1llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+1-2llvm/test/CodeGen/AMDGPU/s-barrier-signal-var-gep.ll
+24-83 files

LLVM/project 6c5b66bllvm/test/CodeGen/AMDGPU s-barrier-signal-var-gep.ll

[AMDGPU] Pre-commit test for constant-offset named barrier signal_var

A GEP into a named-barrier array (&bars[1]) lowers s_barrier_signal_var to
the dynamic m0 form on SelectionDAG, unlike the bare global and GlobalISel.

Change-Id: I8846eb200b1e28785adfdfcaa082390170f4ea2d
Assisted-by: Cursor
DeltaFile
+63-0llvm/test/CodeGen/AMDGPU/s-barrier-signal-var-gep.ll
+63-01 files

LLVM/project 9e80b89lldb/tools/debugserver/source RNBRemote.cpp

[lldb] Use heuristics to extend rather than replace error message (#205196)

When an attach fails, HandlePacket_A tries to explain why. The last two
checks are heuristics that discard any error debugserver already
produced for this specific failure.

The guess can be wrong, for example the PT_DENY_ATTACH test case from
#204688 is incorrectly reported as failing due to it running in a
non-interactive debug session on the bots.

Include debugserver's real error into the heuristic message, instead of
replacing it, so the real reason is never lost.
DeltaFile
+15-8lldb/tools/debugserver/source/RNBRemote.cpp
+15-81 files

LLVM/project d9a1ed0offload/test CMakeLists.txt

[offload] Add kernel replay tool to tests' dependencies (#205209)
DeltaFile
+4-2offload/test/CMakeLists.txt
+4-21 files

LLVM/project 3e414a3llvm/docs ProgrammersManual.md SourceLevelDebugging.md

[docs] Migrate 22 popular LLVM docs to MyST (#201244)

This was done with LLM assistance.

I rebuilt the LLVM docs, opened all 22 docs in a browser and scrolled
through them, and caught and fixed a few errors.

Tracking issue: #201242 
Migration guide docs:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines
RFC:
https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/90840
DeltaFile
+2,000-2,303llvm/docs/ProgrammersManual.md
+1,306-1,457llvm/docs/SourceLevelDebugging.md
+1,240-1,267llvm/docs/WritingAnLLVMBackend.md
+873-1,057llvm/docs/CodeGenerator.md
+851-906llvm/docs/CodingStandards.md
+883-778llvm/docs/CMake.md
+7,153-7,76817 files not shown
+11,232-12,16523 files

LLVM/project 64d386ellvm/docs ProgrammersManual.md ProgrammersManual.rst

[docs] Rename 22 popular LLVM docs .rst -> .md (#201243)

Tracking issue: #201242
RFC: https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/90840
Migration guide: https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines

Update filename references, but leave the docs with reST syntax to
ensure rename detection works.

This intentionally breaks the documentation build, but I will immediately follow up by merging the PR that fixes it.
DeltaFile
+4,257-0llvm/docs/ProgrammersManual.md
+0-4,257llvm/docs/ProgrammersManual.rst
+0-2,502llvm/docs/CodeGenerator.rst
+2,502-0llvm/docs/CodeGenerator.md
+0-2,490llvm/docs/SourceLevelDebugging.rst
+2,490-0llvm/docs/SourceLevelDebugging.md
+9,249-9,24948 files not shown
+23,162-23,16254 files

LLVM/project cd3bfc1llvm/lib/Transforms/Utils ScalarEvolutionExpander.cpp, llvm/test/Transforms/LoopStrengthReduce/X86 lcssa-preservation-regression.ll

[SCEV] Preserve LCSSA when reusing dominating variable

This seems to just be a missing case in SCEV. This came up when looking
at making LSR preserve LCSSA for the NewPM. Regression test of that
nature has been added.

Reviewers: fhahn, nikic, arsenm

Pull Request: https://github.com/llvm/llvm-project/pull/192831
DeltaFile
+40-0llvm/test/Transforms/LoopStrengthReduce/X86/lcssa-preservation-regression.ll
+2-0llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
+42-02 files

LLVM/project 77c624fllvm/include/llvm/Analysis MemoryBuiltins.h, llvm/include/llvm/IR InstrTypes.h

[MemoryBuiltins][NFC] Allow users to retrieve detailed (de)allocation info

There are some helpers to inspect a value or call but not all
information about the (de)allocation are made available outside of
MemoryBuiltins.cpp. The two new functions allow users a more in-depth
view of (de)allocations through a single API. To help with this, we now
read the alloc_align attribute to provide better alignment information
to users. alloc-family is used as well. Two new helpers provide argument
numbers, rather than values.

Co-authored-by: Antonio Frighetto <me at antoniofrighetto.com>
DeltaFile
+120-39llvm/lib/Analysis/MemoryBuiltins.cpp
+42-0llvm/include/llvm/Analysis/MemoryBuiltins.h
+10-3llvm/lib/IR/Instructions.cpp
+4-0llvm/include/llvm/IR/InstrTypes.h
+176-424 files

LLVM/project 7e0d658clang/include/clang/AST OpenMPClause.h, clang/lib/Sema SemaOpenMP.cpp

[OpenMP] Introduce the ompx_name clause for kernel naming

This adds support for the ompx_name clause that allows users to specify
custom kernel names for OpenMP target offloading regions. The clause
accepts a string literal and overrides the default compiler-generated
kernel names.

Example usage:
  #pragma omp target ompx_name("my_kernel")
  { ... }

Kernel names need to be unique or they are diagnosed at compile or link
time as errors.

Co-Authored-By: Claude (claude-sonnet-4.5) <noreply at anthropic.com>
DeltaFile
+78-0offload/test/offloading/ompx_name.c
+62-0clang/test/OpenMP/ompx_name_messages_errors.cpp
+53-0clang/test/OpenMP/ompx_name_codegen.cpp
+40-0offload/test/offloading/ompx_name_duplicate_link.c
+36-0clang/lib/Sema/SemaOpenMP.cpp
+33-0clang/include/clang/AST/OpenMPClause.h
+302-017 files not shown
+422-1023 files

LLVM/project 5ad66bdllvm/docs ProjectGovernance.rst

[docs] Minor edits to project governace docs (#203149)

s/non-private/public/

Pencil in the 2027 calendar year election dates, so they are posted well
in advance and we have a link anchor we can share.
DeltaFile
+12-3llvm/docs/ProjectGovernance.rst
+12-31 files

LLVM/project 8fc68edllvm/test/Transforms/LoopStrengthReduce/X86 lcssa-preservation-regression.ll

fix

Created using spr 1.3.7
DeltaFile
+1-5llvm/test/Transforms/LoopStrengthReduce/X86/lcssa-preservation-regression.ll
+1-51 files

LLVM/project b30f772llvm/test/Transforms/LoopStrengthReduce/X86 lcssa-preservation-regression.ll

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+1-5llvm/test/Transforms/LoopStrengthReduce/X86/lcssa-preservation-regression.ll
+1-51 files

LLVM/project 0d15de9llvm/test/Transforms/LoopStrengthReduce/X86 lcssa-preservation-regression.ll

fix

Created using spr 1.3.7
DeltaFile
+1-5llvm/test/Transforms/LoopStrengthReduce/X86/lcssa-preservation-regression.ll
+1-51 files

LLVM/project fa016f6llvm/test/tools/llvm-cas validation.test

[llvm-cas] Fix validation test on Ubuntu / uutils v0.2.2, NFC (#205199)

Work around uutils/coreutils#9128 by implementing the 40 byte truncation
in Python. Otherwise, this test fails out of the box on Ubuntu 25.10.
GNU coreutils supports -s=arg, but Mac truncate does not. Resorting to
Python seemed like the cleanest solution. The next best idea was to use
subshells or other techniques to calculate the file size and subtract
40, but that seemed excessive.
DeltaFile
+3-1llvm/test/tools/llvm-cas/validation.test
+3-11 files

LLVM/project 201cf31flang/include/flang/Optimizer/Analysis AliasAnalysis.h, flang/lib/Optimizer/Analysis AliasAnalysis.cpp

[flang] Reduce FIR AA overhead for functions with one scope. (#204009)

Avoid overheads of collectScopedOrigins and
getDeclarationScope/DominanceInfo
when the values passed to FIR AA belong to a function with a single
dummy scope.
DeltaFile
+48-4flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
+27-10flang/test/Analysis/AliasAnalysis/alias-analysis-scoped-origins.fir
+15-0flang/include/flang/Optimizer/Analysis/AliasAnalysis.h
+6-3flang/test/Analysis/AliasAnalysis/alias-analysis-host-assoc.fir
+96-174 files