论文部分内容阅读
随着计算机技术和Internet的飞速发展,新型嵌入式系统正朝着信息家电IA和3C(Computer Communication&Consumer)产品方向发展,广泛的应用于工业控制、通信、仪器仪表和家用消费等领域。嵌入式技术和设备的应用在我国国民经济和国防建设的各个方面存在着广泛的应用领域,有着巨大的市场。可以说它是信息技术的一个新的发展,是信息产业的一个新的亮点。 嵌入式系统本身不具备自举开发能力,必须有交叉编译开发工具和环境才能进行开发。同时,嵌入式系统的特殊产品特征要求软件具有较小代码长度和较快执行速度,因此对相应的软件开发工具有更高的要求。以Linux为主机操作系统,搭配一个交叉编译系统,为嵌入式设备生成可执行程序已成为现在日益流行的编译嵌入式软件的解决方案。而开放源码的编译器GCC,经过多年的发展,已能支持几乎所有知名厂商的处理器,而且优化性能突出,是嵌入式软件开发中理想的交叉编译器。 本论文以嵌入式系统编译器ZLTCC的开发为背景,详细介绍了GCC的体系结构,对其高度可移植性所依赖的中间表示、机器描述技术和后端优化技术进行深入研究,并在此基础上完成了GCC在目标机MIPS-X上的移植和优化工作。而且根据新目标机的特点,通过指令拆分、延时槽调度、寄存器分配和窥孔优化等技术使得生成的目标代码更加紧凑,目标代码大约缩小了10%,同时性能也得到大幅度的提高。 论文首先概述了嵌入式系统的发展对编译器提出的更高要求和代码的优化,然后介绍了编译器系统ZLTCC的开发背景。第二章简要介绍了编译器的自动生成和优化技术。第三章详细分析了GCC的设计思想,系统结构,后端自动生成器、中间语言,机器描述机制、后端生成过程及优化技术。第四章详细介绍了移植GCC的思路和方法、目标机器的体系结构及其应用二进制接口,并就移植的过程实例及移植过程中的难点问题和优化等技术问题进行了深入的探讨,并给出了移植成功后的结果。最后是一点总结和展望。