30 private: |
30 private: |
31 template <typename RootsIterator> |
31 template <typename RootsIterator> |
32 static void roots_impl(); |
32 static void roots_impl(); |
33 static void roots(bool verify_weaks); |
33 static void roots(bool verify_weaks); |
34 |
34 |
|
35 static void roots_strong(); |
35 static void roots_weak(); |
36 static void roots_weak(); |
36 static void roots_concurrent(); |
37 static void roots_concurrent(); |
37 static void roots_concurrent_weak(); |
38 static void roots_concurrent_weak(); |
38 |
39 |
39 static void objects(bool verify_weaks); |
40 static void objects(bool verify_weaks); |
40 |
41 |
41 static void roots_and_objects(bool visit_weaks); |
42 static void roots_and_objects(bool visit_weaks); |
42 |
43 |
43 public: |
44 public: |
44 // Verify strong (non-concurrent) roots. Should always be good. |
45 // Verify strong (non-concurrent) roots. Should always be good. |
45 static void roots_strong(); |
46 static void before_zoperation(); |
46 |
47 |
47 // Verify all strong roots and references after marking. |
48 // Verify all strong roots and references after marking. |
48 static void after_mark(); |
49 static void after_mark(); |
49 |
50 |
50 // Verify strong and weak roots and references. |
51 // Verify strong and weak roots and references. |