Commit Graph

108 Commits

Author SHA1 Message Date
yaoyuan cfdfd3e1b9 Description:
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
2022-05-31 17:38:54 +08:00
lichenshuai a6bc94829b Fix C Interpreter Bug When Enabling rsp
Add case when ECMASCRIPT_ENABLE_ASM_INTERPRETER_RSP_STACK is true and asm-interpreter is false.

Issue: #I59UEB

Signed-off-by: lichenshuai <lichenshuai@huawei.com>
Change-Id: Ib0eb125dfdc7e0cdc34109fe810efd48861d443c
2022-05-30 10:16:13 +08:00
openharmony_ci 9f53c75d71 !1436 Fix Intl object initialization bug
Merge pull request !1436 from Pan Zhenyu/master
2022-05-29 09:32:13 +00:00
Zhenyu Pan 58ccd3be56 fix intl object fallbacksymbol accessor initialize bug
related issue: https://gitee.com/openharmony/ark_js_runtime/issues/I59F0F

Signed-off-by: Zhenyu Pan <panzhenyu1@huawei.com>
Change-Id: I111498334b9601bc97708502dc10b4e1485ffda2
2022-05-29 16:53:13 +08:00
yingguofeng@huawei.com a38b774573 Description: The change of hole tag cause that nullptr to be judged as a heap object
Solution: Ensure that all fileds of heap object(includes free object) are not nullptr

Issue:https://gitee.com/openharmony/ark_js_runtime/issues/I59PS0?from=project-issue

Change-Id: I062c3a7b9289de9efbb123ec62716fa554d2cb1d
Signed-off-by: yingguofeng@huawei.com <yingguofeng@huawei.com>
2022-05-28 19:18:54 +08:00
openharmony_ci f5596f01bd !1405 fix mem leak problem from jsmethod
Merge pull request !1405 from xiongluo/mem_leak_from_method
2022-05-25 07:20:21 +00:00
xiongluo 2c14680bc6 Fix the mem leak from js method
Signed-off-by: xiongluo <xiongluo@huawei.com>
2022-05-25 10:53:36 +08:00
openharmony_ci 0b5e0e6aa6 !1395 Add Container Vector
Merge pull request !1395 from shisan_forwork/push_vector
2022-05-23 14:57:23 +00:00
shisan_forwork 5adb25b225 Add Container Vector
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>
2022-05-23 20:40:25 +08:00
zhangyukun 9f15b59632 Fix 262 of rsp on x64
1. skip builtin frame and asm interpreter entry frame when upframe
2. skip push args when argc is 0
3. check thread exception, rather not ret value
4. deal with fp when entry Execute
5. deal with call class Constructor
Issue:https://gitee.com/openharmony/ark_js_runtime/issues/I58I4H?from=project-issue

Signed-off-by: zhangyukun <zhangyukun8@huawei.com>
Change-Id: I874f1437d5d21a8cf50a8d9ca73d7a92007f1bab
2022-05-23 18:42:48 +08:00
xliu 2b281975ea Js TypeArray optimization
Description
  1. Add number check in CanonicalNumericIndexString;
  2. modif GetProperty, SetProperty, DeleteProperty,
     DefineOwnProperty,GetOwnProperty,HasProperty
  3. Add FastPath in TypeArray.
  4. Refactor TypeArray ArrayLength, ByteOffset, ByteLength
  5. Add test for TypeArray.
Issue:
  #I56S75:Js TypeArray optimization

Signed-off-by: xliu <liuxin259@huawei.com>
Change-Id: I68dd973269eb0bab284e7b97e0b8bf93e5aee1a2
2022-05-21 18:15:02 +08:00
wupengyong 7c650ba015 reason:performance optimization
description:optimize taggedvalue encode
issue:https://gitee.com/openharmony/ark_js_runtime/issues/I55ZVP?from=project-issue

