Commit Graph

233 Commits

Author SHA1 Message Date
ginxu
9547f8b3bd Remove ConstData
1. Remove constadata to prevent node from entering entry bb

Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I7BDJV
Signed-off-by: ginxu <xujie101@huawei.com>
Change-Id: I1d9f799150cec3f895b82866b1251145fdda713c
2023-06-08 11:54:16 +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
yingguofeng@huawei.com
cca4ba8fe4 Feat(PGO): PGO Support profile number type of object field
Issue: #I739C3
Change-Id: Ie57b6174d7b68121e81b72ffd8d71ec1b0d5f80f
Signed-off-by: yingguofeng@huawei.com <yingguofeng@huawei.com>
2023-05-24 15:36:53 +08:00
wupengyong
c0fa165ab0 Reason:add fast call and change calling conversion to cc
Description:add fast call and change calling conversion to cc
Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I6TTCX?from=project-issue

Signed-off-by: wupengyong <wupengyong@huawei.com>
Change-Id: I7c35619d73a4d961799232bc22b78b6513f65e71
2023-05-18 19:23:25 +08:00
ginxu
d88428b060 Some TsAot Inline Modification
1. Resolves conflicts between inline and loop optimizations
2. Adds an inline target check to prevent changes
3. Modify the framestate metadata structure
4. Add inline testcase

ISSUE:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I73MZY

Signed-off-by: ginxu <xujie101@huawei.com>
Change-Id: I4256b3edce3e901afb67d48b0e649f39f6c251a4
2023-05-18 11:24:10 +08:00
sunzhe23
495983e5d2 Refactor State split,add state split linearizer
Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I73OTM

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2023-05-17 09:30:03 +08:00
K0u1hw
87cdd57714 Description: Loop Analysis & Loop Peeling
Issues: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I71TRP
Signed-off-by: K0u1hw <wangchunyang15@huawei.com>

Change-Id: I9e8981b9b87679135edd11206e300411c4459eea
2023-05-13 14:58:49 +08:00
sunzhe23
2505d71290 Optimize UpdateHotness
remove unused UpdateHotness, add TypeConvert/Constant convert

Issue: https://e.gitee.com/open_harmony/dashboard?issue=I703O9

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2023-05-08 17:56:47 +08:00
dingding
71fa18c9fd Fix FrameState ComputeLiveOut
1.Fix FrameState ComputeLiveOut when mov alive null gate, should find define.
2.Fix error READ_ACC flag between RETURN and RETURNUNDEFINED
3.Add regression test case

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

Signed-off-by: dingding <dingding5@huawei.com>
Change-Id: I2e3aa8b293abb63ed8f1f2cd42244d95a0c2081b
2023-04-27 19:16:57 +08:00
weng-xi
3e37a79f72 Fix the bug that the Phi node is not generated
If the loop head is the first bb block, the variables used in the head cannot correctly generate Phi node

Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I6Y4JU
Signed-off-by: weng-xi <wengxi1@huawei.com>
Change-Id: I57927992e19ef9c53c598197609a17ba69b6f3ff
2023-04-24 11:14:09 +08:00
weng-xi
02f07cb331 Fix the compilation bug in the process of bytecode to circuit
When there is only one predecessor (input) of the BB, the value_selector gate is no longer generated.
However, the logic of frame_state.cpp was not modified, resulting in compilation failure

Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I6X14O
Signed-off-by: weng-xi <wengxi1@huawei.com>
Change-Id: Icbcec395e66b68ab372894032f9dae709a0b864b
2023-04-20 19:05:50 +08:00
linxiang8
050c261457 Fix some compiler bug
Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I6VU0D

Signed-off-by: linxiang8 <linxiang8@huawei.com>
Change-Id: I72c99ec297f6dbc06a2c75b23af67565d105efc3
2023-04-18 15:18:10 +08:00
openharmony_ci
c71c5b83b9
!3877 async generator & for-await-of aot adapt
Merge pull request !3877 from maojunwei/async_aot
2023-04-17 01:59:51 +00:00
dov1s
946c4b08f1 Async generator & for-await-of AOT adapt
Issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I6T82W

Signed-off-by: dov1s <maojunwei1@huawei.com>
Change-Id: I27db458545b09d50a71c92640f4e8e4c2dfd4277
2023-04-14 16:57:16 +08:00
sunzhe23
f717c511ce Add loop exit for loop peeling
Issue: I6QTH5
Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2023-04-04 18:17:50 +08:00
openharmony_ci
47e1932b58
!3844 [Inline Call part3] Remove Aot Function Env Arg
Merge pull request !3844 from 许杰/inline_call_part3
2023-03-31 07:01:00 +00:00
xujie
14878d00f9 [Inline Call part3] Remove Aot Function Env Arg
1. Remove env in aot call signature.
2. Remove env in optimizedJSFunctionFrame.
3. Modify x64 and arm64 asm bridge.

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

