计算机工程与应用
計算機工程與應用
계산궤공정여응용
COMPUTER ENGINEERING AND APPLICATIONS
2013年
10期
35-39
,共5页
别名检查%流敏感%需求驱动
彆名檢查%流敏感%需求驅動
별명검사%류민감%수구구동
alias checking%flow-sensitive%demand-driven
别名分析的精度影响着很多其他编译优化的效果.在对展开后的循环体做指令调度的时候,不精确的别名分析结果会导致冗余数据依赖的产生,从而限制了调度.流敏感的别名分析因为代价过高而扩展性不好.在流不敏感别名信息的基础上,提出了一种需求驱动的流敏感别名检查方法,能够以流敏感的方式判断两个表达式在某程序点上是否为别名.该方法假设两个表达式之间具有别名关系,从而获取初始的数据流事实.用数据流分析技术计算逆向程序点上的数据流事实.如果在所有逆向路径上的数据流事实中都产生了矛盾,则认为别名关系不成立.实验结果表明,该方法能较好地提高别名分析的精度.
彆名分析的精度影響著很多其他編譯優化的效果.在對展開後的循環體做指令調度的時候,不精確的彆名分析結果會導緻冗餘數據依賴的產生,從而限製瞭調度.流敏感的彆名分析因為代價過高而擴展性不好.在流不敏感彆名信息的基礎上,提齣瞭一種需求驅動的流敏感彆名檢查方法,能夠以流敏感的方式判斷兩箇錶達式在某程序點上是否為彆名.該方法假設兩箇錶達式之間具有彆名關繫,從而穫取初始的數據流事實.用數據流分析技術計算逆嚮程序點上的數據流事實.如果在所有逆嚮路徑上的數據流事實中都產生瞭矛盾,則認為彆名關繫不成立.實驗結果錶明,該方法能較好地提高彆名分析的精度.
별명분석적정도영향착흔다기타편역우화적효과.재대전개후적순배체주지령조도적시후,불정학적별명분석결과회도치용여수거의뢰적산생,종이한제료조도.류민감적별명분석인위대개과고이확전성불호.재류불민감별명신식적기출상,제출료일충수구구동적류민감별명검사방법,능구이류민감적방식판단량개표체식재모정서점상시부위별명.해방법가설량개표체식지간구유별명관계,종이획취초시적수거류사실.용수거류분석기술계산역향정서점상적수거류사실.여과재소유역향로경상적수거류사실중도산생료모순,칙인위별명관계불성립.실험결과표명,해방법능교호지제고별명분석적정도.
The precision of alias analysis determines the effects of many other compiler optimizations. While scheduling the instructions in the unrolled loop body, imprecise results of alias analysis can lead to redundant data dependence which restricts the scheduling. Because flow-sensitive alias analysis is very expensive, it doesn’t have good scalability. Based on the flow-insensitive alias information, it proposes a demand-driven, flow-sensitive alias checking method that can report whether two expressions are aliased at any given program point in a flow-sensitive way. It is supposed that these two expressions are aliased and the initial dataflow fact is computed. The dataflow facts at the backward program points are computed using dataflow analysis technique. If contradictions occur in the dataflow fact on all the backward paths, it can be concluded that these tow expressions are not aliased. Experimental result shows that the method can improve the precision of alias analysis.