| 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_CODEGEN_H_ | 5 #ifndef V8_CODEGEN_H_ |
| 6 #define V8_CODEGEN_H_ | 6 #define V8_CODEGEN_H_ |
| 7 | 7 |
| 8 #include "src/code-stubs.h" | 8 #include "src/code-stubs.h" |
| 9 #include "src/runtime.h" | 9 #include "src/runtime.h" |
| 10 | 10 |
| (...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 110 void init_modulo_function(); | 110 void init_modulo_function(); |
| 111 #endif | 111 #endif |
| 112 void lazily_initialize_fast_exp(); | 112 void lazily_initialize_fast_exp(); |
| 113 void init_fast_sqrt_function(); | 113 void init_fast_sqrt_function(); |
| 114 | 114 |
| 115 | 115 |
| 116 class ElementsTransitionGenerator : public AllStatic { | 116 class ElementsTransitionGenerator : public AllStatic { |
| 117 public: | 117 public: |
| 118 // If |mode| is set to DONT_TRACK_ALLOCATION_SITE, | 118 // If |mode| is set to DONT_TRACK_ALLOCATION_SITE, |
| 119 // |allocation_memento_found| may be NULL. | 119 // |allocation_memento_found| may be NULL. |
| 120 static void GenerateMapChangeElementsTransition(MacroAssembler* masm, | 120 static void GenerateMapChangeElementsTransition( |
| 121 MacroAssembler* masm, |
| 122 Register receiver, |
| 123 Register key, |
| 124 Register value, |
| 125 Register target_map, |
| 121 AllocationSiteMode mode, | 126 AllocationSiteMode mode, |
| 122 Label* allocation_memento_found); | 127 Label* allocation_memento_found); |
| 123 static void GenerateSmiToDouble(MacroAssembler* masm, | 128 static void GenerateSmiToDouble( |
| 124 AllocationSiteMode mode, | 129 MacroAssembler* masm, |
| 125 Label* fail); | 130 Register receiver, |
| 126 static void GenerateDoubleToObject(MacroAssembler* masm, | 131 Register key, |
| 127 AllocationSiteMode mode, | 132 Register value, |
| 128 Label* fail); | 133 Register target_map, |
| 134 AllocationSiteMode mode, |
| 135 Label* fail); |
| 136 static void GenerateDoubleToObject( |
| 137 MacroAssembler* masm, |
| 138 Register receiver, |
| 139 Register key, |
| 140 Register value, |
| 141 Register target_map, |
| 142 AllocationSiteMode mode, |
| 143 Label* fail); |
| 129 | 144 |
| 130 private: | 145 private: |
| 131 DISALLOW_COPY_AND_ASSIGN(ElementsTransitionGenerator); | 146 DISALLOW_COPY_AND_ASSIGN(ElementsTransitionGenerator); |
| 132 }; | 147 }; |
| 133 | 148 |
| 134 static const int kNumberDictionaryProbes = 4; | 149 static const int kNumberDictionaryProbes = 4; |
| 135 | 150 |
| 136 | 151 |
| 137 class CodeAgingHelper { | 152 class CodeAgingHelper { |
| 138 public: | 153 public: |
| (...skipping 18 matching lines...) Expand all Loading... |
| 157 #ifdef DEBUG | 172 #ifdef DEBUG |
| 158 #ifdef V8_TARGET_ARCH_ARM64 | 173 #ifdef V8_TARGET_ARCH_ARM64 |
| 159 const EmbeddedVector<byte, kNoCodeAgeSequenceLength> old_sequence_; | 174 const EmbeddedVector<byte, kNoCodeAgeSequenceLength> old_sequence_; |
| 160 #endif | 175 #endif |
| 161 #endif | 176 #endif |
| 162 }; | 177 }; |
| 163 | 178 |
| 164 } } // namespace v8::internal | 179 } } // namespace v8::internal |
| 165 | 180 |
| 166 #endif // V8_CODEGEN_H_ | 181 #endif // V8_CODEGEN_H_ |
| OLD | NEW |