Hello,
This patch implements cross-block dead store elimination for a simple
scenario -- which was somehow important in my case --, i.e. when a
store has only one memory dependence in a function.
This patch is a bit narrow-minded (e..g, only store instructions are
checked for memory dependencies), but I can always make it more
generic, if you give me pointers *and* my code is correct.
Cheers,
Gianluca
--
It was a type of people I did not know, I found them very strange and
they did not inspire confidence at all. Later I learned that I had been
introduced to electronic engineers.
E. W. Dijkstra
-------------- next part --------------
A non-text attachment was scrubbed...
Name: simple-cross-bb-dse.patch
Type: application/octet-stream
Size: 1115 bytes
Desc: not available
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20100106/2d3f0528/attachment.obj>
Hi Gianluca, did you look at Jakub Staszak's "Non-local DSE" patch he posted to the mailing list a while ago? Ciao, Duncan.
Hi Duncan, On Jan 15, 2010, at 10:10 AM, Duncan Sands wrote:> Hi Gianluca, did you look at Jakub Staszak's "Non-local DSE" patch > he posted to the mailing list a while ago?Yes, and as it happens, I just found his patch *after* I've send mine. Of course it is way more complete and smarter than mine -- which tend to solve as unintrusively as possible a common problem I found in a few IRs I've been generating recently (working on a JIT I tend to like simpler optimization passes or I just try to produce a better IR from my side). I'll try to have a look at Jakub's patch, I'm sure it'll handle my case as well. Ah, another thing I found is that my way of sending patches was completely ignoring the LLVM developers policies. My fault. :-) Ciao ;) Gianluca> > Ciao, > > Duncan.