[vm, gc] Fix TSAN failure caused by loading a TypedDataView's backing store's header.
[vm, gc] Fix TSAN failure caused by loading a TypedDataView's backing store's header.

This header is only used by an assert, but the load was not removed by the C++ compiler in release mode. Explicitly exclude the loads with the preprocessor so they only happen in debug mode, and limit the assert reading the backing store's header to non-parallel scavenges only.

TEST=tsan
Bug: https://github.com/dart-lang/sdk/issues/47895
Change-Id: Idbbdb743404d8ee15b0f8e13332c022453de085c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/223660
Reviewed-by: Alexander Aprelev <dfb74c35a357c2059971a4bf7fe26b6a7c18085d@google.com>
Commit-Queue: Ryan Macnak <d738b7f001baf9789095d7dc549cff6de60b011d@google.com>

dart-lang/sdk,dart-lang/sdk,dart-lang/sdk,dart-lang/sdk,dart-lang/sdk,dart-lang/sdk,dart-lang/sdk,dart-lang/sdk