Commit Graph

163 Commits

Author SHA1 Message Date
openharmony_ci
4da1548803
!4390 Class static hcr bugfix
Merge pull request !4390 from wpy111/master
2023-07-08 10:19:55 +00:00
wupengyong
e1426cbfe3 Reason:1.Fix class static hcr bug. 2.Add switch for class static hcr
Description:1.Fix class static hcr bug. 2.Add switch for class static hcr
Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I7JEXX?from=project-issue

Signed-off-by: wupengyong <wupengyong@huawei.com>
Change-Id: I1777b9cda53a2b3b5fc86619a4d2c3e89aadb505
2023-07-08 15:10:29 +08:00
zhangyukun
1b1f2b2d79 Add fast aot compile mode
Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I7JDBI?from=project-issue

Signed-off-by: zhangyukun <zhangyukun8@huawei.com>
Change-Id: Ibffdb7d71ac58766f96034d5dd126e59a2c2c7ff
2023-07-07 11:54:42 +08:00
ginxu
9511cd87ec Some TSAOT Wrokload Optimization
1. Add nocheck option to remove aot check
2. Add LLVM Optimization pass
3. Remove Inline UpdateHotness
4. Modify TypedArray on heap size frome 64 to 512
5. Add us Timing tool

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

Signed-off-by: ginxu <xujie101@huawei.com>
Change-Id: I151f3ffd5769ae142fef9e0cf719e27ce5d5f5e7
2023-07-02 18:09:41 +08:00
linxiang8
89f982f0c2 avoid some compiler bugs
Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I7GT3I
Signed-off-by: linxiang8 <linxiang8@huawei.com>
Change-Id: If4ee71439020b79f8236446faaf5ed69ed0548db
2023-06-29 14:45:49 +08:00
Chongwei Su
1f56b00509 CpuProfiler support command contral worker thread sampling and any time
sampling

issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I7DBUI

Signed-off-by: Chongwei Su <suchongwei@huawei.com>
2023-06-20 11:55:36 +08:00
huoqingyi
40a1027edf Add logs about types Part I
To make it easier for developers to understand the type system in AOT, we add logs about types in compile time.

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

Tests:
aot test, typeinfer test

Signed-off-by: huoqingyi <huoqingyi@huawei.com>
Change-Id: Ib9151eae5524b913056520f02e0a6b814f16d40e
2023-06-13 12:16:48 +08:00
yingguofeng@huawei.com
bfc478a38b Feat(Aot): PGO extension supports hclass dump
Issue: #I78U0R
Change-Id: If7079aeb03cc265b68487f4997fc20d35626fe7f
Signed-off-by: yingguofeng@huawei.com <yingguofeng@huawei.com>
2023-06-01 19:54:22 +08:00
zhangyukun
cd8e0d43bc Fix builtins.d.abc option when target compilation
Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I79KE5?from=project-issue
Signed-off-by: zhangyukun <zhangyukun8@huawei.com>

Change-Id: If95c812213e42c6e3c510be0e36d435314a2d190
2023-05-31 10:32:26 +08:00
zhangyukun
cc6cb3e8a4 Adapt installd target compiler
Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I780VZ?from=project-issue
Signed-off-by: zhangyukun <zhangyukun8@huawei.com>

Change-Id: I872cc23c10929b9af9c8b01fc6facd92b38b540b
2023-05-26 17:29:43 +08:00
ginxu
2ac472acd9 Support Inline Deopt
1. Add frameStateChain op for inline deopt.
2. Modify the deopt logic to support multiple interpreter frames.
3. Fixed some bugs that occurred when inline was enabled.
4. Support trace inline function tools.
5. Add some testcases.
6. Add some inline condition which some scenarios that might occur inline are filtered.

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

