摘要: 精简指令集计算机架构处理器的指令长度固定,须借助常量池完成复杂指令集计算机架构处理器常见的长跳转指令功能。针对国产嵌入式CPU C-SKY的地址立即数管理问题,提出一种基于C-SKY CPU的优化方法。在编译阶段对地址立即数进行有效性验证,对符合条件的地址立
即数进行拆分并提取出公共的基地址,减少内存访问指令的生成。通过对不同函数之间的地址立即数共享,进一步降低内存消耗。实验结果表明,对于驱动程序类程序,该方法能减少3.77%的生成代码。
关键词:
精简指令集计算机,
地址立即数,
代码密度,
嵌入式系统,
编译优化
Abstract: As Reduced Instruction Set Computer(RISC) architecture processors generally use fixed-length instructions,they have to perform the function of long jump instruction in Complex Instruction Set Computer(CISC) architecture processors by a literal pool.This paper proposes an optimized method dealing with the management of addresses immediate value in C-SKY CPU.On one hand,the new algorithm validates every constant address,splits the appropriate ones and stores the common base addresses to reduce the number of memory access instructions,on the other hand,by sharing the common base addresses between different functions,the memory consumption can be reduced further.Experimental result shows that to some
drivers,this method can reduce the code size by 3.77%.
Key words:
Reduced Instruction Set Computer(RISC),
address immediate value,
code density,
embedded system,
compiling optimization
中图分类号:
廉玉龙,史峥,李春强,王会斌,尚云海. 基于C-SKY CPU的地址立即数编译优化方法[J]. 计算机工程, doi: 10.3969/j.issn.1000-3428.2016.01.009.
LIAN Yulong,SHI Zheng,LI Chunqiang,WANG Huibin,SHANG Yunhai. Compiling Optimization Method of Address Immediate Value Based on C-SKY CPU[J]. Computer Engineering, doi: 10.3969/j.issn.1000-3428.2016.01.009.