OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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_PPC_CODE_STUBS_PPC_H_ | 5 #ifndef V8_PPC_CODE_STUBS_PPC_H_ |
6 #define V8_PPC_CODE_STUBS_PPC_H_ | 6 #define V8_PPC_CODE_STUBS_PPC_H_ |
7 | 7 |
8 #include "src/ppc/frames-ppc.h" | 8 #include "src/ppc/frames-ppc.h" |
9 | 9 |
10 namespace v8 { | 10 namespace v8 { |
(...skipping 270 matching lines...) Loading... |
281 NameDictionaryLookupStub(Isolate* isolate, LookupMode mode) | 281 NameDictionaryLookupStub(Isolate* isolate, LookupMode mode) |
282 : PlatformCodeStub(isolate) { | 282 : PlatformCodeStub(isolate) { |
283 minor_key_ = LookupModeBits::encode(mode); | 283 minor_key_ = LookupModeBits::encode(mode); |
284 } | 284 } |
285 | 285 |
286 static void GenerateNegativeLookup(MacroAssembler* masm, Label* miss, | 286 static void GenerateNegativeLookup(MacroAssembler* masm, Label* miss, |
287 Label* done, Register receiver, | 287 Label* done, Register receiver, |
288 Register properties, Handle<Name> name, | 288 Register properties, Handle<Name> name, |
289 Register scratch0); | 289 Register scratch0); |
290 | 290 |
291 static void GeneratePositiveLookup(MacroAssembler* masm, Label* miss, | |
292 Label* done, Register elements, | |
293 Register name, Register r0, Register r1); | |
294 | |
295 bool SometimesSetsUpAFrame() override { return false; } | 291 bool SometimesSetsUpAFrame() override { return false; } |
296 | 292 |
297 private: | 293 private: |
298 static const int kInlinedProbes = 4; | 294 static const int kInlinedProbes = 4; |
299 static const int kTotalProbes = 20; | 295 static const int kTotalProbes = 20; |
300 | 296 |
301 static const int kCapacityOffset = | 297 static const int kCapacityOffset = |
302 NameDictionary::kHeaderSize + | 298 NameDictionary::kHeaderSize + |
303 NameDictionary::kCapacityIndex * kPointerSize; | 299 NameDictionary::kCapacityIndex * kPointerSize; |
304 | 300 |
305 static const int kElementsStartOffset = | 301 static const int kElementsStartOffset = |
306 NameDictionary::kHeaderSize + | 302 NameDictionary::kHeaderSize + |
307 NameDictionary::kElementsStartIndex * kPointerSize; | 303 NameDictionary::kElementsStartIndex * kPointerSize; |
308 | 304 |
309 LookupMode mode() const { return LookupModeBits::decode(minor_key_); } | 305 LookupMode mode() const { return LookupModeBits::decode(minor_key_); } |
310 | 306 |
311 class LookupModeBits : public BitField<LookupMode, 0, 1> {}; | 307 class LookupModeBits : public BitField<LookupMode, 0, 1> {}; |
312 | 308 |
313 DEFINE_NULL_CALL_INTERFACE_DESCRIPTOR(); | 309 DEFINE_NULL_CALL_INTERFACE_DESCRIPTOR(); |
314 DEFINE_PLATFORM_CODE_STUB(NameDictionaryLookup, PlatformCodeStub); | 310 DEFINE_PLATFORM_CODE_STUB(NameDictionaryLookup, PlatformCodeStub); |
315 }; | 311 }; |
316 } // namespace internal | 312 } // namespace internal |
317 } // namespace v8 | 313 } // namespace v8 |
318 | 314 |
319 #endif // V8_PPC_CODE_STUBS_PPC_H_ | 315 #endif // V8_PPC_CODE_STUBS_PPC_H_ |
OLD | NEW |