Signed-off-by: ginxu <xujie101@huawei.com>
Change-Id: I30127640fcd150c3c3badf2dd5c805a7b6733c42
2023-05-13 10:46:38 +08:00
openharmony_ci
110322f3a3
!3978 Lazy initialization for some builtins interface in workervm
Merge pull request !3978 from lukai/lazyBuiltins
2023-05-12 13:04:44 +00:00
zhangyukun
f5920a18f8 Enable multi-modules compilation of aot
1.Use local llvm contexts rather than global context
2.Merge multi-modules into an an-file
3.Generate an united stackmap for multi-modules
4.Use CodeSpace to manage code space in multi-modules
5.Use modules as groups to manage function compilation
6.Use only one module to parse the multi-modules an file
7.Disassembler outputs united address log
8.Add max-methods-in-module options
9.Add testcase
10.upgrade version number

Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I6ZMDE?from=project-issue
Signed-off-by: zhangyukun <zhangyukun8@huawei.com>
Change-Id: I80cf845fa57e8ae73c3c858ded0dfe4a46a13eb9
2023-05-12 15:07:00 +08:00
lukai
3a90a2c09a Lazy initialization for some builtins interface
use internal accessor for lazy buitlins. when first time access the builtins object, the accessor will then initialize it.

Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I6YBQB?from=project-issue
Signed-off-by: lukai <lukai25@huawei.com>
Change-Id: I8f0d23cdf63b808c8e9e5e69454665fcc620c459
2023-05-12 11:43:22 +08:00
sunzhe23
03d271533f Remove frame state convert
Add frame state convert in llvm ir build and change DeoptCheck to LIR

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

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2023-05-10 21:01:59 +08:00
dingding
dbb6738ad6 Imporve AOT Debugging Tools
1. Add stress deopt.
2. Add VTable verifier.
3. Tracing BC supports typed path.
4. Add options for several pass.
5. Add options to select compiler methods or skip compiler methods.

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

Signed-off-by: dingding <dingding5@huawei.com>
Change-Id: Iffdd54b5cb34efe93cbec77ea4a9aa2feb8fbcbd
2023-05-09 07:11:57 +08:00
huoqingyi
19ade57ed9 Support typeinfer for namespace
Issue:
https://gitee.com/openharmony/arkcompiler_ets_frontend/issues/I6YMZV

Tests:
typeinfer test, aot test

Signed-off-by: huoqingyi <huoqingyi@huawei.com>
Change-Id: I7b23bad765e410ebbce9e574ee86034887dac2f0
2023-05-06 15:38:29 +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
hzzhouzebin
0651538873 Rename CLI params for jsvm and ark_aot_compiler
Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I6XL7E
Signed-off-by: hzzhouzebin <zhouzebin1@huawei.com>
Change-Id: I751d08d99e08acda7d0fea7094967029d1e19934
2023-04-25 10:58:34 +08:00
lijincheng
b4b26de43e Type infer and transfer between multiple files
1.Collect import info and export info at the level of type infer based on module manager and bytecodes
2.Add topological Sort for Records in compilerdriver
3.Improve the compatibility of pgo update in compilerdriver
4.Add infer strategy for ldexternalmodulevar

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

Signed-off-by: lijincheng <lijincheng13@huawei.com>
2023-04-21 16:36:32 +08:00
yingguofeng@huawei.com
a6ddc25b6e feat>(compiler): PGO type profiler
1、PGO Support type profiler for asm interpreter
    2、Optimization function call profiler
    3、ap version promote to 0.0.0.2
    4、Adaptor number speculative phase supporting pgo type

link #I6JPH4

Change-Id: I18043c4f99af93e5ba6eb2e895039fe0edfe5b4e
Signed-off-by: yingguofeng@huawei.com <yingguofeng@huawei.com>
2023-03-30 20:39:06 +08:00
changjiaxing
4299c8f877 Fix bug on card dragging
issues:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I6PLGA?from=project-issue

Signed-off-by: changjiaxing <changjiaxing2@huawei.com>
Change-Id: I098fc30d850e69b4fc6e6b2197ac735c944829c7
2023-03-23 17:25:23 +08:00
xujie
2fb2b644cc Support TSAOT Inlining SR
Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I6MLA9

Signed-off-by: xujie <xujie101@huawei.com>
Change-Id: Ia7188f0adf59f6227d78a6de3b1a82f34c7e536e
2023-03-13 19:19:29 +08:00
DaiHN
9a0f0ea1f5 Fix the way to get current hap's record format
------------------------------
issue : https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I6LD9H?from=project-issue

