[all-commits] [llvm/llvm-project] 3d7f1b: [MLIR][LLVM][SROA] Make GEP handling type agnostic
Christian Ulmann via All-commits
all-commits at lists.llvm.org
Thu Mar 28 06:27:07 PDT 2024
Branch: refs/heads/users/dinistro/more-sroa-improvements
Home: https://github.com/llvm/llvm-project
Commit: 3d7f1bfd46778b4eeb42615fa6df9eb86a9f16b6
https://github.com/llvm/llvm-project/commit/3d7f1bfd46778b4eeb42615fa6df9eb86a9f16b6
Author: Christian Ulmann <christian.ulmann at nextsilicon.com>
Date: 2024-03-28 (Thu, 28 Mar 2024)
Changed paths:
M mlir/lib/Dialect/LLVMIR/IR/LLVMMemorySlot.cpp
M mlir/test/Dialect/LLVMIR/sroa.mlir
Log Message:
-----------
[MLIR][LLVM][SROA] Make GEP handling type agnostic
This commit removes SROA's type consistency constraints from LLVM
dialect's GEPOp. The checks for valid indexing are now purely done by
computing the GEP's offset with the aid of the data layout.
To simplify handling of nested "subslots", we are tricking the SROA by
handing in memory slots that hold byte array types. This ensures that
subsequent accesses only need to check if their access will be
in-bounds. This lifts the requirement of detemining the sub-types for
all but the first level of subslots.
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