OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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_IA32_CODE_STUBS_IA32_H_ | 5 #ifndef V8_IA32_CODE_STUBS_IA32_H_ |
6 #define V8_IA32_CODE_STUBS_IA32_H_ | 6 #define V8_IA32_CODE_STUBS_IA32_H_ |
7 | 7 |
8 #include "src/code-stubs.h" | 8 #include "src/code-stubs.h" |
9 | 9 |
10 namespace v8 { | 10 namespace v8 { |
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
107 static const int kTotalProbes = 20; | 107 static const int kTotalProbes = 20; |
108 | 108 |
109 static const int kCapacityOffset = | 109 static const int kCapacityOffset = |
110 NameDictionary::kHeaderSize + | 110 NameDictionary::kHeaderSize + |
111 NameDictionary::kCapacityIndex * kPointerSize; | 111 NameDictionary::kCapacityIndex * kPointerSize; |
112 | 112 |
113 static const int kElementsStartOffset = | 113 static const int kElementsStartOffset = |
114 NameDictionary::kHeaderSize + | 114 NameDictionary::kHeaderSize + |
115 NameDictionary::kElementsStartIndex * kPointerSize; | 115 NameDictionary::kElementsStartIndex * kPointerSize; |
116 | 116 |
117 Major MajorKey() const { return NameDictionaryLookup; } | 117 virtual inline Major MajorKey() const FINAL OVERRIDE; |
118 | 118 |
119 Register dictionary() const { | 119 Register dictionary() const { |
120 return Register::from_code(DictionaryBits::decode(minor_key_)); | 120 return Register::from_code(DictionaryBits::decode(minor_key_)); |
121 } | 121 } |
122 | 122 |
123 Register result() const { | 123 Register result() const { |
124 return Register::from_code(ResultBits::decode(minor_key_)); | 124 return Register::from_code(ResultBits::decode(minor_key_)); |
125 } | 125 } |
126 | 126 |
127 Register index() const { | 127 Register index() const { |
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
352 return no_reg; | 352 return no_reg; |
353 } | 353 } |
354 friend class RecordWriteStub; | 354 friend class RecordWriteStub; |
355 }; | 355 }; |
356 | 356 |
357 enum OnNoNeedToInformIncrementalMarker { | 357 enum OnNoNeedToInformIncrementalMarker { |
358 kReturnOnNoNeedToInformIncrementalMarker, | 358 kReturnOnNoNeedToInformIncrementalMarker, |
359 kUpdateRememberedSetOnNoNeedToInformIncrementalMarker | 359 kUpdateRememberedSetOnNoNeedToInformIncrementalMarker |
360 }; | 360 }; |
361 | 361 |
362 Major MajorKey() const { return RecordWrite; } | 362 virtual inline Major MajorKey() const FINAL OVERRIDE; |
363 | 363 |
364 void Generate(MacroAssembler* masm); | 364 void Generate(MacroAssembler* masm); |
365 void GenerateIncremental(MacroAssembler* masm, Mode mode); | 365 void GenerateIncremental(MacroAssembler* masm, Mode mode); |
366 void CheckNeedsToInformIncrementalMarker( | 366 void CheckNeedsToInformIncrementalMarker( |
367 MacroAssembler* masm, | 367 MacroAssembler* masm, |
368 OnNoNeedToInformIncrementalMarker on_no_need, | 368 OnNoNeedToInformIncrementalMarker on_no_need, |
369 Mode mode); | 369 Mode mode); |
370 void InformIncrementalMarker(MacroAssembler* masm); | 370 void InformIncrementalMarker(MacroAssembler* masm); |
371 | 371 |
372 void Activate(Code* code) { | 372 void Activate(Code* code) { |
(...skipping 28 matching lines...) Expand all Loading... |
401 | 401 |
402 RegisterAllocation regs_; | 402 RegisterAllocation regs_; |
403 | 403 |
404 DISALLOW_COPY_AND_ASSIGN(RecordWriteStub); | 404 DISALLOW_COPY_AND_ASSIGN(RecordWriteStub); |
405 }; | 405 }; |
406 | 406 |
407 | 407 |
408 } } // namespace v8::internal | 408 } } // namespace v8::internal |
409 | 409 |
410 #endif // V8_IA32_CODE_STUBS_IA32_H_ | 410 #endif // V8_IA32_CODE_STUBS_IA32_H_ |
OLD | NEW |