[all-commits] [llvm/llvm-project] d10b76: [ConstantFold] Remove notional over-indexing fold ...

Nikita Popov via All-commits all-commits at lists.llvm.org
Wed May 29 23:37:07 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: d10b76552f919ddb84347ab03908a55804ea6b8a
      https://github.com/llvm/llvm-project/commit/d10b76552f919ddb84347ab03908a55804ea6b8a
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-05-30 (Thu, 30 May 2024)

  Changed paths:
    M clang/test/CodeGen/object-size.c
    M clang/test/CodeGenCXX/cxx0x-initializer-stdinitializerlist-pr12086.cpp
    M clang/test/CodeGenHLSL/cbuf.hlsl
    M clang/test/Driver/linker-wrapper-image.c
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_allowlist_ignorelist.cpp
    M llvm/lib/IR/ConstantFold.cpp
    M llvm/test/Assembler/ConstantExprFold.ll
    M llvm/test/Assembler/getelementptr.ll
    M llvm/test/Assembler/getelementptr_vec_ce.ll
    M llvm/test/CodeGen/AMDGPU/opencl-printf.ll
    M llvm/test/Linker/comdat-largest.ll
    M llvm/test/Transforms/CodeGenPrepare/AArch64/gather-scatter-opt-inseltpoison.ll
    M llvm/test/Transforms/CodeGenPrepare/AArch64/gather-scatter-opt.ll
    M llvm/test/Transforms/CodeGenPrepare/X86/gather-scatter-opt-inseltpoison.ll
    M llvm/test/Transforms/CodeGenPrepare/X86/gather-scatter-opt.ll
    M llvm/test/Transforms/GlobalOpt/globalsra-opaque-ptr.ll
    M llvm/test/Transforms/GlobalSplit/basic.ll
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/infer-address-space.ll
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/infer-getelementptr.ll
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/old-pass-regressions-inseltpoison.ll
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/old-pass-regressions.ll
    M llvm/test/Transforms/InferAddressSpaces/NVPTX/bug31948.ll
    M llvm/test/Transforms/InferAlignment/gep-array.ll
    M llvm/test/Transforms/InstCombine/gep-vector.ll
    M llvm/test/Transforms/InstSimplify/ConstProp/vectorgep-crash.ll
    M llvm/test/Transforms/InstSimplify/vector_gep.ll
    M llvm/test/Transforms/NewGVN/2007-07-26-InterlockingLoops.ll
    M mlir/test/Target/LLVMIR/omptarget-constant-indexing-device-region.mlir
    M mlir/test/Target/LLVMIR/omptarget-fortran-allocatable-types-host.mlir

  Log Message:
  -----------
  [ConstantFold] Remove notional over-indexing fold (#93697)

The data-layout independent constant folding currently has some rather
gnarly code for canonicalizing GEP indices to reduce "notional
overindexing", and then infers inbounds based on that canonicalization.

Now that we canonicalize to i8 GEPs, this canonicalization is
essentially useless, as we'll discard it as soon as the GEP hits the
data-layout aware constant folder anyway. As such, I'd like to remove
this code entirely.

This shouldn't have any impact on optimization capabilities.



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