期刊文献+
共找到1篇文章
< 1 >
每页显示 20 50 100
面向LoongArch边界检查访存指令的GCC优化
1
作者 舒燕君 郑翔宇 +5 位作者 徐成华 黄沛 王永琪 周凡 张展 左德承 《计算机研究与发展》 北大核心 2025年第5期1136-1150,共15页
为了减少内存安全检查的开销,LoongArch指令集架构引入了边界检查访存类指令.然而,作为一种新的内存访问指令,目前GCC(GNU compiler collection)编译器不支持该类指令,LoongArch硬件能力不能得到充分利用.针对此LoongArch边界检查访存... 为了减少内存安全检查的开销,LoongArch指令集架构引入了边界检查访存类指令.然而,作为一种新的内存访问指令,目前GCC(GNU compiler collection)编译器不支持该类指令,LoongArch硬件能力不能得到充分利用.针对此LoongArch边界检查访存指令改进了GCC编译器,实现利用该类指令优化程序的内存安全检查.具体而言,完成了3个方面的工作:1)设计实现了针对边界检查访存指令的内建函数;2)改进GCC RTL(register transfer language)阶段的优化器,使其能够识别无异常处理和带异常处理2种情况的边界检查访存语义,并自动优化;3)面向LoongArch边界检查访存指令触发的边界检查异常(bound check exception,BCE),设计了新的Linux内核异常信号SIGBCE和相应的运行时库glibc(GNU C library)的信号处理函数,实现了BCE处理.通过在GCC 12.2.0和龙芯3C5000L服务器进行实验,验证了改进后的编译器不仅能正确使用新引入的边界检查访存指令,而且在某些安全函数中带来接近20%的性能提升.完善了LoongArch生态,推进了LoongArch指令集发展,对此类特定指令编译器优化工作有一定的借鉴意义. 展开更多
关键词 编译器优化 LoongArch GCC 边界检查访存 龙芯CPU 异常处理 安全
在线阅读 下载PDF
上一页 1 下一页 到第
使用帮助 返回顶部