| Index: runtime/vm/intermediate_language_arm64.cc
|
| diff --git a/runtime/vm/intermediate_language_arm64.cc b/runtime/vm/intermediate_language_arm64.cc
|
| index 5fe4a782b71bf2db54d95b7d11ec73a2c67a1493..fa8908149b4958c32bc8926e0b502b4f9712a62a 100644
|
| --- a/runtime/vm/intermediate_language_arm64.cc
|
| +++ b/runtime/vm/intermediate_language_arm64.cc
|
| @@ -1744,6 +1744,12 @@ void StoreInstanceFieldInstr::EmitNativeCode(FlowGraphCompiler* compiler) {
|
| const Register temp = locs()->temp(0).reg();
|
| const Register temp2 = locs()->temp(1).reg();
|
|
|
| + if (ShouldEmitStoreBarrier()) {
|
| + // Value input is a writable register and should be manually preserved
|
| + // across allocation slow-path.
|
| + locs()->live_registers()->Add(locs()->in(1), kTagged);
|
| + }
|
| +
|
| Label store_pointer;
|
| Label store_double;
|
| Label store_float32x4;
|
|
|