Split inter-region ref bitmap for every space

Currently, one bitmap is created which covers both region-space and
non-moving-space. Also, this bitmap is created and destroyed in each GC
cycle. This becomes a problem on 32-bit processes (especially during
gcstress tests) due to limited availability of address space.
In this change, two separate bitmaps are created for both the spaces.
This is done once during startup, and then the bitmaps are reused for
the lifetime of process.

Test: art/test/testrunner/testrunner.py --host --gcstress --32
Bug: 112720851
Change-Id: I6fc1dbd5dab10b39b2fd2d436a678e319feb78e7
3 files changed