共查询到14条相似文献,搜索用时 104 毫秒
1.
在对IA-64二进制代码进行翻译的过程中,一个重要的问题就是识别和恢复通过跳转表实现的switch语句。分析了编译器生成跳转表时采用的策略,提出了前向预取同反向切片及表达式置换相结合以识别和恢复switch语句的技术,归纳了用于获取跳转表地址的规格化形式,给出了跳转表分支目标地址恢复方法,从而可将包含跳转表的IA-64二进制代码恢复为高级switch语句。该技术已经在二进制翻译框架I2A上进行了测试,可以处理编译器gcc 2.96及gcc 3.2.3在多种优化级别下生成的IA-64代码。 相似文献
2.
3.
4.
IA-64架构为获得高性能支持许多先进体系结构的特性,例如显式指令级并行,指令判定执行,以及投机装入等,这些特性对编译器是可见的,但是为了充分利用这些体系结构的特性,编译器优化往往将程序的代码进行深度重构,使得从优化后的可执行代码中很难恢复源程序逻辑。本文提出了在IA-64二进制翻译中应用优化代码消除技术,提高翻译效率和生成目标机代码的质量。 相似文献
5.
投机机制通过改善内存操作的效能而提高程序执行性能,但是它需要大量复杂的代码处理投机失败及恢复,增加了程序的理解和代码重建工作的复杂性。文章提出了投机代码消除技术,描述了如何应用该技术消除优化后的IA-64二进制代码中的投机指令,并证明了程序的语义不变,最终使得投机消除后的代码更容易理解,提高了对IA-64代码进行再工程的效率和代码质量。 相似文献
6.
7.
8.
9.
IA-64中软件流水的寄存器需求研究 总被引:1,自引:0,他引:1
软件流水是开发循环程序指令级并行性的重要方法之一,IA-64是支持软件流水的EPIC体系结构,通过对NAS Benchmarks中可软件流水循环所需的寄存器进行量化分析,提出了一种限制循环展开因子的启发式算法,有效地解决了因可用寄存器不足而导致软件流水失败的问题,并提高了应用程序的执行速度。 相似文献
10.
反编译技术可以将二进制可执行程序转换为等价的高级语言形式代码,它是软件逆向工程研究的一个重要方向。对机器指令进行语义抽象以产生中间代码表示是反编译程序的一个关键环节。介绍了在反编译过程中通过语义描述由IA-64汇编代码生成更高级的中间表示的实现技术。将语义描述技术与IA-64体系结构的EPIC特性结合起来,有效地解决了EPIC机器指令的语义抽象问题。 相似文献
11.
针对Linux操作系统进行探讨,包括它的实现意义、实现方式、进展、测试方法和结果等。而对于具体实现方式,给出了实例分析。文中还包括了实验结果分析。 相似文献
12.
13.
Intel IA-64体系结构采用了全新的固件模型,它分为三个不同的层次:处理器抽象层(PAL)、系统抽象层(SAL)、可扩展固件接口(EFI)。介绍IA-64平台可扩展固件接口的基本结构和在目标平台上的实现方法。详细描述Intel的可扩展固件接口实现EFI1_10_14_62,以及把它移植到目标平台时要进行的主要工作和通常所采用的调试手段。 相似文献
14.
文章[1]中提出了数组之间的数据融合优化方法,并以IA-32服务器为平台测试了数据融合优化的效果。测试结果表明,在IA-32机器上,数据融合优化在性能代价模型的控制下,能较好地改善具有非连续数据访问特征的应用程序的CACHE利用率。那么,在新一代体系结构IA-64平台上,数据融合优化的效果如何呢?该文分别以IntelIA-32服务器和HPITANIUM服务器为平台,用IntelFORTRAN编译器ifc和efc及自由软件编译器g95分别编译并运行数据融合优化变换前后的程序,获得两种平台上的执行时间及相关的性能数据。测试结果表明,源程序级的数据融合优化不能很好地与IA-64平台上的EFC编译器高级优化配合工作,在O3级优化开关控制下,优化效果是负值。此测试结果进一步表明,编译高级优化如数据预取、循环变换和数据变换等各种优化必须结合体系结构的特点统筹考虑,才能取得好的全局优化效果。该文为研究各种面向IA-32体系结构的编译优化算法在IA-64体系结构上的性能可移植性优化起到抛砖引玉的作用。 相似文献