Index: src/objects.h |
diff --git a/src/objects.h b/src/objects.h |
index 1a1f5fd26437ea9e2b3a51915102251ef4e2d3d9..c40eb17ecfeec0413799a58cca70523838feaf7c 100644 |
--- a/src/objects.h |
+++ b/src/objects.h |
@@ -5552,6 +5552,11 @@ class Code: public HeapObject { |
inline bool marked_for_deoptimization(); |
inline void set_marked_for_deoptimization(bool flag); |
+ // [is_promise_rejection]: For kind BUILTIN tells whether the exception |
+ // thrown by the code will lead to promise rejection. |
+ inline bool is_promise_rejection(); |
gsathya
2016/11/23 14:31:18
let me know if you can think of a better name, i c
|
+ inline void set_is_promise_rejection(bool flag); |
+ |
// [constant_pool]: The constant pool for this function. |
inline Address constant_pool(); |
@@ -5826,9 +5831,10 @@ class Code: public HeapObject { |
static const int kCanHaveWeakObjects = kIsTurbofannedBit + 1; |
// Could be moved to overlap previous bits when we need more space. |
static const int kIsConstructStub = kCanHaveWeakObjects + 1; |
+ static const int kIsPromiseRejection = kIsConstructStub + 1; |
STATIC_ASSERT(kStackSlotsFirstBit + kStackSlotsBitCount <= 32); |
- STATIC_ASSERT(kIsConstructStub + 1 <= 32); |
+ STATIC_ASSERT(kIsPromiseRejection + 1 <= 32); |
class StackSlotsField: public BitField<int, |
kStackSlotsFirstBit, kStackSlotsBitCount> {}; // NOLINT |
@@ -5840,6 +5846,8 @@ class Code: public HeapObject { |
: public BitField<bool, kCanHaveWeakObjects, 1> {}; // NOLINT |
class IsConstructStubField : public BitField<bool, kIsConstructStub, 1> { |
}; // NOLINT |
+ class IsPromiseRejectionField |
+ : public BitField<bool, kIsPromiseRejection, 1> {}; // NOLINT |
// KindSpecificFlags2 layout (ALL) |
static const int kIsCrankshaftedBit = 0; |