dart-sdk/runtime
Tess Strickland b4d6255a7f [vm/compiler] Fix redundant stores in AssemblerBase::StoreToSlot.
Due to a missing return, two stores would be done for a non-tagged field
in StoreToSlot: the correct store without a write barrier and then a
second store that also applies the write barriers inappropriately.

Rewrite LoadFromSlot/StoreToSlot/StoreToSlotNoBarrier to just use
chained ifs instead of returning in some if statement bodies and not
in others.

TEST=ci

Change-Id: Ia0a204217433056856e4dc355758f34beceb79b6
Cq-Include-Trybots: luci.dart.try:vm-aot-android-release-arm64c-try,vm-aot-linux-debug-x64-try,vm-aot-linux-debug-x64c-try,vm-aot-mac-release-arm64-try,vm-aot-mac-release-x64-try,vm-aot-obfuscate-linux-release-x64-try,vm-aot-optimization-level-linux-release-x64-try,vm-aot-win-debug-arm64-try,vm-appjit-linux-debug-x64-try,vm-asan-linux-release-x64-try,vm-checked-mac-release-arm64-try,vm-eager-optimization-linux-release-ia32-try,vm-eager-optimization-linux-release-x64-try,vm-ffi-android-debug-arm64c-try,vm-ffi-qemu-linux-release-arm-try,vm-ffi-qemu-linux-release-riscv64-try,vm-linux-debug-ia32-try,vm-linux-debug-x64c-try,vm-mac-debug-arm64-try,vm-mac-debug-x64-try,vm-msan-linux-release-x64-try,vm-reload-linux-debug-x64-try,vm-reload-rollback-linux-debug-x64-try,vm-ubsan-linux-release-x64-try,vm-win-debug-arm64-try,vm-win-debug-x64-try,vm-win-release-ia32-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/360862
Auto-Submit: Tess Strickland <sstrickl@google.com>
Commit-Queue: Tess Strickland <sstrickl@google.com>
Reviewed-by: Daco Harkes <dacoharkes@google.com>
2024-04-03 13:14:39 +00:00
..
bin [ VM / DDS ] Add --print-dtd-uri flag and launch DTD from the correct snapshot for AOT 2024-03-21 19:50:46 +00:00
docs [vm] Introduce pragma vm:deeply-immutable 2024-03-07 18:33:58 +00:00
include [vm] Remove external strings 2024-03-20 20:08:13 +00:00
lib Reland "[vm] Replace array GetIndexed graph intrinsics with flow graph builder implementation" 2024-04-02 20:41:19 +00:00
observatory [vm] Remove external strings 2024-03-20 20:08:13 +00:00
platform [vm/compiler] Limit exposure of untagged pointers to managed memory. 2024-03-22 10:12:39 +00:00
tests [vm] Split DartReturnInstr and NativeReturnInstr 2024-03-26 11:12:38 +00:00
tools [vm/ffi] Add _Compound _offsetInBytes field 2024-03-26 17:14:13 +00:00
vm [vm/compiler] Fix redundant stores in AssemblerBase::StoreToSlot. 2024-04-03 13:14:39 +00:00
.clang-tidy
.gitignore
BUILD.gn Reland "[Fuchsia] Remove the legacy gn build rules for fuchsia" 2024-03-14 20:22:12 +00:00
codereview.settings
configs.gni [Runtime] Add extra_product_deps and extra_nonproduct_deps params to "library_for_all_configs_with_compiler" template 2023-04-14 19:51:40 +00:00
CPPLINT.cfg [cpplint] Disable runtime/references lint 2023-01-23 18:21:48 +00:00
OWNERS
PRESUBMIT.py Reland "Reland "[VM] Begin supporting Perfetto file recorder"" 2023-04-18 19:39:05 +00:00
runtime_args.gni Reland "[Fuchsia] Remove the legacy gn build rules for fuchsia" 2024-03-14 20:22:12 +00:00
vm-jit.shard.cml [test] Cleanup building Fuchsia packages/components. 2023-10-31 17:11:51 +00:00
vm.shard.cml [inspect] Update Inspect library usage 2024-02-12 18:18:01 +00:00