• sgjesse@chromium.org's avatar
    Extend the maximum size map space · 44b7c59e
    sgjesse@chromium.org authored
    On 32-bit the maps are now aligned on a 32-byte boundary in order to encode more maps during compacting GC. The actual size of a map on 32-bit is 28 bytes making this change waste 4 bytes per map.
    
    On 64-bit the encoding for compacting GC is now using more than 32-bits and the maps here are still pointer size aligned. The actual size of a map on 64-bit is 48 bytes and this change does not intruduce any waste.
    
    My choice of 16 bits for kMapPageIndexBits for 64-bit should give the same maximum number of pages (8K) for map space. As maps on 64-bit are larger than on 32-bit the total number of maps on 64-bit will be smaller than on 32-bit. We could consider raising this to 17 or 18.
    
    I moved the kPageSizeBits to globals.h as the calculation of the encoding really depended on this.
    
    There are still an #ifdef/#endif in objects.h and this constant could be moved to globaks.h as well, but I kept it together with the related constants.
    
    All the tests run in debug mode with additional options --gc-global --always-compact as well (except for a few tests on which also fails before this change when run with --gc-global --always-compact).
    
    BUG=http://code.google.com/p/v8/issues/detail?id=524
    BUG=http://crbug.com/29428
    TEST=test/mjsunit/regress/regress-524.js
    
    Review URL: http://codereview.chromium.org/504026
    
    git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3481 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
    44b7c59e
Name
Last commit
Last update
..
regress-1030466.js Loading commit data...
regress-1036894.js Loading commit data...
regress-1039610.js Loading commit data...
regress-1050043.js Loading commit data...
regress-1062422.js Loading commit data...
regress-1066899.js Loading commit data...
regress-1081309.js Loading commit data...
regress-1102760.js Loading commit data...
regress-1110164.js Loading commit data...
regress-1112051.js Loading commit data...
regress-1114040.js Loading commit data...
regress-1134697.js Loading commit data...
regress-114.js Loading commit data...
regress-116.js Loading commit data...
regress-1170187.js Loading commit data...
regress-1173979.js Loading commit data...
regress-1175390.js Loading commit data...
regress-1177518.js Loading commit data...
regress-1177809.js Loading commit data...
regress-1178598.js Loading commit data...
regress-1182832.js Loading commit data...
regress-1187524.js Loading commit data...
regress-1199401.js Loading commit data...
regress-1199637.js Loading commit data...
regress-1200351.js Loading commit data...
regress-1201933.js Loading commit data...
regress-1203459.js Loading commit data...
regress-1207276.js Loading commit data...
regress-1213516.js Loading commit data...
regress-1213575.js Loading commit data...
regress-1215653.js Loading commit data...
regress-124.js Loading commit data...
regress-1254366.js Loading commit data...
regress-1327557.js Loading commit data...
regress-1341167.js Loading commit data...
regress-1346700.js Loading commit data...
regress-137.js Loading commit data...
regress-1439135.js Loading commit data...
regress-149.js Loading commit data...
regress-1493017.js Loading commit data...
regress-155924.js Loading commit data...
regress-171.js Loading commit data...
regress-176.js Loading commit data...
regress-186.js Loading commit data...
regress-187.js Loading commit data...
regress-189.js Loading commit data...
regress-191.js Loading commit data...
regress-1919169.js Loading commit data...
regress-192.js Loading commit data...
regress-193.js Loading commit data...
regress-20070207.js Loading commit data...
regress-201.js Loading commit data...
regress-219.js Loading commit data...
regress-220.js Loading commit data...
regress-221.js Loading commit data...
regress-2249423.js Loading commit data...
regress-225.js Loading commit data...
regress-227.js Loading commit data...
regress-231.js Loading commit data...
regress-233.js Loading commit data...
regress-244.js Loading commit data...
regress-246.js Loading commit data...
regress-253.js Loading commit data...
regress-254.js Loading commit data...
regress-259.js Loading commit data...
regress-260.js Loading commit data...
regress-263.js Loading commit data...
regress-265.js Loading commit data...
regress-267.js Loading commit data...
regress-269.js Loading commit data...
regress-279.js Loading commit data...
regress-284.js Loading commit data...
regress-286.js Loading commit data...
regress-294.js Loading commit data...
regress-312.js Loading commit data...
regress-317.js Loading commit data...
regress-318.js Loading commit data...
regress-326.js Loading commit data...
regress-334.js Loading commit data...
regress-341.js Loading commit data...
regress-345.js Loading commit data...
regress-349.js Loading commit data...
regress-35.js Loading commit data...
regress-351.js Loading commit data...
regress-386.js Loading commit data...
regress-392.js Loading commit data...
regress-394.js Loading commit data...
regress-396.js Loading commit data...
regress-397.js Loading commit data...
regress-399.js Loading commit data...
regress-406.js Loading commit data...
regress-416.js Loading commit data...
regress-475.js Loading commit data...
regress-483.js Loading commit data...
regress-485.js Loading commit data...
regress-486.js Loading commit data...
regress-490.js Loading commit data...
regress-491.js Loading commit data...
regress-492.js Loading commit data...
regress-496.js Loading commit data...
regress-502.js Loading commit data...
regress-503.js Loading commit data...
regress-515.js Loading commit data...
regress-524.js Loading commit data...
regress-526.js Loading commit data...
regress-540.js Loading commit data...
regress-545.js Loading commit data...
regress-57.js Loading commit data...
regress-588599.js Loading commit data...
regress-6-9-regexp.js Loading commit data...
regress-662254.js Loading commit data...
regress-666721.js Loading commit data...
regress-667061.js Loading commit data...
regress-670147.js Loading commit data...
regress-674753.js Loading commit data...
regress-676025.js Loading commit data...
regress-678525.js Loading commit data...
regress-682649.js Loading commit data...
regress-69.js Loading commit data...
regress-734862.js Loading commit data...
regress-737588.js Loading commit data...
regress-74.js Loading commit data...
regress-780423.js Loading commit data...
regress-799761.js Loading commit data...
regress-806473.js Loading commit data...
regress-842017.js Loading commit data...
regress-86.js Loading commit data...
regress-87.js Loading commit data...
regress-874178.js Loading commit data...
regress-875031.js Loading commit data...
regress-877615.js Loading commit data...
regress-892742.js Loading commit data...
regress-900055.js Loading commit data...
regress-900966.js Loading commit data...
regress-91.js Loading commit data...
regress-925537.js Loading commit data...
regress-937896.js Loading commit data...
regress-990205.js Loading commit data...
regress-992733.js Loading commit data...
regress-996542.js Loading commit data...
regress-998565.js Loading commit data...
regress-crbug-18639.js Loading commit data...
regress-r3391.js Loading commit data...