67 Commits

Author SHA1 Message Date
fangting
cdbfa4340e optimize compiler
Issue:#IALVU8
Signed-off-by: fangting <fangting12@huawei.com>
2024-08-27 11:02:23 +08:00
dingwen
efcbbe061e Modify snapshot env update root type
Description:Modify snapshot env update root type
Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/IAF2VX?from=project-issue

Signed-off-by: dingwen <dingwen6@huawei.com>
Change-Id: Ieca0c3345c237f75b7ed6dc903e192bee46fa027
2024-07-24 10:18:58 +08:00
chentianyu
5468549989 fix gc young space adjust capacity
Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/IAC8WZ

Signed-off-by: chentianyu <chentianyu31@huawei.com>
Change-Id: Iafc6f0442646796b81a87defdfef893efb2b092e
2024-07-11 14:40:21 +08:00
zhangyiwei
ebfcd49d08 keep MachineCode alive while exist relative jsError
Signed-off-by: zhangyiwei <zhangyiwei11@huawei.com>
Change-Id: I0781ca5f8c587afefc1d3225f1591531697c0d03
2024-06-09 16:34:48 +08:00
Gymee
8be71f4f7b Code tweaks
Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I9VMR5
Signed-off-by: Gymee <yumeijie@huawei.com>
Change-Id: Iba24ad9b06adb60bd8ce22d7acbd965f06db3f69
2024-06-06 12:13:10 +08:00
zhangyiwei
2990f9eb23 sticky gc
Signed-off-by: zhangyiwei <zhangyiwei11@huawei.com>
Change-Id: Id1d6b22d966b7342f832b4ca197c751df791cf48
2024-06-01 09:58:09 +08:00
dingwen
6883a80ecb AtomicInsertLocalToShare optimize
Description:AtomicInsertLocalToShare IR and use two localToShareRSet_ to
avoid data race during concurrent sweeping
Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I9QDMQ?from=project-issue

Signed-off-by: dingwen <dingwen6@huawei.com>
Change-Id: I49beb256befeb99e926d157a3c9cd26eb2735919
2024-05-20 10:31:39 +08:00
lukai
37dd4fb0cc GCBugfix at whole region promotion
Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I9PQTH?from=project-issue
ClearLocalShare bit after whole region promotion

Signed-off-by: lukai <lukai25@huawei.com>
Change-Id: I0256052db1549be533bf2284f67d2d9df214b89a
2024-05-16 12:00:08 +08:00
liu-zelin
8c1d4935a5 Fix CodeCheck
Signed-off-by: liu-zelin <liuzelin8@huawei.com>
Change-Id: Ic60aabc5a3cc92d805c23e35869df78375c8d159
2024-03-17 15:56:17 +08:00
wengchangcheng
f4b45a47d0 Merge remote-tracking branch 'openharmony/dev_shareheap' into dev_shareheap
Change-Id: I5914eec98625d475decc7fe57ffdfd9f1919fee8
2024-02-19 12:13:28 +08:00
lukai
d301ac8e8c Fix code conflict
1. Fix code conflict
2. Fix code review

Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I91D19?from=project-issue

Signed-off-by: lukai <lukai25@huawei.com>
Change-Id: Ib0aabf0e22eb0809122775981467ad643d2f2ca5
2024-02-19 09:17:42 +08:00
wengchangcheng
0ed9f00a08 Merge remote-tracking branch 'openharmony/master' into dev_shareheap
Change-Id: I73e06e67e44d7bd2492ba0615c2ac62b4979ef36
2024-02-19 00:14:55 +08:00
chentianyu
93babd1795 Enhance heap verify
Signed-off-by: chentianyu <chentianyu31@huawei.com>
Change-Id: I23890f3531c417e3adda5da0a2b7b231dacd2cf6
2024-02-08 13:12:59 +08:00
lukai
a72dd481f6 Support Share GC Part2:
Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I91D19?from=project-issue
1. implement share gc marker, sweeper
2. adapt local gc to skip object in shared heap

