History log of /dalvik/vm/mterp/armv5te/OP_SPUT_OBJECT_VOLATILE.S
Revision Date Author Comments
4185972e211b0c84b9fe7d90c56b28cc15e474fa 27-Sep-2011 buzbee <buzbee@google.com> Fix memory barriers (Issue 3338450)

Add extra memory barrier on volatile stores.

Change-Id: Id4a4750cdfc910eda2f0b44ead0af2a569b5735e
919eb063ce4542d3698e10e20aba9a2dfbdd0f82 12-Jul-2010 buzbee <buzbee@google.com> Interpreter & JIT support for write barriers

In this iteration, cards are marked on either the store address or
the object head (whichever leads to faster code). In all cases,
though, card marks are deferred until after the associated store
has completed.

Change-Id: I633d6e8c3bebdb80bde92efb4fa6fc7cc84f60fc
0890e5bf0b2a502ca1030e9773fabc16ef1b5981 18-Jun-2010 Andy McFadden <fadden@android.com> Fiddle with SMP_DMB.

This changes it from a macro that takes an argument to a simpler
macro that is named explicitly by the 8 instructions that want it.

Change-Id: Ie17a9722823d590851776b6b9b057eadf22fa6a8
c35a2ef53d0cccd6f924eeba36633220ec67c32e 17-Jun-2010 Andy McFadden <fadden@android.com> Add opcodes for volatile field accesses

This adds instructions for {i,s}{get,put}{,-object}-volatile, for a
total of eight new instructions.

On SMP systems, these instructions will be substituted in for existing
field access instructions, either by dexopt or during just-in-time
verification. Unlike the wide-volatile instructions, these will not be
used at all when the VM is not built for SMP.

(Ideally we'd omit the volatile instruction implementations entirely on
non-SMP builds, but that requires a little work in gen-mterp.py.)

The change defines and implements the opcodes and support methods, but
does not cause them to be used.

Also, changed dvmQuasiAtomicRead64's argument to be const.

Change-Id: I9e44fe881e87f27aa41f6c6e898ec4402cb5493e