# OpenArkCompiler **Repository Path**: HesenjanJava/OpenArkCompiler ## Basic Information - **Project Name**: OpenArkCompiler - **Description**: 方舟编译器开源代码官方主仓库 - **Primary Language**: C++ - **License**: Not specified - **Default Branch**: master - **Homepage**: https://www.openarkcompiler.cn - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1360 - **Created**: 2020-01-08 - **Last Updated**: 2024-11-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # OpenArkCompiler ## 概述 ----------------- > 面向多设备、支持多语言的统一编程平台。 OpenArkCompiler是来自华为方舟编译器的开源项目。 ### OpenArkCompiler 四个技术特点 ### 能够将不同语言代码编译成一套可执行文件,在运行环境中高效执行: - 支持多语言联合优化、消除跨语言调用开销; - 更轻量的语言运行时; - 软硬协同充分发挥硬件能效; - 支持多样化的终端设备平台 ## 开源计划 **编译器框架代码开源** - 时间:2019年8月 - 开源范围:编译器IR+中端语言实现 - 开放能力: - 框架开源供参考学习,了解方舟编译器架构及框架代码 - 开发者可构建出完整编译器工具链,支持Java Sample程序编译(非应用) **后续开源范围** 陆续开源编译器前端、后端、编译优化;完整支持Java程序编译、JavaScript语言应用的编译等。 **计划持续更新...** ## 相关文档 - 架构设计原理 - [MAPLE IR Design](doc/en/MapleIRDesign.md) - [RC API](doc/cn/RC_API.md) - [Naive RC操作插入原理](doc/cn/Naive_RC_Insertion_Description.md) - [虚函数表和接口函数表设计介绍](doc/cn/Vtable_Itable_Description.md) - [Phase设计介绍](doc/cn/Compiler_Phase_Description.md) - [环境配置](doc/cn/Development_Preparation.md) - [开发者指南](doc/cn/Developer_Guide.md) - [编程规范](doc/cn/Programming_Specifications.md) ## 许可证 - [LICENSE](license/LICENSE) ## Overview ----------------- > Unified programming platform supporting multiple devices and languages OpenArkCompiler 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. **Updating...** ## Related Documents - Architecture Design Principles - [MAPLE IR Design](doc/en/MapleIRDesign.md) - [RC API](doc/en/RC_API.md) - [Naive RC Insertion Principle](doc/en/Naive_RC_Insertion_Description.md) - [Virtual Table and Interface Table Design](doc/en/Vtable_Itable_Description.md) - [Phase Design](doc/en/Compiler_Phase_Description.md) - [Environment Configuration](doc/en/Development_Preparation.md) - [Developer Guide](doc/en/Developer_Guide.md) - [Programming Specifications](doc/en/Programming_Specifications.md) ## License - [LICENSE](license/LICENSE)