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

Side by Side Diff: src/objects-inl.h

Issue 178463007: Moved type feedback vector to SharedFunctionInfo. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: REBASE Created 6 years, 9 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/objects-debug.cc ('k') | src/objects-printer.cc » ('j') | 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 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 1456 matching lines...) Expand 10 before | Expand all | Expand 10 after
1467 return TRACK_ALLOCATION_SITE; 1467 return TRACK_ALLOCATION_SITE;
1468 } 1468 }
1469 1469
1470 return DONT_TRACK_ALLOCATION_SITE; 1470 return DONT_TRACK_ALLOCATION_SITE;
1471 } 1471 }
1472 1472
1473 1473
1474 AllocationSiteMode AllocationSite::GetMode(ElementsKind from, 1474 AllocationSiteMode AllocationSite::GetMode(ElementsKind from,
1475 ElementsKind to) { 1475 ElementsKind to) {
1476 if (IsFastSmiElementsKind(from) && 1476 if (IsFastSmiElementsKind(from) &&
1477 IsMoreGeneralElementsKindTransition(from, to)) { 1477 IsMoreGeneralElementsKindTransition(from, to)) {
1478 return TRACK_ALLOCATION_SITE; 1478 return TRACK_ALLOCATION_SITE;
1479 } 1479 }
1480 1480
1481 return DONT_TRACK_ALLOCATION_SITE; 1481 return DONT_TRACK_ALLOCATION_SITE;
1482 } 1482 }
1483 1483
1484 1484
1485 inline bool AllocationSite::CanTrack(InstanceType type) { 1485 inline bool AllocationSite::CanTrack(InstanceType type) {
1486 if (FLAG_allocation_site_pretenuring) { 1486 if (FLAG_allocation_site_pretenuring) {
1487 return type == JS_ARRAY_TYPE || 1487 return type == JS_ARRAY_TYPE ||
(...skipping 3450 matching lines...) Expand 10 before | Expand all | Expand 10 after
4938 ACCESSORS_TO_SMI(BreakPointInfo, code_position, kCodePositionIndex) 4938 ACCESSORS_TO_SMI(BreakPointInfo, code_position, kCodePositionIndex)
4939 ACCESSORS_TO_SMI(BreakPointInfo, source_position, kSourcePositionIndex) 4939 ACCESSORS_TO_SMI(BreakPointInfo, source_position, kSourcePositionIndex)
4940 ACCESSORS_TO_SMI(BreakPointInfo, statement_position, kStatementPositionIndex) 4940 ACCESSORS_TO_SMI(BreakPointInfo, statement_position, kStatementPositionIndex)
4941 ACCESSORS(BreakPointInfo, break_point_objects, Object, kBreakPointObjectsIndex) 4941 ACCESSORS(BreakPointInfo, break_point_objects, Object, kBreakPointObjectsIndex)
4942 #endif 4942 #endif
4943 4943
4944 ACCESSORS(SharedFunctionInfo, name, Object, kNameOffset) 4944 ACCESSORS(SharedFunctionInfo, name, Object, kNameOffset)
4945 ACCESSORS(SharedFunctionInfo, optimized_code_map, Object, 4945 ACCESSORS(SharedFunctionInfo, optimized_code_map, Object,
4946 kOptimizedCodeMapOffset) 4946 kOptimizedCodeMapOffset)
4947 ACCESSORS(SharedFunctionInfo, construct_stub, Code, kConstructStubOffset) 4947 ACCESSORS(SharedFunctionInfo, construct_stub, Code, kConstructStubOffset)
4948 ACCESSORS(SharedFunctionInfo, feedback_vector, FixedArray,
4949 kFeedbackVectorOffset)
4948 ACCESSORS(SharedFunctionInfo, initial_map, Object, kInitialMapOffset) 4950 ACCESSORS(SharedFunctionInfo, initial_map, Object, kInitialMapOffset)
4949 ACCESSORS(SharedFunctionInfo, instance_class_name, Object, 4951 ACCESSORS(SharedFunctionInfo, instance_class_name, Object,
4950 kInstanceClassNameOffset) 4952 kInstanceClassNameOffset)
4951 ACCESSORS(SharedFunctionInfo, function_data, Object, kFunctionDataOffset) 4953 ACCESSORS(SharedFunctionInfo, function_data, Object, kFunctionDataOffset)
4952 ACCESSORS(SharedFunctionInfo, script, Object, kScriptOffset) 4954 ACCESSORS(SharedFunctionInfo, script, Object, kScriptOffset)
4953 ACCESSORS(SharedFunctionInfo, debug_info, Object, kDebugInfoOffset) 4955 ACCESSORS(SharedFunctionInfo, debug_info, Object, kDebugInfoOffset)
4954 ACCESSORS(SharedFunctionInfo, inferred_name, String, kInferredNameOffset) 4956 ACCESSORS(SharedFunctionInfo, inferred_name, String, kInferredNameOffset)
4955 SMI_ACCESSORS(SharedFunctionInfo, ast_node_count, kAstNodeCountOffset) 4957 SMI_ACCESSORS(SharedFunctionInfo, ast_node_count, kAstNodeCountOffset)
4956 4958
4957 4959
(...skipping 1659 matching lines...) Expand 10 before | Expand all | Expand 10 after
6617 } 6619 }
6618 6620
6619 6621
6620 bool TypeFeedbackInfo::matches_inlined_type_change_checksum(int checksum) { 6622 bool TypeFeedbackInfo::matches_inlined_type_change_checksum(int checksum) {
6621 int value = Smi::cast(READ_FIELD(this, kStorage2Offset))->value(); 6623 int value = Smi::cast(READ_FIELD(this, kStorage2Offset))->value();
6622 int mask = (1 << kTypeChangeChecksumBits) - 1; 6624 int mask = (1 << kTypeChangeChecksumBits) - 1;
6623 return InlinedTypeChangeChecksum::decode(value) == (checksum & mask); 6625 return InlinedTypeChangeChecksum::decode(value) == (checksum & mask);
6624 } 6626 }
6625 6627
6626 6628
6627 ACCESSORS(TypeFeedbackInfo, feedback_vector, FixedArray,
6628 kFeedbackVectorOffset)
6629
6630
6631 SMI_ACCESSORS(AliasedArgumentsEntry, aliased_context_slot, kAliasedContextSlot) 6629 SMI_ACCESSORS(AliasedArgumentsEntry, aliased_context_slot, kAliasedContextSlot)
6632 6630
6633 6631
6634 Relocatable::Relocatable(Isolate* isolate) { 6632 Relocatable::Relocatable(Isolate* isolate) {
6635 isolate_ = isolate; 6633 isolate_ = isolate;
6636 prev_ = isolate->relocatable_top(); 6634 prev_ = isolate->relocatable_top();
6637 isolate->set_relocatable_top(this); 6635 isolate->set_relocatable_top(this);
6638 } 6636 }
6639 6637
6640 6638
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after
6732 #undef READ_UINT32_FIELD 6730 #undef READ_UINT32_FIELD
6733 #undef WRITE_UINT32_FIELD 6731 #undef WRITE_UINT32_FIELD
6734 #undef READ_SHORT_FIELD 6732 #undef READ_SHORT_FIELD
6735 #undef WRITE_SHORT_FIELD 6733 #undef WRITE_SHORT_FIELD
6736 #undef READ_BYTE_FIELD 6734 #undef READ_BYTE_FIELD
6737 #undef WRITE_BYTE_FIELD 6735 #undef WRITE_BYTE_FIELD
6738 6736
6739 } } // namespace v8::internal 6737 } } // namespace v8::internal
6740 6738
6741 #endif // V8_OBJECTS_INL_H_ 6739 #endif // V8_OBJECTS_INL_H_
OLDNEW
« no previous file with comments | « src/objects-debug.cc ('k') | src/objects-printer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698