[llvm] r205409 - Remove duplicated DMB instructions

Reinoud Elhorst re302 at cam.ac.uk
Tue Jun 3 09:09:03 PDT 2014


Hi,

Thanks for the flag-up Renato.

Extending the code to deal with other barries is trivial, however the
research I did was only on DMBs, since they were the only barriers we
encountered in our code. It is indeed *very likely* that other combinations
can be dealt with in the same way, and although I feel that two consecutive
DSBs or ISBs do not add anything over a single one, I am not 100% certain
this is the case, and whether they can be moved past other instructions in
the same ways that DMBs can, is also something I cannot comment on; on
combinations of DMBs, ISBs and DSBs I feel even less qualified to make
definite statements.

Unfortunately it doesn't look like I will get much time to dive deeper into
this for the next couple of months (and I'm afraid I'm not actively
following the llvm commit list any more), but feel free to get in touch if
there are any questions.

Reinoud


On Mon, Jun 2, 2014 at 5:26 PM, Renato Golin <renato.golin at linaro.org>
wrote:

> Hi Yi,
>
> This was a research done by Reinoud on C11 atomics, maybe he could
> extend the work to other barriers.
>
> He also had other interesting ideas about de-duplicating DMBs, if
> you're interested.
>
> cheers,
> --renato
>
> On 2 June 2014 16:51, Yi Kong <kongy.dev at gmail.com> wrote:
> >
> > Renato Golin <renato.golin at ...> writes:
> >>
> >> Author: rengolin
> >> Date: Wed Apr  2 04:03:43 2014
> >> New Revision: 205409
> >>
> >> URL: http://llvm.org/viewvc/llvm-project?rev=205409&view=rev
> >> Log:
> >> Remove duplicated DMB instructions
> >>
> >> ARM specific optimiztion, finding places in ARM machine code where 2
> dmbs
> >> follow one another, and eliminating one of them.
> >>
> >> Patch by Reinoud Elhorst.
> >
> > I suppose this optimization also applies to DSBs? Also consecutive ISBs
> > should be able to be merged as well?
> >
> > -Yi
> >
> >
> > _______________________________________________
> > llvm-commits mailing list
> > llvm-commits at cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140603/644b38ac/attachment.html>


More information about the llvm-commits mailing list