Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(598)

Side by Side Diff: src/objects.h

Issue 2572623002: PromiseHandle port to TF (Closed)
Patch Set: Address comments Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/js/promise.js ('k') | src/objects-inl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 the V8 project authors. All rights reserved. 1 // Copyright 2015 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef V8_OBJECTS_H_ 5 #ifndef V8_OBJECTS_H_
6 #define V8_OBJECTS_H_ 6 #define V8_OBJECTS_H_
7 7
8 #include <iosfwd> 8 #include <iosfwd>
9 #include <memory> 9 #include <memory>
10 10
(...skipping 5561 matching lines...) Expand 10 before | Expand all | Expand 10 after
5572 // [marked_for_deoptimization]: For kind OPTIMIZED_FUNCTION tells whether 5572 // [marked_for_deoptimization]: For kind OPTIMIZED_FUNCTION tells whether
5573 // the code is going to be deoptimized because of dead embedded maps. 5573 // the code is going to be deoptimized because of dead embedded maps.
5574 inline bool marked_for_deoptimization(); 5574 inline bool marked_for_deoptimization();
5575 inline void set_marked_for_deoptimization(bool flag); 5575 inline void set_marked_for_deoptimization(bool flag);
5576 5576
5577 // [is_promise_rejection]: For kind BUILTIN tells whether the exception 5577 // [is_promise_rejection]: For kind BUILTIN tells whether the exception
5578 // thrown by the code will lead to promise rejection. 5578 // thrown by the code will lead to promise rejection.
5579 inline bool is_promise_rejection(); 5579 inline bool is_promise_rejection();
5580 inline void set_is_promise_rejection(bool flag); 5580 inline void set_is_promise_rejection(bool flag);
5581 5581
5582 // [is_exception_caught]: For kind BUILTIN tells whether the exception
5583 // thrown by the code will be caught internally.
5584 inline bool is_exception_caught();
5585 inline void set_is_exception_caught(bool flag);
5586
5582 // [constant_pool]: The constant pool for this function. 5587 // [constant_pool]: The constant pool for this function.
5583 inline Address constant_pool(); 5588 inline Address constant_pool();
5584 5589
5585 // Get the safepoint entry for the given pc. 5590 // Get the safepoint entry for the given pc.
5586 SafepointEntry GetSafepointEntry(Address pc); 5591 SafepointEntry GetSafepointEntry(Address pc);
5587 5592
5588 // Find an object in a stub with a specified map 5593 // Find an object in a stub with a specified map
5589 Object* FindNthObject(int n, Map* match_map); 5594 Object* FindNthObject(int n, Map* match_map);
5590 5595
5591 // Find the first allocation site in an IC stub. 5596 // Find the first allocation site in an IC stub.
(...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after
5849 // KindSpecificFlags1 layout (STUB, BUILTIN and OPTIMIZED_FUNCTION) 5854 // KindSpecificFlags1 layout (STUB, BUILTIN and OPTIMIZED_FUNCTION)
5850 static const int kStackSlotsFirstBit = 0; 5855 static const int kStackSlotsFirstBit = 0;
5851 static const int kStackSlotsBitCount = 24; 5856 static const int kStackSlotsBitCount = 24;
5852 static const int kMarkedForDeoptimizationBit = 5857 static const int kMarkedForDeoptimizationBit =
5853 kStackSlotsFirstBit + kStackSlotsBitCount; 5858 kStackSlotsFirstBit + kStackSlotsBitCount;
5854 static const int kIsTurbofannedBit = kMarkedForDeoptimizationBit + 1; 5859 static const int kIsTurbofannedBit = kMarkedForDeoptimizationBit + 1;
5855 static const int kCanHaveWeakObjects = kIsTurbofannedBit + 1; 5860 static const int kCanHaveWeakObjects = kIsTurbofannedBit + 1;
5856 // Could be moved to overlap previous bits when we need more space. 5861 // Could be moved to overlap previous bits when we need more space.
5857 static const int kIsConstructStub = kCanHaveWeakObjects + 1; 5862 static const int kIsConstructStub = kCanHaveWeakObjects + 1;
5858 static const int kIsPromiseRejection = kIsConstructStub + 1; 5863 static const int kIsPromiseRejection = kIsConstructStub + 1;
5864 static const int kIsExceptionCaught = kIsPromiseRejection + 1;
5859 5865
5860 STATIC_ASSERT(kStackSlotsFirstBit + kStackSlotsBitCount <= 32); 5866 STATIC_ASSERT(kStackSlotsFirstBit + kStackSlotsBitCount <= 32);
5861 STATIC_ASSERT(kIsPromiseRejection + 1 <= 32); 5867 STATIC_ASSERT(kIsExceptionCaught + 1 <= 32);
5862 5868
5863 class StackSlotsField: public BitField<int, 5869 class StackSlotsField: public BitField<int,
5864 kStackSlotsFirstBit, kStackSlotsBitCount> {}; // NOLINT 5870 kStackSlotsFirstBit, kStackSlotsBitCount> {}; // NOLINT
5865 class MarkedForDeoptimizationField 5871 class MarkedForDeoptimizationField
5866 : public BitField<bool, kMarkedForDeoptimizationBit, 1> {}; // NOLINT 5872 : public BitField<bool, kMarkedForDeoptimizationBit, 1> {}; // NOLINT
5867 class IsTurbofannedField : public BitField<bool, kIsTurbofannedBit, 1> { 5873 class IsTurbofannedField : public BitField<bool, kIsTurbofannedBit, 1> {
5868 }; // NOLINT 5874 }; // NOLINT
5869 class CanHaveWeakObjectsField 5875 class CanHaveWeakObjectsField
5870 : public BitField<bool, kCanHaveWeakObjects, 1> {}; // NOLINT 5876 : public BitField<bool, kCanHaveWeakObjects, 1> {}; // NOLINT
5871 class IsConstructStubField : public BitField<bool, kIsConstructStub, 1> { 5877 class IsConstructStubField : public BitField<bool, kIsConstructStub, 1> {
5872 }; // NOLINT 5878 }; // NOLINT
5873 class IsPromiseRejectionField 5879 class IsPromiseRejectionField
5874 : public BitField<bool, kIsPromiseRejection, 1> {}; // NOLINT 5880 : public BitField<bool, kIsPromiseRejection, 1> {}; // NOLINT
5881 class IsExceptionCaughtField : public BitField<bool, kIsExceptionCaught, 1> {
5882 }; // NOLINT
5875 5883
5876 // KindSpecificFlags2 layout (ALL) 5884 // KindSpecificFlags2 layout (ALL)
5877 static const int kIsCrankshaftedBit = 0; 5885 static const int kIsCrankshaftedBit = 0;
5878 class IsCrankshaftedField: public BitField<bool, 5886 class IsCrankshaftedField: public BitField<bool,
5879 kIsCrankshaftedBit, 1> {}; // NOLINT 5887 kIsCrankshaftedBit, 1> {}; // NOLINT
5880 5888
5881 // KindSpecificFlags2 layout (STUB and OPTIMIZED_FUNCTION) 5889 // KindSpecificFlags2 layout (STUB and OPTIMIZED_FUNCTION)
5882 static const int kSafepointTableOffsetFirstBit = kIsCrankshaftedBit + 1; 5890 static const int kSafepointTableOffsetFirstBit = kIsCrankshaftedBit + 1;
5883 static const int kSafepointTableOffsetBitCount = 30; 5891 static const int kSafepointTableOffsetBitCount = 30;
5884 5892
(...skipping 6124 matching lines...) Expand 10 before | Expand all | Expand 10 after
12009 } 12017 }
12010 return value; 12018 return value;
12011 } 12019 }
12012 }; 12020 };
12013 12021
12014 12022
12015 } // NOLINT, false-positive due to second-order macros. 12023 } // NOLINT, false-positive due to second-order macros.
12016 } // NOLINT, false-positive due to second-order macros. 12024 } // NOLINT, false-positive due to second-order macros.
12017 12025
12018 #endif // V8_OBJECTS_H_ 12026 #endif // V8_OBJECTS_H_
OLDNEW
« no previous file with comments | « src/js/promise.js ('k') | src/objects-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698