传统的基于函数范围的后端编译框架是一种方便的程序划分方法.然而,考虑到编译过程中的资源需求(例如编译时间和内存使用)、代码性能以及编译功能,函数的范围大小以及结构并不是最适合进行程序分析和优化的程序划分.在现代编译器为了尽可能地发掘指令级并行机会而寻求更复杂和时空复杂性更高的算法的情况下,这种不适应性变得更加突出.当函数的范围很大时,时空复杂性很高的算法以函数为基本编译单位通常会导致编译时间太长和(或)内存消耗太多.Hank提出了一种编译框架,使得优化的范围和结构可以得到一定的控制.基于编译时间和优化机会的考虑,本文提出了一种新的基于域的编译框架.同时,允许一些基于域的优化制导属性在不同的优化阶段之间被传递和观察.这个基于域的编译框架已经在目标码为安腾(Itanium)处理器的编译器ORC(Open Research Compiler)中实现. 实验结果表明,此框架在控制编译的时空复杂性方面是成功的.