[发明专利]融合来自不同编译器阶段的调试信息有效
申请号: | 201110428634.3 | 申请日: | 2011-12-19 |
公开(公告)号: | CN102637136A | 公开(公告)日: | 2012-08-15 |
发明(设计)人: | A·K·阿加瓦尔;T·P·多舍尔;P·梅比 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F9/45 | 分类号: | G06F9/45 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 蔡悦 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了融合来自不同编译器阶段的调试信息。本发明涉及用于融合来自不同编译器阶段的调试信息的各方法、系统和计算机程序产品。本发明的各实施例在代码生成过程中将来自多个不同编译阶段的调试信息融合为单个调试信息集。该单个调试信息集直接在输入至第一编译阶段的指令和符号(例如,源代码)与从最后的编译阶段输出的指令和符号(例如,机器码)之间映射。 | ||
搜索关键词: | 融合 来自 不同 编译器 阶段 调试 信息 | ||
【主权项】:
一种在包括一个或多个处理器和系统存储器的计算机系统上用于对在不同编译阶段生成的调试信息进行组合的方法,所述计算机系统还包括用于将源代码编译为可执行代码的多阶段编译器(101),所述多阶段编译器具有包括至少第一编译阶段(102)和第二编译阶段(103)的多个编译阶段,所述多个编译阶段中的每一编译阶段被配置成在代码格式之间转换并朝着从源代码(111)生成可执行代码(113)的方向前进,所述方法包括:将第一调试信息(121)和第二调试信息(122)融合为合并的第三调试信息(123)的动作,所述第一调试信息(121)生成于将采用第一格式的第一代码(111)翻译为采用不同的第二格式的第二代码(112)的第一编译阶段(102),所述第一调试信息将所述第一代码中的每一指令映射(131)至所述第二代码中对应的指令并将所述第一代码中的每一符号映射(132)至所述第二代码中对应的符号,所述第二调试信息(122)生成于将所述第二代码(112)翻译为采用不同的第三格式的第三代码(113)的第二编译阶段(103),所述第二调试信息(122)将所述第二代码中的每一指令映射(113)至所述第三代码中对应的指令并将所述第二代码中的每一符号映射(134)至所述第三代码中对应的符号,所述合并的第三调试信息(123)将所述第一指令直接映射至所述第三指令并将所述第一符号直接映射至所述第三符号,融合所述第一调试信息和所述第二调试信息包括对于所述第一代码中的每一指令和符号:使用所述第一调试信息来标识所述第二代码中与所述第一代码中的指令或符号对应的指令或符号的动作;使用所述第二调试信息来标识所述第三代码中与所述第二代码中所标识的指令或符号对应的指令或符号的动作;将所述第一代码中的指令或符号直接地映射(136,137)至所述第三代码中所标识的对应的指令或符号的动作;以及将所述第一代码中的指令或符号至所述第三代码中的指令或符号的直接映射(136,137)存储在所述合并的第三调试信息中的动作。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201110428634.3/,转载请声明来源钻瓜专利网。