[all-commits] [llvm/llvm-project] f84676: [RFC][IR] Support vector splats in `ConstantPointe...
Shilei Tian via All-commits
all-commits at lists.llvm.org
Mon May 4 17:12:39 PDT 2026
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: f8467698d8cdbac6e02cdc1aab643d1ac733ec19
https://github.com/llvm/llvm-project/commit/f8467698d8cdbac6e02cdc1aab643d1ac733ec19
Author: Shilei Tian <i at tianshilei.me>
Date: 2026-05-05 (Tue, 05 May 2026)
Changed paths:
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/IR/Constants.h
M llvm/include/llvm/SandboxIR/Constant.h
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/lib/Analysis/GlobalsModRef.cpp
M llvm/lib/Analysis/MemoryBuiltins.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/Constants.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/lib/SandboxIR/Constant.cpp
M llvm/lib/Target/AArch64/AArch64FastISel.cpp
M llvm/lib/Transforms/Utils/ValueMapper.cpp
M llvm/test/Assembler/ConstantExprFold.ll
M llvm/test/Assembler/aggregate-constant-values.ll
M llvm/test/Assembler/opaque-ptr.ll
M llvm/test/CodeGen/AMDGPU/codegen-prepare-addrspacecast-non-null-vector.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-constants.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-vector-gep.ll
M llvm/test/Instrumentation/MemorySanitizer/msan_basic.ll
M llvm/test/Transforms/CodeGenPrepare/AArch64/reduce-or-opt.ll
M llvm/test/Transforms/ConstraintElimination/geps-ptrvector.ll
M llvm/test/Transforms/FunctionAttrs/vector-of-pointers-getunderlyingobject-crash.ll
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/issue110433.ll
M llvm/test/Transforms/InstCombine/call.ll
M llvm/test/Transforms/InstCombine/gep-inbounds-null.ll
M llvm/test/Transforms/InstCombine/icmp.ll
M llvm/test/Transforms/InstCombine/or.ll
M llvm/test/Transforms/InstCombine/scalar_vector_gep.ll
M llvm/test/Transforms/InstCombine/vscale_cmp.ll
M llvm/test/Transforms/InstSimplify/ConstProp/inttoptr-gep-nonintegral.ll
M llvm/test/Transforms/InstSimplify/gep.ll
M llvm/test/Transforms/InstSimplify/vscale.ll
M llvm/test/Transforms/LoadStoreVectorizer/NVPTX/4x2xhalf.ll
M llvm/test/Transforms/LoopIdiom/non-integral-pointers.ll
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-widen-inductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-phi.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-evl-crash.ll
M llvm/test/Transforms/LoopVectorize/RISCV/type-info-cache-evl-crash.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-opaque-pointers.ll
M llvm/test/Transforms/LoopVectorize/X86/invariant-load-gather.ll
M llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
M llvm/test/Transforms/LoopVectorize/X86/optsize.ll
M llvm/test/Transforms/LoopVectorize/find-last.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-outside-iv-users.ll
M llvm/test/Transforms/RewriteStatepointsForGC/base-inference.ll
M llvm/test/Transforms/RewriteStatepointsForGC/base-pointers.ll
M llvm/test/Transforms/RewriteStatepointsForGC/base-vector.ll
M llvm/test/Transforms/RewriteStatepointsForGC/insert-extract.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/InstructionsState-is-invalid-0.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/long-non-power-of-2.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/non-power-of-2-with-adjusted-gathers.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/remarks-insert-into-small-vector.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/strided-loads-with-external-indices.ll
M llvm/test/Transforms/SLPVectorizer/X86/catchswitch-block-in-use.ll
M llvm/test/Transforms/SLPVectorizer/X86/many-uses-parent-node.ll
M llvm/test/Transforms/SLPVectorizer/X86/scatter-vectorize-reorder-non-empty.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-vectorize-phi-user.ll
M llvm/test/Transforms/SLPVectorizer/extract-vectorized-operand.ll
M llvm/test/Transforms/SLPVectorizer/gep-with-extractelement-many-users.ll
M llvm/test/Transforms/SLPVectorizer/revec.ll
M llvm/test/Transforms/SROA/vector-promotion.ll
M llvm/test/Transforms/Scalarizer/constant-extractelement.ll
M llvm/test/Verifier/opaque-ptr.ll
M llvm/test/Verifier/ptrmask.ll
M llvm/test/tools/llvm-reduce/reduce-operands-ptr.ll
M llvm/unittests/IR/ConstantsTest.cpp
Log Message:
-----------
[RFC][IR] Support vector splats in `ConstantPointerNull` (#195486)
This PR allows `ConstantPointerNull` to represent both scalar pointer
nulls and fixed or scalable vector splats of pointer nulls. This change
first aligns with the native splat behavior of `ConstantInt` and
`ConstantFP`, and second, makes it easier to eventually change the
semantics of `ConstantPointerNull` to represent a semantic null pointer
instead of a zero value, which is what it represents today.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list