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

Side by Side Diff: src/ic/ic.h

Issue 652183002: Always initialize key_type_ in AST nodes (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 2 months 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 | Annotate | Revision Log
« no previous file with comments | « src/ast.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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_IC_H_ 5 #ifndef V8_IC_H_
6 #define V8_IC_H_ 6 #define V8_IC_H_
7 7
8 #include "src/ic/ic-state.h" 8 #include "src/ic/ic-state.h"
9 #include "src/macro-assembler.h" 9 #include "src/macro-assembler.h"
10 10
(...skipping 529 matching lines...) Expand 10 before | Expand all | Expand 10 after
540 // ExtraICState bits (building on IC) 540 // ExtraICState bits (building on IC)
541 // ExtraICState bits 541 // ExtraICState bits
542 class ExtraICStateKeyedAccessStoreMode 542 class ExtraICStateKeyedAccessStoreMode
543 : public BitField<KeyedAccessStoreMode, 2, 4> {}; // NOLINT 543 : public BitField<KeyedAccessStoreMode, 2, 4> {}; // NOLINT
544 544
545 class IcCheckTypeField : public BitField<IcCheckType, 6, 1> {}; 545 class IcCheckTypeField : public BitField<IcCheckType, 6, 1> {};
546 546
547 static ExtraICState ComputeExtraICState(StrictMode flag, 547 static ExtraICState ComputeExtraICState(StrictMode flag,
548 KeyedAccessStoreMode mode) { 548 KeyedAccessStoreMode mode) {
549 return StrictModeState::encode(flag) | 549 return StrictModeState::encode(flag) |
550 ExtraICStateKeyedAccessStoreMode::encode(mode); 550 ExtraICStateKeyedAccessStoreMode::encode(mode) |
551 IcCheckTypeField::encode(ELEMENT);
551 } 552 }
552 553
553 static KeyedAccessStoreMode GetKeyedAccessStoreMode( 554 static KeyedAccessStoreMode GetKeyedAccessStoreMode(
554 ExtraICState extra_state) { 555 ExtraICState extra_state) {
555 return ExtraICStateKeyedAccessStoreMode::decode(extra_state); 556 return ExtraICStateKeyedAccessStoreMode::decode(extra_state);
556 } 557 }
557 558
558 static IcCheckType GetKeyType(ExtraICState extra_state) { 559 static IcCheckType GetKeyType(ExtraICState extra_state) {
559 return IcCheckTypeField::decode(extra_state); 560 return IcCheckTypeField::decode(extra_state);
560 } 561 }
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after
704 705
705 // Support functions for interceptor handlers. 706 // Support functions for interceptor handlers.
706 DECLARE_RUNTIME_FUNCTION(LoadPropertyWithInterceptorOnly); 707 DECLARE_RUNTIME_FUNCTION(LoadPropertyWithInterceptorOnly);
707 DECLARE_RUNTIME_FUNCTION(LoadPropertyWithInterceptor); 708 DECLARE_RUNTIME_FUNCTION(LoadPropertyWithInterceptor);
708 DECLARE_RUNTIME_FUNCTION(LoadElementWithInterceptor); 709 DECLARE_RUNTIME_FUNCTION(LoadElementWithInterceptor);
709 DECLARE_RUNTIME_FUNCTION(StorePropertyWithInterceptor); 710 DECLARE_RUNTIME_FUNCTION(StorePropertyWithInterceptor);
710 } 711 }
711 } // namespace v8::internal 712 } // namespace v8::internal
712 713
713 #endif // V8_IC_H_ 714 #endif // V8_IC_H_
OLDNEW
« no previous file with comments | « src/ast.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698