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

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

Issue 1351403004: Resolve some disagreements between SIMARM and XARM on offsets used in compiled code. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 5 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
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_RAW_OBJECT_H_ 5 #ifndef VM_RAW_OBJECT_H_
6 #define VM_RAW_OBJECT_H_ 6 #define VM_RAW_OBJECT_H_
7 7
8 #include "platform/assert.h" 8 #include "platform/assert.h"
9 #include "vm/atomic.h" 9 #include "vm/atomic.h"
10 #include "vm/globals.h" 10 #include "vm/globals.h"
(...skipping 1588 matching lines...) Expand 10 before | Expand all | Expand 10 after
1599 1599
1600 1600
1601 class RawSmi : public RawInteger { 1601 class RawSmi : public RawInteger {
1602 RAW_OBJECT_IMPLEMENTATION(Smi); 1602 RAW_OBJECT_IMPLEMENTATION(Smi);
1603 }; 1603 };
1604 1604
1605 1605
1606 class RawMint : public RawInteger { 1606 class RawMint : public RawInteger {
1607 RAW_HEAP_OBJECT_IMPLEMENTATION(Mint); 1607 RAW_HEAP_OBJECT_IMPLEMENTATION(Mint);
1608 1608
1609 int64_t value_; 1609 ALIGN8 int64_t value_;
1610 1610
1611 friend class Api; 1611 friend class Api;
1612 friend class SnapshotReader; 1612 friend class SnapshotReader;
1613 }; 1613 };
1614 COMPILE_ASSERT(sizeof(RawMint) == 16);
1614 1615
1615 1616
1616 class RawBigint : public RawInteger { 1617 class RawBigint : public RawInteger {
1617 RAW_HEAP_OBJECT_IMPLEMENTATION(Bigint); 1618 RAW_HEAP_OBJECT_IMPLEMENTATION(Bigint);
1618 1619
1619 RawObject** from() { return reinterpret_cast<RawObject**>(&ptr()->neg_); } 1620 RawObject** from() { return reinterpret_cast<RawObject**>(&ptr()->neg_); }
1620 RawBool* neg_; 1621 RawBool* neg_;
1621 RawSmi* used_; 1622 RawSmi* used_;
1622 RawTypedData* digits_; 1623 RawTypedData* digits_;
1623 RawObject** to() { return reinterpret_cast<RawObject**>(&ptr()->digits_); } 1624 RawObject** to() { return reinterpret_cast<RawObject**>(&ptr()->digits_); }
1624 }; 1625 };
1625 1626
1626 1627
1627 class RawDouble : public RawNumber { 1628 class RawDouble : public RawNumber {
1628 RAW_HEAP_OBJECT_IMPLEMENTATION(Double); 1629 RAW_HEAP_OBJECT_IMPLEMENTATION(Double);
1629 1630
1630 double value_; 1631 ALIGN8 double value_;
1631 1632
1632 friend class Api; 1633 friend class Api;
1633 friend class SnapshotReader; 1634 friend class SnapshotReader;
1634 }; 1635 };
1636 COMPILE_ASSERT(sizeof(RawDouble) == 16);
1635 1637
1636 1638
1637 class RawString : public RawInstance { 1639 class RawString : public RawInstance {
1638 RAW_HEAP_OBJECT_IMPLEMENTATION(String); 1640 RAW_HEAP_OBJECT_IMPLEMENTATION(String);
1639 1641
1640 protected: 1642 protected:
1641 RawObject** from() { return reinterpret_cast<RawObject**>(&ptr()->length_); } 1643 RawObject** from() { return reinterpret_cast<RawObject**>(&ptr()->length_); }
1642 RawSmi* length_; 1644 RawSmi* length_;
1643 RawSmi* hash_; 1645 RawSmi* hash_;
1644 RawObject** to() { return reinterpret_cast<RawObject**>(&ptr()->hash_); } 1646 RawObject** to() { return reinterpret_cast<RawObject**>(&ptr()->hash_); }
(...skipping 586 matching lines...) Expand 10 before | Expand all | Expand 10 after
2231 COMPILE_ASSERT(kExternalTypedDataInt8ArrayCid == 2233 COMPILE_ASSERT(kExternalTypedDataInt8ArrayCid ==
2232 kTypedDataInt8ArrayViewCid + 15); 2234 kTypedDataInt8ArrayViewCid + 15);
2233 COMPILE_ASSERT(kByteBufferCid == kExternalTypedDataInt8ArrayCid + 14); 2235 COMPILE_ASSERT(kByteBufferCid == kExternalTypedDataInt8ArrayCid + 14);
2234 COMPILE_ASSERT(kNullCid == kByteBufferCid + 1); 2236 COMPILE_ASSERT(kNullCid == kByteBufferCid + 1);
2235 return (kNullCid - kTypedDataInt8ArrayCid); 2237 return (kNullCid - kTypedDataInt8ArrayCid);
2236 } 2238 }
2237 2239
2238 } // namespace dart 2240 } // namespace dart
2239 2241
2240 #endif // VM_RAW_OBJECT_H_ 2242 #endif // VM_RAW_OBJECT_H_
OLDNEW
« runtime/vm/isolate.h ('K') | « runtime/vm/isolate.cc ('k') | runtime/vm/scavenger.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698