Signed-off-by: xujie <xujie101@huawei.com>
Change-Id: I5fbb63c662d82a41073e2ff4456fdc42fb651f6a
2023-03-31 09:36:42 +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
xujie
6d377f01d8 [Inline Call part2] Refactor Common Args Accessor
1. Modify JSBytecode and FramState opcode which have framestate in.
2. Changes the way common args are fetched during lowering.
3. Common args are no longer fetched from the stack during deopt.

Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I6L28B
Signed-off-by: xujie <xujie101@huawei.com>
Change-Id: I1e26ad526209f27edc42aa2a5f364b1566ed4d26
2023-03-28 10:27:30 +08:00
xujie
a7e31a9987 [Inline Call part1] Env Refactor
1. Remove env slot from optimizedJSfunctionframe.
2. Use env vreg to pass in circuit ir graph.
3. Remove some discarded interface and fast some bc lowering associated with env.

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

Signed-off-by: xujie <xujie101@huawei.com>
Change-Id: I34d65b59e103e9c8d3b203dbf82b8f2bea7e9feb
2023-03-04 16:12:22 +08:00
zhangyukun8
62a3e35295 AOT support js stacktrace
1. add pcOffset into stackmap before call In AOT
2. parse stackmap to find pcOffset before any OptimziedJSFunctionFrame
3. remove use code of stubs in AOT
4. add testcase for js stacktrace of AOT

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

Signed-off-by: zhangyukun8 <zhangyukun8@huawei.com>
Change-Id: Ib21646b7319628fb425ac8ce489dc2370a347b81
2023-03-03 10:08:54 +08:00
lijincheng
0e4b8b5a72 Improve TypeInfer ability through cocos-test
1.Refine some number Type to Int
2.Bugfix for stlexvar when using var instead of let
3.Change .length of array/typedarray to int
4.Adjust strategy for loop phi infer and add another round of infer
5.Refine div/add to double
6.Bugfix for EmptyType GetException in catch phi with a gc-related type

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

Signed-off-by: lijincheng <lijincheng13@huawei.com>
2023-02-25 10:53:48 +08:00
sunzhe23
e00e3e3643 Simplifield circuit graph
1 delete dependAnd
2 Refactor ReplaceHirXXX
3 add no throw flag for bc meta data

issues:#I6EO24

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2023-02-14 16:46:19 +08:00
孙哲
1ea9960563
回退 'Pull Request !3526 : Simplifield circuit graph [part-1]' 2023-02-11 04:00:37 +00:00
sunzhe23
486f8172ff Simplifield circuit graph [part-1]
1 delete dependAnd
2 Simplifield ReplaceHirWithValue for slowPathLowering
3 add no throw flag for bc meta data

issues: #I6DSC4

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2023-02-09 15:41:03 +08:00
K0u1hw
f16ff2a015 description: update hotness counter for AOT
issues: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I6DDSA
Signed-off-by: K0u1hw <wangchunyang15@huawei.com>

Change-Id: I1094ac0d31cb466cbabd6159faf150a507652635
2023-02-09 10:08:19 +08:00
K0u1hw
8fb448b411 description: revet refactor of restore_regisiter op
issues: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I6B2W8
Signed-off-by: K0u1hw <wangchunyang15@huawei.com>

Change-Id: I888e424838b03c201d9894c2526e977b4b8ccf97
2023-01-19 14:00:43 +08:00
sunzhe23
0d091e0174 Remove unnecessary IfException gate
issues: #I6AC05

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2023-01-13 09:26:25 +08:00
sunzhe23
3a1bffc5bb Add GateFlags for gate
add depend out for checkable gate

issues:#I69H30

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2023-01-09 23:05:06 +08:00
xujie
9216afe8c0 Bugfix for type mismatch of llvm phi caused by async
Change restore_register op gateType.

Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I697DC
Signed-off-by: xujie <xujie101@huawei.com>
Change-Id: Ibe89b2bcd4f3b872d35257efde6475185f849205
2023-01-06 15:15:08 +08:00
wengchangcheng
2cdbecaeb9 Descriptor: Encapsulate some interface in PandaFile
Details: Encapsulate GetStringData and use JSPandafile instead of File

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

