occurs while debugging ark_js_vm executable on
windows.
Details: Enclose the part where the LocalScope
object should take effect with a pair of braces.
Thus, the destructor of the LocalScope object
will be called at the right brace which is above
the JSNApi::DestroyJSVM() function.
Issue: https://gitee.com/openharmony/ark_js_runtime/issues/I5C7XG
Signed-off-by: Gongyuhang <gongyuhang5@huawei.com>
Description
Cut out most of the initialization logic in Runtime::Create and disconnect the
inheritance relationship of most classes such as JSThread.
Issue:
#I53418: Runtime architecture adjustment
Signed-off-by: lifansheng <lifansheng1@huawei.com>
Change-Id: Ib9c1a40354f77d32e515e23334e7f4b4a4fa3259
Add option log-compiled-methods to print the compiler(both stub and aot) in units of methods.
Add class CompilerLog.
Refactor some compiler logs.
Unie the log invoked way(COMPILER_LOG or COMPILER_OPTIONAL_LOG).
Signed-off-by: ding <dingding5@huawei.com>
Change-Id: I43ce61d0ba9d453713ab3e6349d07f6d9cde3e5e
Adaptation on serialization and deserialization of snapshot file is needed,
for providing string constant table.
Tweak on callarg1dyn runtime stub.
Adjust initialization sequence of tsloader and global constant to cope with snapshot
deserilization.
Issue: https://gitee.com/openharmony/ark_js_runtime/issues/I527BJ
Signed-off-by: luochuhao <luochuhao@huawei.com>
Change-Id: I20a82dd0dbeec368b4ff93db4cca8d0ffbdb6717
Implement llvmIRGeneration Pass in aot compiler pipeline.
Rename and reconstruct LLVMStubModule and LLVMModuleAssembler class. Move aot code infos
related to describe current (code size, begin addr, entry offset of each func etc.) AOT
snippet and corresponding serialization/deserialization func to NEW class called AotCodeInfo.
Move functions related to file reading/writing to NEW class called AotFileManager.
Add new call opcode in circuit IR to differentiate call into common stubs and call into
runtime interfaces without GC.
Adapt js runtime option for above changes.
Issue: https://gitee.com/openharmony/ark_js_runtime/issues/I4ZDY5
Signed-off-by: luochuhao <luochuhao@huawei.com>
Change-Id: If0ab5927ad2551fe5567d1c7b18540fbcc38bc15
The lowering slow path requires not only the vreg information of the
instruction, but also other information such as string id, method id, etc.
For each bytecode instruction, collect the various information stored in
the instruction, and use the information as the input of the gate, and
in the lowering stage, take out the required information from the gate.
issue:https://gitee.com/openharmony/ark_js_runtime/issues/I4WQR5
Signed-off-by: wanyanglan <wanyanglan1@huawei.com>
Change-Id: I42ef36554b0b88ce3e1cd0f593e8ce9e924b83e0
Modify aot compiler main process to pass manager, as to compile file by
file.
Add PassData to manage data interact between passes, PassRunner to
execute every pass that is registered on specific order.
Issue: I4SW05
Change-Id: I5b83b84880c7375e26e1c47e02c9943bfefc647a
Signed-off-by: Hailiang Hu <allenpas@huawei.com>