Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Himself65/OpenArkCompiler
the source code of OpenArkCompiler(Mirror Repo)
https://github.com/Himself65/OpenArkCompiler
Last synced: about 2 months ago
JSON representation
the source code of OpenArkCompiler(Mirror Repo)
- Host: GitHub
- URL: https://github.com/Himself65/OpenArkCompiler
- Owner: himself65
- Created: 2019-08-30T16:04:57.000Z (about 5 years ago)
- Default Branch: upstream
- Last Pushed: 2021-09-19T05:00:27.000Z (about 3 years ago)
- Last Synced: 2024-08-01T03:31:50.204Z (about 2 months ago)
- Language: C++
- Homepage: https://www.openarkcompiler.cn/home
- Size: 228 MB
- Stars: 687
- Watchers: 42
- Forks: 250
- Open Issues: 6
-
Metadata Files:
- Readme: Readme.md
- License: license/LICENSE
Awesome Lists containing this project
README
# OpenArkCompiler
## Overview
-----------------
> Unified programming platform supporting multiple devices and languagesOpenArkCompiler is Huawei's open source project.
### Four Technical Features of OpenArkCompiler ###
Compiles code of different languages into a set of executable files and efficiently executes the files in the running environment.
- Supports joint optimization of multiple languages and eliminates cross-language calling overhead.
- Achieves lightweight language runtime.
- Collaborates hardware and software to maximize hardware energy efficiency.
- Supports diversified terminal platforms.## Open Source Plan
**Open source compiler framework code**
- Time: August, 2019
- Scope: Compiler IR and middle-end language implementation
- Benefits:
- Provides an open source framework for understanding the architecture and framework code of OpenArkCompiler.
- Allows developers to build a complete compiler toolchain that supports the compilation of Java samples (non-application).**Subsequent open source scope**
Open the front end, back end, and compilation optimization of compilers. Support the full compilation of Java programs and JavaScript applications.|Open Source Scope|March 2020 |May 2020 |
| ------------ | -------------------|--------------------- |
|Front end| Jbc front-end basic framework | Front-end full open source |
|Middle end |Weekly open source optimization phase | |
|Back end |Backend open source (O0) (aarch64)|Weekly open source optimization (O2) (aarch64)|
|Test framework|Test framework and basic Cases| |**Updating...**
## OpenArkCompiler Incubator
- FutureWei Mapleall https://gitee.com/openarkcompiler-incubator/mapleall
- Maple Engine https://gitee.com/openarkcompiler-incubator/maple_engine## Related Documents
- Architecture Design Principles
- [MAPLE IR Design](doc/en/MapleIRDesign.md)
- [RC API](doc/en/RcApi.md)
- [Naive RC Insertion Principle](doc/en/NaiveRcInsertionDescription.md)
- [Virtual Table and Interface Table Design](doc/en/VtableItableDescription.md)
- [Phase Design](doc/en/CompilerPhaseDescription.md)
- [Application Manual of Maple General Modules](doc/en/DeveloperGuide4Utility.md)- [Environment Configuration](doc/en/DevelopmentPreparation.md)
- [Developer Guide](doc/en/DeveloperGuide.md)
- [Programming Specifications](doc/en/ProgrammingSpecifications.md)
- [Discussion of Pointer in C++ Programming](doc/en/CPPCodingTalkAboutPointer.md)
## License
- [LICENSE](license/LICENSE)