[llvm] r205409 - Remove duplicated DMB instructions
t.p.northover at gmail.com
Mon Jun 9 08:42:00 PDT 2014
> ARM specific optimiztion, finding places in ARM machine code where 2 dmbs
> follow one another, and eliminating one of them.
Saleem's pointed me at a few more oddities with this pass, and on the
whole I'm really not sure it should have been committed:
1. It runs after unpacking machine bundles, so it would completely
hose predicated Thumb code.
2. But that's OK! Because it doesn't actually touch t2DMBs at all.
Basically, it seems like a very incomplete solution (ARM-only; at the
wrong level; combining barriers too conservatively anyway) that would
be difficult to extend to a pass that handles things properly and has
been effectively abandoned by its writer.
It's a shame, but I suspect more problems will be caused than solved
by its presence. Unless someone actually wants to step forward and
maintain it properly, of course.
More information about the llvm-commits