[all-commits] [llvm/llvm-project] a38f34: [MLIR] Harmonize the behavior of the folding API f...
Christian Ulmann via All-commits
all-commits at lists.llvm.org
Wed Apr 17 08:56:49 PDT 2024
Branch: refs/heads/users/dinistro/mem2reg-allow-smaller-accesses
Home: https://github.com/llvm/llvm-project
Commit: a38f3417acb55b4d966bfcf3dd07e6b3545c9784
https://github.com/llvm/llvm-project/commit/a38f3417acb55b4d966bfcf3dd07e6b3545c9784
Author: Christian Ulmann <christian.ulmann at nextsilicon.com>
Date: 2024-04-12 (Fri, 12 Apr 2024)
Changed paths:
M mlir/include/mlir/IR/Builders.h
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/IR/Builders.cpp
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/test/Transforms/test-legalizer.mlir
M mlir/test/lib/Dialect/Test/TestDialect.cpp
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/test/lib/Dialect/Test/TestPatterns.cpp
Log Message:
-----------
[MLIR] Harmonize the behavior of the folding API functions
This commit changes `OpBuilder::tryFold` to behave more similarly to
`Operation::fold`. Concretely, this ensures that even an in-place fold
returns `success`. This is necessary to fix a bug in the dialect
conversion that occurred when an in-place folding made an operation
legal. The dialect conversion infrastructure did not check if the result
of an in-place folding legalized the operation and just went ahead and
tried to apply pattern anyways.
Commit: ecbf33ecf7addf9f393f587a38d9a873f543e832
https://github.com/llvm/llvm-project/commit/ecbf33ecf7addf9f393f587a38d9a873f543e832
Author: Christian Ulmann <christian.ulmann at nextsilicon.com>
Date: 2024-04-17 (Wed, 17 Apr 2024)
Changed paths:
M mlir/include/mlir/Interfaces/MemorySlotInterfaces.td
M mlir/lib/Dialect/LLVMIR/IR/LLVMMemorySlot.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefMemorySlot.cpp
M mlir/lib/Transforms/Mem2Reg.cpp
M mlir/test/Dialect/LLVMIR/mem2reg.mlir
Log Message:
-----------
[MLIR][Mem2Reg][LLVM] Enhance partial load support
This commit improves LLVM dialect's Mem2Reg interfaces to support
promotions of partial loads from larger memory slots. To support this,
the Mem2Reg interface methods are extended with additional data layout
parameters. The data layout is required to determine type sizes to
produce correct conversion sequences.
Compare: https://github.com/llvm/llvm-project/compare/a38f3417acb5%5E...ecbf33ecf7ad
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