[发明专利]代码编译的方法、装置、电子设备以及服务器在审

专利信息
申请号: 202011595414.5 申请日: 2020-12-29
公开(公告)号: CN112558984A 公开(公告)日: 2021-03-26
发明(设计)人: 胡岳伟;吴价;刘圆圆 申请(专利权)人: OPPO广东移动通信有限公司
主分类号: G06F8/41 分类号: G06F8/41
代理公司: 深圳市智圈知识产权代理事务所(普通合伙) 44351 代理人: 苗燕
地址: 523860 广东*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 代码 编译 方法 装置 电子设备 以及 服务器
【权利要求书】:

1.一种代码编译的方法,其特征在于,应用于服务器,所述方法包括:

获取操作系统中待编译的源码;

调用第一编译模块将所述源码编译为中间字节码;

基于所述中间字节码,生成指定格式的中间代码,所述指定格式为第二编译模块的输入数据对应的格式,所述第二编译模块为LLVM编译模块;

调用所述第二编译模块将所述中间代码编译为机器码。

2.根据权利要求1所述的方法,其特征在于,所述基于所述中间字节码,生成指定格式的中间代码,包括:

创建LLVM基本块;

基于所述LLVM基本块,生成与所述中间字节码对应的指定格式的中间代码。

3.根据权利要求2所述的方法,其特征在于,所述创建LLVM基本块,包括:

遍历所述中间字节码中的每个基本块,针对每个基本块创建对应的LLVM基本块;

其中,若存在第一基本块则在所述第一基本块对应的LLVM基本块中创建存储区域,所述第一基本块为中间字节码中存在操作数栈的基本块;

若存在第二基本块则在所述第二基本块对应的LLVM基本块中创建存储区域,所述第二基本块为中间字节码中存在局部变量的基本块。

4.根据权利要求3所述的方法,其特征在于,所述基于所述LLVM基本块,生成与所述中间字节码对应的指定格式的中间代码,包括:

将所述中间字节码中的每个基本块中的子代码转换为各自对应的指定格式的子代码,所述子代码包括操作数栈、局部变量以及方法代码中的至少一个;

将每个所述基本块各自对应的指定格式的子代码写入到,每个基本块各自对应的LLVM基本块中,得到每个基本块对应的写入有子代码的LLVM基本块;

基于每个基本块对应的写入有子代码的LLVM基本块得到指定格式的中间代码。

5.根据权利要求1-4任一所述的方法,其特征在于,所述第一编译模块编译得到的中间字节码为第一字节格式的中间字节码,所述基于所述中间字节码,生成指定格式的中间代码,包括:

获取目标编译条件;

若所述中间字节码与所述目标编译条件匹配,基于所述中间字节码,生成指定格式的中间代码;

若所述中间字节码与所述目标编译条件不匹配,将所述中间字节码转换为第二字节格式的中间字节码;

基于所述第二字节格式的中间字节码,生成指定格式的中间代码。

6.根据权利要求5所述的方法,其特征在于,所述第一字节格式的中间字节码为class字节码,所述第二字节格式的中间字节码为dex字节码。

7.根据权利要求1-4任一所述的方法,其特征在于,调用所述第二编译模块将所述中间代码编译为机器码,包括:

获取目标平台,所述目标平台为所述运行所述机器码的平台;

调用所述第二编译模块将所述中间代码编译为所述目标平台对应的机器码。

8.一种代码编译的装置,其特征在于,运行于服务器,所述装置包括:

源码获取单元,用于获取操作系统中待编译的源码;

第一编译单元,用于调用第一编译模块将所述源码编译为中间字节码;

中间代码生成单元,用于基于所述中间字节码,生成指定格式的中间代码,所述指定格式为第二编译模块的输入数据对应的格式,所述第二编译模块为LLVM编译模块;

第二编译单元,用于调用所述第二编译模块将所述中间代码编译为机器码。

9.一种服务器,其特征在于,包括一个或多个处理器、视频编解码器以及存储器;

一个或多个程序,其中所述一个或多个程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行权利要求1-7任一所述的方法。

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有程序代码,其中,在所述程序代码运行时执行权利要求1-7任一所述的方法。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于OPPO广东移动通信有限公司,未经OPPO广东移动通信有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202011595414.5/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top