Index: src/arm64/decoder-arm64-inl.h |
diff --git a/src/arm64/decoder-arm64-inl.h b/src/arm64/decoder-arm64-inl.h |
index e00105e7bc1b49165c3a5853520e86bd943255fd..34bbd15d7802f9583d4451fd9561713b468467a7 100644 |
--- a/src/arm64/decoder-arm64-inl.h |
+++ b/src/arm64/decoder-arm64-inl.h |
@@ -217,8 +217,11 @@ void Decoder<V>::DecodeLoadStore(Instruction* instr) { |
if (instr->Bit(28) == 0) { |
if (instr->Bit(29) == 0) { |
if (instr->Bit(26) == 0) { |
- // TODO(all): VisitLoadStoreExclusive. |
- V::VisitUnimplemented(instr); |
+ if (instr->Bits(23, 22) == 0) { |
+ V::VisitStoreReleaseExclusive(instr); |
+ } else { |
+ V::VisitLoadStoreAcquireRelease(instr); |
+ } |
} else { |
DecodeAdvSIMDLoadStore(instr); |
} |