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

Side by Side Diff: src/objects-gen.cc

Issue 23604020: Initial prototype of object layout generation. Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 7 years, 3 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
OLDNEW
(Empty)
1 // Copyright 2013 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are
4 // met:
5 //
6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided
11 // with the distribution.
12 // * Neither the name of Google Inc. nor the names of its
13 // contributors may be used to endorse or promote products derived
14 // from this software without specific prior written permission.
15 //
16 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
19 // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
20 // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
28 // This file is automatically generated from 'objects.layout' and should
29 // not be modified by hand. Run 'make objects' instead to update it.
30
31 #include "v8.h"
32
33 namespace v8 {
34 namespace internal {
35
36
37 #ifdef OBJECT_PRINT
38 void Box::BoxPrint(FILE* out) {
39 HeapObject::PrintHeader(out, "Box");
40 PrintF(out, "\n - value: ");
41 value()->ShortPrint();
42 }
43 #endif
44
45
46 #ifdef VERIFY_HEAP
47 void Box::BoxVerify() {
48 CHECK(IsBox());
49 //StructVerify();
50 VerifyObjectField(kValueOffset);
51 }
52 #endif
53
54
55 #ifdef OBJECT_PRINT
56 void AliasedArgumentsEntry::AliasedArgumentsEntryPrint(FILE* out) {
57 HeapObject::PrintHeader(out, "AliasedArgumentsEntry");
58 PrintF(out, "\n - aliased_context_slot: %d", aliased_context_slot());
59 }
60 #endif
61
62
63 #ifdef VERIFY_HEAP
64 void AliasedArgumentsEntry::AliasedArgumentsEntryVerify() {
65 CHECK(IsAliasedArgumentsEntry());
66 //StructVerify();
67 VerifySmiField(kAliasedContextSlotOffset);
68 }
69 #endif
70
71
72 #ifdef OBJECT_PRINT
73 void DeclaredAccessorInfo::DeclaredAccessorInfoPrint(FILE* out) {
74 HeapObject::PrintHeader(out, "DeclaredAccessorInfo");
75 PrintF(out, "\n - descriptor: ");
76 descriptor()->ShortPrint();
77 }
78 #endif
79
80
81 #ifdef VERIFY_HEAP
82 void DeclaredAccessorInfo::DeclaredAccessorInfoVerify() {
83 CHECK(IsDeclaredAccessorInfo());
84 //AccessorInfoVerify();
85 VerifyObjectField(kDescriptorOffset);
86 }
87 #endif
88
89
90 #ifdef OBJECT_PRINT
91 void ExecutableAccessorInfo::ExecutableAccessorInfoPrint(FILE* out) {
92 HeapObject::PrintHeader(out, "ExecutableAccessorInfo");
93 PrintF(out, "\n - getter: ");
94 getter()->ShortPrint();
95 PrintF(out, "\n - setter: ");
96 setter()->ShortPrint();
97 PrintF(out, "\n - data: ");
98 data()->ShortPrint();
99 }
100 #endif
101
102
103 #ifdef VERIFY_HEAP
104 void ExecutableAccessorInfo::ExecutableAccessorInfoVerify() {
105 CHECK(IsExecutableAccessorInfo());
106 //AccessorInfoVerify();
107 VerifyObjectField(kGetterOffset);
108 VerifyObjectField(kSetterOffset);
109 VerifyObjectField(kDataOffset);
110 }
111 #endif
112
113
114 #ifdef OBJECT_PRINT
115 void FunctionTemplateInfo::FunctionTemplateInfoPrint(FILE* out) {
116 HeapObject::PrintHeader(out, "FunctionTemplateInfo");
117 PrintF(out, "\n - serial_number: ");
118 serial_number()->ShortPrint();
119 PrintF(out, "\n - call_code: ");
120 call_code()->ShortPrint();
121 PrintF(out, "\n - property_accessors: ");
122 property_accessors()->ShortPrint();
123 PrintF(out, "\n - prototype_template: ");
124 prototype_template()->ShortPrint();
125 PrintF(out, "\n - parent_template: ");
126 parent_template()->ShortPrint();
127 PrintF(out, "\n - named_property_handler: ");
128 named_property_handler()->ShortPrint();
129 PrintF(out, "\n - indexed_property_handler: ");
130 indexed_property_handler()->ShortPrint();
131 PrintF(out, "\n - instance_template: ");
132 instance_template()->ShortPrint();
133 PrintF(out, "\n - class_name: ");
134 class_name()->ShortPrint();
135 PrintF(out, "\n - signature: ");
136 signature()->ShortPrint();
137 PrintF(out, "\n - instance_call_handler: ");
138 instance_call_handler()->ShortPrint();
139 PrintF(out, "\n - access_check_info: ");
140 access_check_info()->ShortPrint();
141 PrintF(out, "\n - flag: %d", flag());
142 PrintF(out, "\n - length: %d", length());
143 }
144 #endif
145
146
147 #ifdef VERIFY_HEAP
148 void FunctionTemplateInfo::FunctionTemplateInfoVerify() {
149 CHECK(IsFunctionTemplateInfo());
150 //TemplateInfoVerify();
151 VerifyObjectField(kSerialNumberOffset);
152 VerifyObjectField(kCallCodeOffset);
153 VerifyObjectField(kPropertyAccessorsOffset);
154 VerifyObjectField(kPrototypeTemplateOffset);
155 VerifyObjectField(kParentTemplateOffset);
156 VerifyObjectField(kNamedPropertyHandlerOffset);
157 VerifyObjectField(kIndexedPropertyHandlerOffset);
158 VerifyObjectField(kInstanceTemplateOffset);
159 VerifyObjectField(kClassNameOffset);
160 VerifyObjectField(kSignatureOffset);
161 VerifyObjectField(kInstanceCallHandlerOffset);
162 VerifyObjectField(kAccessCheckInfoOffset);
163 VerifySmiField(kFlagOffset);
164 VerifySmiField(kLengthOffset);
165 }
166 #endif
167
168
169 #ifdef OBJECT_PRINT
170 void ObjectTemplateInfo::ObjectTemplateInfoPrint(FILE* out) {
171 HeapObject::PrintHeader(out, "ObjectTemplateInfo");
172 PrintF(out, "\n - constructor: ");
173 constructor()->ShortPrint();
174 PrintF(out, "\n - internal_field_count: ");
175 internal_field_count()->ShortPrint();
176 }
177 #endif
178
179
180 #ifdef VERIFY_HEAP
181 void ObjectTemplateInfo::ObjectTemplateInfoVerify() {
182 CHECK(IsObjectTemplateInfo());
183 //TemplateInfoVerify();
184 VerifyObjectField(kConstructorOffset);
185 VerifyObjectField(kInternalFieldCountOffset);
186 }
187 #endif
188
189
190 #ifdef OBJECT_PRINT
191 void SignatureInfo::SignatureInfoPrint(FILE* out) {
192 HeapObject::PrintHeader(out, "SignatureInfo");
193 PrintF(out, "\n - receiver: ");
194 receiver()->ShortPrint();
195 PrintF(out, "\n - args: ");
196 args()->ShortPrint();
197 }
198 #endif
199
200
201 #ifdef VERIFY_HEAP
202 void SignatureInfo::SignatureInfoVerify() {
203 CHECK(IsSignatureInfo());
204 //StructVerify();
205 VerifyObjectField(kReceiverOffset);
206 VerifyObjectField(kArgsOffset);
207 }
208 #endif
209
210
211 #ifdef OBJECT_PRINT
212 void TypeSwitchInfo::TypeSwitchInfoPrint(FILE* out) {
213 HeapObject::PrintHeader(out, "TypeSwitchInfo");
214 PrintF(out, "\n - types: ");
215 types()->ShortPrint();
216 }
217 #endif
218
219
220 #ifdef VERIFY_HEAP
221 void TypeSwitchInfo::TypeSwitchInfoVerify() {
222 CHECK(IsTypeSwitchInfo());
223 //StructVerify();
224 VerifyObjectField(kTypesOffset);
225 }
226 #endif
227
228
229 } } // namespace v8::internal
OLDNEW
« src/objects.layout ('K') | « src/objects-gen.h ('k') | src/objects-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698