1349 // Perform verification.
1350
1351 // vo == UsePrevMarking -> use "prev" marking information,
1352 // vo == UseNextMarking -> use "next" marking information
1353 // vo == UseFullMarking -> use "next" marking bitmap but no TAMS
1354 //
1355 // NOTE: Only the "prev" marking information is guaranteed to be
1356 // consistent most of the time, so most calls to this should use
1357 // vo == UsePrevMarking.
1358 // Currently, there is only one case where this is called with
1359 // vo == UseNextMarking, which is to verify the "next" marking
1360 // information at the end of remark.
1361 // Currently there is only one place where this is called with
1362 // vo == UseFullMarking, which is to verify the marking during a
1363 // full GC.
1364 void verify(VerifyOption vo);
1365
1366 // WhiteBox testing support.
1367 virtual bool supports_concurrent_phase_control() const;
1368 virtual bool request_concurrent_phase(const char* phase);
1369 bool is_hetero_heap() const;
1370
1371 virtual WorkGang* get_safepoint_workers() { return _workers; }
1372
1373 // The methods below are here for convenience and dispatch the
1374 // appropriate method depending on value of the given VerifyOption
1375 // parameter. The values for that parameter, and their meanings,
1376 // are the same as those above.
1377
1378 bool is_obj_dead_cond(const oop obj,
1379 const HeapRegion* hr,
1380 const VerifyOption vo) const;
1381
1382 bool is_obj_dead_cond(const oop obj,
1383 const VerifyOption vo) const;
1384
1385 G1HeapSummary create_g1_heap_summary();
1386 G1EvacSummary create_g1_evac_summary(G1EvacStats* stats);
1387
1388 // Printing
1389 private:
|
1349 // Perform verification.
1350
1351 // vo == UsePrevMarking -> use "prev" marking information,
1352 // vo == UseNextMarking -> use "next" marking information
1353 // vo == UseFullMarking -> use "next" marking bitmap but no TAMS
1354 //
1355 // NOTE: Only the "prev" marking information is guaranteed to be
1356 // consistent most of the time, so most calls to this should use
1357 // vo == UsePrevMarking.
1358 // Currently, there is only one case where this is called with
1359 // vo == UseNextMarking, which is to verify the "next" marking
1360 // information at the end of remark.
1361 // Currently there is only one place where this is called with
1362 // vo == UseFullMarking, which is to verify the marking during a
1363 // full GC.
1364 void verify(VerifyOption vo);
1365
1366 // WhiteBox testing support.
1367 virtual bool supports_concurrent_phase_control() const;
1368 virtual bool request_concurrent_phase(const char* phase);
1369 bool is_heterogeneous_heap() const;
1370
1371 virtual WorkGang* get_safepoint_workers() { return _workers; }
1372
1373 // The methods below are here for convenience and dispatch the
1374 // appropriate method depending on value of the given VerifyOption
1375 // parameter. The values for that parameter, and their meanings,
1376 // are the same as those above.
1377
1378 bool is_obj_dead_cond(const oop obj,
1379 const HeapRegion* hr,
1380 const VerifyOption vo) const;
1381
1382 bool is_obj_dead_cond(const oop obj,
1383 const VerifyOption vo) const;
1384
1385 G1HeapSummary create_g1_heap_summary();
1386 G1EvacSummary create_g1_evac_summary(G1EvacStats* stats);
1387
1388 // Printing
1389 private:
|