> On Jul 5, 2017, at 19:19, Caio Lima <ticaiol...@gmail.com> wrote: > > 2017-07-05 12:41 GMT-03:00 JF Bastien <jfbast...@apple.com>: >> On Linux you can do the following: >> >> ((void(*)())0xffff0fa0)(); >> >> >> That address contains a helper which does the “right” barrier, including if >> you’re not on an SMP system it’ll do nothing. >> >> Details: >> https://www.kernel.org/doc/Documentation/arm/kernel_user_helpers.txt >> That file also lists other Linux helpers. >> >> I think for ARMv6 it makes sense to use these helpers. AFAIK the mcr barrier >> instruction ins’t supported by all ARMv6 CPUs. > > Hi JF. Do you mind point me where the mcr isn't supported by all ARMv6 > CPU? I've found in ARMv6-M manual > (http://infocenter.arm.com/help/topic/com.arm.doc.ddi0419d/DDI0419D_armv6m_arm.pdf) > that it doesn't support coprocessor operations, but this architecture > is used by microcontroller chips.
I unfortunately don’t have a reference for this, but yes IIUC it’s either UP systems or non-A profile CPUs. > Regards, > Caio. > >> For ARMv7 and later, DMB ish is the right thing. >> >> >> On Jul 3, 2017, at 17:19, Caio Lima <ticaiol...@gmail.com> wrote: >> >> Hi all. >> >> I'm working in this patch >> (https://bugs.webkit.org/show_bug.cgi?id=172767) and Mark Lam raised >> some questions about the data memory barrier (DMB for short) in ARMv6 >> using "mcr 15 ...". The point is that we are having divergences in ARM >> official reference manual about the semantics of this instruction. We >> have it discussed in the bug above and I would like to know if there >> is somebody with stronger ARM background that could help us there and >> then approve the patch to be committed. >> >> I thanks in advance and best regards, >> Caio Lima. >> _______________________________________________ >> webkit-dev mailing list >> webkit-dev@lists.webkit.org >> https://lists.webkit.org/mailman/listinfo/webkit-dev >> >> _______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-dev