首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到15条相似文献,搜索用时 109 毫秒
1.
随着日前越来越多嵌入式系统的飞速发展,必须快速有效地为之开发合适的交叉编译器。因为GCC(GNU Compiler Collection)是非常优秀的交叉编译器而且具有很好的可移植性,所以移植GCC是一个非常正确的方法。以交叉编译系统ZLTCG的开发为背景,详细分析了交叉编译系统GCC的体系结构,对其高度可移植性所依赖的中间表示和机器描述技术进行了深入研究,并在此基础上阐述了如何基于GCC构造用于嵌入式系统开发的交叉编译器。介绍了GCC的内核和工作机制,特别是RTL(Register Transfer Language)代码和汇编代码的生成以及解释GCC的移植方法和移植实例,对测试方法进行了探讨。  相似文献   

2.
GCC在高性能微处理器DSP和CPU上的移植   总被引:1,自引:1,他引:0  
在分析GCC结构的基础上,总结了GCC在高性能微处理器DSP和CPU上移植的解决方案,并比较了DSP、CPU和RISC结构的处理器在移植上的差别,重点介绍了GCC对DSP和CPU信号处理功能的支持以及指令分组和指令执行分组在GCC中的实现。  相似文献   

3.
嵌入式RISC-V处理器交叉开发生成高质量目标代码的关键是GCC的移植与优化.分析GCC的基本结构和RISC-V体系结构的数据与指令特点,建立GCC后端移植机制,采用机器描述方法,生成32位riscv-none-embed-gcc编译器,实现RISC-V处理器的GCC移植,设计强度削弱的窥孔优化方法解决中间代码生成过程中CPU计算代价高的问题.验证与测试结果表明编译器编译正确并具有通用功能,优化后编译生成的目标代码体积减少约11%,提高了目标代码质量,节省了嵌入式处微理器的存储空间.  相似文献   

4.
在对主流的开源编译系统进行调研的基础上,结合优秀的GCC编译系统与LLVM编译系统,探索了其基础架构与移植方法,并对各自的移植专利风险进行了评估,为处理器厂商开发编译器工具链,完善软硬件开发平台和提升硬件性能提供了新的解决方案.  相似文献   

5.
在手机游戏开发过程中,由于手机设备间的差异,游戏应用程序要支持不同的设备,需要进行相应的移植工作。在实际移植开发过程中总结出一种适合移植开发的框架,此框架利用C语言的预处理指令来定义不同手机设备造成的差异,运用GCC进行预处理生成针对不同机型的代码,从而达到移植的目的。  相似文献   

6.
由于超长指令字处理器通常都有多级流水线和复杂的资源使用限制,如何准确地描述处理器的流水线模型,快速地判断是否存在资源冲突并不是个简单地任务。文章介绍GCC新引入的正则表达式语法的流水线描述机制。在将GCC移植到笔者所开发的SuperV芯片的过程中,利用该机制对SuperV芯片的流水线结构和资源使用限制进行详尽地描述,启动了GCC的指令级并行调度。通过并行调度,测试程序的性能提高了大约6%—35%。  相似文献   

7.
GCC编译器的窥孔优化及在DCT变换中的应用   总被引:1,自引:0,他引:1  
GCC编译器是一种可重定向的编译程序,其开发的目的是提高GNU系统中程序开发的效率。GCC支持C、C++和JAVA等7种源语言,以及MIPS和ARM等36种体系结构。它具有以下特点:清晰的前端语法树结构;高度概括的抽象机中间语言;简洁的机器描述;支持多源语言开发和多平台移植。  相似文献   

8.
在分析GCC结构的基础上, 阐述了GCC在C4350AL处理器上的移植与优化方案. 针对C4350AL对GCC的x86后端进行了扩展, 实现了GCC对C4350AL的识别. 根据C4350AL的结构特性, 在GCC中为建立了流水线模型描述, 并基于SPEC2006测试程序对模型效果进行了验证. 实验表明采用该模型使得GCC在C4350AL上获得了性能的提升.  相似文献   

