LLVM/project a4ddebaclang/docs ReleaseNotes.rst, clang/include/clang/Options Options.td

[clang] Don't omit null pointer checks with -fms-kernel (#193800)

In kernel space, a null (zero) address may be valid, so treating it as "always invalid" and bypassing null checks is not correct. With -fms-kernel, we override the default behavior and disable assumptions about null pointers. However, -fdelete-null-pointer-checks can still be used to re-enable these optimizations.
DeltaFile
+16-0clang/test/CodeGen/MSKernel/null-deref.c
+2-2clang/include/clang/Options/Options.td
+2-0clang/docs/ReleaseNotes.rst
+20-23 files

LLVM/project a5a13calldb/tools/lldb-dap CMakeLists.txt, lldb/tools/lldb-dap/tool CMakeLists.txt

[lldb-dap] Make lldbDAP an OBJECT library (NFC) (#196108)

Convert lldbDAP from a static library to an OBJECT library and move its
LINK_COMPONENTS (Option, Support) and LINK_LIBS (liblldb, lldbHost) to
its consumers (the lldb-dap tool and the DAPTests unit test).

This avoids transitive propagation of LLVM's static components through
lldbDAP, which would otherwise collide with the same symbols re-exported
by liblldb when LLDB_EXPORT_ALL_SYMBOLS is enabled, breaking
llvm::Error's RTTI (e.g. ErrorInfoBase::ID) across library boundaries.

Extracted from #189718 for easier reviewing.
DeltaFile
+7-12lldb/tools/lldb-dap/CMakeLists.txt
+4-2lldb/tools/lldb-dap/tool/CMakeLists.txt
+4-1lldb/unittests/DAP/CMakeLists.txt
+15-153 files

LLVM/project aed43eacompiler-rt/test lit.common.cfg.py, llvm/utils/lit/lit util.py LitConfig.py

Revert "[lit] [compiler-rt] Add llvm-lit global command cache to speed up tes…"

This reverts commit 4e007c117e00efceacb9cd0560544491d1474106.
DeltaFile
+0-88llvm/utils/lit/tests/unit/Util.py
+34-15compiler-rt/test/lit.common.cfg.py
+1-24llvm/utils/lit/lit/util.py
+0-16llvm/utils/lit/lit/LitConfig.py
+35-1434 files

LLVM/project f7311b6clang/test/AST/HLSL ConstantBuffers-AST-error.hlsl, clang/test/CodeGenHLSL cbuffer_copy_layout.hlsl

Update tests to work with #194989
DeltaFile
+1-1clang/test/AST/HLSL/ConstantBuffers-AST-error.hlsl
+1-1clang/test/SemaHLSL/BuiltIns/ConstantBuffers.hlsl
+0-1clang/test/CodeGenHLSL/cbuffer_copy_layout.hlsl
+2-33 files

LLVM/project 511dd8cllvm/include/llvm/CodeGen AssignmentTrackingAnalysis.h, llvm/include/llvm/IR Verifier.h

[NFC] Remove isRequired() from analyses (#196121)

isRequired() isn't relevant for analyses.
DeltaFile
+0-2llvm/include/llvm/CodeGen/AssignmentTrackingAnalysis.h
+0-1llvm/include/llvm/IR/Verifier.h
+0-32 files

LLVM/project 91ed67ellvm/include/llvm/Analysis DOTGraphTraitsPass.h HashRecognize.h, llvm/include/llvm/CodeGen MachineBranchProbabilityInfo.h AssignmentTrackingAnalysis.h

Mark printer passes as required (#196126)

Printer passes should run even on optnone functions.
DeltaFile
+2-2llvm/include/llvm/Analysis/DOTGraphTraitsPass.h
+1-1llvm/include/llvm/CodeGen/MachineBranchProbabilityInfo.h
+1-1llvm/include/llvm/Transforms/Scalar/LoopPassManager.h
+1-1llvm/include/llvm/CodeGen/AssignmentTrackingAnalysis.h
+1-1llvm/include/llvm/Analysis/HashRecognize.h
+1-1llvm/include/llvm/Analysis/ScalarEvolutionDivision.h
+7-73 files not shown
+10-109 files

LLVM/project 7c248aallvm/lib/Analysis IR2Vec.cpp ReplayInlineAdvisor.cpp, llvm/test/Analysis/IR2Vec basic-vocab.ll

[opt] Do not exit on first emitError (#194858)
DeltaFile
+25-0llvm/test/tools/opt/diagnostic-handler.ll
+20-0llvm/unittests/Analysis/MLModelRunnerTest.cpp
+8-12llvm/lib/Analysis/IR2Vec.cpp
+6-8llvm/lib/Analysis/ReplayInlineAdvisor.cpp
+4-4llvm/test/Analysis/IR2Vec/basic-vocab.ll
+7-0llvm/tools/opt/NewPMDriver.cpp
+70-247 files not shown
+80-3313 files

LLVM/project 12e391eclang/lib/Driver/ToolChains HIPAMD.cpp, clang/test/Driver hip-spirv-linker-crash.c

Reland "[Driver][HIP/SPIRV] Fix crash when llvm-link is executed"  (#196131)

Originally reverted due to possible regression detected by buildbot.
This PR relands https://github.com/llvm/llvm-project/pull/196074.
Failures were due to flaky tests.
DeltaFile
+15-0clang/test/Driver/hip-spirv-linker-crash.c
+2-1clang/lib/Driver/ToolChains/HIPAMD.cpp
+17-12 files

LLVM/project 2a34245llvm/test/CodeGen/AMDGPU wqm-propagate-for-execz-side-effect.mir

AMDGPU: Fix using -march in a test (#196118)
DeltaFile
+1-1llvm/test/CodeGen/AMDGPU/wqm-propagate-for-execz-side-effect.mir
+1-11 files

LLVM/project 73d5e1dllvm/test/Transforms/SLPVectorizer/RISCV load-store.ll

[SLP] Add test to demonstrate ordering changes in vectorizeStores() refactor (#196018)

Test is for #193616. Because this test has two overlapping chains with
different VFs, when the ordering that they are attempted to vectorize in
changes, the result will change since the smaller chain cannot vectorize
if the larger chain hasn't already vectorized due to the extract costs.
DeltaFile
+50-0llvm/test/Transforms/SLPVectorizer/RISCV/load-store.ll
+50-01 files

LLVM/project 20c3170clang/lib/Driver/ToolChains HIPAMD.cpp AMDGPU.cpp

clang: Remove unnecessary conversion from StringRef to std::string (#196119)
DeltaFile
+2-2clang/lib/Driver/ToolChains/HIPAMD.cpp
+1-1clang/lib/Driver/ToolChains/AMDGPU.cpp
+1-1clang/lib/Driver/ToolChains/AMDGPU.h
+4-43 files

LLVM/project 715492emlir/lib/Dialect/XeGPU/Transforms XeGPUWgToSgDistribute.cpp XeGPULayoutImpl.cpp, mlir/lib/Dialect/XeGPU/Utils XeGPUUtils.cpp

[MLIR][XeGPU] Add wg-to-sg distirbution for dpasmx, bitcast, interleave, and deinterleave (#194985)

As title.

Assisted by Claude
DeltaFile
+169-19mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
+89-0mlir/test/Dialect/XeGPU/xegpu-wg-to-sg.mlir
+19-20mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
+3-2mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
+280-414 files

LLVM/project a6a8ca5clang/lib/Driver/ToolChains HIPAMD.cpp, clang/test/Driver hip-spirv-linker-crash.c

Reland "[Driver][HIP/SPIRV] Fix crash when llvm-link is executed" (#196113)"
DeltaFile
+15-0clang/test/Driver/hip-spirv-linker-crash.c
+2-1clang/lib/Driver/ToolChains/HIPAMD.cpp
+17-12 files

LLVM/project bec6fa7clang/include/clang/Sema SemaHLSL.h, clang/lib/Sema SemaExprMember.cpp HLSLBuiltinTypeDeclBuilder.cpp

Changes from code review.
DeltaFile
+2-2clang/lib/Sema/SemaExprMember.cpp
+2-1clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
+1-1clang/lib/Sema/HLSLExternalSemaSource.cpp
+1-1clang/include/clang/Sema/SemaHLSL.h
+1-1clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
+1-1clang/lib/Sema/SemaHLSL.cpp
+8-76 files

LLVM/project c02e49allvm/include/llvm InitializePasses.h, llvm/include/llvm/CodeGen MachineCFGPrinter.h

[CodeGen] Port dot-machine-cfg to new pass manager (#195901)
DeltaFile
+20-7llvm/lib/CodeGen/MachineCFGPrinter.cpp
+7-0llvm/include/llvm/CodeGen/MachineCFGPrinter.h
+5-0llvm/test/Analysis/DotMachineCFG/AMDGPU/irreducible.mir
+3-0llvm/test/Analysis/DotMachineCFG/AMDGPU/functions.mir
+1-1llvm/lib/CodeGen/CodeGen.cpp
+1-1llvm/include/llvm/InitializePasses.h
+37-92 files not shown
+39-108 files

LLVM/project f366045clang/test/OpenMP thread_limit_gpu.c, llvm/lib/Frontend/OpenMP OMPIRBuilder.cpp

[OpenMP][amdgpu] Use max teams for amdgpu-max-num-workgroups (#195203)

The min teams value was used to set the amdgpu-max-num-workgroups
attribute. This commit switches to max teams, as done for the nvptx's
attribute.
DeltaFile
+5-4llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
+2-2clang/test/OpenMP/thread_limit_gpu.c
+7-62 files

LLVM/project 9f8abf5llvm/lib/Transforms/Scalar NaryReassociate.cpp, llvm/test/Transforms/NaryReassociate/AMDGPU nary-add-uniform.ll

review: address suggestions
DeltaFile
+18-19llvm/lib/Transforms/Scalar/NaryReassociate.cpp
+4-2llvm/test/Transforms/NaryReassociate/AMDGPU/nary-add-uniform.ll
+22-212 files

LLVM/project 1de53eellvm/include/llvm/Transforms/Scalar NaryReassociate.h, llvm/lib/Transforms/Scalar NaryReassociate.cpp

review
DeltaFile
+5-1llvm/include/llvm/Transforms/Scalar/NaryReassociate.h
+1-0llvm/lib/Transforms/Scalar/NaryReassociate.cpp
+6-12 files

LLVM/project 2d2f460llvm/include/llvm/Transforms/Scalar NaryReassociate.h, llvm/lib/Transforms/Scalar NaryReassociate.cpp

review: address suggestion
DeltaFile
+8-6llvm/lib/Transforms/Scalar/NaryReassociate.cpp
+1-1llvm/include/llvm/Transforms/Scalar/NaryReassociate.h
+9-72 files

LLVM/project 50ba252llvm/include/llvm/Transforms/Scalar NaryReassociate.h

Update llvm/include/llvm/Transforms/Scalar/NaryReassociate.h

Co-authored-by: Jay Foad <jay.foad at amd.com>
DeltaFile
+1-1llvm/include/llvm/Transforms/Scalar/NaryReassociate.h
+1-11 files

LLVM/project db08307llvm/lib/Transforms/Scalar NaryReassociate.cpp

review: address suggestions
DeltaFile
+16-15llvm/lib/Transforms/Scalar/NaryReassociate.cpp
+16-151 files

LLVM/project b47701bllvm/lib/Transforms/Scalar NaryReassociate.cpp

delay fetching unifromity for target which don't need it
DeltaFile
+10-7llvm/lib/Transforms/Scalar/NaryReassociate.cpp
+10-71 files

LLVM/project 66d73ecllvm/lib/Transforms/Scalar NaryReassociate.cpp

review: address suggestions
DeltaFile
+21-29llvm/lib/Transforms/Scalar/NaryReassociate.cpp
+21-291 files

LLVM/project 2007d7cllvm/test/Transforms/NaryReassociate/AMDGPU nary-add-uniform.ll

[NaryReassociate][AMDGPU] Pre-commit test for uniformity-aware reassociation (NFC)
DeltaFile
+319-0llvm/test/Transforms/NaryReassociate/AMDGPU/nary-add-uniform.ll
+319-01 files

LLVM/project b573696llvm/include/llvm/Transforms/Scalar NaryReassociate.h, llvm/lib/Transforms/Scalar NaryReassociate.cpp

[NaryReassociate] Make uniformity-aware to prefer grouping uniform values
DeltaFile
+96-3llvm/lib/Transforms/Scalar/NaryReassociate.cpp
+5-5llvm/test/Transforms/NaryReassociate/AMDGPU/nary-add-uniform.ll
+6-3llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
+3-1llvm/include/llvm/Transforms/Scalar/NaryReassociate.h
+110-124 files

LLVM/project 1058825clang/lib/Driver/ToolChains HIPAMD.cpp AMDGPU.cpp

clang: Remove unnecessary convertion from StringRef to std::string
DeltaFile
+2-2clang/lib/Driver/ToolChains/HIPAMD.cpp
+1-1clang/lib/Driver/ToolChains/AMDGPU.cpp
+1-1clang/lib/Driver/ToolChains/AMDGPU.h
+4-43 files

LLVM/project 3c3e7e0clang/include/clang/Basic DiagnosticSemaKinds.td Attr.td, clang/lib/Sema SemaDecl.cpp

[Clang] disallow selectany on non-global-variable declarations (#189641)

Fixes #189141

--- 

This PR prevents a crash by disallowing the use of the `selectany`
attribute in global variable declarations.
DeltaFile
+24-7clang/test/SemaCXX/attr-selectany.cpp
+16-14clang/lib/Sema/SemaDecl.cpp
+5-1clang/test/Sema/attr-selectany.c
+2-2clang/include/clang/Basic/DiagnosticSemaKinds.td
+2-2clang/test/SemaCXX/declspec-selectany.cpp
+2-0clang/include/clang/Basic/Attr.td
+51-262 files not shown
+53-268 files

LLVM/project b7a0f0fllvm/test/CodeGen/AMDGPU wqm-propagate-for-execz-side-effect.mir

AMDGPU: Fix using -march in a test
DeltaFile
+1-1llvm/test/CodeGen/AMDGPU/wqm-propagate-for-execz-side-effect.mir
+1-11 files

LLVM/project aadd872lld/MachO ConcatOutputSection.cpp ConcatOutputSection.h

use reloc to construct a thunk key
DeltaFile
+4-8lld/MachO/ConcatOutputSection.cpp
+3-0lld/MachO/ConcatOutputSection.h
+7-82 files

LLVM/project c521586compiler-rt/lib/scudo/standalone allocator_config_wrapper.h combined.h, compiler-rt/lib/scudo/standalone/tests combined_test.cpp

[scudo] Dumping allocator config when printStats()

So far printStats() dumps partial information of the allocator config.
Given that user is able to have custom config, we want to dump all the
configurations to reduce variances while reviewing the stats.
DeltaFile
+153-0compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
+41-1compiler-rt/lib/scudo/standalone/allocator_config_wrapper.h
+2-0compiler-rt/lib/scudo/standalone/combined.h
+2-0compiler-rt/lib/scudo/standalone/primary32.h
+2-0compiler-rt/lib/scudo/standalone/primary64.h
+2-0compiler-rt/lib/scudo/standalone/secondary.h
+202-16 files