Signed-off-by: wengchangcheng <wengchangcheng@huawei.com>
Change-Id: Ied940326ea2913337db013e1ab1bf57b6f56162b
2023-01-03 15:16:51 +08:00
jing_han
d9848ec417 Modifying Code Alarms
Signed-off-by: jing_han <hanjing35@huawei.com>
issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I67LC1
2022-12-27 10:34:53 +08:00
ginxu
e0c5559ed5 Refactor save register and restore register
Merge the original save and restore nodes

Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I675H0
Signed-off-by: ginxu <xujie101@huawei.com>
Change-Id: I1e1535d31a0012b727c346ab972a585fa4f0683e
2022-12-23 15:13:33 +08:00
jing_han
da126491f0 Modifying Code Alarms
Signed-off-by: jing_han <hanjing35@huawei.com>
issue:https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I64MJ0
2022-12-05 15:27:03 +08:00
openharmony_ci
70fdf5614d
!3126 Refactor Gate verify
Merge pull request !3126 from 孙哲/master
2022-12-01 12:57:27 +00:00
sunzhe23
5000217ed2 Refactor Gate verify
add root verify, delete Gate GetProperties
issues:I645J7

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2022-12-01 16:55:19 +08:00
linxiang
31dbc9a4e3 add log fatal before unreachable
Signed-off-by: linxiang <linxiang8@huawei.com>
Change-Id: I272f5c052e58a1067528893d857dbd460e2d4d86
2022-12-01 16:30:13 +08:00
sunzhe23
812f607fbc Support Gate MetaData
replace gate GetProperties with gate meta data.

issues: I63J2D

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2022-11-30 17:52:21 +08:00
Gymee
45bbb6cbf5 remove redundant spaces between operator
Issue: #I63MCO
Signed-off-by: Gymee <yumeijie@huawei.com>
Change-Id: Ifd1d4768a2f96d618e991e07fc0b7a516c5965af
2022-11-29 11:47:32 +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
sunzhe23
44ec9b0743 Support Ts inline [Part 2]
add this param as input of hir gate

issues:I61N3S

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2022-11-28 09:26:23 +08:00
huangzhenghua
2b03d70271 clean alarm
Signed-off-by: huangzhenghua <huangzhenghua3@huawei.com>
Change-Id: Ibe52bcaec35aecbc9cdf56bd9d1734adb94b8b7b
2022-11-25 17:19:44 +08:00
zhaozhibo
03b3f7c09b fix code warnings
Signed-off-by: zhaozhibo <zhaozhibo3@huawei.com>
2022-11-23 17:30:51 +08:00
weng-xi
2febfcdd0a Refactor bytecode_info_collector and aot_snapshot
1. Remove useless code about old ISA in bytecode_info_collector
2. Change the location of snapshot-info-collection from ts_manager to bytecode_info_collector
3. Simplify the code logic of pass_manager
4. Fix pdfjs benchmark

Issue: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I61Z1X
Signed-off-by: weng-xi <wengxi1@huawei.com>
Change-Id: I0d5dbc7215b63f54a807e0ae52c6cad5e606566d
2022-11-22 10:54:53 +08:00
K0u1hw
c2acb10807 description: fix condition jump with one succ bug
details: add 2 extandedpreds for next basic block
issues: https://gitee.com/openharmony/arkcompiler_ets_runtime/issues/I61CON
Signed-off-by: K0u1hw <wangchunyang15@huawei.com>

Change-Id: I10bd2dd38fcc4d1b04b72f6a208efbc01701decf
2022-11-16 11:03:53 +08:00
wuzhefeng
65b62d6fc8 Refactor Circuit Construction
There are several inefficient circuit-ir construction operations such that copying the inputs and outputs from Gate and passing them to other vectors, which will slow the compilation speed.

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

Signed-off-by: wuzhefeng <wuzhefeng1@huawei.com>
Change-Id: Ib49fc4946443de8f2b6fedddecfd0d9efda3e96a
2022-11-15 03:42:35 -08:00
huoqingyi
06b071527a Bugfix for typeinfer test
Currently, AOT dose not execute TypeInferPass when performing typeinfer test. We need to fix this.

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

Tests:
typeinfer test

Signed-off-by: huoqingyi <huoqingyi@huawei.com>
Change-Id: Ib007a7ae790f9a9e95fabee4f39ba1e87814f8a9
2022-11-14 23:40:36 +08:00
sunzhe23
74cb27a6bd Fix some code check problem for gate accessor
issues:I60G9S

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2022-11-10 17:58:04 +08:00
sunzhe23
207c143eac Remove optimizing pass dependency on BytecodeCircuitBuilder
issues:I608GB

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2022-11-09 11:52:03 +08:00
sunzhe23
d5529e74ed Remove jsgateToBytecode map,use gate bitfield repace it
and resolve BytecodeCircuitBuilder code check issue

issues: I5Z53Q

Signed-off-by: sunzhe23 <sunzhe23@huawei.com>
2022-11-03 11:26:59 +08:00