1) Get rid of the dependency on "Space";
2) Fix a bug in RegionFlags definition, and tidy it up.
3) Fix the flag check logic to make it support multi-bit test;
4) Clean-up some logic to determine if a region or an object is valid / alive;
Issue: https://gitee.com/openharmony/ark_js_runtime/issues/I590Z8
Signed-off-by: Yuqiang Xian <xianyuqiang@huawei.com>
There are some redundant code, such as runtime_api.h/cpp, which only
contains a method. Therefore, we can merge it to corresponding class and
remove these two files.
issue:https://gitee.com/openharmony/ark_js_runtime/issues/I53P9M
Signed-off-by: wuzhefeng <wuzhefeng1@huawei.com>
Change-Id: Ie4ae7c23fbedf15b53e8856d7455aa7c37afd1b3
1、Optimize GC parallel evacate strategy: evacuate to old space with FreeListAllocator.
2、Adjust strategy that whole region evacuate: Only support new fromspace to new tospace.
3、Adjust Semi space capacity growing/shrinking strategy and Adjust Semi space initialize size.
splay-benchmark:
blue zone: ark_js(2500), v8(2000)
ark-dev: ark(1200), v8(1500)
issue:https://gitee.com/openharmony/ark_js_runtime/issues/I4SASV?from=project-issue
Signed-off-by: yingguofeng@huawei.com <yingguofeng@huawei.com>
Change-Id: Ie9c6e94c47f531bf9c1ebf5bc7443dd1acb7d2ac
construct function and refactor stub call runtime offset which's relative with
arch framework
current stub call runtime writebarrier, writebarrier stub is conveient
to optimized by llvm pass
region class markingbitmap should be not nullptr, it's good way to
inilized on construct class other than lazy inilized
current stub get member offset of runtime class, need to modify multiple
places which is not coveient to maintance. stub call offset by GetOldToxxxOffset and
CheckLayout which is checked by compile phase
issue: https://gitee.com/openharmony/ark_js_runtime/issues/I4SC94
Change-Id: Iec087f07ca27ef95b20ff65ea8bb9408b5887d9c
Signed-off-by: songzhengchao <songzhengchao@huawei.com>