Details:
1. Add old Opcode defines
2. Add new inst handler of throw & wide & deprecated
3. Modify interpreter for new inst
4. Modify typeinfer for new inst
5. Modify asm interpreter for new inst
6. Modify aot circuit builder for new inst
7. Translate old inst to first level inst
Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I5LPNL
Signed-off-by: wengchangcheng <wengchangcheng@huawei.com>
Change-Id: If9e0b60cafc32a662a5fb1676887939d5a2b9ebf
The life cycle of the chunk under ECMA is the same as that of VM.
Temporary objects or objects with a shorter life cycle than VM cannot be allocated through the chunk.
Closes: #I5MNM8
Change-Id: I0ceee15da0045d56c036d9c86f6949fe0db7e5b8
Signed-off-by: yingguofeng@huawei.com <yingguofeng@huawei.com>
Description
1.GC is frequent during constpool parsing
2.Constpool object moved to old age allocation
Issue:
https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I5I8YT
Signed-off-by: xliu <liuxin259@huawei.com>
Change-Id: I0c88597f56a3ff60337fd21fa2d09d1dac004973
Description
1.To ensure the high performance of container classes, HashMap and HashSet is provided in ark.
2.Add test cases for HashMap and HashSet.
Related issue
#I5D0WV:Add Containers HashMap and HashSet
Signed-off-by: liuganlin <liuganlin@huawei.com>
Description
1.GC is frequent during constpool parsing
2.Constpool object moved to old age allocation
Issue:
https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I5H2ZN
Signed-off-by: xliu <liuxin259@huawei.com>
Change-Id: Ie4b54e205c5673705992a370f2af8f9b46e412e3
1. Optimize the enumerableownpropertynames interface by adding cache;
2. Remove the number to string conversion of array iterator;
3. Share hclass of iterator result;
4. Share the return result of closeiterator;
5. Fix EnumerableOwnNames bugs.
6. Fix Array IteratorNext bugs.
issue: https://gitee.com/openharmony/ark_js_runtime/issues/I5G288
Signed-off-by: xliu <liuxin259@huawei.com>
Change-Id: Ie03278f0afed3cf7eb967dd92eac13c2fc0eeb4e
Description
To ensure the high performance of container classes, lightweight map
and lightweightset are provided in ark.
Related issues
#I566FV:Add Container LightWeightMap And LightWeightSet
Signed-off-by: shisan_forwork <chengjunxiong@huawei.com>
------------------------------------------
1. Support CommonJS's module export function
2. Related test cases
issue:https://gitee.com/openharmony/ark_js_runtime/issues/I5590V
Signed-off-by: DaiH <daihuina1@huawei.com>
Change-Id: I18968f6a6b971fbe833d91ef98813964cc8292c9
Description
1.To ensure the high performance of container classes, List and LinkedList is provided in ark.
2.modify Copyright 2021->2022.
3.fix containers.
Related issue
#I58XA9:Add Containers List And LinkedList.
Signed-off-by: chenqi <chenqi151@huawei.com>
Reduce redundant code by using predefined global constants instead of creating new constant strings
Move all global constant strings into nonmovable space to improve code efficiency.
Issues: https://gitee.com/openharmony/ark_js_runtime/issues/I588TY
Signed-off-by: yaoyuan <yuanyao14@huawei.com>
Change-Id: I1f92188175c3129c5d8cec72a0396f11ce17c1c7
Description
To ensure the high performance of container classes, vector is
provided in ark.
Related issue
#I4XCD9:add container vector
Signed-off-by: shisan_forwork <chengjunxiong@huawei.com>
Description:Snapshot code optimization include modify class name SnapShotSerialize to SnapShotHandler, delete some magic number, add interface to acquire global env and global const object index.
Issue:https://gitee.com/openharmony/ark_js_runtime/issues/I55CQ3
Signed-off-by: dingwen <dingwen6@huawei.com>
Change-Id: I338028c5cfd4f992095f2bded2956e33f275bb1b
Record idx in const pool of aot function in llvmmodule and aotcodeinfo.
Tweak code in circuit builder for slowpath lowering scenario where
constpool is null.
New JSFunction object for main function in AOT file and new JSFunction object
for each defined function in lowerDefineFuncDyn.
Fix bug in call.S after JSMethod refactor.
Issue: https://gitee.com/openharmony/ark_js_runtime/issues/I545X0
Signed-off-by: luochuhao <luochuhao@huawei.com>
Change-Id: Ie6448f8740caddf79c3b9ed3385ba5739c7eb76b
1. Move necessary fileds in jsMethod
2. Make jsMethod inherit aligned struct
3. Change some function names for easy reading
Signed-off-by: xiongluo <xiongluo@huawei.com>
Description
To ensure the high performance of container classes, Plainarray is
provided in ark.
Related issue
#I4XXYA:Add Container Plainarray
Signed-off-by: zhangjixing <zhangjixing4@huawei.com>
Signed-off-by: DaiH <daihuina1@huawei.com>
https://gitee.com/openharmony/ark_js_runtime/issues/I4XVBQ
Sovle the problem that generate object without sharing Hclass, when object's Hclass have same shape.
Get Object Literal's Hclass From Cache
Change-Id: Ia17d056e32acd3356be138051f273c0cf50d82ee
Description
1. There are many kinds of interfaces to construct ecmastring from objectfactory
in the virtual machine, and the name is not clear, so it is complex to use;
2. Some of the unchecked interfaces are prone to errors during use. If there is
no compression where compression is required, unpredictable errors will occur.
Issue:
#I4ZL7X: ObjectFactory New Ecmastring Rectification
Signed-off-by: xliu <liuxin259@huawei.com>
Change-Id: I856f4e2e1df62823d928d738fa35affa97dbd3ed
Description
To ensure the high performance of container classes, Deque and Stack
is provided in ark.
Related issue
#I4X8GV:Add Container Deque And Stack
Signed-off-by: zhangjixing <zhangjixing4@huawei.com>
Refactor ID definition and callSignature initialization mechanism of runtime stub,
optimizer stub and bytecode handler stub,
reduce amount and complexity of macro used in calling those stubs.
Add stubDes struct to classify stubs both in AOT file generation phase
and AOT file loading phase.
Fix some circular dependency problems in including header files.
Fix certain inline function declaration and definition format problems, which could lead to
compiling errors.
Issue: https://gitee.com/openharmony/ark_js_runtime/issues/I4VMLD?from=project-issue
Test: stubTest(unit test), richards with asm interpreter enabled
Signed-off-by: luochuhao <luochuhao@huawei.com>
Change-Id: Ibd5fcd963347b97f8dec227f3245d2064463b0b0
Delete the existing module implementation and
re implement the module function according to the ECMA 2018 specification
issue: #I4NZQT [https://gitee.com/openharmony/ark_ts2abc/issues/I4NZQT]
Signed-off-by: y00576111 <yaojian16@huawei.com>
Change-Id: I8d381db7f8bf2f3d6b2a5c21cbc3cbab1aef0b9b