[發明專利]編譯方法和編譯器無效
| 申請號: | 200710094327.X | 申請日: | 2007-11-28 |
| 公開(公告)號: | CN101452394A | 公開(公告)日: | 2009-06-10 |
| 發明(設計)人: | 尉紅梅;李中升;漆鋒濱;郭勇 | 申請(專利權)人: | 無錫江南計算技術研究所 |
| 主分類號: | G06F9/45 | 分類號: | G06F9/45;G06F9/38 |
| 代理公司: | 北京集佳知識產權代理有限公司 | 代理人: | 逯長明 |
| 地址: | 214083江蘇*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 編譯 方法 編譯器 | ||
1.一種編譯方法,其特征在于,包括下述步驟:
識別包含第一指令的循環,所述循環在執行過程中有確定的控制參數, 所述循環不包含轉移指令,且循環中所有的第一指令不存在迭代間的相關性, 所述第一指令是指單指令多數據擴展指令;
統計所述循環中第一指令和第二指令的指令數,所述第二指令是指與所 述第一指令對應的簡單指令;
根據所述循環中的第一指令和第二指令的指令數、以及第一指令執行部 件和第二指令執行部件的執行能力,計算循環展開次數和第一指令轉換成第 二指令的循環次數;
若所述循環展開次數不等于1,根據所述循環展開次數對所述循環進行循 環展開,并根據所述第一指令轉換成第二指令的循環次數將所述循環展開中 的第一指令轉換成對應的第二指令;
所述循環展開次數、第一指令轉換成第二指令的循環次數根據下面的條 件計算:
循環展開和指令轉換后的第一指令的指令數與第二指令的指令數的比值 約等于第一指令執行部件的執行能力與第二指令執行部件的執行能力的比 值,其中,
所述循環展開和指令轉換后的第二指令的指令數為(unroll*l+trans*n),第 一指令的指令數為((unroll-trans)*m),其中,unroll為循環展開次數,trans為 第一指令轉換成第二指令的循環次數,l為所述循環中第二指令的指令數,m 為所述循環中第一指令的指令數,n為將m條第一指令轉換得到的第二指令 的指令數;
所述執行能力是指每個時鐘周期處理器發射給所述執行部件的指令數。
2.根據權利要求1所述的編譯方法,其特征在于,所述第一指令是單指令 多數據定點指令,第二指令是簡單定點指令。
3.根據權利要求1所述的編譯方法,其特征在于,所述第一指令是單指令 多數據浮點指令,第二指令是簡單浮點指令。
4.根據權利要求1所述的編譯方法,其特征在于,所述循環的控制參數包 括上界、下界和步長。
5.根據權利要求1所述的編譯方法,其特征在于,根據所述第一指令轉換 成第二指令的循環次數將所述循環展開中的第一指令轉換成對應的第二指令 是指將所述循環展開中的前trans次循環體的第一指令轉換成對應的第二指 令。
6.根據權利要求1所述的編譯方法,其特征在于,根據所述第一指令轉換 成第二指令的循環次數將所述循環展開中的第一指令轉換成對應的第二指令 是指將所述循環展開中的后trans次循環體的第一指令轉換成對應的第二指 令。
7.根據權利要求1所述的編譯方法,其特征在于,還包括對所述循環展開 和指令轉換后的循環進行指令調度。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于無錫江南計算技術研究所,未經無錫江南計算技術研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200710094327.X/1.html,轉載請聲明來源鉆瓜專利網。





