[发明专利]一种编译器后端代码自动构建方法及系统在审
申请号: | 202111563671.5 | 申请日: | 2021-12-20 |
公开(公告)号: | CN114237573A | 公开(公告)日: | 2022-03-25 |
发明(设计)人: | 钟茗;耿洪娜;吕方;冯晓兵 | 申请(专利权)人: | 中国科学院计算技术研究所 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F8/33;G06F40/186 |
代理公司: | 北京泛华伟业知识产权代理有限公司 11280 | 代理人: | 王勇 |
地址: | 100190 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 编译器 后端 代码 自动 构建 方法 系统 | ||
1.一种编译器后端代码自动构建方法,用于在指定框架系统下自动生成目标平台的编译器后端代码,所述方法包括:
S1、获取与目标平台同一框架下的已有样本平台的后端描述文件,构建样本平台的后端描述文件中每条指令基于定义-引用关系的标识符引用关系图,在标识符引用关系图中,每个标识符对应一个节点;
S2、基于步骤S1中的标识符引用关系图,对标识符分类,其中,标识符被分为语言特定类型、平台特性信息类型、开发者定义类型;
S3、将每条指令中不同类型的标识符转换为对应的敏捷标识符,并基于标识符引用关系图生成每条指令对应的以敏捷标识符表示的代码布局模板,所述代码布局模板中包含有平台特性信息的标识符定位;
S4、获取目标平台编码指令,将目标平台编码指令与样本平台的指令进行匹配以获得与样本平台指令对应的代码布局模板,基于代码布局模板填入敏捷标识符对应的样本平台中的语言特定类型和开发者定义类型的属性值以生成目标平台的指令模块,将用户输入的目标平台编码指令中的平台特性信息属性值按照其对应定位填入指令模板中以生成当前目标平台编码指令对应的编译器后端代码。
2.根据权利要求1所述的方法,其特征在于:
所述语言特定类型的标识符是指编程语言中普遍存在的标识符,在标识符引用关系图中语言特定类型的标识符对应的节点没有输入也没有输出;
所述平台特性信息类型的标识符是指有取决于指令集架构的标识符,在标识符引用关系图中平台特性信息类型的标识符对应的节点只有输出没有输入;
所述开发者定义类型的标识符是指由开发者自己定义名称的标识符,在标识符引用关系图中开发者定义类型的标识符对应的节点既有输入也有输出。
3.根据权利要求1所述的方法,其特征在于,所述平台特性信息类型的标识符定位指示的是平台特性信息类型的属性值在代码布局模板中的位置。
4.根据权利要求3所述的方法,其特征在于,所述步骤S4包括针对每条目标平台编码指令执行如下步骤:
S41、获取用户输入的当前目标平台编码指令中的平台特性信息属性值,其中不同的平台特性信息属性值对应于不同的敏捷标识符属性索引,所述敏捷标识符索引是预先设置的为每类敏捷标识符属性赋予的唯一索引;
S42、基于步骤S41获得的平台特性信息属性值计算当前目标平台编码指令的特征向量;
S43、基于步骤S42计算出的特征向量与样本平台每条指令的特征向量计算目标平台编码指令与样本平台的每条指令的欧式距离,获得与目标平台编码指令欧氏距离小于或等于预设阈值匹配成功的样本平台指令;
S44、基于获得的样本平台指令对应的代码布局模块,基于代码布局模板填入敏捷标识符对应的样本平台中的语言特定类型和开发者定义类型的属性值以生成目标平台的指令模块,所述指令模板中的平台特性信息类型的标识符的属性为空并按照平台特性信息类型的标识符定位由带有属性索引信息的敏捷标识符表示;
S45、将当前目标平台编码指令的平台特性信息属性值按照其对应的敏捷标识符属性索引填入指令模板中以生成当前目标平台编码指令对应的编译器后端代码。
5.根据权利要求4所述的方法,其特征在于,所述预设阈值为0.2。
6.根据权利要求5所述的方法,其特征在于,
采用Word2vec通过如下方式生成指令的特征向量:
其中,FVi是第i条指令的特征向量,L是指令i的平台特性信息类型的敏捷标识符的长度,是第i条指令对应的平台特性信息类型的敏捷标识符列表中的第t个属性,pwt是平台特性信息类型的敏捷标识符列表中的第t个属性对应的权重。
7.根据权利要求6所述的方法,其特征在于,每条指令的特征向量是一个10维的向量。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111563671.5/1.html,转载请声明来源钻瓜专利网。