[PATCH] D16608: [In Progress][GVN] Common code for local and non-local load availability

Philip Reames via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 26 15:23:25 PST 2016


reames created this revision.
reames added reviewers: dberlin, hfinkel, sanjoy.
reames added a subscriber: llvm-commits.
Herald added a subscriber: mcrosier.

The attached patch removes all of the block local code for performing X-load forwarding by reusing the code used in the non-local case.  The current code is a bit of a mess - specifically, I'm abusing the AvailableValueInBlock abstraction.  I don't plan to submit this as is, but wanted to post it so that I could show the context for the supporting changes required to make this less of a mess.  

The motivation here is to remove duplication and in the process increase our test coverage of some fairly tricky code.  I have some upcoming changes I'll be proposing in this area and wanted to have the code cleaned up a bit first.

http://reviews.llvm.org/D16608

Files:
  lib/Transforms/Scalar/GVN.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D16608.46062.patch
Type: text/x-patch
Size: 8464 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160126/7f1d499b/attachment.bin>


More information about the llvm-commits mailing list