Signed-off-by: wupengyong <wupengyong@huawei.com>
Change-Id: I747a60f5ea7348d3b0cfc041a3b010c52b1517c0
2022-05-21 09:33:44 +08:00
openharmony_ci 31ec8e87dd !1313 Add regExp.matchAll interface and symbol.matchAll and regExp iterator related functions
Merge pull request !1313 from 王犇/master
2022-05-18 11:04:47 +00:00
wangben 0ae45e4df7 Add regExp.matchAll interface and symbol.matchAll and regExp iterator related functions
Signed-off-by: wangben <wangben15@huawei.com>
2022-05-18 18:02:39 +08:00
zhaozhibo c04fbfa226 Complete JSAPIArrayList test case、fix unittest case bug、fix NewJSAPIArrayList bug、fix codex warnings
Signed-off-by: zhaozhibo <zhaozhibo3@huawei.com>
2022-05-16 20:02:48 +08:00
panzhenyu1 559e56405f Initialize Accessor filed when new Intl related objects
related issue: https://gitee.com/openharmony/ark_js_runtime/issues/I576XP

Signed-off-by: panzhenyu1 <panzhenyu1@huawei.com>
Change-Id: Ic59fe278fa2438f46e30a93068a5709b542652aa
2022-05-12 20:19:19 +08:00
guobingbing d8699d3ab9 modify annotation of InterpretedFrame
Signed-off-by: guobingbing <guobingbing3@huawei.com>
Change-Id: I1deb88080eb89e27252629d8501005d49fe76adf
2022-05-12 10:22:18 +08:00
Yuqiang Xian d9d281af16 Merge remote-tracking branch 'oh/master' 2022-05-10 19:04:40 +08:00
dingwen 61b6782b65 Snapshot code optimization
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
2022-05-07 09:23:06 +08:00
Yuqiang Xian adecfbd30b Merge remote-tracking branch 'oh/master' 2022-05-06 21:25:57 +08:00
openharmony_ci 0f71e35687 !1180 Add object object fromEntries interface
Merge pull request !1180 from 王犇/master
2022-05-05 06:47:59 +00:00
wangben 792f6b18a0 Add object object fromEntries interface
Signed-off-by: wangben <wangben15@huawei.com>
2022-05-05 14:14:56 +08:00
openharmony_ci 70a73aac4f !1188 refactor class FrameHandler
Merge pull request !1188 from guobingbing/optimize
2022-05-04 07:24:17 +00:00
guobingbing 129ebdbf25 refactor class FrameHandler
Signed-off-by: guobingbing <guobingbing3@huawei.com>
Change-Id: I9f3ff0c04d34a31a34f21da637689eb61d4166f1
2022-05-04 10:36:44 +08:00
Yuqiang Xian f17e646f69 Merge remote-tracking branch 'oh/master' 2022-04-30 20:09:00 +08:00
Yuqiang Xian 9e88572f35 Add descriptions to concurrent marking status check.
Don't use IS_STANDARD_SYSTEM config to switch off concurrent marking.
Fix typos and grammar issues.

Issue: https://gitee.com/openharmony/ark_js_runtime/issues/I55HWI

Signed-off-by: Yuqiang Xian <xianyuqiang@huawei.com>
2022-04-30 20:02:19 +08:00
openharmony_ci 272cf6664d !1155 Refactor the GC related components - Part 4
Merge pull request !1155 from klooer/master
2022-04-30 09:45:48 +00:00
zhaozhibo 4b279c9d79 fix codex warning
Signed-off-by: zhaozhibo <zhaozhibo3@huawei.com>
2022-04-30 10:31:33 +08:00
Yuqiang Xian 57c0a4f055 Rename GC types and spaces to make it more consistent and clear.
Issue: https://gitee.com/openharmony/ark_js_runtime/issues/I54NZF

Signed-off-by: Yuqiang Xian <xianyuqiang@huawei.com>
Change-Id: Ieeb356480fe6767ec6c2c53b6119e8c4b99d9ff9
2022-04-27 18:28:18 +08:00
liu-qiang12 474420fba7 According to the 2021 internationalization specification add international specification module listformat class code
Signed-off-by: liu-qiang12 <liuqiang187@huawei.com>
https://gitee.com/openharmony/ark_js_runtime/issues/I54WWJ
2022-04-27 10:24:14 +08:00
luochuhao 90a5373327 First run of an TSAOT-define function Demo.
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
2022-04-25 12:00:12 +08:00
openharmony_ci 267f1415ec !1091 move the definition to the declare head file, and delete inl.h file
Merge pull request !1091 from hjzhangcm/master
2022-04-22 13:41:27 +00:00
hjzhangcm 8e768bf429 Rectify template problems
Signed-off-by: hjzhangcm <zhanghaijun20@huawei.com>
Change-Id: I3c156fc6d4b84ec14ec568c1ba36dda9aea34748
2022-04-22 09:44:50 +08:00
xiongluo 771d51b546 refactor jsMethod
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>
2022-04-20 23:17:00 -10:00
linxiang ee14adb949 Bug fix for string length calculate
if string is utf16, length need * sizeof(utf16)

