Index: src/objects.h |
diff --git a/src/objects.h b/src/objects.h |
index 50018bfb70e0f1ccc59858ae611a5b12f1f7b544..ea382423e0954b42d684fa23aec37c3feb22fdb6 100644 |
--- a/src/objects.h |
+++ b/src/objects.h |
@@ -4265,8 +4265,12 @@ class Code: public HeapObject { |
DECL_ACCESSORS(deoptimization_data, FixedArray) |
// [type_feedback_info]: Struct containing type feedback information. |
- // Will contain either a TypeFeedbackInfo object, or undefined. |
+ // STUBs can use this slot to store arbitrary information as a Smi. |
+ // Will contain either a TypeFeedbackInfo object, or undefined, or a Smi. |
DECL_ACCESSORS(type_feedback_info, Object) |
+ inline void InitializeTypeFeedbackInfoNoWriteBarrier(Object* value); |
+ inline int stub_info(); |
+ inline void set_stub_info(int info); |
// [gc_metadata]: Field used to hold GC related metadata. The contents of this |
// field does not have to be traced during garbage collection since |
@@ -4372,21 +4376,6 @@ class Code: public HeapObject { |
inline byte unary_op_type(); |
inline void set_unary_op_type(byte value); |
- // [type-recording binary op type]: For kind BINARY_OP_IC. |
- inline byte binary_op_type(); |
- inline void set_binary_op_type(byte value); |
- inline byte binary_op_result_type(); |
- inline void set_binary_op_result_type(byte value); |
- |
- // [compare state]: For kind COMPARE_IC, tells what state the stub is in. |
- inline byte compare_state(); |
- inline void set_compare_state(byte value); |
- |
- // [compare_operation]: For kind COMPARE_IC tells what compare operation the |
- // stub was generated for. |
- inline byte compare_operation(); |
- inline void set_compare_operation(byte value); |
- |
// [to_boolean_foo]: For kind TO_BOOLEAN_IC tells what state the stub is in. |
inline byte to_boolean_state(); |
inline void set_to_boolean_state(byte value); |
@@ -4579,18 +4568,6 @@ class Code: public HeapObject { |
static const int kUnaryOpTypeFirstBit = |
kStackSlotsFirstBit + kStackSlotsBitCount; |
static const int kUnaryOpTypeBitCount = 3; |
- static const int kBinaryOpTypeFirstBit = |
- kStackSlotsFirstBit + kStackSlotsBitCount; |
- static const int kBinaryOpTypeBitCount = 3; |
- static const int kBinaryOpResultTypeFirstBit = |
- kBinaryOpTypeFirstBit + kBinaryOpTypeBitCount; |
- static const int kBinaryOpResultTypeBitCount = 3; |
- static const int kCompareStateFirstBit = |
- kStackSlotsFirstBit + kStackSlotsBitCount; |
- static const int kCompareStateBitCount = 3; |
- static const int kCompareOperationFirstBit = |
- kCompareStateFirstBit + kCompareStateBitCount; |
- static const int kCompareOperationBitCount = 4; |
static const int kToBooleanStateFirstBit = |
kStackSlotsFirstBit + kStackSlotsBitCount; |
static const int kToBooleanStateBitCount = 8; |
@@ -4600,11 +4577,6 @@ class Code: public HeapObject { |
STATIC_ASSERT(kStackSlotsFirstBit + kStackSlotsBitCount <= 32); |
STATIC_ASSERT(kUnaryOpTypeFirstBit + kUnaryOpTypeBitCount <= 32); |
- STATIC_ASSERT(kBinaryOpTypeFirstBit + kBinaryOpTypeBitCount <= 32); |
- STATIC_ASSERT(kBinaryOpResultTypeFirstBit + |
- kBinaryOpResultTypeBitCount <= 32); |
- STATIC_ASSERT(kCompareStateFirstBit + kCompareStateBitCount <= 32); |
- STATIC_ASSERT(kCompareOperationFirstBit + kCompareOperationBitCount <= 32); |
STATIC_ASSERT(kToBooleanStateFirstBit + kToBooleanStateBitCount <= 32); |
STATIC_ASSERT(kHasFunctionCacheFirstBit + kHasFunctionCacheBitCount <= 32); |
@@ -4612,14 +4584,6 @@ class Code: public HeapObject { |
kStackSlotsFirstBit, kStackSlotsBitCount> {}; // NOLINT |
class UnaryOpTypeField: public BitField<int, |
kUnaryOpTypeFirstBit, kUnaryOpTypeBitCount> {}; // NOLINT |
- class BinaryOpTypeField: public BitField<int, |
- kBinaryOpTypeFirstBit, kBinaryOpTypeBitCount> {}; // NOLINT |
- class BinaryOpResultTypeField: public BitField<int, |
- kBinaryOpResultTypeFirstBit, kBinaryOpResultTypeBitCount> {}; // NOLINT |
- class CompareStateField: public BitField<int, |
- kCompareStateFirstBit, kCompareStateBitCount> {}; // NOLINT |
- class CompareOperationField: public BitField<int, |
- kCompareOperationFirstBit, kCompareOperationBitCount> {}; // NOLINT |
class ToBooleanStateField: public BitField<int, |
kToBooleanStateFirstBit, kToBooleanStateBitCount> {}; // NOLINT |
class HasFunctionCacheField: public BitField<bool, |