Index: runtime/vm/constants_arm64.h |
diff --git a/runtime/vm/constants_arm64.h b/runtime/vm/constants_arm64.h |
index 870bb34095aba33472c87ff42589ff4db64a2a35..e855b0fde94b2cc25f6d8e71aab53f472ccc684c 100644 |
--- a/runtime/vm/constants_arm64.h |
+++ b/runtime/vm/constants_arm64.h |
@@ -996,7 +996,15 @@ class Instr { |
return R31IsSP; |
} |
} |
- // TODO(zra): Handle for logical immediate operations. |
+ if (IsLogicalImmOp()) { |
+ const int op = Bits(29, 2); |
+ const bool set_flags = op == 3; |
+ if (set_flags) { |
+ return R31IsZR; |
+ } else { |
+ return R31IsSP; |
+ } |
+ } |
return R31IsZR; |
} |