[发明专利]计算机可读取存储介质、内存指针的编译方法和装置在审
| 申请号: | 202111030954.3 | 申请日: | 2021-09-03 |
| 公开(公告)号: | CN113721925A | 公开(公告)日: | 2021-11-30 |
| 发明(设计)人: | 霍元宏;章嘉晨;丁阳;王亮 | 申请(专利权)人: | 上海壁仞智能科技有限公司 |
| 主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F9/30;G06F12/06 |
| 代理公司: | 北京市柳沈律师事务所 11105 | 代理人: | 彭久云 |
| 地址: | 201100 上海市闵行区*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 计算机 读取 存储 介质 内存 指针 编译 方法 装置 | ||
本发明涉及一种存储介质、内存指针的编译方法和装置,该编译方法包含:分析编译单元中的内容,用于确定指针操作数和指针形式参数所指向的物理地址空间;为每个能够确定物理地址空间的第一指针操作数和第一指针形式参数更新编译单元中的代码,用于让第一指针操作数和第一指针形式参数携带物理地址空间信息;针对每个不能够确定物理地址空间的第二指针操作数和第二指针形式参数,插入调用编码函数的指令和/或调用解码函数的指令,用于让编译单元被执行时确定第二指针操作数和第二指针形式参数所指向的物理地址空间。本发明通过如上所述的编译方法,当芯片架构中没有支持泛型指针的硬件而软件中使用了泛型指针,软件依然可以正常运行。
技术领域
本发明涉及源码编译,尤指一种计算机可读取存储介质、内存指针的编译方法和装置,用于支持隐含地址空间信息的泛型指针。
背景技术
计算机系统中的内存通常会划分为不同地址空间,比如全局空间(globalspace)、共享空间(shared space)、私有空间(private space)等,以满足不同类型的应用程序访问数据的需要。目前的编程模型允许任意物理地址空间的指针能够转变为泛型指针(generic pointers),同时允许泛型指针能够映射到任意物理地址空间。在硬件运行时,需要决定泛型指针指向哪个特定的物理地址空间。为了支持这种泛型指针的功能,一些芯片会设置专用硬件,用于执行泛型指针的内存访问指令。在内存访问指令执行时,硬件能够动态的解析地址空间信息。例如,芯片架构可以将地址空间进行固定的划分,让不同地址空间使用不重叠的地址范围,使得芯片执行内存访问指令时根据地址范围的差异就能够访问到指定的内存地址空间。然而,专用硬件会增加芯片的硬件开销。在芯片面积和功耗有严格限制的情况下,当芯片架构中没有支持泛型指针的硬件而软件中使用了泛型指针,程序就无法正常运行。因此,本发明提出一种计算机可读取存储介质、内存指针的编译方法和装置,用于支持隐含地址空间信息的泛型指针。
发明内容
有鉴于此,如何支持隐含地址空间信息的泛型指针,是用于计算机系统的重要课题。
本发明涉及一种内存指针的编译方法,包含:分析编译单元中的内容,用于确定编译单元中的指针操作数和指针形式参数所指向的物理地址空间;为每个能够确定物理地址空间的第一指针操作数和第一指针形式参数更新编译单元中的代码,用于让第一指针操作数和第一指针形式参数携带物理地址空间信息;针对每个不能够确定物理地址空间的第二指针操作数和第二指针形式参数,插入用于调用编码函数的指令,或者插入用于调用解码函数的指令,或者插入用于调用编码函数和解码函数的指令,用于让编译单元被执行时确定所述第二指针操作数和所述第二指针形式参数所指向的物理地址空间。
本发明还涉及一种计算机可读取存储介质,用于存储能够被处理器执行的程序代码,并且当程序代码被处理器执行时实现如上所述的内存指针的编译方法。
本发明还涉及一种内存指针的编译装置,包含:存储装置;以及处理器。存储装置用于存储编译单元的源代码。处理器分析编译单元中的内容,用于确定编译单元中的指针操作数和指针形式参数所指向的物理地址空间;为每个能够确定物理地址空间的第一指针操作数和第一指针形式参数更新编译单元中的代码,用于让第一指针操作数和第一指针形式参数携带物理地址空间信息;针对每个不能够确定物理地址空间的第二指针操作数和第二指针形式参数,插入用于调用编码函数的指令,或者插入用于调用解码函数的指令,或者插入用于调用编码函数和解码函数的指令,用于让编译单元被执行时确定所述第二指针操作数和所述第二指针形式参数所指向的物理地址空间。
上述实施例的优点之一,通过如上所述的编译方法,当芯片架构中没有支持泛型指针的硬件而软件中使用了泛型指针,软件依然可以正常运行。
本发明的其他优点将配合以下的说明和附图进行更详细的解说。
附图说明
此处所说明的附图用于提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海壁仞智能科技有限公司,未经上海壁仞智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111030954.3/2.html,转载请声明来源钻瓜专利网。





