[發明專利]一種用于可擴展指令集的編譯器及編譯方法有效
| 申請號: | 201911298413.1 | 申請日: | 2019-12-17 |
| 公開(公告)號: | CN111078290B | 公開(公告)日: | 2023-03-14 |
| 發明(設計)人: | 蔡覺平;張芳芳 | 申請(專利權)人: | 西安電子科技大學 |
| 主分類號: | G06F9/30 | 分類號: | G06F9/30;G06F8/41 |
| 代理公司: | 陜西電子工業專利中心 61205 | 代理人: | 田文英;王品華 |
| 地址: | 710071*** | 國省代碼: | 陜西;61 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 用于 擴展 指令 編譯器 編譯 方法 | ||
1.一種用于可擴展指令集的編譯器,包括輸入模塊、嵌入模塊與編譯模塊,其特征在于,還包括輸入模塊與嵌入模塊,其中:
所述的輸入模塊,用于從指定路徑獲取一個格式為.instruction的包含擴展指令定義與寄存器器定義的指令集描述文件;使用遞歸下降法,分別從擴展指令定義與寄存器器定義中提取擴展指令信息與寄存器信息,將擴展指令信息保存到指令表中,將寄存器信息保存到的寄存器表中;從指定路徑獲取一個格式為.policy的包括指令匹配條件的編譯策略文件,讀取策略文件中的指令匹配條件,將每個匹配條件設置一個對應的匹配函數,并保存到函數表中,該匹配函數通過模式匹配識別特殊代碼段并將特殊代碼代碼段替換為擴展指令;從主函數的參數列表中獲取源文件的數量與路徑信息,依次獲取源文件;
所述的嵌入模塊,用于提取函數表中的所有匹配函數,根據匹配函數能夠識別的代碼類型,對源代碼進行識別的匹配函數嵌在詞法分析階段之前,對中間代碼進行識別的匹配函數嵌在中間代碼生成階段之后,對優化代碼進行識別的匹配函數嵌在中間代碼優化階段之后
所述的編譯模塊,用于編譯源代碼與識別源代碼中的特殊代碼段,將特殊代碼段編譯為擴展指令序列,將普通代碼段編譯為基礎指令集序列。
2.根據權利要求1所述編譯器的一種用于可擴展指令集的編譯方法,其特征在于,獲取指令集描述文件,獲取編譯策略文件,將匹配函數嵌入編譯模塊,該方法的步驟如下:
步驟1,獲取指令集描述文件:
輸入模塊提供獲取擴展指令集的接口,從指定路徑獲取一個格式為.instruction的包含擴展指令定義與寄存器器定義的指令集描述文件;
使用遞歸下降法,分別從擴展指令定義與寄存器器定義中提取擴展指令信息與寄存器信息,將擴展指令信息保存到擴展指令表中,將寄存器信息保存到的寄存器表中;
步驟2,獲取編譯策略文件:
輸入模塊從指定路徑獲取一個格式為.policy的包括指令匹配條件的編譯策略文件,讀取策略文件中的指令匹配條件,將每個匹配條件設置一個對應的匹配函數,并保存到函數表中,該匹配函數通過模式匹配識別特殊代碼段并將特殊代碼代碼段替換為擴展指令;
步驟3,將匹配函數嵌入編譯模塊:
嵌入模塊提取函數表中的所有匹配函數,根據匹配函數能夠識別的代碼類型,對源代碼進行識別的匹配函數嵌在詞法分析階段之前,對中間代碼進行識別的匹配函數嵌在中間代碼生成階段之后,對優化代碼進行識別的匹配函數嵌在中間代碼優化階段之后;
步驟4,獲取源代碼文件:
輸入模塊從主函數的參數列表中獲取源文件的數量與路徑信息,依次獲取源文件;
步驟5,編譯代碼生成目標機器指令:
編譯模塊使用嵌入的匹配函數識別代碼中的特殊代碼段,將特殊代碼段編譯為擴展指令序列,將普通代碼段編譯為基礎指令集序列。
3.根據權利要求2所述的一種用于可擴展指令集的編譯方法,其特征在于,步驟1中所述的擴展指令信息包括指令編碼、匯編輸出、操作的寄存器和指令的特殊屬性。
4.根據權利要求2所述的一種用于可擴展指令集的編譯方法,其特征在于,步驟1中所述寄存器信息包括寄存器類別、寄存器名和寄存器位數。
5.根據權利要求2所述的一種用于可擴展指令集的編譯方法,其特征在于,步驟1中所述的擴展指令表與寄存器表的結構為鍵值映射型數據結構,為后續模塊可見的外部全局變量。
6.根據權利要求2所述的一種用于可擴展指令集的編譯方法,其特征在于,步驟2中所述的指令匹配條件指示特殊代碼類型與擴展指令相匹配,普通代碼類型與基礎指令集相匹配。
7.根據權利要求2所述的一種用于可擴展指令集的編譯方法,其特征在于,步驟2中所述的函數表的結構為數組結構,為后續模塊可見的外部全局變量。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于西安電子科技大學,未經西安電子科技大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201911298413.1/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種無人機塑料外殼原料處理設備
- 下一篇:虛擬車廂連接方法、裝置及電子設備