Signed-off-by: DaiHN <daihuina1@huawei.com>
Change-Id: I7d31218e31d22393b03addadb2366e0069833027
2023-03-09 20:24:22 +08:00
lijincheng
1da20bdc7f Add type coverage statistics and partial compilation strategy based on coverage
1.Type infer will record gates which should be inferred and gates which are still any type after infer
2.Methods whose type coverage is lower than threshold will be stopped after type infer

issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I6BPRC

Signed-off-by: lijincheng <lijincheng13@huawei.com>
2023-03-06 10:04:51 +08:00
wuzhefeng
f7c3e927eb Reformat the help information
Reformat the help information and provide more friendly help.

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

Signed-off-by: wuzhefeng <wuzhefeng1@huawei.com>

Change-Id: Ic247f60155b47763f705b01a176afc340aab6c80
2023-02-27 03:58:19 -08:00
zhouzebin
07ae251fd6 fix long path in windows for aot
Issue: https://gitee.com/openharmony/arkcompiler_ets_frontend/issues/I6FNWW
Signed-off-by: zhouzebin <zhouzebin1@huawei.com>
Change-Id: Iade38b63478c9341cf19e91f9fb87d81f407fbe1
2023-02-21 20:08:31 +08:00
wuzhangda
66f8591771 Deopt Dump
Add deopttype to Deoptimizier::Dump and cpu-profiler information.

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

Signed-off-by: wuzhangda <wuzhangda@huawei.com>
Change-Id: Icbc9d8d96c950c3f3603153189048477ee672be1
2023-02-06 17:21:09 +08:00
linxiang8
7a9ae32aa7 fix cpu profiler message and support option to control interpreter, runtime tag
Signed-off-by: linxiang8 <linxiang8@huawei.com>
Change-Id: I5cedf2771ddc23c878bb64544d37d099242c781e
2023-01-31 15:38:31 +08:00
linxiang8
6887d74aa0 add cpu profiler properties
Signed-off-by: linxiang8 <linxiang8@huawei.com>
Change-Id: I35ab6c01cb84c4b7bc007cd2f6bd7cef3015b514
2023-01-29 11:40:13 +08:00
yingguofeng@huawei.com
08ebbbd51e feat(dfx): memory leak check tools
Add primitive global check tools

link #I6AXM7

Change-Id: I2b5e947145520a100dcdbd3c00957f421d37b24f
Signed-off-by: yingguofeng@huawei.com <yingguofeng@huawei.com>
2023-01-18 14:22:56 +08:00
武万琦
3298af46f6 Merge branch 'master' of gitee.com:openharmony/arkcompiler_ets_runtime into 0111_br
Signed-off-by: 武万琦 <wuwanqi2@huawei.com>
2023-01-17 01:39:33 +00:00
武万琦
ec61342879 Merge branch 'master' of gitee.com:openharmony/arkcompiler_ets_runtime into 0111_br
Signed-off-by: 武万琦 <wuwanqi2@huawei.com>
2023-01-16 01:42:46 +00:00
wuwanqi
98f75e0870 Optimize idle gc interface
add some conditions to trigger gc
issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I68KDE?from=project-issue

Signed-off-by: wuwanqi <wuwanqi2@huawei.com>
Change-Id: I9c8876eef1d6c40988159c6786080474a8365590
2023-01-16 09:39:54 +08:00
yingguofeng@huawei.com
9bb1032e92 feat(heap): Heap leak check optimization
link #I6AAWA

Change-Id: Ied49456be4d75c9373f80c0968ee632c03ef6509
Signed-off-by: yingguofeng@huawei.com <yingguofeng@huawei.com>
2023-01-13 09:35:29 +08:00
g00416891
1e7481bba8 Remove unused framework abc variables
Signed-off-by: g00416891 <guobingbing3@huawei.com>
Change-Id: Ifa7a18bfd4d36ff7d9140c30bcc45064d3bf5f27
2023-01-12 10:36:53 +08:00
g00416891
fa5b47c71a Explicit only works on single-argument constructor
Signed-off-by: g00416891 <guobingbing3@huawei.com>
Change-Id: Ia9bfc1e905962127d2afea6adb21704d4f0cd6d0
2023-01-03 11:06:16 +08:00
Gymee
29777fc3ab Fix code style
Issue: #I67JM7
Signed-off-by: Gymee <yumeijie@huawei.com>
2022-12-26 19:50:46 +08:00
ding
fce1ea92d0 Add tool: OptCodeProfiler
Add new compiler performance analysis tool -- OptCodeProfiler to obtain
Runtime Statistics of ByteCodes which handled with optimized code.

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

