首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明公布】一种申威Go编译器基于跳转指令的寻址方法_无锡先进技术研究院_202410383861.6 

申请/专利权人:无锡先进技术研究院

申请日:2024-04-01

公开(公告)日:2024-06-14

公开(公告)号:CN118193059A

主分类号:G06F9/355

分类号:G06F9/355;G06F8/41

优先权:

专利状态码:在审-实质审查的生效

法律状态:2024.07.02#实质审查的生效;2024.06.14#公开

摘要:本发明公开了编译器技术领域的一种申威Go编译器基于跳转指令的寻址方法,旨在解决现有技术在性能和效率上有待提升的问题。包括:获取源码,将源码翻译为二进制机器代码,得到待链接的二进制文件;根据待链接的二进制文件计算符号相对于指令所在地址的偏移量;根据偏移量进行带重定位指令的地址回填,完成链接;计算符号相对于指令所在地址的偏移量包括:判断符号类型,若符号是全局符号,则计算其对应的全局符号在全局偏移表GOT中相对的偏移量;否则,则计算其对应的局部符号地址相对的偏移量。本发明无需在函数入口和调用后发射额外指令,同时可以解放一个通用寄存器,通过跳转指令获取当前指令地址,能够有效提高应用程序的执行性能。

主权项:1.一种申威Go编译器基于跳转指令的寻址方法,其特征在于,包括:获取源码,将所述源码翻译为相应的二进制机器代码,得到待链接的二进制文件;根据所述待链接的二进制文件,计算符号相对于指令所在地址的偏移量;根据所述偏移量,进行带重定位指令的地址回填,完成链接,生成可执行文件或者库文件;所述将所述源码翻译为相应的二进制机器代码包括:在降级阶段判断符号类型,若所述符号是全局符号,则指令降级,生成立即数指令LDIH与BRRELGOT重定位、访存指令LOAD与GOTLO重定位;所述符号不是全局符号,则指令降级,生成立即数指令LDIH与BRRELHI重定位、立即数指令LDI与ADDRLO重定位;所述计算符号相对于指令所在地址的偏移量包括:判断符号类型,若所述符号是全局符号,则计算其对应的全局符号在全局偏移表GOT中相对的偏移量;所述符号不是全局符号,则计算其对应的局部符号地址相对的偏移量。

全文数据:

权利要求:

百度查询: 无锡先进技术研究院 一种申威Go编译器基于跳转指令的寻址方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。