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

Side by Side Diff: runtime/vm/object.h

Issue 10928232: Deoptimization support in inlined code. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 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
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #ifndef VM_OBJECT_H_ 5 #ifndef VM_OBJECT_H_
6 #define VM_OBJECT_H_ 6 #define VM_OBJECT_H_
7 7
8 #include "include/dart_api.h" 8 #include "include/dart_api.h"
9 #include "platform/assert.h" 9 #include "platform/assert.h"
10 #include "platform/utils.h" 10 #include "platform/utils.h"
(...skipping 2353 matching lines...) Expand 10 before | Expand all | Expand 10 after
2364 return RoundedAllocationSize( 2364 return RoundedAllocationSize(
2365 sizeof(RawPcDescriptors) + (len * kBytesPerElement)); 2365 sizeof(RawPcDescriptors) + (len * kBytesPerElement));
2366 } 2366 }
2367 2367
2368 static RawPcDescriptors* New(intptr_t num_descriptors); 2368 static RawPcDescriptors* New(intptr_t num_descriptors);
2369 2369
2370 // Returns 0 if not found. 2370 // Returns 0 if not found.
2371 uword GetPcForKind(Kind kind) const; 2371 uword GetPcForKind(Kind kind) const;
2372 2372
2373 // Verify (assert) assumptions about pc descriptors in debug mode. 2373 // Verify (assert) assumptions about pc descriptors in debug mode.
2374 void Verify(bool check_ids) const; 2374 void Verify(const Function& function) const;
2375 2375
2376 static void PrintHeaderString(); 2376 static void PrintHeaderString();
2377 2377
2378 // We would have a VisitPointers function here to traverse the 2378 // We would have a VisitPointers function here to traverse the
2379 // pc descriptors table to visit objects if any in the table. 2379 // pc descriptors table to visit objects if any in the table.
2380 2380
2381 private: 2381 private:
2382 void SetPC(intptr_t index, uword value) const; 2382 void SetPC(intptr_t index, uword value) const;
2383 void SetKind(intptr_t index, PcDescriptors::Kind kind) const; 2383 void SetKind(intptr_t index, PcDescriptors::Kind kind) const;
2384 void SetDeoptId(intptr_t index, intptr_t value) const; 2384 void SetDeoptId(intptr_t index, intptr_t value) const;
(...skipping 3233 matching lines...) Expand 10 before | Expand all | Expand 10 after
5618 if (this->CharAt(i) != str.CharAt(begin_index + i)) { 5618 if (this->CharAt(i) != str.CharAt(begin_index + i)) {
5619 return false; 5619 return false;
5620 } 5620 }
5621 } 5621 }
5622 return true; 5622 return true;
5623 } 5623 }
5624 5624
5625 } // namespace dart 5625 } // namespace dart
5626 5626
5627 #endif // VM_OBJECT_H_ 5627 #endif // VM_OBJECT_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698