summaryrefslogtreecommitdiff
path: root/compiler/utils/arm/assembler_arm32.cc
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/utils/arm/assembler_arm32.cc')
-rw-r--r--compiler/utils/arm/assembler_arm32.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/compiler/utils/arm/assembler_arm32.cc b/compiler/utils/arm/assembler_arm32.cc
index 3d46617079..d262b6acd6 100644
--- a/compiler/utils/arm/assembler_arm32.cc
+++ b/compiler/utils/arm/assembler_arm32.cc
@@ -1471,9 +1471,14 @@ void Arm32Assembler::StoreDToOffset(DRegister reg,
void Arm32Assembler::MemoryBarrier(ManagedRegister mscratch) {
CHECK_EQ(mscratch.AsArm().AsCoreRegister(), R12);
+ dmb(SY);
+}
+
+
+void Arm32Assembler::dmb(DmbOptions flavor) {
#if ANDROID_SMP != 0
int32_t encoding = 0xf57ff05f; // dmb
- Emit(encoding);
+ Emit(encoding | flavor);
#endif
}