OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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_DEOPTIMIZER_H_ | 5 #ifndef V8_DEOPTIMIZER_H_ |
6 #define V8_DEOPTIMIZER_H_ | 6 #define V8_DEOPTIMIZER_H_ |
7 | 7 |
8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
9 #include "src/macro-assembler.h" | 9 #include "src/macro-assembler.h" |
10 | 10 |
(...skipping 720 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
731 public: | 731 public: |
732 FrameDescription(uint32_t frame_size, | 732 FrameDescription(uint32_t frame_size, |
733 JSFunction* function); | 733 JSFunction* function); |
734 | 734 |
735 void* operator new(size_t size, uint32_t frame_size) { | 735 void* operator new(size_t size, uint32_t frame_size) { |
736 // Subtracts kPointerSize, as the member frame_content_ already supplies | 736 // Subtracts kPointerSize, as the member frame_content_ already supplies |
737 // the first element of the area to store the frame. | 737 // the first element of the area to store the frame. |
738 return malloc(size + frame_size - kPointerSize); | 738 return malloc(size + frame_size - kPointerSize); |
739 } | 739 } |
740 | 740 |
741 // Bug in VS2015 RC, reported fixed in RTM. Microsoft bug: 1153909. | |
742 #if !defined(_MSC_FULL_VER) || _MSC_FULL_VER != 190022816 | |
743 void operator delete(void* pointer, uint32_t frame_size) { | 741 void operator delete(void* pointer, uint32_t frame_size) { |
744 free(pointer); | 742 free(pointer); |
745 } | 743 } |
746 #endif // _MSC_FULL_VER | |
747 | 744 |
748 void operator delete(void* description) { | 745 void operator delete(void* description) { |
749 free(description); | 746 free(description); |
750 } | 747 } |
751 | 748 |
752 uint32_t GetFrameSize() const { | 749 uint32_t GetFrameSize() const { |
753 DCHECK(static_cast<uint32_t>(frame_size_) == frame_size_); | 750 DCHECK(static_cast<uint32_t>(frame_size_) == frame_size_); |
754 return static_cast<uint32_t>(frame_size_); | 751 return static_cast<uint32_t>(frame_size_); |
755 } | 752 } |
756 | 753 |
(...skipping 374 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1131 Object** expression_stack_; | 1128 Object** expression_stack_; |
1132 int source_position_; | 1129 int source_position_; |
1133 | 1130 |
1134 friend class Deoptimizer; | 1131 friend class Deoptimizer; |
1135 }; | 1132 }; |
1136 | 1133 |
1137 } // namespace internal | 1134 } // namespace internal |
1138 } // namespace v8 | 1135 } // namespace v8 |
1139 | 1136 |
1140 #endif // V8_DEOPTIMIZER_H_ | 1137 #endif // V8_DEOPTIMIZER_H_ |
OLD | NEW |