Signed-off-by: linxiang <linxiang8@huawei.com>
Change-Id: I16ac62c9d137aa90bf3c43f1e1d740d97ec03058
2022-04-16 15:11:51 +08:00
guobingbing c01691c0bb entry frame adapter asm
Signed-off-by: guobingbing <guobingbing3@huawei.com>
Change-Id: Ied740af77e0f770e01f948c86b5f13d4877672ad
2022-04-15 18:23:40 +08:00
openharmony_ci 4126b18aa8 !972 Add Container Plainarray
Merge pull request !972 from zhangjixing/container_plainarray
2022-04-15 06:54:59 +00:00
zhangjixing 9af120fc9c Add Container Plainarray
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>
2022-04-15 13:11:55 +08:00
zhaozhibo 71f2d7e0eb Merge branch 'master' of gitee.com:openharmony/ark_js_runtime into master 2022-04-14 02:57:27 +00:00
zhaozhibo a57029dc79 fix codeDex warning.
Signed-off-by: zhaozhibo <zhaozhibo3@huawei.com>
2022-04-14 10:56:51 +08:00
zhaoduwei eb3ff30440 Modify sharedmemorymanager filename
Change sharedmemorymanager filename to shared_mm

https://gitee.com/openharmony/ark_js_runtime/issues/I52H3F

Signed-off-by: zhaoduwei <zhaoduwei1@huawei.com>
2022-04-13 11:53:13 +08:00
DaiH 3bc50421f4 Modification of patch "Get Object Literal's Hclass From Cache"
Signed-off-by: DaiH <daihuina1@huawei.com>
https://gitee.com/openharmony/ark_js_runtime/issues/I52AMU?from=project-issue

Some code formatting issue's modification of patch "Get Object Literal's Hclass From Cache"

1. Variable name : "fieldOrder" -> "fieldOffset"
2. uint32_t -> size_t
3. Extract "newJshclass->SetLayout(thread, layoutInfoHandle);" of the branches

Change-Id: Ib2e396ecbb10cac0b9fb2919c6f60f3633fbc376
2022-04-12 14:40:56 +08:00
DaiH 99f7f4bd0a Get Object Literal's Hclass From Cache
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
2022-04-11 21:57:35 +08:00
dingwen f7c357a8d4 SnapShot serialize and deserialize by using ObjectXray visit object
field
issue:https://gitee.com/openharmony/ark_js_runtime/issues/I4ZOXH

Signed-off-by: dingwen <dingwen6@huawei.com>
Change-Id: I6e03cfb4f7b89786b612b56adc0877f8b178058e
2022-04-10 12:32:07 +08:00
xliu 4fb9fcc443 ObjectFactory New Ecmastring Rectification
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
2022-04-09 10:34:11 +08:00
guobingbing 589234007e FFI optimization for call params
Signed-off-by: guobingbing <guobingbing3@huawei.com>
Change-Id: I61b820e91b85364e4f41d35ca0172ad059a1b916
2022-04-07 21:13:46 +08:00
wengchangcheng 4e08cec6ee [part-1] delete "*-inl.h" of newest codex rule
move the definition to the declare head file

issue: https://gitee.com/openharmony/ark_js_runtime/issues/I512HV

Signed-off-by: wengchangcheng <wengchangcheng@huawei.com>
Change-Id: Ieeb0ec96281cda51d0bebd6a2e771fc8d4078306
2022-04-07 14:14:49 +08:00
openharmony_ci 78c38d9a2b !918 add SharedArrayBuffer
Merge pull request !918 from 赵杜炜/master
2022-04-02 11:58:42 +00:00
zhaoduwei fb0eaa03da Added SharedArrayBuffer module code
Added SharedArrayBuffer module code to support ECMA function

Issue:https://gitee.com/openharmony/ark_js_runtime/issues/I4XGSJ

Signed-off-by: zhaoduwei <zhaoduwei1@huawei.com>
2022-04-02 18:46:20 +08:00
openharmony_ci f8b36e6882 !738 Add Container Deque And Container Stack
Merge pull request !738 from zhangjixing/deque_and_stack
2022-03-30 02:13:32 +00:00