Index: runtime/vm/simulator_dbc.cc |
diff --git a/runtime/vm/simulator_dbc.cc b/runtime/vm/simulator_dbc.cc |
index c02e1bfcaa5dfe5e11de27f647c661240756c608..c8908cb29bdd43d12b2a4d75ef40519ddb165052 100644 |
--- a/runtime/vm/simulator_dbc.cc |
+++ b/runtime/vm/simulator_dbc.cc |
@@ -1983,7 +1983,7 @@ RawObject* Simulator::Call(const Code& code, |
{ |
BYTECODE(Shl, A_B_C); |
const intptr_t rhs = reinterpret_cast<intptr_t>(FP[rC]) >> kSmiTagSize; |
- if (rhs >= 0) { |
+ if (static_cast<uintptr_t>(rhs) < kBitsPerWord) { |
const intptr_t lhs = reinterpret_cast<intptr_t>(FP[rB]); |
const intptr_t res = lhs << rhs; |
if (lhs == (res >> rhs)) { |