mirror of
https://gitee.com/openharmony/arkcompiler_runtime_core
synced 2024-10-07 05:43:39 +00:00
!1898 Add change log for runtime_core
Merge pull request !1898 from huyunhui/changelog
This commit is contained in:
commit
58a1438b51
36
docs/changelogs/2023-12-31-isa-changelog.md
Normal file
36
docs/changelogs/2023-12-31-isa-changelog.md
Normal file
@ -0,0 +1,36 @@
|
||||
# 2023-12-31-isa-changelog
|
||||
|
||||
This document describes change log with the following modifications:
|
||||
|
||||
* Version
|
||||
* Bytecode instructions
|
||||
|
||||
## Version
|
||||
We update version from 9.0.0.0 to 11.0.2.0
|
||||
|
||||
## Bytecode instructions
|
||||
To support the latest class features in ECMAScript2022 and [sendable class](https://gitee.com/openharmony/docs/blob/5bce26d25ceed2417ed862817c97c205593c94d5/zh-cn/application-dev/arkts-utils/arkts-sendable.md), 12 bytecode instructions are added.
|
||||
|
||||
1. To support public fields which will use define semantic instead of set semantic, the following bytecode instructions are added:
|
||||
- definefieldbyname
|
||||
- callruntime.definefieldbyvalue
|
||||
- callruntime.definefieldbyindex
|
||||
|
||||
2. To support private properties in class and access to them, the following bytecode instructions are added:
|
||||
- callruntime.createprivateproperty
|
||||
- callruntime.defineprivateproperty
|
||||
- ldprivateproperty
|
||||
- stprivateproperty
|
||||
|
||||
3. To support `#x in obj` syntax, the following bytecode instruction is added:
|
||||
- testin
|
||||
|
||||
4. To calculate computed property name and get a value which can be used as class property key, the following bytecode instruction is added:
|
||||
- callruntime.topropertykey
|
||||
|
||||
5. To improve the performance of class field initialization, the following bytecode instruction is added:
|
||||
- callruntime.callinit
|
||||
|
||||
6. To support sendable class, the following bytecode instructions are added:
|
||||
- callruntime.definesendableclass
|
||||
- callruntime.ldsendableclass
|
14
docs/changelogs/2024-03-20-isa-changelog.md
Normal file
14
docs/changelogs/2024-03-20-isa-changelog.md
Normal file
@ -0,0 +1,14 @@
|
||||
# 2024-03-20-isa-changelog
|
||||
|
||||
This document describes change log with the following modifications:
|
||||
|
||||
* Version
|
||||
* Bytecode instructions
|
||||
|
||||
## Version
|
||||
We update version from 11.0.2.0 to 12.0.0.0
|
||||
|
||||
## Bytecode instructions
|
||||
To support lazy loading of module variables in sendable class, the following bytecode instructions are added:
|
||||
- callruntime.ldsendableexternalmodulevar
|
||||
- callruntime.wideldsendableexternalmodulevar
|
18
docs/changelogs/2024-05-12-isa.changelog.md
Normal file
18
docs/changelogs/2024-05-12-isa.changelog.md
Normal file
@ -0,0 +1,18 @@
|
||||
# 2024-05-12-isa-changelog
|
||||
|
||||
This document describes change log with the following modifications:
|
||||
|
||||
* Version
|
||||
* Bytecode instructions
|
||||
|
||||
## Version
|
||||
We update version from 12.0.1.0 to 12.0.2.0
|
||||
|
||||
## Bytecode instructions
|
||||
To support using top-level sendable class in other sendable classes as closure variable, the sendable lexical environment is implemented and the following bytecode instructions are added to create and operate it.
|
||||
- callruntime.newsendableenv
|
||||
- callruntime.widenewsendableenv
|
||||
- callruntime.stsendablevar
|
||||
- callruntime.widestsendablevar
|
||||
- callruntime.ldsendablevar
|
||||
- callruntime.wideldsendablevar
|
17
docs/changelogs/2024-05-24-isa-changelog.md
Normal file
17
docs/changelogs/2024-05-24-isa-changelog.md
Normal file
@ -0,0 +1,17 @@
|
||||
# 2024-05-24-isa-changelog
|
||||
|
||||
This document describes change log with the following modifications:
|
||||
|
||||
* Version
|
||||
* Bytecode instructions
|
||||
|
||||
## Version
|
||||
We update version from 12.0.2.0 to 12.0.3.0
|
||||
|
||||
## Bytecode instructions
|
||||
1. To improve the performance of "istrue" and "isfalse" bytecode instructions, the following two bytecode instructions are added as an improved version with ic slot:
|
||||
- callruntime.istrue
|
||||
- callruntime.isfalse
|
||||
|
||||
2. There is a bug in generating "definefieldbyname" bytecode's ic slot number when ic slot number overflows, which leads to a runtime error. To avoid this, the following bytecode instruction is added to replace the above one:
|
||||
- definepropertybyname
|
14
docs/changelogs/2024-05-26-file_format-changelog.md
Normal file
14
docs/changelogs/2024-05-26-file_format-changelog.md
Normal file
@ -0,0 +1,14 @@
|
||||
# 2024-05-26-file_format-changlog
|
||||
This document describes change log with the following modifications:
|
||||
|
||||
* Version
|
||||
* Method name mangling refactoring
|
||||
|
||||
## Version
|
||||
We update version from 12.0.3.0 to 12.0.4.0
|
||||
|
||||
## Method name mangling refactoring
|
||||
To manually calculate the mapping between the function name in the source code and the function name in the bytecode. The way of distinguishing two functions with the same name in different scopes is changed from obtaining hash for scope to adding scope tags and scope names. To maintain abc's size, some long scope names will be put into a literal array and we add a new Field called "scopeNames" whose value points to the literal array for each file.
|
||||
|
||||
For more details about this refactoring, please refer to [arkts-bytecode-function-name.md
|
||||
](https://gitee.com/openharmony/docs/blob/dfc65afed16d888d2c816b31e3fcbe17e725c6a2/zh-cn/application-dev/quick-start/arkts-bytecode-function-name.md)
|
16
docs/changelogs/2024-07-10-isa-changelog.md
Normal file
16
docs/changelogs/2024-07-10-isa-changelog.md
Normal file
@ -0,0 +1,16 @@
|
||||
# 2024-07-10-isa-changelog
|
||||
|
||||
This document describes change log with the following modifications:
|
||||
|
||||
* Version
|
||||
* Bytecode instructions
|
||||
|
||||
## Version
|
||||
We update version from 12.0.5.0 to 12.0.6.0
|
||||
|
||||
## Bytecode instructions
|
||||
To support [lazy import](https://gitee.com/openharmony/docs/blob/3cc4941c35f525895c9710c761d92f1a4d799f11/zh-cn/application-dev/quick-start/arkts-lazy-import.md), the following bytecode instructions are added for loading module variables lazily:
|
||||
- callruntime.ldlazymodulevar
|
||||
- callruntime.wideldlazymodulevar
|
||||
- callruntime.ldlazysendablemodulevar
|
||||
- callruntime.wideldlazysendablemodulevar
|
Loading…
Reference in New Issue
Block a user