基于LLVM的C*Core后端移植研究

被引量 : 0次 | 上传用户:alanlee75
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
C*Core是苏州国芯科技有限公司基于Motorola公司M*Core自主研发的嵌入式处理器架构。而目前C*Core平台仍使用十年前开发的GCC的M*Core后端,缺乏先进的编译器后端支持以充分发挥该平台的性能优势,制约了其系统的应用与发展。LLVM是伊利诺伊香槟分校(UIUC)近年来开发出的优秀开源编译框架,具有编译效率高、组件模块化和可复用性等特点,有替代GCC、成为新一代主流商用编译器的趋势。本文基于LLVM编译框架,设计并实现了C*Core后端,以解决现存GCC对C*Core支持力度不足的问题。首先,本文剖析了LLVM中间表示语言和后端工具集,论述了基于TableGen语言的目标平台描述方法,以及LLVM后端代码生成流程;其次,通过深入分析C*Core体系结构,利用TableGen语言完成对C*Core目标平台的寄存器文件、指令集和调用惯例的描述;利用LLVM提供的DAG构造和转换方法,设计了C*Core指令的多种DAG匹配模式,最终实现了从LLVM中间表示到C*Core指令的代码生成。同时,本文还面向包含条件执行指令及C*Core特有指令组合等程序,采用了多种优化技术,进一步提高了汇编代码的质量。实验表明,本文所设计的基于LLVM的C*Core后端,不仅实现了对大部分C*Core指令的支持,生成的部分代码质量在一定程度上还优于GCC。
其他文献
目的探讨手法复位结合过伸体位下经皮穿刺椎体成形术治疗老年人椎体压缩性骨折的方法及临床价值。方法对67例76个椎体的胸、腰椎压缩性骨折患者行术前及术中手法复位,使压缩
请下载后查看,本文暂不支持在线获取查看简介。 Please download to view, this article does not support online access to view profile.
期刊
圣桑的《b小调第三小提琴协奏曲》作品61号是他所写的三部小提琴协奏曲中最广为流传的一部。作品秉承了圣桑创作的一贯特性,既有激情辉煌的主题又有优美如歌的曲调,从演奏的
<正> 诺华制药称:其Myfortic(r)(麦考酚酸)缓释片与Neoral(r)(环孢菌素微乳剂)和皮质甾类药物合用,防止因肾移植引起的机体排异反应的药物已获FDA批准,Myfortic是一种全新的
<正> 同志们:这次河北省银行业金融产品推介暨银企合作洽谈会是经省政府同意召开的。这次洽谈会由政府部门和人民银行搭台,各家商业银行向中小企业宣传金融政策,推介自己的金
国内主要城商行2013年度财务报告显示,在经济增速放缓、利率市场化以及金融脱媒加剧的多重压力下,城商行净利润增速大多已跌至20%左右,甚至出现个位数和负数;资产质量进一步
树种的正确识别对于木材科学和相关产业均具有重要意义。针对人工木材树种判定和传统图像识别方法存在一定的局限性,本文利用模式识别方法探讨树种识别的可行性,并取得以下研
宫内发育迟缓(intrauterine growth retardation,IUGR)可导致仔猪初生重较低并引起生产性能和肉品质的下降。为弄清IUGR对猪终身生长育肥效率和肉质的影响,探明营养调控IUGR
一水箱盛有1000升水,底部有一小孔向外放水,最初一分钟出水10升,有人认为将水全部放完需100分钟.其实这是完全错误的.因为没盖的容器里的任何液体,从孔里流出的速度跟孔上面液柱的高度有关,随