Signed-off-by: lukai <lukai25@huawei.com>
Change-Id: Id73c9d2c52b11adfef36fff032c926aa5ed3f7cc
2024-02-08 09:47:41 +08:00
lukai
d8f421a6e3 Support Share GC Part1:
1. Record local to share in write barrier
2. Update local to share rememberset after GC
3. Remove ecmaVM_ from ObjXray

Signed-off-by: lukai <lukai25@huawei.com>
Change-Id: Id53bab9b0af8675282b51e95412798f7c36cfb68
2024-02-08 09:46:41 +08:00
hzzhouzebin
a1308124c3 Move EcmaString & StringTable on Shared Heap
Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I8YVTQ
Signed-off-by: hzzhouzebin <zhouzebin1@huawei.com>
Change-Id: I04d16d68f38be1679f206a782ef76b9d34142589
2024-02-07 23:13:44 +08:00
lukai
0fb2f1694f Support sharedHeap allocation
1. Implement SharedHeap and BaseHeap.
2. Adapt SharedSpace for allocation

Signed-off-by: lukai <lukai25@huawei.com>
Change-Id: Id7dd3510f04160e356ced5eee80b06f450386a13
2024-01-25 21:56:23 +08:00
chentianyu
724a63bd01 Fix YoungGC may not trigger ConcurrentMark due to calculation overflow
Signed-off-by: chentianyu <chentianyu31@huawei.com>
Change-Id: I78ca776ba2937c92ef101251d9a230a42d799260
2024-01-20 20:59:14 +08:00
lukai
5e3dfec9e0 Support profiling elements size and allocating space
Profile elements size and allocating space for jsArray
Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I8A23P?from=project-issue

Signed-off-by: lukai <lukai25@huawei.com>
Change-Id: I63ffa87cfb9564ede5f9fe5f3902f7cd781da27b
2023-10-26 19:25:27 +08:00
xiongluo
c7ab7dddd8 change mutex based on pthread_mutex
Signed-off-by: xiongluo <xiongluo@huawei.com>
Change-Id: I232c1378a20dcef26e61cee76b7b40cccc5b5e9f
2023-09-27 15:11:28 +08:00
Onlynagesha
180e0a3f87 Fixes circular header dependency
Eliminates circular header dependency in some fundamental headers like
js_thread.h, js_tagged_value.h, etc.
Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I7ZPL4

Signed-off-by: Onlynagesha <orina_zju@163.com>
Change-Id: I5a78073992b77643718abdc1e0813485c0e439bb
2023-09-08 19:05:41 +08:00
lukai
11a7825789 Add more debug information
When some unexpected results occur, print related information
Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I7Y8H0?from=project-issue

Signed-off-by: lukai <lukai25@huawei.com>
2023-09-04 14:08:42 +08:00
xiongluo
d622c14fca opt string table
Signed-off-by: xiongluo <xiongluo@huawei.com>
Change-Id: I6f10e8fcb0f9120c2cdba929b9731e4286a6ab8a
2023-08-01 22:05:57 +08:00
yingguofeng@huawei.com
3b107f900a Feat(Aot): Track Double/Int field for aot compiler
Issue: #I7JI0Z
Change-Id: I24f762d505cf467e86d5a12f3fc78c9ecd4513f1
Signed-off-by: yingguofeng@huawei.com <yingguofeng@huawei.com>
2023-07-12 21:55:16 +08:00
wu
ee76612f94 Add Incremental mark interface
Add incremental mark interface
Predict idle gc pause before running in idle time
Rectificate gc logs

Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I6XYAG?from=project-issue

Signed-off-by: wu <wuwanqi2@huawei.com>
Change-Id: Idcb192f10b927507059c1ce2129f2bff82bd8d6d
2023-05-05 15:24:47 +08:00
yingguofeng@huawei.com
db1ef3e21e fix(memory): semispace initialize size error for Appspawn forking vm
link #I69CRK

