Index: src/interpreter/bytecodes.h |
diff --git a/src/interpreter/bytecodes.h b/src/interpreter/bytecodes.h |
index 556e0b0195c8884105319b955164ff5b916f1c82..36041cb97e5bc59b27a5be846787275ef2844395 100644 |
--- a/src/interpreter/bytecodes.h |
+++ b/src/interpreter/bytecodes.h |
@@ -157,6 +157,18 @@ namespace interpreter { |
V(ShiftRight, AccumulatorUse::kReadWrite, OperandType::kReg) \ |
V(ShiftRightLogical, AccumulatorUse::kReadWrite, OperandType::kReg) \ |
\ |
+ /* Binary operators with immediate operands */ \ |
+ V(AddSmi, AccumulatorUse::kWrite, OperandType::kImm, OperandType::kReg) \ |
+ V(SubSmi, AccumulatorUse::kWrite, OperandType::kImm, OperandType::kReg) \ |
+ V(BitwiseOrSmi, AccumulatorUse::kWrite, OperandType::kImm, \ |
+ OperandType::kReg) \ |
+ V(BitwiseAndSmi, AccumulatorUse::kWrite, OperandType::kImm, \ |
+ OperandType::kReg) \ |
+ V(ShiftLeftSmi, AccumulatorUse::kWrite, OperandType::kImm, \ |
+ OperandType::kReg) \ |
+ V(ShiftRightSmi, AccumulatorUse::kWrite, OperandType::kImm, \ |
+ OperandType::kReg) \ |
+ \ |
/* Unary Operators */ \ |
V(Inc, AccumulatorUse::kReadWrite) \ |
V(Dec, AccumulatorUse::kReadWrite) \ |
@@ -592,6 +604,9 @@ class Bytecodes { |
// Returns true if the bytecode is Ldar or Star. |
static bool IsLdarOrStar(Bytecode bytecode); |
+ // Returns true if the bytecode is LdaSmi or LdaZero. |
+ static bool IsLdaSmiOrLdaZero(Bytecode bytecode); |
+ |
// Returns true if the bytecode has wider operand forms. |
static bool IsBytecodeWithScalableOperands(Bytecode bytecode); |