63 Commits

Author SHA1 Message Date
wengchangcheng 439ff56091 delete some unused log
1. add VERBOSE level log, default not print
2. modify some DEBUGE level log to VERBOSE

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

Signed-off-by: wengchangcheng <wengchangcheng@huawei.com>
Change-Id: I1fba38346d55fb633c7a0ec018848653137d4009
2022-07-09 18:43:58 +08:00
wengchangcheng bae857fd90 Descriptor: decrease ark debug log
details: dont print interpreter log
issue: https://gitee.com/openharmony/ark_js_runtime/issues/I5FZNJ

Signed-off-by: wengchangcheng <wengchangcheng@huawei.com>
Change-Id: I8c362cb1359db77e994d510df17bbda4ce3ab0b5
2022-07-07 15:54:12 +08:00
wengchangcheng cd90e396a7 Descriptor: ark hilog refactor
details:
1. use hilog in ohos device
2. use panda logger in host
issue:  https://gitee.com/openharmony/ark_js_runtime/issues/I5FR5J

Signed-off-by: wengchangcheng <wengchangcheng@huawei.com>
Change-Id: I6f5de00751154bdb6aac3101515961a3a4432e80
2022-07-06 22:55:49 +08:00
g00416891 f11810349e New EcmaRuntimeCallInfo in stack pointer
Signed-off-by: g00416891 <guobingbing3@huawei.com>
Change-Id: I466a4107e6e073ffecea12e6986c112731d2d3bf
2022-07-05 14:54:43 +08:00
hjzhangcm dfe246418d fix codex warning issue:https://gitee.com/openharmony/ark_js_runtime/issues/I5EP42
Signed-off-by: hjzhangcm <zhanghaijun20@huawei.com>
2022-06-29 15:51:01 +08:00
sunzhe23 3021c79a4b Refactor Entry Frame
description:
use js common entry refactor entry frame
align 16 for aarch64

issue: #I5DR75

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2022-06-24 10:44:28 +08:00
lichenshuai 581dc52613 Fix SingleStepDebugging Bug
Correct the offset of SingleStepDebugging. Return sp in JumpToCInterpreter instead of pc.

Issue: #I5BIJG

Signed-off-by: lichenshuai <lichenshuai@huawei.com>
Change-Id: I1dcfab10b8244a874838434df8c1ea8935d71d84
2022-06-14 11:02:41 +08:00
songzhengchao 69ac5a27a9 Implement Prologue refactor and Add mulitple Optimized Frame In LLVM 12.0.1
1 refactor prologue reserve dynamic slots which is setted by LLVM IR
2 callsiteSp is calculated by current function's callee saved registers size
3 and Add mulitple Optimized Frame:
OPTIMIZED_JS_FUNCTION_FRAME:argv[n-1],..., argv[0], argc, ...., returnaddr, Fp, type. this frame need to visit args and stackmap.
OPTIMIZED_ASM_FRAME: jscall/jsentry construct frame which is implemented by assemble, this frame is only link to previou frame, it don't need to visit args and stackmap

4 stackmap support parse const pool and llvm patch add deopt interface LLVMBuildCall3

issue: https://gitee.com/openharmony/ark_js_runtime/issues/I5AJ9U
Signed-off-by: songzhengchao <songzhengchao@huawei.com>
Change-Id: Ie6a0067169805cc6043ea94936dd578489b56c7b
2022-06-03 15:51:19 +08:00
lichenshuai a724508c73 Delete RSP macro and .S file
Rsp is used in future work, therefore .S file should be deleted.

Issue: #I5AGW3

Signed-off-by: lichenshuai <lichenshuai@huawei.com>
Change-Id: Ib1fb140d40d259bc4519fbf547857e5f80e9ee0c
2022-06-02 10:32:46 +08:00
sunzhe23 372df16bd4 Refactor JSCall Dispatcher and implments asm getter/setter
description:
1 Refactor Call Dispatcher, and Regactor common call
2 use circuit IR implments getter/setter

issue: I59POB

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2022-05-30 16:14:30 +08:00
sunzhe23 b492ef605f Fix some asm interpreter bug
description:
1 add align up for rodata section, incase movdqa crash
2 set gc leaf function attribute for no gc all
3 fix mega ic run slowpath bug for asm interpreter
4 remove trampoline unused code

issue: #I58VFA

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2022-05-24 19:36:38 +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
lichenshuai a9fae25963 Fix TDD yieldstarAsmAction debug
LeaveFrame is set in the frame chain when GeneratorReEnterInterpreter().

Issue: #I58L31

Signed-off-by: lichenshuai <lichenshuai@huawei.com>
Change-Id: Iefe795fa255419eced137fb67da877924854f04a
2022-05-23 09:19:14 +08:00
wanghuan 1833bda964 add generator rsp
desc:add generator rsp

solu:change GeneratorReEnterInterpreter function to assembler rsp

