Skip to content

Conversation

@iclsrc
Copy link
Collaborator

@iclsrc iclsrc commented Dec 24, 2025

calebwat and others added 30 commits December 10, 2025 11:37
  CONFLICT (content): Merge conflict in clang/lib/Driver/ToolChains/HIPAMD.cpp
…… (#171647)

…pt (#169559)"

This reverts commit 4da31b6.
This obsoletes the FIXME in #85686, but it doesn't address the issue
where moves from CCR will still be emitted on 68000. However, all such
moves will now be emitted as physreg copies, and the issue can thus be
handled there in a followup change.
  CONFLICT (modify/delete): .github/workflows/bazel-checks.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/bazel-checks.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/build-ci-container-tooling.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/build-ci-container-tooling.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/build-ci-container-windows.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/build-ci-container-windows.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/build-ci-container.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/build-ci-container.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/build-metrics-container.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/build-metrics-container.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/check-ci.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/check-ci.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/ci-post-commit-analyzer.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/ci-post-commit-analyzer.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/commit-access-greeter.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/commit-access-greeter.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/commit-access-review.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/commit-access-review.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/docs.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/docs.yml left in tree.
  CONFLICT (content): Merge conflict in .github/workflows/email-check.yaml
  CONFLICT (modify/delete): .github/workflows/gha-codeql.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/gha-codeql.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/hlsl-test-all.yaml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/hlsl-test-all.yaml left in tree.
  CONFLICT (modify/delete): .github/workflows/issue-release-workflow.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/issue-release-workflow.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/issue-subscriber.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/issue-subscriber.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/issue-write.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/issue-write.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/libc-fullbuild-tests.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/libc-fullbuild-tests.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/libc-overlay-tests.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/libc-overlay-tests.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/libclang-abi-tests.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/libclang-abi-tests.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/libclang-python-tests.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/libclang-python-tests.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/libcxx-build-and-test.yaml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/libcxx-build-and-test.yaml left in tree.
  CONFLICT (modify/delete): .github/workflows/libcxx-build-containers.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/libcxx-build-containers.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/libcxx-check-generated-files.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/libcxx-check-generated-files.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/libcxx-run-benchmarks.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/libcxx-run-benchmarks.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/llvm-abi-tests.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/llvm-abi-tests.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/merged-prs.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/merged-prs.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/mlir-spirv-tests.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/mlir-spirv-tests.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/new-prs.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/new-prs.yml left in tree.
  CONFLICT (content): Merge conflict in .github/workflows/pr-code-format.yml
  CONFLICT (modify/delete): .github/workflows/pr-code-lint.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/pr-code-lint.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/pr-request-release-note.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/pr-request-release-note.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/pr-subscriber.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/pr-subscriber.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/premerge.yaml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/premerge.yaml left in tree.
  CONFLICT (modify/delete): .github/workflows/release-asset-audit.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/release-asset-audit.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/release-binaries.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/release-binaries.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/release-documentation.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/release-documentation.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/release-doxygen.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/release-doxygen.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/release-lit.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/release-lit.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/release-sources.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/release-sources.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/release-tasks.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/release-tasks.yml left in tree.
  CONFLICT (content): Merge conflict in .github/workflows/scorecard.yml
  CONFLICT (modify/delete): .github/workflows/spirv-tests.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/spirv-tests.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/test-unprivileged-download-artifact.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/test-unprivileged-download-artifact.yml left in tree.
  CONFLICT (modify/delete): .github/workflows/version-check.yml deleted in 765c420 and modified in HEAD.  Version HEAD of .github/workflows/version-check.yml left in tree.
/usr/bin/ld: tools/clang/unittests/Analysis/Scalable/CMakeFiles/ClangSca
lableAnalysisFrameworkTests.dir/ASTEntityMappingTest.cpp.o: undefined re
ference to symbol '_ZN5clang7ASTUnitD1Ev
…167754)

This adjusts the behavior of running dap_server.py directly to better
support the current state of development. A few parts of the 'main' body
were stale and not functional.

These improvements include:

* Instead of the custom tracefile / replay file parsing logic, I
adjusted the replay helper to handle parsing lldb-dap log files created
with the `LLDBDAP_LOG` env variable, allowing you to more easily run a
failing test like: `python3
lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
--adapter lldb-dap -r
lldb-test-build.noindex/tools/lldb-dap/console/TestDAP_console.test_custom_escape_prefix/dap.txt`
* Migrated argument parsing to `argparse`, that is in all verisons of
py3+ and has a few improvements over `optparse`.
* Corrected the existing arguments and updated `run_vscode` >
`run_adapter`. You can use this for simple debugging like: `xcrun
python3 lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
--adapter=lldb-dap --adapter-arg='--pre-init-command' --adapter-arg
'help' --program a.out --init-command 'help'`
Adds a flag COMPILER_RT_PROFILE_BAREMETAL, which disables the parts of
the profile runtime which require a filesystem or malloc. This minimal
library only requires string.h from the C library.

This is useful for profiling or code coverage of baremetal images, which
don't have filesystem APIs, and might not have malloc configured (or
have limited heap space).

