[发明专利]编译源代码为目标代码及执行目标代码的方法无效
申请号: | 86107764.4 | 申请日: | 1986-11-14 |
公开(公告)号: | CN1003679B | 公开(公告)日: | 1989-03-22 |
发明(设计)人: | 阿施法·阿布杜里曼·穆施;卡尔·马克斯·施姆普福 | 申请(专利权)人: | 国际商用机器公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02 |
代理公司: | 中国国际贸易促进委员会专利代理部 | 代理人: | 余刚 |
地址: | 美国纽约州*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 在一个无向量或向量处理器中将源代码编译成可执行代码期间,分配并优化寄存器指定的方法,在局部优化中使用了在每一基本程序块相关图上进行卵石游戏试探法,而在全程优化中使用活变量分析与循环展开方法。 | ||
搜索关键词: | 编译 源代码 目标 代码 执行 方法 | ||
【主权项】:
1.一种将源代码编译成目标代码并执行该目标代码的方法,其中,目标代码可由与有限数量寄存器和一个相对来说为无穷大的存储器相连的处理机执行,所述寄存器的存取时间快于存储器,其特征在于以下步骤:在该源代码生成目标代码以便可将寄存器优化分配给不含所谓“基本程序块”一具有定义计算的语名一的分支的源代码区期间,a)生成基本程序块的数据相关图;其中,由节点为数据的树状图表示数据相关;b)用于生成数据相关图;b1)选择具有最大后继节点数的图的节点并将寄存器分配给这些节点,选择的节点数等于用于基本程序块的寄器数量;b2)确定分配有寄存器的节点的每个紧随后继点的覆盖费用,为覆盖费用最少的紧随后继点分配一个当前可用的寄存器,并对当前分配有寄存器的紧随后继点反复执行这一步骤;b3)生成一个目标代码,用于对来自源代码分配的寄存器进行存取,该源代码与分配寄存器的数据有关;b4)在缺少任何可用于后继点的寄存器的情况下,生成一个目标代码以写出源代码对存储器的计算的结果,该源代码计算一个相应于后继点的数据,并顺序生成一个目标代码以便将该数据按要求装入一个可用寄存器;c)具有所述处理机,用于执行步骤a)和b)所生成的目标代码。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商用机器公司,未经国际商用机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/86107764.4/,转载请声明来源钻瓜专利网。