LLVM/project b8e3e72llvm/test/tools/llvm-ir2vec/bindings ir2vec-bindings.py, llvm/tools/llvm-ir2vec/Bindings PyIR2Vec.cpp

Revert "[llvm-ir2vec] Adding Inst Embeddings Map API to ir2vec python binding…"

This reverts commit 4f84347b2e7e02b4fbcb43376a93a1e9dd198c66.
DeltaFile
+42-32llvm/tools/llvm-ir2vec/lib/Utils.cpp
+1-42llvm/tools/llvm-ir2vec/Bindings/PyIR2Vec.cpp
+0-38llvm/test/tools/llvm-ir2vec/bindings/ir2vec-bindings.py
+0-7llvm/tools/llvm-ir2vec/lib/Utils.h
+43-1194 files

LLVM/project 447eba8lldb/source/Target Target.cpp, lldb/unittests/Target ScratchTypeSystemTest.cpp CMakeLists.txt

[lldb][Target] Allow eLanguageTypeAssembly to use ScratchTypeSystemClang (#183771)

After cleaning up some of our `LanguageType`/`SourceLangage`
round-tripping (see `7f51a2a47d2e706d04855b0e41690ebafa2b3238`), a CU
with `DW_LANG_MIPS_Assembler` will get a language type of
`eLanguageTypeAssembly` (as opposed to `eLanguageTypeMipsAssembler`).
Reason being that there is no `DW_LNAME_` (DWARFv6 language code) for
`MIPS Assembler`, only for generic `Assembly`. So it's not possible to
round-trip cleanly between pre-DWARFv6 and DWARFv6 language codes, which
LLDB relies on for storing language types (and will lean into more
heavily in the future). This broke a special provision we have where we
allow `ScratchTypeSystemClang` to be used when evaluating expressions in
assembly CUs (i.e., CUs where the debug-info explicitly sets the
language to assembly).

If we ever want to distinguish MIPS from other Assembly, the proper way
to do so is introduce a `DW_LNAME_Mips_Assembler`. For now, this patch
adds another case for `eLanguageTypeAssembly` in
`GetScratchTypeSystemForLanguage`.

    [6 lines not shown]
DeltaFile
+59-0lldb/unittests/Target/ScratchTypeSystemTest.cpp
+2-1lldb/source/Target/Target.cpp
+2-0lldb/unittests/Target/CMakeLists.txt
+63-13 files

LLVM/project fd578f7openmp/runtime/src CMakeLists.txt

[libomp] Fix hwloc include for non-standard paths (#184087)

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

---------

Co-authored-by: Michael Kruse <llvm-project at meinersbur.de>
DeltaFile
+10-4openmp/runtime/src/CMakeLists.txt
+10-41 files

LLVM/project 41fc9b9llvm/lib/Analysis LoopAccessAnalysis.cpp, llvm/test/Transforms/LoopVectorize non-vectorizable-call-remark.ll

[LAA] Fix recordAnalysis receiving null Instruction pointer (#183512)

When a memory-reading or memory-writing instruction is not a
LoadInst/StoreInst, the dyn_cast to Ld/St returns nullptr, which is then
passed to recordAnalysis. This causes the optimization remark to fall
back to the loop header location instead of pointing at the actual
problematic instruction.

Pass &I (the actual Instruction) instead.
DeltaFile
+95-0llvm/test/Transforms/LoopVectorize/non-vectorizable-call-remark.ll
+3-3llvm/lib/Analysis/LoopAccessAnalysis.cpp
+98-32 files

LLVM/project cf8597bclang/include/clang/Basic DiagnosticSerializationKinds.td, clang/include/clang/Serialization ASTReader.h

[clang][Modules] Handle relocated modules during implicit module builds (#181836)

* To avoid the build time overhead of checking for relocated modules,
  only check it once per build session.
* Enable relocated module checks in the dependency scanner.
* Add remarks to know when this is happening with `-Rmodule-validation`

This check is necessary to be able to handle new libraries appearing in
earlier search paths. This is a valid scenario when dependency info
changes between incremental builds of the same scheme, thus new build
sessions.
It is still malformed to expect new versions of libraries to be added
within the same build session.

resolves: rdar://169174750
DeltaFile
+79-30clang/lib/Serialization/ASTReader.cpp
+71-0clang/test/ClangScanDeps/build-session-validation-relocated-modules.c
+55-0clang/test/Modules/build-session-validation-relocated-modules.c
+6-9clang/test/ClangScanDeps/modules-relocated-mm-macro.c
+15-0clang/include/clang/Serialization/ASTReader.h
+7-0clang/include/clang/Basic/DiagnosticSerializationKinds.td
+233-392 files not shown
+236-438 files

LLVM/project 2d1b3e7llvm/lib/Transforms/InstCombine InstCombineSimplifyDemanded.cpp, llvm/test/Transforms/InstCombine simplify-demanded-fpclass.ll

InstCombine: Support extractvalue in SimplifyDemandedFPClass

Previously this only handled extractvalue of frexp.
DeltaFile
+68-0llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll
+6-1llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+74-12 files

LLVM/project d7eec97clang/include/clang/APINotes APINotesReader.h, clang/lib/APINotes APINotesReader.cpp APINotesManager.cpp

[APINotes] Refactor APINotesReader to propagate llvm::Error  (#183812)

**Context:** While exploring the `APINotes` codebase, I found 54 `FIXME`
comments in `APINotesReader.cpp` stating: `// FIXME this drops the error
on the floor.`

This happened because the internal `read*Block` methods returned a
boolean, and the `APINotesReader` constructor reported failures via a
`bool &Failed` out-parameter. This forced the actual `llvm::Errors`
returned from the bitstream cursor to be silently consumed with
`consumeError()`.

This patch refactors this behavior to properly propagate the errors up
the stack.

**Changes in this patch:**

**1.** Changed all `read*Block` methods in
`APINotesReader::Implementation` to return `llvm::Error` instead of

    [12 lines not shown]
DeltaFile
+430-403clang/lib/APINotes/APINotesReader.cpp
+11-4clang/lib/APINotes/APINotesManager.cpp
+4-3clang/include/clang/APINotes/APINotesReader.h
+445-4103 files

LLVM/project 55e1732llvm/lib/Transforms/InstCombine InstCombineSimplifyDemanded.cpp, llvm/test/Transforms/InstCombine simplify-demanded-fpclass.ll

InstCombine: Support extractvalue in SimplifyDemandedFPClass

Previously this only handled extractvalue of frexp.
DeltaFile
+68-0llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll
+5-1llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+73-12 files

LLVM/project bb9a361llvm/lib/Target/SystemZ SystemZAsmPrinter.cpp

Fix formatting
DeltaFile
+111-112llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
+111-1121 files

LLVM/project 07192e3openmp/runtime/src CMakeLists.txt

Update openmp/runtime/src/CMakeLists.txt

Co-authored-by: Michael Kruse <llvm-project at meinersbur.de>
DeltaFile
+1-1openmp/runtime/src/CMakeLists.txt
+1-11 files

LLVM/project 148b10bflang/lib/Lower/OpenMP ClauseProcessor.cpp, flang/lib/Semantics resolve-names.cpp

[flang][OpenMP] Support custom mappers in target update to/from clauses (#169673)

Implement support for the OpenMP `mapper` modifier on `target update` `to` and
`from` clauses in Flang.

Semantic name resolution is extended to bind the mapper symbol for
`OmpClause::To` and `OmpClause::From` via a shared `ResolveMapperModifier`
helper. Lowering is extended in `ClauseProcessor` with a `getMapperIdentifier`
template helper to extract the mapper name for both `map` and `target update`
clauses and forward it to `omp.map_info`.

Fixes #168701.

Reviewed By: TIFitis, kparzysz
Assited By: Copilot( For review and articulations of messages)
DeltaFile
+85-0offload/test/offloading/fortran/target-update-custom-mapper.f90
+44-24flang/lib/Semantics/resolve-names.cpp
+36-19flang/lib/Lower/OpenMP/ClauseProcessor.cpp
+34-0flang/test/Lower/OpenMP/declare-mapper.f90
+30-0flang/test/Semantics/OpenMP/target-update-mapper.f90
+229-435 files

LLVM/project 9488779clang/tools/clang-linker-wrapper ClangLinkerWrapper.cpp, flang/lib/Optimizer/HLFIR/Transforms ConvertToFIR.cpp

feedback

Created using spr 1.3.7
DeltaFile
+439-15llvm/test/CodeGen/X86/known-never-zero.ll
+12-98utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
+92-0mlir/test/Dialect/Vector/canonicalize.mlir
+47-44clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
+56-24flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
+34-44llvm/tools/llvm-ir2vec/lib/Utils.cpp
+680-22530 files not shown
+1,103-30936 files

LLVM/project 2b0b54bclang/tools/clang-linker-wrapper ClangLinkerWrapper.cpp, flang/lib/Optimizer/HLFIR/Transforms ConvertToFIR.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+439-15llvm/test/CodeGen/X86/known-never-zero.ll
+12-98utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
+92-0mlir/test/Dialect/Vector/canonicalize.mlir
+47-44clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
+56-24flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
+34-44llvm/tools/llvm-ir2vec/lib/Utils.cpp
+680-22530 files not shown
+1,103-30936 files

LLVM/project 423f86dclang/tools/clang-linker-wrapper ClangLinkerWrapper.cpp, flang/lib/Optimizer/HLFIR/Transforms ConvertToFIR.cpp

feedback

Created using spr 1.3.7
DeltaFile
+439-15llvm/test/CodeGen/X86/known-never-zero.ll
+12-98utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
+92-0mlir/test/Dialect/Vector/canonicalize.mlir
+47-44clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
+56-24flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
+34-44llvm/tools/llvm-ir2vec/lib/Utils.cpp
+680-22530 files not shown
+1,103-30936 files

LLVM/project a1a9598llvm/lib/Target/SystemZ SystemZAsmPrinter.cpp SystemZAsmPrinter.h, llvm/test/CodeGen/SystemZ zos-section-1.ll zos-prologue-epilog.ll

[SystemZ][z/OS] Remove use of subsections.

HLASM has no notion of subsections. There are several possible solutions
how to deal with this. However,

- using a different section introduces a lot of relocations, which slows
  down the binder later
- emitting the PPA1 after the code changes the location which may break
  existing tools

The choosen solution is to record the PPA1 data, and emit them at the
end of the assembly into the code section. This solves both issues,
at the expense of having to do some bookkeeping.

This change moves the position of the PPA2, too, but this is less
critical.
DeltaFile
+174-151llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
+24-24llvm/test/CodeGen/SystemZ/zos-section-1.ll
+26-20llvm/test/CodeGen/SystemZ/zos-prologue-epilog.ll
+22-17llvm/test/CodeGen/SystemZ/zos-ppa1-argarea.ll
+24-3llvm/lib/Target/SystemZ/SystemZAsmPrinter.h
+10-12llvm/test/CodeGen/SystemZ/zos-hlasm-out.ll
+280-2275 files not shown
+293-24811 files

LLVM/project f3e8508clang/lib/Analysis/Scalable/Serialization/JSONFormat JSONFormatImpl.cpp TUSummary.cpp, clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest LUSummaryTest.cpp TUSummaryTest.cpp

[clang][ssaf]  Add `JSONFormat` serialization support for `LUSummary` and `LUSummaryEncoding`

This change extends `SerializationFormat` and `JSONFormat` with APIs to
read and write `LUSummary` and `LUSummaryEncoding`, completing the
serialization interface for both TU-level and LU-level summaries. As
part of the implementation, common serialization infrastructure has been
extracted into `JSONFormatImpl.{cpp, h}`, eliminating duplication across
the TU and LU translation units. A comprehensive `LUSummaryTest` suite
has been added to test `LUSummary` and `LUSummaryEncoding`, mirroring
the structure of the existing `TUSummaryTest` suite. Shared testing
infrastructure has been extracted into `JSONFormatTest.{cpp, h}`.
DeltaFile
+2,524-0clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/LUSummaryTest.cpp
+54-594clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp
+626-0clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/JSONFormatTest.cpp
+569-8clang/lib/Analysis/Scalable/Serialization/JSONFormat/JSONFormatImpl.cpp
+3-342clang/lib/Analysis/Scalable/Serialization/JSONFormat/TUSummary.cpp
+3-248clang/lib/Analysis/Scalable/Serialization/JSONFormat/TUSummaryEncoding.cpp
+3,779-1,19210 files not shown
+4,305-1,32316 files

LLVM/project 9ae1431utils/bazel/llvm-project-overlay/mlir BUILD.bazel, utils/bazel/llvm-project-overlay/mlir/test BUILD.bazel

[mlir][bazel] Fix build after moving AMX into X86 in #183717. (#184165)

This PR fixes the bazel build that got broken by #183717, which moved
the AMX dialect into the X86 dialect. The fix consists of replicating
the changes from the CMake files into BUILD files as usual; in this
case, mostly removing the AMX dialect targets, adding a few new
references to the corresponding X86 targets, and adding a few new
dependencies to the existing X86 targets due to the new code.

Signed-off-by: Ingo Müller <ingomueller at google.com>
DeltaFile
+12-98utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
+1-1utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
+13-992 files

LLVM/project 95832c9clang/test/Driver linker-wrapper-hip-no-rdc.c, clang/tools/clang-linker-wrapper ClangLinkerWrapper.cpp

[LinkerWrapper] Fix a bunch of minor issues and typos (#183679)

Summary:
A bunch of small issues found through linting and LLM checking.

- Broken sort comparator that violated strict weak ordering (UB)
- SearchLibrary corrupting .lib filenames via erroneous drop_front()
- Hardcoded x86_64-unknown-linux-gnu host triple in AMDGPU fatbinary
- OffloadFile loop variable shadowing its own type, causing std::move on
the type rather than the variable
- GetDeviceInput calling exit() directly instead of returning Error
- Redundant double-wrapping of DerivedArgList
- Various typo and style fixes
DeltaFile
+47-44clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
+3-3clang/test/Driver/linker-wrapper-hip-no-rdc.c
+50-472 files

LLVM/project 82d747ellvm/test/CodeGen/X86 known-never-zero.ll

[X86] known-never-zero.ll - add additional demanded elts vector test coverage (#184159)

vector variants of existing tests where we only demand 1 element for the
never zero test
DeltaFile
+302-0llvm/test/CodeGen/X86/known-never-zero.ll
+302-01 files

LLVM/project b11a424flang/lib/Optimizer/HLFIR/Transforms ConvertToFIR.cpp, flang/test/HLFIR assign-codegen.fir

[flang] Inline trivial scalar allocatable assignments in HLFIR-to-FIR (#183177)

For trivial scalar allocatable assignments (non-polymorphic,
non-character, non-array, non-temporary), inline the assignment directly
instead of calling the `_FortranAAssign` runtime. The inlined code
checks whether the allocatable is already allocated: if so, it stores
directly; otherwise, it allocates memory via `fir.allocmem`, stores, and
updates the box descriptor. The if-branch is necessary to handle both
cases:

```fortran
integer, allocatable :: k
allocate(k)
k = 42    ! already allocated: store directly
```

```fortran
integer, allocatable :: k
k = 42    ! not allocated: allocmem, store, update box
```
DeltaFile
+56-24flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
+56-0flang/test/HLFIR/assign-codegen.fir
+1-1flang/test/Lower/OpenMP/cfg-conversion-omp.private.f90
+113-253 files

LLVM/project 3686a82mlir/include/mlir/Dialect/WasmSSA/IR WasmSSAOps.td

[MLIR][WASMSSA] Fix formatting of code blocks in WasmSSAOps.td
DeltaFile
+43-43mlir/include/mlir/Dialect/WasmSSA/IR/WasmSSAOps.td
+43-431 files

LLVM/project 1157656lldb/source/Plugins/Process/FreeBSD-Kernel-Core RegisterContextFreeBSDKernelCore_arm64.cpp

[lldb][Process/FreeBSDKernelCore] Fix RegisterContext for arm64 (#183947)

Since `pcb.lr` always contains the value of pc, `gpr_lr_arm64` should be
unavailable. This also fixes the case where `gpr_pc_arm64` displays sp
not lr field in pcb.

Reported by: jrtc27
Fixes: 4f0eb3d3af443ff54425ebafce83b87ee61ee403 (#180222)

---------

Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>
DeltaFile
+4-5lldb/source/Plugins/Process/FreeBSD-Kernel-Core/RegisterContextFreeBSDKernelCore_arm64.cpp
+4-51 files

LLVM/project f5e8e98mlir/lib/Dialect/Vector/IR VectorOps.cpp, mlir/test/Dialect/Vector canonicalize.mlir

[mlir][VectorOps] Fold extract on constant_mask (#183780)

Fold `vector.extract(vector.constant_mask)` to `vector.constant_mask` if
possible.

If the static position is outside of the masked area, the pattern will
fold to a constant all-false value instead.

Dynamic positions are only supported if the mask covers the entire
vector in that dimension.

Assisted-by: Claude Code

---------

Signed-off-by: Lukas Sommer <lukas.sommer at amd.com>
DeltaFile
+92-0mlir/test/Dialect/Vector/canonicalize.mlir
+66-3mlir/lib/Dialect/Vector/IR/VectorOps.cpp
+158-32 files

LLVM/project f78a805clang/lib/Driver/ToolChains Clang.cpp, clang/test/Driver linker-wrapper-canonical-prefixes.c hip-options.hip

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+25-0clang/test/Driver/linker-wrapper-canonical-prefixes.c
+9-0clang/test/Driver/hip-options.hip
+9-0clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
+4-0clang/lib/Driver/ToolChains/Clang.cpp
+4-0clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td
+51-05 files

LLVM/project 5da5e60clang/test/Driver linker-wrapper-canonical-prefixes.c, clang/tools/clang-linker-wrapper ClangLinkerWrapper.cpp LinkerWrapperOpts.td

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+25-0clang/test/Driver/linker-wrapper-canonical-prefixes.c
+9-0clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
+4-0clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td
+38-03 files

LLVM/project 97c771dclang/test/Driver linker-wrapper-canonical-prefixes.c, clang/tools/clang-linker-wrapper ClangLinkerWrapper.cpp LinkerWrapperOpts.td

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+25-0clang/test/Driver/linker-wrapper-canonical-prefixes.c
+9-0clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
+4-0clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td
+38-03 files

LLVM/project 3357e48clang/lib/APINotes APINotesWriter.cpp, clang/test/APINotes objc_designated_init_protocol.m

[clang/APINotes] Fix assertion crash in addObjCMethod for protocol DesignatedInit methods (#183799)

DeltaFile
+17-0clang/test/APINotes/objc_designated_init_protocol.m
+5-1clang/lib/APINotes/APINotesWriter.cpp
+6-0clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/APINotes/SomeKit.apinotes
+4-0clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Headers/SomeKit.h
+32-14 files

LLVM/project 6413951llvm/test/CodeGen/X86 known-never-zero.ll

[X86] known-never-zero.ll - remove unnecessary declarations (#184142)

DeltaFile
+0-15llvm/test/CodeGen/X86/known-never-zero.ll
+0-151 files

LLVM/project bd02c17llvm/test/CodeGen/X86 known-never-zero.ll

[X86] known-never-zero.ll - add shift right vector test coverage for #183577 (#184140)

DeltaFile
+137-0llvm/test/CodeGen/X86/known-never-zero.ll
+137-01 files

LLVM/project a8fb8ebllvm/lib/Target/AMDGPU AMDGPUSubtarget.h

AMDGPU: Stop copying triple into AMDGPUSubtarget (#184147)

Really the triple doesn't belong here at all.
DeltaFile
+2-2llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
+2-21 files