Expected usage:

- Add code to your project to call
`__llvm_profile_get_size_for_buffer()` and
`__llvm_profile_write_buffer()` to write the profile data to a buffer in
memory, and then copy that data off the device using target-specific
tools.
- If you're using a linker script, set up your linker script to map the
profiling and coverage input sections to corresponding output sections
with the same name, and mark them KEEP. `__llvm_covfun` and
`__llvm_covmap` are non-allocatable, `__llvm_prf_names` is read-only
allocatable, and `__llvm_prf_cnts` and `__llvm_prf_data` are read-write
allocatable.
- The resulting data is in same format as the non-baremetal profiles.

There's some room for improvement here in the future for doing profiling
and code coverage for baremetal. If we revised the profiling format, and
introduced some additional host tooling, we could move some of the
metadata into non-allocated sections, and construct the profraw file on
the host. But this patch is sufficient for some use-cases.
Use the same twiden format for PseudoSF_VSETTM and PseudoSF_VSETTK
as other XSfmm pseudos. Though I don't think we use the operand from
these instructions.
… peelToTurnInvariantLoadsDereferenceable. (#171547)

llvm.assume intrinsics have the mayWriteToMemory property, but
won't prevent the load from becoming dereferenceable.
Add documentation for variadic `isa<>` in the LLVM Programmer's Manual.
…ge (#171705)

As it is done in `flang-rt/lib/runtime/edit-input.cpp`, emit a runtime
error message when trying to raise IEEE exception on the device.
`MapException` and `feraiseexcept` are used in the lowering of the
nearest intrinsic even on the device.
…utable in popen.cpp" (#171706)

Reverts llvm/llvm-project#171622

Co-authored-by: Andrew Haberlandt <[email protected]>
Previously we would hit an assertion failure when a relocation represented
by a PAuth ifunc required a GOT and the addend of a relocation did not fit
into the immediate operand of an ADD instruction. Fix it by extracting a
function for materializing arbitrary addends and using it to materialize
the addend.

Reviewers: fmayer, hvdijk

Pull Request: llvm/llvm-project#171707
Previously we would assert when a ValueTypeByHwMode was missing a case
for the current mode, now we report an error instead. Interestingly this
error only ocurrs when the DAG patterns use RegClassByHwMode, but not
normal RegisterClass instances. Found while I added RegClassByHwMode
to RISC-V and was getting an assertion due to `XLenFVT`/`XLenVecI32VT`
not having an entry for the default mode.

Reviewed By: arsenm

Pull Request: llvm/llvm-project#171254
Previously, we were emitting a broken AliasPatternCond array, outputting
`MyTarget::RegClassByHwModeRegClassID` which does not exist.
Instead, we now add a new predicate and pass the RegClassByHwMode index
as the value argument.

Pull Request: llvm/llvm-project#171264
printFlags takes care of inserting the correct amount of spaces,
depending on whether there are flags to print or not.
This pass implements the OpenACC loop tiling transformation for acc.loop
operations that have the tile clause (OpenACC 3.4 spec, section 2.9.8).

The tile clause specifies that the iterations of the associated loops
should be divided into tiles (rectangular blocks). The pass transforms a
single or nested acc.loop with tile clauses into a structure of "tile
loops" (iterating over tiles) containing "element loops" (iterating
within tiles).

For example, tiling a 2-level nested loop with tile(T1, T2):
```
  // Before tiling:
  acc.loop tile(T1, T2) control(%i, %j) = ...

  // After tiling:
  acc.loop control(%i) step (s1*T1) {        // tile loop 1
    acc.loop control(%j) step (s2*T2) {      // tile loop 2
      acc.loop control(%ii) = (%i) to (min(ub1, %i+s1*T1)) {
        acc.loop control(%jj) = (%j) to (min(ub2, %j+s2*T2)) {
          // loop body using %ii, %jj
        }
      }
    }
  }
```

Key features:
- Handles constant tile sizes and wildcard tile sizes ('*') which use a
configurable default tile size
- Properly handles collapsed loops with tile counts exceeding collapse
count by uncollapsing loops before tiling
- Distributes gang/worker/vector attributes appropriately: gang -> tile
loops, vector -> element loops
- Validates that tile size types are not wider than loop IV types
- Emits optimization remarks for tiling decisions

Three test files are added:
- acc-loop-tiling.mlir: Tests single and nested loop tiling with
constant tile sizes, unknown tile sizes (*), and loops with collapse
attributes
- acc-loop-tiling-invalid.mlir: Tests error diagnostic when tile size
type is wider than the loop IV type
- acc-loop-tiling-remarks.mlir: Tests optimization remarks emitted for
tiling decisions including default tile size selection

Co-authored-by: Vijay Kandiah <[email protected]>
llvm/llvm-project#169131

Should fix:
ASTEntityMappingTest.cpp.o: undefined reference to symbol
'_ZN4llvm3omp27isAllowedClauseForDirectiveENS0_9DirectiveENS0_6ClauseEj'

https://lab.llvm.org/buildbot/#/builders/10/builds/18851
That hopefully concludes the initial upstreaming.

Reviewers: jvoung

Reviewed By: jvoung

Pull Request: llvm/llvm-project#170951
… (#169779)

SelectionDAG uses the DAGCombiner to fold a load followed by a sext to a
load and sext instruction. For example, in x86 we will see that

```
%1 = load i32, ptr @GloBaRR
  #dbg_value(i32 %1, !43, !DIExpression(), !52)
%2 = sext i32 %1 to i64, !dbg !53
```

is converted to:

```
%0:gr64_nosp = MOVSX64rm32 $rip, 1, $noreg, @GloBaRR, $noreg, debug-instr-number 1, debug-location !51
DBG_VALUE $noreg, $noreg, !"Idx", !DIExpression(), debug-location !52
```

The `DBG_VALUE` needs to be transferred correctly to the new combined
instruction, and it needs to be appended with a `DIExpression` which
contains a `DW_OP_LLVM_fragment`, describing that the lower bits of the
virtual register contain the value.

This patch fixes the above described problem.
This patch fixes issues introduced by
llvm/llvm-project#171491 when running tests in
CI.

The shell tests expect certain characters when matching diagnostics.
With llvm/llvm-project#171491, those characters
can either be Unicode specific characters or their ASCII equivalent. The
tests were always expecting the ASCII version. This patch fixes this by
using a regex to match one or the other.
If the 'counted_by' value is signed, we will incorrectly allow accesses
when the value is negative. This has obvious bad effects as it will
allow accessing a huge swath of unallocated memory.

Also clarify and rearrange the parameters to make them more
perspicuous.

Fixes: #170987.
Update a test for llvm-project commit `5bc7b9d462f0 ("[llvm][dwarfdump]
Print the name (if available) of entities referenced by DW_AT_import
(#171859)", 2025-12-12)`.

Original commit:
KhronosGroup/SPIRV-LLVM-Translator@fedea4be9304a
@jsji jsji force-pushed the llvmspirv_pulldown branch from 47aaec4 to e8faabe Compare January 3, 2026 03:21
@jsji jsji temporarily deployed to WindowsCILock January 3, 2026 03:21 — with GitHub Actions Inactive
@jsji jsji deployed to WindowsCILock January 3, 2026 03:50 — with GitHub Actions Active
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

disable-lint Skip linter check step and proceed with build jobs

Projects

None yet

Development

Successfully merging this pull request may close these issues.