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

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

Issue 304143002: Add support for extended constant pool arrays. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Sync Created 6 years, 6 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.cc ('k') | src/objects-inl.h » ('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 // 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 #include "src/v8.h" 5 #include "src/v8.h"
6 6
7 #include "src/disassembler.h" 7 #include "src/disassembler.h"
8 #include "src/disasm.h" 8 #include "src/disasm.h"
9 #include "src/jsregexp.h" 9 #include "src/jsregexp.h"
10 #include "src/macro-assembler.h" 10 #include "src/macro-assembler.h"
(...skipping 360 matching lines...) Expand 10 before | Expand all | Expand 10 after
371 (BitCast<uint64_t>(value) == 371 (BitCast<uint64_t>(value) ==
372 BitCast<uint64_t>(canonical_not_the_hole_nan_as_double())) || 372 BitCast<uint64_t>(canonical_not_the_hole_nan_as_double())) ||
373 ((BitCast<uint64_t>(value) & Double::kSignMask) != 0)); 373 ((BitCast<uint64_t>(value) & Double::kSignMask) != 0));
374 } 374 }
375 } 375 }
376 } 376 }
377 377
378 378
379 void ConstantPoolArray::ConstantPoolArrayVerify() { 379 void ConstantPoolArray::ConstantPoolArrayVerify() {
380 CHECK(IsConstantPoolArray()); 380 CHECK(IsConstantPoolArray());
381 for (int i = 0; i < count_of_code_ptr_entries(); i++) { 381 ConstantPoolArray::Iterator code_iter(this, ConstantPoolArray::CODE_PTR);
382 Address code_entry = get_code_ptr_entry(first_code_ptr_index() + i); 382 while (!code_iter.is_finished()) {
383 Address code_entry = get_code_ptr_entry(code_iter.next_index());
383 VerifyPointer(Code::GetCodeFromTargetAddress(code_entry)); 384 VerifyPointer(Code::GetCodeFromTargetAddress(code_entry));
384 } 385 }
385 for (int i = 0; i < count_of_heap_ptr_entries(); i++) { 386 ConstantPoolArray::Iterator heap_iter(this, ConstantPoolArray::HEAP_PTR);
386 VerifyObjectField(OffsetOfElementAt(first_heap_ptr_index() + i)); 387 while (!heap_iter.is_finished()) {
388 VerifyObjectField(OffsetOfElementAt(heap_iter.next_index()));
387 } 389 }
388 } 390 }
389 391
390 392
391 void JSGeneratorObject::JSGeneratorObjectVerify() { 393 void JSGeneratorObject::JSGeneratorObjectVerify() {
392 // In an expression like "new g()", there can be a point where a generator 394 // In an expression like "new g()", there can be a point where a generator
393 // object is allocated but its fields are all undefined, as it hasn't yet been 395 // object is allocated but its fields are all undefined, as it hasn't yet been
394 // initialized by the generator. Hence these weak checks. 396 // initialized by the generator. Hence these weak checks.
395 VerifyObjectField(kFunctionOffset); 397 VerifyObjectField(kFunctionOffset);
396 VerifyObjectField(kContextOffset); 398 VerifyObjectField(kContextOffset);
(...skipping 787 matching lines...) Expand 10 before | Expand all | Expand 10 after
1184 for (int i = 0; i < number_of_transitions(); ++i) { 1186 for (int i = 0; i < number_of_transitions(); ++i) {
1185 if (!CheckOneBackPointer(current_map, GetTarget(i))) return false; 1187 if (!CheckOneBackPointer(current_map, GetTarget(i))) return false;
1186 } 1188 }
1187 return true; 1189 return true;
1188 } 1190 }
1189 1191
1190 1192
1191 #endif // DEBUG 1193 #endif // DEBUG
1192 1194
1193 } } // namespace v8::internal 1195 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/objects.cc ('k') | src/objects-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698