Change-Id: I2db389d601216b0af63d9856011ce05c2d0daf47
Signed-off-by: yingguofeng@huawei.com <yingguofeng@huawei.com>
2023-01-10 15:42:27 +08:00
yuanyao
2559bb86bb BugFix ConcurrentSweep Deadlock
Description:
	bugfix on concurrentSweep deadlock issue caused by moving concurrentSweep after.
Issues: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I68LQX

Signed-off-by: yuanyao <yuanyao14@huawei.com>
Change-Id: I304bd62c45502061b94b36bce5e5d4ccc657cb15
2023-01-03 20:32:49 +08:00
xiongluo
63b15424b1 enable parallel gc and concurrrent mark
Signed-off-by: xiongluo <xiongluo@huawei.com>
2022-12-22 15:16:35 +08:00
Gymee
f6e412cecb fix codestyle
Issue: #I65XYU
Signed-off-by: Gymee <yumeijie@huawei.com>
Change-Id: Ie4de168df74fb04fd11410d69a8b2b7164bb3c42
2022-12-13 11:57:48 +08:00
openharmony_ci
16c8a9c96a
!3087 Integer overflow check
Merge pull request !3087 from huangzhenghua/master1125
2022-11-28 13:04:27 +00:00
huangzhenghua
51c184ca6e Integer overflow check
Signed-off-by: huangzhenghua <huangzhenghua3@huawei.com>
Change-Id: I8514100acecdbd6af8712c1c7c38bf77b7dc2987
2022-11-28 16:32:55 +08:00
Gymee
5e54f4e6fe fix invalid node generation for error size
Issue: #I630QR
Signed-off-by: Gymee <yumeijie@huawei.com>
Change-Id: Ib0b7d5acff49de0fd1882be8091524b36c71a196
2022-11-25 13:04:34 +08:00
yingguofeng@huawei.com
c9d4e14744 perf(PGO Profiler): optimizer PGO Profiler
1、Modify occasion of saveing profiler data
    2、Change allocation from new to chunk

Closes #I61UVO

Change-Id: I1aae4a5c3f8117dae78921f654140f20f1bbe9f5
Signed-off-by: yingguofeng@huawei.com <yingguofeng@huawei.com>
2022-11-21 14:11:42 +08:00
quiet-thought
f96c4c8fdb Fix lack node problem
https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I5Z1J9

Signed-off-by: quiet-thought <chenjingxiang1@huawei.com>
Change-Id: Ib0888a2ffc988b6fe516247430ffae1b525efec8
2022-11-08 21:08:39 +08:00
wengchangcheng
7237c5ce47 Merge remote-tracking branch 'origin/master' into wcc_0808
Change-Id: I06cc861adac3bdf82361e6fe80784b628fcd93f1
2022-09-02 09:31:09 +08:00
yang-19970325
99318eb098 Why:Function name does not conform to the specification
How/What:Modify function format
Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I5OUCJ?from=project-issue
Signed-off-by: yang-19970325 <yangyang585@huawei.com>

Change-Id: Ic56c27d8289c383c58659372c172a433eaab2a46
2022-08-30 17:15:04 +08:00
wengchangcheng
ab13a0da91 Descriptor: support first level instruction
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
2022-08-24 14:12:42 +08:00
openharmony_ci
0be410dea5
!2089 Fix GC Assert fail under concurrent mark
Merge pull request !2089 from dingwen/master
2022-08-18 08:28:39 +00:00
yingguofeng@huawei.com
a4dbefd144 fix(heap): update oldtonewrset reference and marking barrier weak referene bugfix
Closes #I5KYPF

Change-Id: I4d061eb9fbf0edaa9402396e81c09686c5d7662a
Signed-off-by: yingguofeng@huawei.com <yingguofeng@huawei.com>
2022-08-17 23:40:20 +08:00
dingwen
420ea0c56d Fix GC Assert fail under concurrent mark
Description:1.if object is allocated during concurrent mark, we shouldn't add the object size to region aliveObject_ imediately, because the size will be added when push object to WorkManager queue.
2.ASSERT(value.IsWeak() || value.IsUndefined()) may fail during concurrent mark, since that a weak reference maybe changed to strong reference
issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I5MR3O

