[PATCH] D28909: [InstCombineCalls] Unfold element atomic memcpy instruction
Igor Laevsky via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Jan 19 09:41:07 PST 2017
igor-laevsky created this revision.
This change teaches instruction combiner on how to unfold element atomic memcpy intrinsic into sequence of explicit atomic memory operations.
Also I added new IntrinsicInst subclass to provide user friendly interface for the element atomic memcpy intrinsic. In the future we want to integrate this new class into MemIntrinsic hierarchy which will allow us to easily write optimizations covering both atomic and non-atomic versions. However as a first step I decided to frame it as a separate entity and refactor it later after we determine which use cases generalised interface should cover.
https://reviews.llvm.org/D28909
Files:
include/llvm/IR/IntrinsicInst.h
lib/Transforms/InstCombine/InstCombineCalls.cpp
lib/Transforms/InstCombine/InstCombineInternal.h
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D28909.84981.patch
Type: text/x-patch
Size: 6303 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170119/9f737972/attachment.bin>
More information about the llvm-commits
mailing list