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

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

Issue 9403009: Count ICs that have type information. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: fix confusing --trace-opt output Created 8 years, 10 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 3606 matching lines...) Expand 10 before | Expand all | Expand 10 after
3617 compiler_hints, 3617 compiler_hints,
3618 kCompilerHintsOffset) 3618 kCompilerHintsOffset)
3619 3619
3620 PSEUDO_SMI_ACCESSORS_LO(SharedFunctionInfo, 3620 PSEUDO_SMI_ACCESSORS_LO(SharedFunctionInfo,
3621 this_property_assignments_count, 3621 this_property_assignments_count,
3622 kThisPropertyAssignmentsCountOffset) 3622 kThisPropertyAssignmentsCountOffset)
3623 PSEUDO_SMI_ACCESSORS_HI(SharedFunctionInfo, opt_count, kOptCountOffset) 3623 PSEUDO_SMI_ACCESSORS_HI(SharedFunctionInfo, opt_count, kOptCountOffset)
3624 3624
3625 PSEUDO_SMI_ACCESSORS_LO(SharedFunctionInfo, ast_node_count, kAstNodeCountOffset) 3625 PSEUDO_SMI_ACCESSORS_LO(SharedFunctionInfo, ast_node_count, kAstNodeCountOffset)
3626 PSEUDO_SMI_ACCESSORS_HI(SharedFunctionInfo, deopt_counter, kDeoptCounterOffset) 3626 PSEUDO_SMI_ACCESSORS_HI(SharedFunctionInfo, deopt_counter, kDeoptCounterOffset)
3627
Vyacheslav Egorov (Chromium) 2012/02/20 08:32:14 accidental edit?
3627 #endif 3628 #endif
3628 3629
3629 3630
3630 int SharedFunctionInfo::construction_count() { 3631 int SharedFunctionInfo::construction_count() {
3631 return READ_BYTE_FIELD(this, kConstructionCountOffset); 3632 return READ_BYTE_FIELD(this, kConstructionCountOffset);
3632 } 3633 }
3633 3634
3634 3635
3635 void SharedFunctionInfo::set_construction_count(int value) { 3636 void SharedFunctionInfo::set_construction_count(int value) {
3636 ASSERT(0 <= value && value < 256); 3637 ASSERT(0 <= value && value < 256);
(...skipping 475 matching lines...) Expand 10 before | Expand all | Expand 10 after
4112 ASSERT(obj->IsJSMessageObject()); 4113 ASSERT(obj->IsJSMessageObject());
4113 ASSERT(HeapObject::cast(obj)->Size() == JSMessageObject::kSize); 4114 ASSERT(HeapObject::cast(obj)->Size() == JSMessageObject::kSize);
4114 return reinterpret_cast<JSMessageObject*>(obj); 4115 return reinterpret_cast<JSMessageObject*>(obj);
4115 } 4116 }
4116 4117
4117 4118
4118 INT_ACCESSORS(Code, instruction_size, kInstructionSizeOffset) 4119 INT_ACCESSORS(Code, instruction_size, kInstructionSizeOffset)
4119 ACCESSORS(Code, relocation_info, ByteArray, kRelocationInfoOffset) 4120 ACCESSORS(Code, relocation_info, ByteArray, kRelocationInfoOffset)
4120 ACCESSORS(Code, handler_table, FixedArray, kHandlerTableOffset) 4121 ACCESSORS(Code, handler_table, FixedArray, kHandlerTableOffset)
4121 ACCESSORS(Code, deoptimization_data, FixedArray, kDeoptimizationDataOffset) 4122 ACCESSORS(Code, deoptimization_data, FixedArray, kDeoptimizationDataOffset)
4122 ACCESSORS(Code, type_feedback_cells, TypeFeedbackCells, 4123 ACCESSORS(Code, type_feedback_info, Object, kTypeFeedbackInfoOffset)
4123 kTypeFeedbackCellsOffset)
4124 ACCESSORS(Code, gc_metadata, Object, kGCMetadataOffset) 4124 ACCESSORS(Code, gc_metadata, Object, kGCMetadataOffset)
4125 4125
4126 4126
4127 byte* Code::instruction_start() { 4127 byte* Code::instruction_start() {
4128 return FIELD_ADDR(this, kHeaderSize); 4128 return FIELD_ADDR(this, kHeaderSize);
4129 } 4129 }
4130 4130
4131 4131
4132 byte* Code::instruction_end() { 4132 byte* Code::instruction_end() {
4133 return instruction_start() + instruction_size(); 4133 return instruction_start() + instruction_size();
(...skipping 655 matching lines...) Expand 10 before | Expand all | Expand 10 after
4789 Handle<Object> TypeFeedbackCells::MegamorphicSentinel(Isolate* isolate) { 4789 Handle<Object> TypeFeedbackCells::MegamorphicSentinel(Isolate* isolate) {
4790 return isolate->factory()->undefined_value(); 4790 return isolate->factory()->undefined_value();
4791 } 4791 }
4792 4792
4793 4793
4794 Object* TypeFeedbackCells::RawUninitializedSentinel(Heap* heap) { 4794 Object* TypeFeedbackCells::RawUninitializedSentinel(Heap* heap) {
4795 return heap->raw_unchecked_the_hole_value(); 4795 return heap->raw_unchecked_the_hole_value();
4796 } 4796 }
4797 4797
4798 4798
4799 SMI_ACCESSORS(TypeFeedbackInfo, ic_total_count, kIcTotalCountOffset)
4800 SMI_ACCESSORS(TypeFeedbackInfo, ic_with_typeinfo_count,
4801 kIcWithTypeinfoCountOffset)
4802 ACCESSORS(TypeFeedbackInfo, type_feedback_cells, TypeFeedbackCells,
4803 kTypeFeedbackCellsOffset)
4804
4805
4799 Relocatable::Relocatable(Isolate* isolate) { 4806 Relocatable::Relocatable(Isolate* isolate) {
4800 ASSERT(isolate == Isolate::Current()); 4807 ASSERT(isolate == Isolate::Current());
4801 isolate_ = isolate; 4808 isolate_ = isolate;
4802 prev_ = isolate->relocatable_top(); 4809 prev_ = isolate->relocatable_top();
4803 isolate->set_relocatable_top(this); 4810 isolate->set_relocatable_top(this);
4804 } 4811 }
4805 4812
4806 4813
4807 Relocatable::~Relocatable() { 4814 Relocatable::~Relocatable() {
4808 ASSERT(isolate_ == Isolate::Current()); 4815 ASSERT(isolate_ == Isolate::Current());
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
4896 #undef WRITE_INT_FIELD 4903 #undef WRITE_INT_FIELD
4897 #undef READ_SHORT_FIELD 4904 #undef READ_SHORT_FIELD
4898 #undef WRITE_SHORT_FIELD 4905 #undef WRITE_SHORT_FIELD
4899 #undef READ_BYTE_FIELD 4906 #undef READ_BYTE_FIELD
4900 #undef WRITE_BYTE_FIELD 4907 #undef WRITE_BYTE_FIELD
4901 4908
4902 4909
4903 } } // namespace v8::internal 4910 } } // namespace v8::internal
4904 4911
4905 #endif // V8_OBJECTS_INL_H_ 4912 #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