Signed-off-by: dingwen <dingwen6@huawei.com>
Change-Id: I9ab61ea8521bb3e4571713202e1005ee40034a6d
2022-08-17 16:35:49 +08:00
xiongluo
d6ac1b832c Add a trick to trigger full gc by lower survival rate.
issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I5LGKC

Signed-off-by: xiongluo <xiongluo@huawei.com>
2022-08-15 17:22:02 +08:00
yingguofeng@huawei.com
63dd9ddde6 Description:asan crash asm interpreter.
Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I5K0YK?from=project-issue

Signed-off-by: yingguofeng@huawei.com <yingguofeng@huawei.com>
Change-Id: Id3b6022c79669cbc647dc005ad2fa34d334d9dae
2022-08-04 19:47:27 +08:00
yingguofeng@huawei.com
d37f9efec9 Description:UpdateDerivedObjectInStack Crash In Asan version
Resolution:Stack overflow when Stack address store in heap

Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I5JPG4?from=project-issue

Signed-off-by: yingguofeng@huawei.com <yingguofeng@huawei.com>
Change-Id: I93869e94b91354030c4b299d683dfa7e0d78d702
2022-08-02 10:04:34 +08:00
openharmony_ci
2c23e71436
!1863 Full GC compress evacuate And OldToNew update bugfix
Merge pull request !1863 from yingguofeng/master_reserve
2022-07-30 11:02:29 +00:00
yingguofeng@huawei.com
30eadc73b9 Description: Full GC compress evacuate And OldToNew update bugfix
Detail:1、Full GC compress evacuate optimization.
       2、OldToNew GCBitSet update bugfix.

Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I5GEY8?from=project-issue

Signed-off-by: yingguofeng@huawei.com <yingguofeng@huawei.com>
Change-Id: Ieaf22af4f4c63d01fe70a7751d15c4d5d8ba061c
2022-07-25 10:24:52 +08:00
xujie
520cda354a TSAOT Bugfix
1. Fix TSAOT partial GC bug. Add updating derived pointer logic in partial
GC and replace map.emplace with map[] preventing concurrent mark from writing
dirty data and being unable to update.
2. Fix JSCall lowering bug by acquiring exception from glue.
3. Fix acquiring lexical env from non-JSFunction bug.

Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I5EYCQ

Signed-off-by: xujie <xujie101@huawei.com>
Change-Id: I5bae102129298632072ad22c06617a1f36311247
2022-07-21 15:15:50 +08:00
yingguofeng@huawei.com
ed85aebbad Description:Memory Leak DFX
1、Add Global and Local Leak monitor and analysis tools
2、Enable asan in x86_64、arm and aarch64

Issue: https://gitee.com/openharmony/ark_js_runtime/issues/I5F2IN?from=project-issue
Change-Id: I0d201aeb21a01c412c279876112ef24d272177ce
Signed-off-by: yingguofeng@huawei.com <yingguofeng@huawei.com>
2022-07-19 10:49:19 +08:00
wengchangcheng
6e5a7e8362 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
dingwen
83511ce842 Fix GC memcpy_sp bug
Description: Fix memcpy_sp copy object fail bug
issue:https://gitee.com/openharmony/ark_js_runtime/issues/I5E0FE

Signed-off-by: dingwen <dingwen6@huawei.com>
Change-Id: I34655bc18f7f8333507cd5a00115a8e8135b3c12
2022-07-01 09:59:00 +08:00
wengchangcheng
cc184ba66c Descriptor: delete some internal unused code
details: delete unused code
issue: https://gitee.com/openharmony/ark_js_runtime/issues/I5COHE

Signed-off-by: wengchangcheng <wengchangcheng@huawei.com>
Change-Id: I5fe62c58353839d4aac1144fc99e2cf87f4374eb
2022-06-17 23:03:42 +08:00