[vm/compiler] Fix LoadStaticField::ComputeCanDeoptimize

It should only return true in JIT mode similar to other calls.

Discovered when looking at allocation sinking in FFI version of
reverse-complement microbenchmark.

TEST=ci

Issue https://github.com/dart-lang/sdk/issues/40308

Cq-Include-Trybots: luci.dart.try:vm-kernel-precomp-linux-product-x64-try,vm-kernel-precomp-linux-release-x64-try
Change-Id: I79f432ffb88a467336fcb412a2d9fcdedc390cd8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/187404
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
diff --git a/runtime/vm/compiler/backend/il.h b/runtime/vm/compiler/backend/il.h
index 8e19b15..a09d32c 100644
--- a/runtime/vm/compiler/backend/il.h
+++ b/runtime/vm/compiler/backend/il.h
@@ -5552,7 +5552,9 @@
     return field().is_final() && !FLAG_fields_may_be_reset;
   }
 
-  virtual bool ComputeCanDeoptimize() const { return calls_initializer(); }
+  virtual bool ComputeCanDeoptimize() const {
+    return calls_initializer() && !CompilerState::Current().is_aot();
+  }
   virtual bool HasUnknownSideEffects() const { return calls_initializer(); }
   virtual bool CanTriggerGC() const { return calls_initializer(); }
   virtual bool MayThrow() const { return calls_initializer(); }
@@ -6592,7 +6594,9 @@
   DECLARE_INSTRUCTION(LoadField)
   virtual CompileType ComputeType() const;
 
-  virtual bool ComputeCanDeoptimize() const { return calls_initializer(); }
+  virtual bool ComputeCanDeoptimize() const {
+    return calls_initializer() && !CompilerState::Current().is_aot();
+  }
 
   virtual bool HasUnknownSideEffects() const {
     return calls_initializer() && !throw_exception_on_initialization();