论文部分内容阅读
在向用户提供以微处理器为核心的软硬件开发平台时,需要开发出相应的编译工具链?由于编译器的原理复杂,开发周期长,成本高,开发全新编译器需要付出高昂的代价,满足不了嵌入式系统开发对市场快速变化的要求,所以通常采用成熟的目标可重定位的编译器框架,针对目标处理器的体系结构进行移植,生成所需的编译器?GCC是嵌入式领域应用最广泛的编译器,它具有源代码开放,结构清晰,支持平台众多等优点,具有很好的可移植性,是嵌入式开发的首选编译器?本文基于GCC编译器框架,针对我国具有自主知识产权的处理器ARCA3,利用GCC的目标可重定位特性,探索GCC的移植原理和方法,生成适用于ARCA3的编译器?移植过程分为GCC编译系统结构分析,ARCA3体系结构分析?GCC后端移植实现和测试三个部分?首先,从整体架构上对GCC编译器进行分析,重点在与目标机器移植相关的后端分析上,明确了移植需要修改的内容?其次,从编译器移植的角度对ARCA3体系结构进行分析,定义了一组应用二进制接口,归纳了GCC后端移植所需ARCA3体系结构的信息?接着,结合GCC后端移植机制与ARCA3体系结构,从整数指令集中精心挑选出35条指令,组成一个完备的子集,按照功能作用分层次?逐步递进地进行GCC的后端移植工作,最后,对移植后GCC进行了测试和验证,移植结果正确,达到预期ARCA3编译器的目标?本文的工作方法和结果对其它体系结构的编译器移植也有很好的参考价值?