摘要
精简指令集计算机架构处理器的指令长度固定,须借助常量池完成复杂指令集计算机架构处理器常见的长跳转指令功能。针对国产嵌入式CPU C-SKY的地址立即数管理问题,提出一种基于C-SKY CPU的优化方法。在编译阶段对地址立即数进行有效性验证,对符合条件的地址立即数进行拆分并提取出公共的基地址,减少内存访问指令的生成。通过对不同函数之间的地址立即数共享,进一步降低内存消耗。实验结果表明,对于驱动程序类程序,该方法能减少3.77%的生成代码。
As Reduced Instruction Set Computer(RISC) architecture processors generally use fixed4 ength 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%.
出处
《计算机工程》
CAS
CSCD
北大核心
2016年第1期46-50,共5页
Computer Engineering
基金
"核高基"重大专项"高性能嵌入式CPU关键技术研究"(2010ZX01030-001-001-002)
关键词
精简指令集计算机
地址立即数
代码密度
嵌入式系统
编译优化
Reduced Instruction Set Computer(RISC)
address immediate value
code density
embedded system
compiling optimization