Make VariableHandleScope consistent between 32 & 64 bit
The number of handles kept in a single bucket by
VariableSizedHandleScope varied between 32bit and 64bit hosts. On 32
bit hosts the bucket size was 13 elements and on 64bit it was 12
elements. This could affect the order objects are visited during heap
walks since they are visited in reverse-bucket order (last bucket
first, then next to last, etc).
This could cause the output of dex2oat to change depending on what
type of executable dex2oat is, breaking consistency requirements.
In order to fix this issue we lock the bucket size at 12 elements.
Test: ./test.py --host -j72
1 file changed