issue: https://gitee.com/openharmony/ark_js_runtime/issues/I57M3Q
Signed-off-by: wanghuan <wanghuan80@huawei.com>
Change-Id: I66e3cdae7a89a8f48a42d126a4541b25ab2a6923
2022-05-18 14:33:56 +08:00
lichenshuai cc9a22605c Fix asyncAsmAction TDD
The TDD asyncAsmAction will fail when run. It needs to be fixed.

Issue: #I57UY6

Signed-off-by: lichenshuai <lichenshuai@huawei.com>
Change-Id: Ie80755f9bc13d4fe1dd83d413ac71323c753b7f7
2022-05-17 15:41:23 +08:00
zhangyukun 6e0a576021 Fix rsp frame callnative and generator
1. adaptor GetNumArgs
2. fix callnative irange
Issue:https://gitee.com/openharmony/ark_js_runtime/issues/I57PDZ?from=project-issue

Signed-off-by: zhangyukun <zhangyukun8@huawei.com>
Change-Id: Ib9a07e2e05fae93eb169e69e79f0c91acca37600
2022-05-16 21:08:38 +08:00
zhangyukun a65fb615bb Impl rsp frame of generator
1. Resume rsp of SuspendGenerator
2. Remove duplicated stack frame switching of ChangeGenContext and
ResumeContext
Issue:https://gitee.com/openharmony/ark_js_runtime/issues/I57IXJ?from=project-issue

Signed-off-by: zhangyukun <zhangyukun8@huawei.com>
Change-Id: I3a86c645864ec73f5dd351882125b4ee721b5468
2022-05-16 09:18:47 +08:00
sunzhe23 c874c75894 Refactor asm interpreted frame
description:
1 remove macro ECMASCRIPT_COMPILE_ASM_INTERPRETER
2 add asm native frame type

issue: I569XH

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2022-05-08 20:40:24 -07:00
zhangyukun 25daaf26ef constuct entry frame of execute with rsp
1. add fp to support discontinuous frame gc and resume rsp
2. assemble execute and impl entry frame with rsp
3. use assembler to refactor .s
Issue:https://gitee.com/openharmony/ark_js_runtime/issues/I52BQE?from=project-issue

Signed-off-by: zhangyukun <zhangyukun8@huawei.com>
Change-Id: I6966672dc065d63144fe7fa145ab76571189d540
2022-05-07 14:13:50 +08:00
lifansheng 295d5db32b issue:I55TH8
modify JSTaggedValue which disconnect TaggedValue inheritance

Signed-off-by: lifansheng <lifansheng1@huawei.com>
Change-Id: I13b990baf5284e58e83ab6b14847df076f42bed8
2022-05-05 16:54:26 +08:00
guobingbing 129ebdbf25 refactor class FrameHandler
Signed-off-by: guobingbing <guobingbing3@huawei.com>
Change-Id: I9f3ff0c04d34a31a34f21da637689eb61d4166f1
2022-05-04 10:36:44 +08:00
ding f875000553 Extend Fast-new with CallType has NewTarget
Extend fast-new with callType has NewTarget, to speed up calendar application.

Signed-off-by: ding <dingding5@huawei.com>
Change-Id: I716c6992cf98e2835b1906c61d872ae3496d6db1
2022-04-29 15:36:02 +08:00
xiongluo d8b0be85b3 refactor the uint fileds in jsmethod
1. make bytecodeArraySize, hotnessCounter, methodId, slotSize into one field methodField.
2. change the interpreter_stub to fit the hotness counter in jsmethod.
3. fix the fail problem of mem controller test.
4. Adjust the timeout value of uinittest

Signed-off-by: xiongluo <xiongluo@huawei.com>
2022-04-27 02:43:40 -10:00
openharmony_ci a22dcd4032 !1143 get prev interpreted frame of entry frame
Merge pull request !1143 from guobingbing/adapter-asm
2022-04-26 09:34:00 +00:00
openharmony_ci 87a2cee24e !1085 add asmInter Debugger
Merge pull request !1085 from wanghuan2022/master
2022-04-26 08:06:13 +00:00
guobingbing 3fcd42ecff get prev interpreted frame of entry frame
Signed-off-by: guobingbing <guobingbing3@huawei.com>
Change-Id: I6ed03ae55878790d4576499515a5973a700cd1ff
2022-04-26 15:59:03 +08:00
wanghuan 4d249dcb87 add asmInter Debugger
desc: add asmInter debugger to support ide debug.

solu:
1.add bc debugger stub entry;
2.check is or not debug mode in runInternal and switch release to debug or debug to release.

