LLVM/project efd5fe3clang/lib/Driver/ToolChains Linux.cpp, clang/test/Driver linux-ld.c

[Driver][RISCV] Fix musl dynamic linker path for RISC-V sf/sp ABI (#202513)

Musl adds -sf or -sp suffixes to the path of dynamic linker (e.g.,
ld-musl-riscv64-sf.so.1):


https://git.musl-libc.org/cgit/musl/tree/configure?h=v1.2.6&id=9fa28ece75d8a2191de7c5bb53bed224c5947417#n732

---------

Co-authored-by: Chih-Mao Chen <cmchen at andestech.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply at anthropic.com>
DeltaFile
+18-0clang/test/Driver/linux-ld.c
+8-0clang/lib/Driver/ToolChains/Linux.cpp
+26-02 files

LLVM/project 1d27dabllvm/lib/Transforms/IPO ThinLTOBitcodeWriter.cpp LowerTypeTests.cpp, llvm/test/ThinLTO/X86 devirt_function_alias2.ll

[CFI] Create an external linkage alias instead of promoting internals
DeltaFile
+19-33llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
+35-0llvm/lib/Transforms/IPO/LowerTypeTests.cpp
+29-0llvm/test/Transforms/LowerTypeTests/promoted-internal.ll
+20-5llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
+10-7llvm/test/Transforms/ThinLTOBitcodeWriter/comdat.ll
+6-4llvm/test/ThinLTO/X86/devirt_function_alias2.ll
+119-494 files not shown
+130-5610 files

LLVM/project df108f9clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker StaticLibrary.h, clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat StaticLibrary.cpp

[clang][ssaf] Add `StaticLibrary` data structure (#205946)

This change introduces the `StaticLibrary` data structure, the SSAF analogue of `ar`, `libtool -static`, or `lib.exe`: a single-architecture bundle of `TUSummary` objects. `StaticLibrary` only stores `TUSummaryEncoding` because it will be used by `clang-ssaf-linker` that does not decode the summary data. We don't plan to create a decoded variant because there will be no consumer. Support for constructing and linking static libraries will be introduced in future PRs.

rdar://180665891
DeltaFile
+192-0clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/StaticLibrary.cpp
+125-0clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/top-level.test
+75-0clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/StaticLibrary.h
+49-0clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/io.test
+43-0clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/unsorted-members-input.json
+43-0clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/rt-multiple-members.json
+527-044 files not shown
+1,009-1550 files

LLVM/project d9d66bdllvm/lib/Transforms/IPO ThinLTOBitcodeWriter.cpp WholeProgramDevirt.cpp, llvm/test/ThinLTO/X86 devirt_function_alias2.ll

[CFI] Create an external linkage alias instead of promoting internals
DeltaFile
+20-33llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
+20-5llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
+10-7llvm/test/Transforms/ThinLTOBitcodeWriter/comdat.ll
+16-0llvm/lib/Transforms/IPO/LowerTypeTests.cpp
+6-4llvm/test/ThinLTO/X86/devirt_function_alias2.ll
+4-2llvm/test/Transforms/ThinLTOBitcodeWriter/split-vfunc-internal.ll
+76-513 files not shown
+83-569 files

LLVM/project 55df97cllvm/include/llvm/IR GlobalValue.h, llvm/include/llvm/Transforms/Utils AssignGUID.h

Reland #184065
DeltaFile
+61-17llvm/lib/Bitcode/Reader/BitcodeReader.cpp
+45-30llvm/lib/LTO/LTO.cpp
+64-2llvm/lib/IR/Globals.cpp
+49-3llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
+45-5llvm/include/llvm/IR/GlobalValue.h
+49-0llvm/include/llvm/Transforms/Utils/AssignGUID.h
+313-57120 files not shown
+872-416126 files

LLVM/project 925378cllvm/lib/Target/RISCV RISCV.td

[RISCV][NFC] Use true/false for boolean fields in RISCV.td (#206399)
DeltaFile
+4-4llvm/lib/Target/RISCV/RISCV.td
+4-41 files

LLVM/project 55cffacllvm/lib/Target/LoongArch LoongArchISelLowering.cpp LoongArchISelLowering.h, llvm/test/CodeGen/LoongArch/ir-instruction double-convert.ll float-convert.ll

Revert "[LoongArch] Custom scalar UINT_TO_FP and FP_TO_UINT with LSX instruct…"

This reverts commit 9f0b22c61153e8390e3eed74e4a9cf1160bd71fe.
DeltaFile
+2-51llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
+26-7llvm/test/CodeGen/LoongArch/ir-instruction/double-convert.ll
+25-7llvm/test/CodeGen/LoongArch/ir-instruction/float-convert.ll
+0-1llvm/lib/Target/LoongArch/LoongArchISelLowering.h
+53-664 files

LLVM/project f5faf29llvm/lib/Target/Lanai LanaiCodeGenPassBuilder.cpp

[Lanai] Force AsmPrinterEndPass (#206623)

So that no pass instrumentation ends up preventing the addition of this
necessary pass.

Also makes this consistent with X86.
DeltaFile
+1-1llvm/lib/Target/Lanai/LanaiCodeGenPassBuilder.cpp
+1-11 files

LLVM/project 0b7062eclang/lib/ScalableStaticAnalysis/Analyses SSAFAnalysesCommon.h

fix build issue
DeltaFile
+2-2clang/lib/ScalableStaticAnalysis/Analyses/SSAFAnalysesCommon.h
+2-21 files

LLVM/project fc654d4clang/include/clang/AST OpenMPClause.h

[Clang][OpenMP][NFC] Remove unnecessary LParentLoc in clause classes (#206386)

The LParentLoc is already a data member of the OMPVarListClause class.
The OMPThreadLimitClause and OMPNumTeamsClause classes inherit from
OMPVarListClause and should not need to have their own LParentLoc.
DeltaFile
+0-18clang/include/clang/AST/OpenMPClause.h
+0-181 files

LLVM/project dde9862llvm/lib/Target/MSP430 MSP430CodeGenPassBuilder.cpp MSP430PassRegistry.def

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

Created using spr 1.3.7

[skip ci]
DeltaFile
+69-0llvm/lib/Target/MSP430/MSP430CodeGenPassBuilder.cpp
+26-0llvm/lib/Target/MSP430/MSP430PassRegistry.def
+8-0llvm/lib/Target/MSP430/MSP430TargetMachine.h
+6-0llvm/lib/Target/MSP430/CMakeLists.txt
+6-0llvm/lib/Target/MSP430/MSP430.h
+5-0llvm/lib/Target/MSP430/MSP430ISelDAGToDAG.cpp
+120-06 files

LLVM/project 14703c9llvm/lib/Target/MSP430 MSP430CodeGenPassBuilder.cpp MSP430BranchSelector.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+68-0llvm/lib/Target/MSP430/MSP430CodeGenPassBuilder.cpp
+32-11llvm/lib/Target/MSP430/MSP430BranchSelector.cpp
+21-0llvm/lib/Target/MSP430/MSP430PassRegistry.def
+16-1llvm/lib/Target/MSP430/MSP430.h
+8-0llvm/lib/Target/MSP430/MSP430TargetMachine.h
+6-0llvm/lib/Target/MSP430/CMakeLists.txt
+151-122 files not shown
+157-138 files

LLVM/project df8b27dlldb/source/Target TraceDumper.cpp

[lldb][NFC] Change string types in static TraceDumper functions (#206604)

I plan on using this in a subsequent commit.
DeltaFile
+11-11lldb/source/Target/TraceDumper.cpp
+11-111 files

LLVM/project 8ed0ecflldb/source/Commands CommandCompletions.cpp

[lldb] Adjust SourceFileCompleter to use StringRef (#206603)

Instead of storing `const char *` (which are currently backed by
ConstStrings), it should instead store the FileSpec and extract the
Filename and Directory as needed.
DeltaFile
+16-16lldb/source/Commands/CommandCompletions.cpp
+16-161 files

LLVM/project 3516fe0lldb/include/lldb/Target Target.h, lldb/source/Target Target.cpp

[lldb][NFC] Change how Target stores BreakpointNames (#205419)

This changes 2 things:
1) BreakpointNameList is now called BreakpointNameMap to reflect the
   actual underlying data structure.
2) BreakpointNameMap goes from a `std::map` to a `llvm::StringMap` to
   eliminate the use of ConstString.
DeltaFile
+4-4lldb/source/Target/Target.cpp
+2-3lldb/include/lldb/Target/Target.h
+6-72 files

LLVM/project b7dd1f0llvm/lib/Target/MSP430 MSP430.h

rebase

Created using spr 1.3.7
DeltaFile
+0-1llvm/lib/Target/MSP430/MSP430.h
+0-11 files

LLVM/project 33700bfllvm/lib/Target/MSP430 MSP430.h

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+0-1llvm/lib/Target/MSP430/MSP430.h
+0-11 files

LLVM/project c147ab8llvm/lib/Target/MSP430 MSP430.h

rebase

Created using spr 1.3.7
DeltaFile
+0-1llvm/lib/Target/MSP430/MSP430.h
+0-11 files

LLVM/project 40bb3b9llvm/lib/Target/MSP430 MSP430CodeGenPassBuilder.cpp MSP430PassRegistry.def

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+69-0llvm/lib/Target/MSP430/MSP430CodeGenPassBuilder.cpp
+26-0llvm/lib/Target/MSP430/MSP430PassRegistry.def
+8-0llvm/lib/Target/MSP430/MSP430TargetMachine.h
+7-0llvm/lib/Target/MSP430/MSP430.h
+6-0llvm/lib/Target/MSP430/CMakeLists.txt
+5-0llvm/lib/Target/MSP430/MSP430ISelDAGToDAG.cpp
+121-06 files

LLVM/project fa2c466llvm/lib/Target/MSP430 MSP430.h MSP430ISelDAGToDAG.cpp

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

Created using spr 1.3.7

[skip ci]
DeltaFile
+7-0llvm/lib/Target/MSP430/MSP430.h
+5-0llvm/lib/Target/MSP430/MSP430ISelDAGToDAG.cpp
+12-02 files

LLVM/project c2c27afllvm/lib/Target/MSP430 MSP430.h MSP430ISelDAGToDAG.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+7-0llvm/lib/Target/MSP430/MSP430.h
+5-0llvm/lib/Target/MSP430/MSP430ISelDAGToDAG.cpp
+12-02 files

LLVM/project f386116llvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/test/Transforms/SLPVectorizer/X86 reduction-copyable-reused-scalars.ll

[SLP] Apply reused-scalar reduction counters at the vectorized lane

The horizontal reduction reuse-counter scale was placed by deduplicated
candidate order, but the emitted reduction vector lane order is defined by
the root node, which may be reordered or split (SplitVectorize). As a
result a repeat count could be applied to the wrong lane, producing a wrong
reduction result. Place each counter at the lane the matching candidate is
vectorized to.

Fixes #206476

Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/206611
DeltaFile
+11-24llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+1-1llvm/test/Transforms/SLPVectorizer/X86/reduction-copyable-reused-scalars.ll
+12-252 files

LLVM/project 8af496eutils/bazel/llvm-project-overlay/mlir BUILD.bazel, utils/bazel/llvm-project-overlay/mlir/test BUILD.bazel

[mlir] Bazel fix for #206520 (#206609)

I broke the bazel build in #206520 and pushed an incorrect fix in
#206599 which this PR also reverts.
DeltaFile
+4-1utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
+0-4utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
+4-52 files

LLVM/project 148b8caclang/include/clang/CIR/Dialect/IR CIROps.td, clang/lib/CIR/CodeGen CIRGenBuiltin.cpp

[CIR] Support __builtin_nondeterministic_value (#206149)

Add a new CIR Op, FreezeOp, and use it to handle __builtin_nondeterministic_value
DeltaFile
+68-0clang/test/CIR/CodeGenBuiltins/builtin-nondeterministic-value.c
+29-0clang/include/clang/CIR/Dialect/IR/CIROps.td
+7-2clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
+104-23 files

LLVM/project f3b3d7dllvm/test/Analysis/CostModel/AMDGPU canonicalize.ll fsub.ll

[AMDGPU] Autogen checks for tests in AMDGPU Cost Model. NFC (#206595)

Even though there are comments in the test files saying checks
are autogenerated, it seems some checks are not actually updated. 
This work autogenerates checks based on the latest llvm source.
DeltaFile
+65-43llvm/test/Analysis/CostModel/AMDGPU/canonicalize.ll
+68-1llvm/test/Analysis/CostModel/AMDGPU/fsub.ll
+20-42llvm/test/Analysis/CostModel/AMDGPU/fround.ll
+4-4llvm/test/Analysis/CostModel/AMDGPU/control-flow.ll
+157-904 files

LLVM/project 04af344lld/COFF ICF.cpp

clang-format
DeltaFile
+3-6lld/COFF/ICF.cpp
+3-61 files

LLVM/project cc69878utils/bazel/llvm-project-overlay/mlir/test BUILD.bazel

[mlir][bazel] fix TestAnalysis deps (#206599)

Separating build fixes from #206520
DeltaFile
+4-0utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
+4-01 files

LLVM/project 3349d8emlir/include/mlir/Dialect/LLVMIR/Transforms OptimizeForNVVM.h, mlir/include/mlir/Dialect/NVVM/Transforms Passes.h OptimizeForNVVM.h

[NFC][mlir][nvvm] move OptimizeForNVVM to its own directory (#206520)

This change moves the NVVM optimizations in the LLVM Dialect directory
to a dedicated `mlir/lib/Dialect/NVVM/Transforms/` directory.

Cf.
https://discourse.llvm.org/t/rfc-separate-gpu-specific-transforms-from-llvmirtransforms/91151
DeltaFile
+101-0mlir/lib/Dialect/NVVM/Transforms/OptimizeForNVVM.cpp
+0-101mlir/lib/Dialect/LLVMIR/Transforms/OptimizeForNVVM.cpp
+29-0utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
+26-0mlir/include/mlir/Dialect/NVVM/Transforms/Passes.h
+0-22mlir/include/mlir/Dialect/LLVMIR/Transforms/OptimizeForNVVM.h
+22-0mlir/include/mlir/Dialect/NVVM/Transforms/OptimizeForNVVM.h
+178-12312 files not shown
+227-13018 files

LLVM/project bcad6a0clang/tools/libclang CLog.h, llvm/include/llvm/Support raw_ostream.h

[llvm][clang] Remove `format_object_base` forward declarations (#206526)

PR https://github.com/llvm/llvm-project/pull/206319 removed the
`format_object_base` class itself, but not some of its
forward-declarations. NFCI
DeltaFile
+0-4clang/tools/libclang/CLog.h
+0-1llvm/include/llvm/Support/raw_ostream.h
+0-52 files

LLVM/project bce4b9cclang/docs UsersManual.rst, clang/include/clang/Basic AttrDocs.td

[clang][docs]Refactor compiler standard references from c94 to C95 (#206403)

The patch changes references to a non existent c94 standard from
to C95 (C90 + AMD1)

Closes #206389
DeltaFile
+2-2clang/docs/UsersManual.rst
+1-1clang/include/clang/Basic/AttrDocs.td
+3-32 files