[PATCH] D109219: [Intrinsics] Move dest arg functions of MemIntrinsicBase deeper in mem intrinsics hierarchy
Dmitry Makogon via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 3 03:02:36 PDT 2021
dmakogon created this revision.
dmakogon added a reviewer: mkazantsev.
Herald added subscribers: ormris, foad, dexonsmith, kerbowa, hiraditya, nhaehnle, jvesely, arsenm.
dmakogon requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.
Currently we can access destination argument of any memory intrinsic (**MemCpyInst**, **MemSetInst**, ...) through the functions of their common base class - **MemIntrinsicBase**.
But I think these functions must not be declared such early in the class hierarchy (which now for **MemSetInst **is
**IntrinsicInst **<-- **MemIntrinsicBase<MemIntrinsic>** <-- **MemIntrinsic** <-- **MemSetBase<MemWriteIntrinsic>** <-- **MemSetInst **)
We might want to add some new memory intrinsics in the future that do not have dest argument (i.e. sth like memcmp which would have LHS and RHS instead of src and dest).
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D109219
Files:
llvm/include/llvm/Analysis/MemoryLocation.h
llvm/include/llvm/IR/IntrinsicInst.h
llvm/include/llvm/Transforms/Utils/VNCoercion.h
llvm/lib/Analysis/LazyValueInfo.cpp
llvm/lib/Analysis/MemoryLocation.cpp
llvm/lib/Analysis/StackSafetyAnalysis.cpp
llvm/lib/CodeGen/CodeGenPrepare.cpp
llvm/lib/CodeGen/SafeStack.cpp
llvm/lib/IR/AutoUpgrade.cpp
llvm/lib/IR/Verifier.cpp
llvm/lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.cpp
llvm/lib/Transforms/IPO/GlobalOpt.cpp
llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
llvm/lib/Transforms/Scalar/AlignmentFromAssumptions.cpp
llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
llvm/lib/Transforms/Scalar/GVN.cpp
llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
llvm/lib/Transforms/Scalar/NewGVN.cpp
llvm/lib/Transforms/Utils/VNCoercion.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D109219.370518.patch
Type: text/x-patch
Size: 38955 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210903/3abca232/attachment-0001.bin>
More information about the llvm-commits
mailing list