issue: https://gitee.com/openharmony/ark_js_runtime/issues/I53Z4V
Signed-off-by: wanghuan <wanghuan80@huawei.com>
Change-Id: I3f61bed8b4e17c43d22b5e6f103fe897cd8b41c1
2022-04-25 21:38:27 +08:00
openharmony_ci 09715f883b !1119 Support calculate callsite sp for interpreter frame
Merge pull request !1119 from 孙哲/master
2022-04-25 12:06:25 +00:00
sunzhe23 ad20a51cca Support calculate callsite sp for asm Interpreter
description:
Add SaveCurrentFrame for interpreter handler call stub and
get get callsite sp when gc run

issue: I54IMV

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2022-04-25 01:03:33 -07:00
zhaozhibo e0ad13d0c4 fix codex warning
Signed-off-by: zhaozhibo <zhaozhibo3@huawei.com>
2022-04-25 14:33:01 +08:00
openharmony_ci de8dd32c29 !1093 Delete useless code dependencies.
Merge pull request !1093 from yingguofeng/mmap
2022-04-24 16:26:56 +00:00
guobingbing 8747ca5081 remove prevSp in EcmaRuntimeCallInfo
Signed-off-by: guobingbing <guobingbing3@huawei.com>
Change-Id: I3a3517cc8712baa6eef76f85a9967dd95a085bbc
2022-04-24 19:04:24 +08:00
yingguofeng@huawei.com 6c5808fc28 Delete useless code dependencies
To reduce 'libark_ jsruntime.so' ROM size, delete useless code dependencies.

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

Profit: libark_jsruntime.so size reduce from 3455(kb) to 2001(kb)

Change-Id: Ie7430fca6f539c9baff1f4aae7942da6fc9ef135
Signed-off-by: yingguofeng@huawei.com <yingguofeng@huawei.com>
2022-04-24 18:02:32 +08:00
sunzhe23 528db23a05 Refactor leave&entry frame
issue: #I541LG

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2022-04-23 23:35:51 -07: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
hjzhangcm 08c3ade3f9 fix master warning
Signed-off-by: hjzhangcm <zhanghaijun20@huawei.com>
2022-04-19 09:43:35 +08:00
zhaozhibo 504820705d Merge branch 'master' of gitee.com:openharmony/ark_js_runtime into master 2022-04-17 07:24:50 +00:00
zhaozhibo 398ac87a36 fix codeDex warning(3)
Signed-off-by: zhaozhibo <zhaozhibo3@huawei.com>
2022-04-17 15:23:43 +08:00
wengchangcheng d6c835caea Descriptor: debugger refactor
details:
1. debugger refactor, don't use runtime debugger
2. fix debugger crash

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

Signed-off-by: wengchangcheng <wengchangcheng@huawei.com>
Change-Id: I08e3c86bf659b9e0a44d014d13b11462d50218b3
2022-04-17 01:16:26 +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
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
openharmony_ci 97102d5750 !986 modify shr and ashr handle
Merge pull request !986 from wanghuan2022/master
2022-04-13 03:51:13 +00:00
wengchangcheng 171c1ec462 Descriptor: fix stack overflow
details:
1. increase stack size
2. modify check stack overflow error
issue: https://gitee.com/openharmony/ark_js_runtime/issues/I52EUX

Signed-off-by: wengchangcheng <wengchangcheng@huawei.com>
Change-Id: Ic5a3cf880288de8eb98b081f839679b8acef3026
2022-04-12 23:57:04 +08:00
wanghuan 9afe77f11c modify shr and ashr handle
desc: shr should be unsigned right shift, and ashr should be signed right shift. But they are reversed. So modify them.

solu:
1. reverse shr and ashr handle
2. delete unused frameHandle

issue: https://gitee.com/openharmony/ark_js_runtime/issues/I5292O
Signed-off-by: wanghuan <wanghuan80@huawei.com>
Change-Id: Ia329da8bf0ceaa80560601614b592bb448595a29
2022-04-12 16:44:41 +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
openharmony_ci b078ee5425 !948 [part-1] delete inl.h, move the definition to the declare head file
Merge pull request !948 from changcheng/fix_inl_head_files_part1
2022-04-07 11:30:16 +00:00
zhangyukun 9139ca09c7 Add dispatch of call of x64 and construct frame with rsp in .S
1. use stub to dispatch fast,slow and native paths
2. use rsp to construct frame of x64
https://gitee.com/openharmony/ark_js_runtime/issues/I51G9L?from=project-issue
Signed-off-by: zhangyukun <zhangyukun8@huawei.com>
Change-Id: Ib80540df5dbe531f155e5dd9fce556a207171494

Change-Id: I31e6705dd5555a0c2a9070a7ce73b26f77caef80
2022-04-07 14:32:38 +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
lichenshuai 53a4daf2ef Enable Call Stub
Fixed Call Stub bug, Enable Call Stub and synchronize new stackless to interpreter_assembly.

Issue: #I51E2F

Signed-off-by: lichenshuai <lichenshuai@huawei.com>
Change-Id: I2116850e55bc651acc71bc1baa99aa2c4e1b578c
2022-04-06 20:00:22 +08:00