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

Side by Side Diff: Source/platform/heap/HeapTest.cpp

Issue 942813002: Oilpan: prefer ENABLE(OILPAN). (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 1237 matching lines...) Expand 10 before | Expand all | Expand 10 after
1248 1248
1249 void setBackPointer(SuperClass* backPointer) 1249 void setBackPointer(SuperClass* backPointer)
1250 { 1250 {
1251 m_backPointer = backPointer; 1251 m_backPointer = backPointer;
1252 } 1252 }
1253 1253
1254 SuperClass* backPointer() const { return m_backPointer; } 1254 SuperClass* backPointer() const { return m_backPointer; }
1255 1255
1256 DEFINE_INLINE_TRACE() 1256 DEFINE_INLINE_TRACE()
1257 { 1257 {
1258 #if ENABLE_OILPAN
1259 visitor->trace(m_backPointer); 1258 visitor->trace(m_backPointer);
1260 #endif
1261 } 1259 }
1262 1260
1263 static int s_aliveCount; 1261 static int s_aliveCount;
1264 private: 1262 private:
1265 PointsBack() : m_backPointer(nullptr) 1263 PointsBack() : m_backPointer(nullptr)
1266 { 1264 {
1267 ++s_aliveCount; 1265 ++s_aliveCount;
1268 } 1266 }
1269 1267
1270 RawPtrWillBeWeakMember<SuperClass> m_backPointer; 1268 RawPtrWillBeWeakMember<SuperClass> m_backPointer;
1271 }; 1269 };
1272 1270
1273 int PointsBack::s_aliveCount = 0; 1271 int PointsBack::s_aliveCount = 0;
1274 1272
1275 class SuperClass : public RefCountedWillBeGarbageCollectedFinalized<SuperClass> { 1273 class SuperClass : public RefCountedWillBeGarbageCollectedFinalized<SuperClass> {
1276 public: 1274 public:
1277 static PassRefPtrWillBeRawPtr<SuperClass> create(PassRefPtrWillBeRawPtr<Poin tsBack> pointsBack) 1275 static PassRefPtrWillBeRawPtr<SuperClass> create(PassRefPtrWillBeRawPtr<Poin tsBack> pointsBack)
1278 { 1276 {
1279 return adoptRefWillBeNoop(new SuperClass(pointsBack)); 1277 return adoptRefWillBeNoop(new SuperClass(pointsBack));
1280 } 1278 }
1281 1279
1282 virtual ~SuperClass() 1280 virtual ~SuperClass()
1283 { 1281 {
1284 #if !ENABLE_OILPAN 1282 #if !ENABLE(OILPAN)
1285 m_pointsBack->setBackPointer(0); 1283 m_pointsBack->setBackPointer(0);
1286 #endif 1284 #endif
1287 --s_aliveCount; 1285 --s_aliveCount;
1288 } 1286 }
1289 1287
1290 void doStuff(PassRefPtrWillBeRawPtr<SuperClass> targetPass, PointsBack* poin tsBack, int superClassCount) 1288 void doStuff(PassRefPtrWillBeRawPtr<SuperClass> targetPass, PointsBack* poin tsBack, int superClassCount)
1291 { 1289 {
1292 RefPtrWillBeRawPtr<SuperClass> target = targetPass; 1290 RefPtrWillBeRawPtr<SuperClass> target = targetPass;
1293 Heap::collectGarbage(ThreadState::HeapPointersOnStack); 1291 Heap::collectGarbage(ThreadState::HeapPointersOnStack);
1294 EXPECT_EQ(pointsBack, target->pointsBack()); 1292 EXPECT_EQ(pointsBack, target->pointsBack());
1295 EXPECT_EQ(superClassCount, SuperClass::s_aliveCount); 1293 EXPECT_EQ(superClassCount, SuperClass::s_aliveCount);
1296 } 1294 }
1297 1295
1298 DEFINE_INLINE_VIRTUAL_TRACE() 1296 DEFINE_INLINE_VIRTUAL_TRACE()
1299 { 1297 {
1300 #if ENABLE_OILPAN
1301 visitor->trace(m_pointsBack); 1298 visitor->trace(m_pointsBack);
1302 #endif
1303 } 1299 }
1304 1300
1305 PointsBack* pointsBack() const { return m_pointsBack.get(); } 1301 PointsBack* pointsBack() const { return m_pointsBack.get(); }
1306 1302
1307 static int s_aliveCount; 1303 static int s_aliveCount;
1308 protected: 1304 protected:
1309 explicit SuperClass(PassRefPtrWillBeRawPtr<PointsBack> pointsBack) 1305 explicit SuperClass(PassRefPtrWillBeRawPtr<PointsBack> pointsBack)
1310 : m_pointsBack(pointsBack) 1306 : m_pointsBack(pointsBack)
1311 { 1307 {
1312 m_pointsBack->setBackPointer(this); 1308 m_pointsBack->setBackPointer(this);
(...skipping 24 matching lines...) Expand all
1337 return adoptRefWillBeNoop(new SubClass(pointsBack)); 1333 return adoptRefWillBeNoop(new SubClass(pointsBack));
1338 } 1334 }
1339 1335
1340 virtual ~SubClass() 1336 virtual ~SubClass()
1341 { 1337 {
1342 --s_aliveCount; 1338 --s_aliveCount;
1343 } 1339 }
1344 1340
1345 DEFINE_INLINE_VIRTUAL_TRACE() 1341 DEFINE_INLINE_VIRTUAL_TRACE()
1346 { 1342 {
1347 #if ENABLE_OILPAN 1343 visitor->trace(m_data);
1348 SuperClass::trace(visitor); 1344 SuperClass::trace(visitor);
1349 visitor->trace(m_data);
1350 #endif
1351 } 1345 }
1352 1346
1353 static int s_aliveCount; 1347 static int s_aliveCount;
1354 private: 1348 private:
1355 explicit SubClass(PassRefPtrWillBeRawPtr<PointsBack> pointsBack) 1349 explicit SubClass(PassRefPtrWillBeRawPtr<PointsBack> pointsBack)
1356 : SuperClass(pointsBack) 1350 : SuperClass(pointsBack)
1357 , m_data(adoptPtrWillBeNoop(new SubData())) 1351 , m_data(adoptPtrWillBeNoop(new SubData()))
1358 { 1352 {
1359 ++s_aliveCount; 1353 ++s_aliveCount;
1360 } 1354 }
(...skipping 4205 matching lines...) Expand 10 before | Expand all | Expand 10 after
5566 5560
5567 TEST(HeapTest, StackGrowthDirection) 5561 TEST(HeapTest, StackGrowthDirection)
5568 { 5562 {
5569 // The implementation of marking probes stack usage as it runs, 5563 // The implementation of marking probes stack usage as it runs,
5570 // and has a builtin assumption that the stack grows towards 5564 // and has a builtin assumption that the stack grows towards
5571 // lower addresses. 5565 // lower addresses.
5572 EXPECT_EQ(GrowsTowardsLower, stackGrowthDirection()); 5566 EXPECT_EQ(GrowsTowardsLower, stackGrowthDirection());
5573 } 5567 }
5574 5568
5575 } // namespace blink 5569 } // namespace blink
OLDNEW
« Source/core/css/CSSImageGeneratorValue.cpp ('K') | « Source/core/css/CSSImageGeneratorValue.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698