Signed-off-by: ding <dingding5@huawei.com>
Change-Id: Ic0046c5bda8472b07c3999ee8fe5738a5155e277
2022-12-20 11:47:34 +08:00
xujie
b6d01825e0 Support skip aot function where too many deopts occur
Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I662CB
Signed-off-by: xujie <xujie101@huawei.com>
Change-Id: Ie7195f725ee4cd4b917e436046e9faafcbf8e84b
2022-12-14 10:21:23 +08:00
Hailiang Hu
8aff571306 aot support multi hap in one vm
1. store map table of an file name, as to find an file index.
2. load aot file after hap package extracted, before LoadJsModule.
3. update runtest tool, support pack of hap by module name read from module.json.
4. update runtest tool, simplify PGO with builtin types compiling command.

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

Signed-off-by: Hailiang Hu <allenpas@huawei.com>
Change-Id: I6619dd39f1b8efe41accee74276d9e9102bd0f07
2022-12-10 16:33:05 +08:00
jing_han
30b4a27aed Modifying Code Alarms
Signed-off-by: jing_han <hanjing35@huawei.com>
issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I63I56
2022-11-28 19:48:29 +08:00
zhaozhibo
5e4853b54b Merge branch 'master' of gitee.com:openharmony/arkcompiler_ets_runtime into master
Signed-off-by: zhaozhibo <zhaozhibo3@huawei.com>
2022-11-28 02:01:20 +00:00
zhaozhibo
0837d2ab3e fix code warnings
Signed-off-by: zhaozhibo <zhaozhibo3@huawei.com>
2022-11-28 10:00:41 +08:00
songzhengchao
ac5f1fd688 clean code
Signed-off-by: songzhengchao <songzhengchao@huawei.com>
Change-Id: Idfc4ea5c931e99b6008da3f24758d6411b0f88f3
2022-11-25 17:38:05 +08:00
songzhengchao
6994c71849 deopt debug info
In order to deopt debug, thus need add debug info, add bc print

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

Signed-off-by: songzhengchao <songzhengchao@huawei.com>
Change-Id: Icd1487800045f39e4b46eb6d852da0e3d5e05d13
2022-11-25 14:44:53 +08:00
Riachel
e7056b7d44 Descriptor:move help msg from head file to cpp file
details:move help msg from head file to cpp file
issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I62JRK

Signed-off-by: Riachel <caolili14@huawei.com>
2022-11-22 10:54:39 +00:00
K0u1hw
f99fc20a88 description: update log for time snapshot and optimizer
details: 1. add log for optimizer.
         2. add totol time log for compiler-log-time.
         3. time-log of one method in each pass only for certain mode.
         4. add flag compiler-log-snapshot for enable or disable snapshot log.
issues: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I61RCC
Signed-off-by: K0u1hw <wangchunyang15@huawei.com>

Change-Id: I7f74c31ee333c8636d050cbe1fbc56dd1ab04b1b
2022-11-18 16:48:14 +08:00
leixin
5d5d1c7d68 Add log for compiler time
Signed-off-by: leixin <leixin19@huawei.com>
Change-Id: Ifbe70ee38adff75309164e56bcc5e6711e11b1c9
2022-11-10 21:05:29 +08:00
yingguofeng@huawei.com
3d7a083324 feat/perf(aot/compiler/asm-interpreter): compiler supports PGO optimization
1、The JS runtime counts the number of function calls and records the methodID with fewer calls.
2、The AOT compiler supports filtering the unexpected functions according to the profile file without AOT.

Closes #I5W57I

Change-Id: Ie6f7c9d2132b16a95b4b9ed84cb4ef67332b7604
Signed-off-by: yingguofeng@huawei.com <yingguofeng@huawei.com>
2022-10-24 17:49:12 +08:00