9.
文章设计了嵌入式集成开发环境的层次结构:给出GCC重定向的一般方法并设计了通用交叉编译接口;给出GDB移植的一般方法并设计了通用调试接口.在此基础上.实现了PLAEmbeddedIDE v1.0嵌入式软件集成开发环境原型系统.  相似文献   

10.
王超  卢文成 《计算机工程》2003,29(Z1):132-133
重点分析介绍了GCC编译器源代码的结构和程序的主要函数功能.并据此提出了移植GCC编译器到多媒体处理器Trimedia的一个方案及介绍了其实现的重点.  相似文献   

11.
Tuning compiler optimizations for rapidly evolving hardware makes porting and extending an optimizing compiler for each new platform extremely challenging. Iterative optimization is a popular approach to adapting programs to a new architecture automatically using feedback-directed compilation. However, the large number of evaluations required for each program has prevented iterative compilation from widespread take-up in production compilers. Machine learning has been proposed to tune optimizations across programs systematically but is currently limited to a few transformations, long training phases and critically lacks publicly released, stable tools. Our approach is to develop a modular, extensible, self-tuning optimization infrastructure to automatically learn the best optimizations across multiple programs and architectures based on the correlation between program features, run-time behavior and optimizations. In this paper we describe Milepost GCC, the first publicly-available open-source machine learning-based compiler. It consists of an Interactive Compilation Interface (ICI) and plugins to extract program features and exchange optimization data with the cTuning.org open public repository. It automatically adapts the internal optimization heuristic at function-level granularity to improve execution time, code size and compilation time of a new program on a given architecture. Part of the MILEPOST technology together with low-level ICI-inspired plugin framework is now included in the mainline GCC. We developed machine learning plugins based on probabilistic and transductive approaches to predict good combinations of optimizations. Our preliminary experimental results show that it is possible to automatically reduce the execution time of individual MiBench programs, some by more than a factor of 2, while also improving compilation time and code size. On average we are able to reduce the execution time of the MiBench benchmark suite by 11% for the ARC reconfigurable processor. We also present a realistic multi-objective optimization scenario for Berkeley DB library using Milepost GCC and improve execution time by approximately 17%, while reducing compilation time and code size by 12% and 7% respectively on Intel Xeon processor.  相似文献   

12.
U-boot在ARM9上的移植分析与实现   总被引:2,自引:0,他引:2  
介绍了Bootloader在嵌入式系统中的作用,对目前应用最为广泛的Bootloader——U-boot进行了基于ARM9微处理器S3C2440的移植。对U-boot的源码包及其启动过程进行了分析,介绍了移植U-boot有关的硬件资源,详细叙述了U-Boot在目标板上的移植方法、移植过程和移植要点。最后对实验结果进行了测试。目前,U-Boot可以完成设计的功能并能够稳定的运行,为下一步移植L inux操作系统奠定了必需的基础。  相似文献   

13.
朱智勇  黄建 《计算机应用》2005,25(3):626-627
以嵌入式环境中,MIPS架构下,程序从Nucleus到Linux操作系统的移植为例,探讨了从单一地址空间操作系统到多地址空间操作系统的程序移植方案,对多种方案进行了比较择优,提出了单一设备、多个模块、架构整体搬迁的移植方案。从移植的结果来看,方案可行、廉价、高效。  相似文献   

14.
介绍功能完善的嵌入式Boot Loader--U-Boot,详细描述了它的运行原理,着重阐述其在S3CEV40开发板上的移植过程,并对移植结果进行了测试.  相似文献   

15.
研究了JDK6 HotSpot虚拟机,主要分析了JDK6 HotSpot虚拟机的结构和运行机制。针对龙芯平台上的应用,研究了将JDK6 HotSpot虚拟机移植到龙芯处理器平台系统上的关键技术,给出了相应的移植方案。通过初步的移植,使得龙芯平台通过移植后的JDK6 HotSpot虚拟机能在console端支持Java运行环境。最后,分析了移植后的HotSpot虚拟机的性能瓶颈,并给出了优化的方法。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号