Experimental Sticky-Bit (Generational) CC collection

Use the card table to quickly collect regions allocated since the
last GC. This is similar in behavior to sticky CMS.

TODO: This is using the existing sticky CMS ergonomics, we can
maybe improve on these.

Guard Generational Concurrent Copying collection with compile-time
flag art::kEnableGenerationalConcurrentCopyingCollection, set by
environment variable ART_USE_GENERATIONAL_CC.

Test: ART run-tests & gtests, libcore tests, JDWP tests (host & device)
Test: Device/emulator boot test
Bug: 67628039
Bug: 12687968
Change-Id: I9c8023b71a029b0a73527cf67d924675c4c14305
12 files changed