Index: runtime/vm/constants_dbc.h |
diff --git a/runtime/vm/constants_dbc.h b/runtime/vm/constants_dbc.h |
index e84ae57e8e2fa89c1bc40ed3276c50e41bfce63c..564e96394ab72bf3a7eba93bc426686555cf689e 100644 |
--- a/runtime/vm/constants_dbc.h |
+++ b/runtime/vm/constants_dbc.h |
@@ -754,6 +754,23 @@ BYTECODES_LIST(DECLARE_BYTECODE) |
} |
} |
+ DART_FORCE_INLINE static bool IsFastSmiOpcode(Instr instr) { |
+ switch (DecodeOpcode(instr)) { |
+ case Bytecode::kAddTOS: |
+ case Bytecode::kSubTOS: |
+ case Bytecode::kMulTOS: |
+ case Bytecode::kBitOrTOS: |
+ case Bytecode::kBitAndTOS: |
+ case Bytecode::kEqualTOS: |
+ case Bytecode::kLessThanTOS: |
+ case Bytecode::kGreaterThanTOS: |
+ return true; |
+ |
+ default: |
+ return false; |
+ } |
+ } |
+ |
DART_FORCE_INLINE static uint8_t DecodeArgc(Instr call) { |
ASSERT(IsCallOpcode(call)); |
return (call >> 8) & 0xFF; |