CN1195811A - 对应于最优化图象产生调试源文件的语言处理系统和方法 - Google Patents
对应于最优化图象产生调试源文件的语言处理系统和方法 Download PDFInfo
- Publication number
- CN1195811A CN1195811A CN97125846A CN97125846A CN1195811A CN 1195811 A CN1195811 A CN 1195811A CN 97125846 A CN97125846 A CN 97125846A CN 97125846 A CN97125846 A CN 97125846A CN 1195811 A CN1195811 A CN 1195811A
- Authority
- CN
- China
- Prior art keywords
- intermediate data
- optimization
- source file
- debug
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/443—Optimisation
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
一种语言处理系统包括分析单元(101)用于接收要处理的源文件的输入和实施对其的分析处理,优化单元(102)用于接收由分析单元(101)产生的中间数据的输入和实施对其的优化处理,调试源程序信息产生单元(103)用于产生基于优化的中间数据反映优化内容及形式近似于源文件的调试源文件,在调试源文件生成期间加所获调试信息到优化的中间数据中,和编码产生单元(104)用于接收加有调试信息的中间数据的输入和编码生成一目标文件。
Description
本发明涉及一种能分析一个源文件而产生一个目标文件的语言处理系统,尤其是涉及一种为方便源文件的调试而产生一个调试源文件的语言处理系统。
一个常规能分析源文件而产生一目标文件的语言处理系统包括一个分析单元801,一个优化单元802和一个编码产生单元803,如图8所示。单元801接收源文件810的输入并实施同样的分析处理去产生用一种中间语言表示的中间数据820。优化单元802接收由分析单元801生成的中间数据820的输入并实施同样的优化处理去生成优化的蹭数据830。编码产生单元803接收由优化单元802优化的中间数据输入并对其编码产生一个目标文件840。这个产生的多元目标文件840被连接到一个库去生成一个执行文件,这个文件与源文件810一起施加到调试程序。
由优化单元802优化该中间数据820可能的方法已被公开,例如,在日本的专利公开号为No平5-158706,标题是“中间语言最优化处系统”。该文献阐述一个编译器其包括一个分析装置用于分析一个高级语言程序而产生中间语言数据和一个编码产生装置用于从中间语言数据生成一个低级语言程序,对于编码产生装置包括一个中间语言优化装置用于接收中间语言的输入以及基于一个遵照中间语言优化编写句法编写成的中间语言优化程序来对其优化,因此在编码产生处理的中间语言水平独立地执行优化处理。
已经接收目标文件840和源文件810的调试程序调试优化的编码。在这里,在目标文件840中的调试信息之一是行号,其中每一个对应于一个地址。这就使一个程序利用目标文件840中的调试信息基于源程序810中每一行能够执行和调试。
参照图9至图11,这将给出一个由调试程序优化编码调试的描述。图9显示的是一个源程序。在该图中,行号的标出是为了方便描述图10显示的是图9中所示一源程序的优化图象。尽管有各种各样的优化,但在这儿要注意的是一个展开的循环的描述。为了改进执行性能,通过减少条件限定和分支的数量到四分之一的优化被实施去替代该源程序到连续指定的语句。图11显示对应于图9中源程序的优化的中间数据和调试信息。图11中,该源程序的一部分被表示在中间语言的右边。每个中间语言表示如下:
XXX: 标号
FILE: 文件名 (调试信息)
LINE: 行号 (调试信息)
LDC: 常数的加载
STR: 存储变量
L0D: 变量的加载
LDA: 变量的地址加载
ADD: 加
ILD: 在地址指定位置的数据的加载
IST: 在地址指定位置的数据的存储
CMP: 比较
LEG: 条件分支
在上述的条件下,如果源调试被执行在图9中第8行一个断点设置,调试将停在对应于调试信息的行号“8”的位置。然而,在所述的例子中,这些指定的语句被如图10所示的展开而行号仅仅存在于显现的如图11中所示多行展开的指定语句的末端,因此一次执行将导致四行指定语句的完成。
如上述的描述中,在源级调试使用由一个常规语言处理系统所产生的目标文件,高级优化处理可能在许多情况下引起删除和编码的移位以致在调试中不能用断点的设置或者引起调试中运行与源程序不对应而使其难以理解。在这种情况下,参照一个汇编源程序是需要的,这使工作艰巨了。
此外,为了产生调试信息实质上正确地对应于一个源程序,有一种情况优化处理不能实施。因此,上述的常规系统是不实际的。
一个相对应于源程序的目标和调试信息的产生能通过在目标生成时降低优化级别以便不会有害地影响源级调试或者取消优化处理来实现。然而在这种情况下,因为满意的优化处理没有实施,即使调试正常地结束了,目标文件的执行速度也不能使人满意,或者编码的长度可能增加了。
而且,如果调试后,一个期望的优化水平为了满意实施优化处理的目的被设计去再产生一个目标,也不能保证这个执行形式正常地工作。这是因为在操作和计时中由于目标执行速度的差异或语言处理程序的问题,所以保留差别的可能性不可否认。
本发明的一个目的是提供一个能产生符合优化想法的调试源文件和调试信息的语言处理系统及其一种方法,该系统当一个源程序的调试中源程序的执行未能与源程序对应时能够使源程序容易被实施而不需要参考一个难以理解的汇编源程序。
本发明的另一个目的是提供一个保证期望的优化水平而不用在优化处理时不必要地降低优化水平的语言处理系统及其方法,从而避免一目标文件执行速度变得不满意或编码长度上的增加。
根据本发明的第一个方面,具有分析源文件而产生中间数据以及优化和编码该数据而产生一个目标文件的一个语言处理系统,包括用于接收要处理的源文件的输入并实施分析处理去产生中间数据的分析装置;
用于接收由分析装置产生的中间数据的输入并实施优化处理的优化装置;
调试源程序信息产生装置是用于接收由优化装置优化的中间数据的输入而产生一个基于中间数据反映优化的内容及其形式近似于源文件形式调试的源文件,而进一步,在调试源文件产生期间加所获调试信息到优化的中间数据中;和
编码产生装置用于接收由调试源程序信息产生装置加入的具有调试信息的中间数据的输入并且对其编码产生一个目标文件。
在这较佳的结构中,调试源程序程序信息产生装置重复地执行来自于由优化装置优化的中间数据在优化处理中确定的目标数据组之一的读取处理,从读取的中间数据的一数据组中提取源程序信息构成一个调试文件以及加入调试信息到与中间数据的所有目标数据组的每一组有关的中间数据的一组中。
在这种较佳的结构中,该语言处理系统还包括:
代替优化装置和调试源程序信息产生装置,具有一个调试源程序信息产生功能的优化装置用于接收由分析装置产生的中间数据输入并实施优化处理,并产生一个基于优化的中间数据反映优化内容及其形式近似于源文件形式的调试源文件,而进一步,在调试源文件产生期间加入所获调试信息到优化的中间数据中。
在这个较佳的结构中,该语言处理系统还包括:
代替优化装置和调试源程序信息产生装置具有一个调试源程序信息产生功能的优化装置用于接收由分析装置产生的中间数据的输入以及实施优化处理,并产生一个基于优化的中间数据反映优化内容及其形式近似于源文件形式的调试源文件,而进一步,在该调试源文件产生期间加所获调试信息到优化的中间数据中,在这其中,
具有一个调试源程序信息产生功能的优化装置重复地执行来自于由分析装置产生的中间数据在优处理中确定的目标数据组之一的读取处理和优化读取的中间数据中一组数据的处理,并从优化的中间数据中提取源程序信息构成一个调试源文件以及加所获调试信息到与中间数据的所有目标组中的每组有关的中间数据的一组中。
根据本发明的第二个方面,一个分析源文件产生中间数据以及优化和编码该数据产生一个目标文件的语言处理方法,包含以下步骤:
接收要处理的源文件的输入和实施分析处理以产生中间数据;
接收在分析步骤产生的中间数据的输入和实施优化处理;
接收在优化步骤优化的中间数据的输入而产生一个基于中间数据反映优化内容及其形式近似于源文件形式的调试源文件,而进一步,在该调试源文件产生期间加所获调试信息到优化的中间数据中;和
接收具有在调试源程序信息产生步骤加入调试信息的中间数据的输入和对其编码以产生一个目标文件。
在这个较佳的结构中,调试源程序信息产生步骤包括下列步骤:
读取来自在优化步骤优化的中间数据在优化处理中确定的目标数据组中的一组;
从读取的一组中间数据中提取源程序信息构成一个调试源文件,和
加调试信息到一组中间数据中,及在这其中
各个步骤的每个处理相对应于中间数据的所有目标的每组被重复地执行。
在另一个较佳的结构中,该语言处理方法还包括这个步骤:
代替优化步骤和调试源程序信息产生步骤,接收在分析步骤产生的中间数据的输入并实施优化处理,并产生一个基于优化的中间数据反映优化内容及其形式近似于源文件形式的调试源文件,而进一步,在该调试源文件产生期间加所获调试信息到优化的中间数据。
在另一个较佳的结构中,该语言处理方法还包括这个步骤:
代替优化步骤和调试源程序信息产生步骤,接收在分析步骤产生的中间数据的输入并实施优化处理,并产生一个基于优化的中间数据反映优化内容及其形式近似于源文件形式的调试源文件,而进一步,在该调试源文件产生期间加所获调试信息到优化的中间数据,具有一个调试源程序信息产生功能的优化步骤包括下列步骤:
读取来自在分析步骤产生的中间数据在优化处理中确定的目标组的一组,
优化该读出的一组中间数据,并从优化的中间数据中提取源程序信息构成一个调试源文件;和
加调试信息到中间数据的一组中,在这其中,
各个步骤的每个处理相对应于中间数据的所有目标组的每组被重复地执行。
本发明其他的目的,特点和优点在下面详细的描述中将会变得很清楚。
从下面给出的详细描述和本发明实施例的附图中将会更全面地了解本发明,然而,这些不应该认为是对本发明的限制,而仅仅是为了说明和理解。
图1是根据本发明的第一实施例的一个语言处理系统的结构方框图。
图2所示的是在第一实施例中一个调试源程序信息产生单元的结构流程图。
图3所示的是根据第一实施例由该调试源程序信息产生单元产生的调试源文件的一个实例图形。
图4所示的是根据第一实施例由该调试源程序信息产生单元产生的中间数据和调试信息的一个实例图形。
图5所示的是在调试处理中使用的一调试屏幕实例的图形。
图6所示的是根据本发明的第二实施例的一个语言处理系统的方框图。
图7所示的是根据第二实施例一个具有调试源程序信息产生功能的优化单元的工作流程图。
图8所示是一常规语言处理系统的结构方框图。
图9所示是一个源程序的实例图
图10所示是图9中源程序的优化图象图。
图11所示是相对应于图9中心源程序的中间数据和调试信息优化图。
本发明最佳的实施例参照附图将从这开始详细地讨论。在下面的描述中,为了提供对本发明彻底地理解,许多特别的细节给予陈述。然而很明显对在技术有经验的人本发明也是可以实践的即使没有这些特别的细节。另一个例子,一些已知的结构没有详细地表示出是为了不必要的与本发明混淆。
图1所示的是根据本发明的第一实施例的一个语言处理系统结构方框图。参看图1,本发明实施例的语言处理系统100包括一个分析单元101用于接收源文件110的输入和实施对其的分析处理,一个优化单元102用于优化由分析单元101分析过的文件,一个调试源程序信息产生单元103用于基于优化单元102优化的文件生成调试源程序信息,和一个编码产生单元104用于编码一个从属于由调试源程序信息产生单位103处理的文件而生成一个目标文件。在图1中,图示说明的仅仅是本发明实施例结构的特征的部分而剩下的共同部分被略去。
构成语言处理系统的各个组成部分是由计算机程序控制的CPU和象RAM的内部存储器来实现。所提供的计算机程序存储在如磁盘或半导体存储器一样的一个存储介质170中,如载该程序到一个象个人扣算机或者一个工作站一样的计算机系统实现上述各部分的每个功能。
分析单元101接收源文件110的输入并且实施对其的分析处理而产生中间数据120。各种常规方法可以用于这个分析处理。
优化单元102接收由分析单元101生成的中间数据102的输入并且实施对其的优化处理。对于该优化处理,各种常规方法都能被使用,例如上面所述的日本专利平(5-158706)中所陈述的。
调试源程序信息产生单元103接收由优化单元102优化的中间数据130的输入以生成一个基于中间数据130的调试源文件150。单元103还插入与生成调试源文件有关的信息到该中间数据130。图2是一个显示调试源程序信息产生单元103的工作流程图。参看图2,调试源程序信息产生单元103首先读取中间数据130的一组数据(步骤201)。当在中间数据130中仍然存在一个要被处理的数据组时,单元103分析读到的中间数据然后输出源程序信息到调试源文件150(步骤202和203)。然后,单元103加调试信息到中间数据130并且输出所获得数据做为中间数据140(步骤204)。单元103对所有中间数据130的每一组分别重复上述的操作(步骤202)。结果,生成的是具有形式上近似于原始源文件形式,而且也反映优化处理的内容以及具有加入调试信息的中间数据140的调试源文件150。
编码产生单元104接收具有由调试源程序信息产生单元103加入的调试信息的中间数据140的输入并且实施对其的编码处理以生成一个目标文件160。对于这个编码处理,各种常规方法都可以使用。
接下来,将要描述的是本发明实施例关于具体的源文件110的一个例子处理的操作。因为在语言处理系统100中,由分析单元101和优化单元102的处理是与一常规的语言处理系统是相同的,所以图11中显示的中间数据和调试信息用作为一个由分析单元101分析和优化单102优化的中间数据130的文件。此外,为了说明上的方便,描述将从图11所示中间数据的第四行标号L1后的输入开始。
首先,调试源程序信息产生单元103读取在标号L1与“;”之间的中间数据130的一组数据(步骤201)。然后,单元103分析读取的中间数据130并且输出相应的源程序信息到调试源文件150(步骤203)。这输出源程序信息对应于图3中所示的一调试源程序(Sample-0.c)的第八行。接下来,单元103加文件名和行号作为调试信息到中间数据并且输出作为中间数据140的获得的数据(步骤204)。被加入的调试信息是出自于中间数据140和图4中所示的调试信息“FILE Sample-0.c”141和继续行“LINE8”。
下一步回到步骤201,单元103读取中间数据130的下一组上到“;”(步骤201)。然后,单元103分析所读的中间数据130并且输出相应的源程序信息到调试源文件150(步骤203)。这输出源程序信息对应于图3中所示的调试源程序(Sample-0.c)的第九行。接下来,单元103加文件名和行号作为调试信息到中间数据并且输出作为中间数据140获得的数据(步骤204)。被加入的调试信息是出自于中间数据140和图4中所示调试信息“FILE Sample-0.c”142和接续行“LINE9”。
下一步再回到步骤201,单元103生成以同样方式生成对应于中间数据130每组数据的调试源文件150和中间数据140。然后,在某一时刻当在中间数据130中设有多余的中间数据要读时,这个处理过程就完成了(步骤202)。
接下来将要描述的是使用上述处理生成的调试源文件150的一种调试方法。图5是一个调试显示屏显示图9所示的源程序(Sample.c)及并排显示了图3所示的调试源程序(Sample.c)。
例如,在调试使用一个原始的源程序(Sample.c)中,当该程序的运行由于优化对于相应的源程序失败了,除该源程序(Sample,c)之外这调试源程序(Sample-0.c)也通过利用源程序读功能或源路径设置功能由调试者显示出来。
在图5所示的例子中,源程序(Sample.c)中的“for”循环是如何被优化展开可以参看调试源程序(Sample-0.c)看到。更具体地说,尽管这个“for”循环的形式是变化的,但该源程序(Sample.c)的第八行总是对应于调试源程序(Sample-0.c)的第八行到第十一行。因此,当优化的目标文件和源程序(Sample-c)被用到时,要确定展开“for”循环的操作是不可能的,而当调试源程序(Sample-0.c)被使用时,例如,在调试源程序(Sample-0.c)的第十行,设置一个断点,这就能使该程序在执行第十行操作之前被停下来。然后,一行的执行能使第十行执行的内容被确定。大家还可以清楚地了解在第十一行设置一个断点也能确定第十行执行的结果。
图6是一个按照本发明第二实施例的语言处理系统结构方框图。参看图6,本实施例的语言处理系统600包括一个分析单元用于接收一个源文件110的输入和实施对其的分析处理,一个具有调试源程序信息产生功能的优化单元601用于实施对从属于由分析单元101分析处理的文件优化处理,并生成调试源程序,和编码产生单元104用于实施对从属于由具有一个调试源程序信息产生功能的优化单元601优化处理的文件编码处理以生成一个目标文件。在图6中,图示说明的仅仅是本发明实施例结构的特征的部分而其余下的共同部分被略去。
构成该语言处理系统600的各个部分是由计算机程序控制的CPU和如RAM的内部存储器来实现,所提供的计算机程序存储在如磁盘或半导体存储器一样的一个存储介质170中。加载该程序到一个例如个人计算机或者一个工作站一样的计算机系统实现各部分的每个功能。
在上述的结构中,分析单元101和编码生成单元104同图1中所示的第一实施例的相对应部分是一样,对于那些同样编号的部分省略了对他们的描述。
具有一调试源程序信息产生功能的优化单元601接收由分析单元101产生的中间数据120的输入并且实施对其的优化处理。在这时,相对应于要生成的中间数据的每组数据,单元601输出源程序信息到一个调试源文件150,并且进一步加调试信息到这优化的中间数据以生成中间数据140。
而在上述第一实施例的描述中,优化单元102和调试源程序信息产生单元103分别被提供去实施优化处理以及独立地生成调试源文件150和中间数据140的处理,在本实施例中提供的是具有调试源程序信息产生功能的优化单元601,在调试源文件150相继地产生和调试被加到优化的中间数据时,优化处理被实施。如在第一实施例中其它模块分开提供的调试源程序信息产生单元103使开发和维护容易但是却由于每个处理执行都读文件导致执行时间较长。因此本实施例目的在于通过同时实现优化处理和生成调试源文件150及中间数据140的处理而减少执行时间。
图7是显示具有一个调试源程序信息产生功能的优化单元601的工作流程图。参看图7,具有调试源程序信息产生功能的优化单元601首先读取来自中间数据120在优化处理中确定的目标数据组中的一组(步骤701)。如果在中间数据120中有要进行处理的数据组,单元601就分析读取的中间数据并且实施对其的优化处理,并作为调试源文件150输出源程序信息(步骤702和703)。然后,单元601加入调试信息到该优化的中间数据以及输出作为中间数据140获得的数据(步骤704)。上述的操作将相对于所有中间数据120中的每组数据重复执行(步骤702)。
接下来,将要描述的是本发明实施例关于具体的源文件110的一个例子的处理操作。在本操作例子中,图9所示的源文件被用作为源文件110。此外为了描述方便,描述将从图9中所示源程序的第六行后的输入开始。虽然在实际中,由分析单元101实施分析处理是与源程序有关,但在此将没有描述,而其描述将使我们注意到处理是在优化处理之后。
首先,从图9所示的源程序中,单元601对应于源程序的第六行和以下几行读取中间数据120(步骤701)。单元601在这儿对应于源程序的第六行以后直到第九行读取中间数据,这是在优化处理中预定的一组目标数据。然后单元601分析所读的中间数据120并且展开一个循环去实施优化。在这种情况中优化思想是与图10中所示相同。单元601还对应于已处理的中间数据一行顺序地输出源程序信息到调试源文件150(步骤703)。该输出源程序信息对应于图3中所示调试源程序(Sample-o.c)的第七行到第十三行。然后,单元601加文件名和对应的显现行行号到中间数据并且作为该中间数据140输出所获得数据(步骤704)。被加入的调试信息是出自于中间数据140和图4中所示调试信息“FILE sample-o.c”141和接续行“LINE8”。
下一步回到步骤701,单元601以同样的方式实施中间数据120的目标数据组中每一组的优化处理以生成调试源文件150和中间数据140。在某一时刻当中间数据120中没有多余的中间数据要读时,这处理过程就完成了(步骤702)。
如上面所描述的,根据本发明的语言处理系统及其方法,从依附于优化处理一中间数据生成的调试源程序使源程序调试能用一个优化的目标文件。更具体地说,在调试中当一个程序的执行不能与一源程序相符合时,优化处理如何实施能够被有关的不是难于理解的汇编源程序而是一个调试源程序识别,该调试源程序的形式近似于除了原始源程序之外的原始程序。这就使程序运行容易明白以及使源程序调试容易实施。
而且,由于本发明能够使源程序调试使用一个优化的目标文件,优化处理能够被执行在一个期望的优化水平而不必要在低优化水平上优化处理。结果就能够防止一个目标文件执行速度为不满意和编码长度增加。
虽然本发明已经用相应的实施例子做了图解和描述,技术上成熟的人们应说明白上述的以及各种其它的变化,即对其的省略和添加,并没有脱离本发明的构思和范围,因此本发明将不应理解为限制到上述的特定实施例,而是包括了所有可能的实施例,这些实施例都能在相对应于在附加权利要求中的特征所包含的和等同的范围内实施。
Claims (8)
1、一种分析源文件以生成中间数据以及优化和编码该数据而生成一个目标文件的语言处理系统它包括:
分析装置(101)用于接收一个要处理的源文件的输入并且实施对其的分析处理而产生中间数据;
优化装置(102)用于接收由所述分析装置(101)产生的中间数据的输入并且实施同样的优化处理;
调试源程序信息产生装置(103)用于接收由的所述优化装置(102)优化的所述中间数据的输入而生成一个基于中间数据反映优化的内容及其形式近似于所述源文件的调试源文件,而进一步,在所述的调试源文件生成期间加入所获调试信息到所述的优化中间数据;以及
编码产生装置(104)用于接收具有由所述调试源程序信息产生装置(103)加入调试信息的所述中间数据的输入并且对其编码而生成一个目标文件。
2、根据权利要求1所述的语言处理系统,其特征在于所述调试源程序信息产生装置(103)重复地执行在由所述优化装置(102)优化的所述中间数据优化处理中确定的目标数据组之一的读取处理,从所述中间数据的所述读取的一数据组中提取源程序信息构应一个调试源文件以及加调试信息到与所述中间数据的所有目标组中的每一组有关的所述中间数据的一组数据中。
3、根据权利要求1所述的语言处理系统,其特征在于包括,
代替所述优化装置(102)和所述调试源程序信息产生装置(103),具有调试源程序信息产生功能的优化装置(601)是用于接收所述分析装置(101)产生的中间数据的输入以及实施对其的优化处理,并产生一个基于中间数据反映优化内容及其形式近似于所述源文件的调试源文件,而进一步,在所述调试源文件生成期间加入所获调试信息到优化的中间数据中。
4、根据权利要求1所述的语言处理系统,其特征在于还包括:
代替所述优化装置(102)和所述调试源程序信息产生装置(103),具有调试源程序信息产生功能的优化装置(601)是用于接收所述分析装置(101)产生的中间数据的输入以及实施对其的优化处理,并产生一个基于中间数据反映优化内容及其形式近似于所述源文件的调试源文件,而进一步,在所述调试源文件生成期间加入所获调试信息到所述优化的数据中,其中所述具有调试源程序信息产生功能的优化装置(601)重复地执行在由所述分析装置(101)产生的所述中间数据优化处理中确定的目标数据组中的一组读取处理和优化所述中间数据中所述读取的一组,并从优化的中间数据中提取源程序信息构成一个调试源文件以及加调试信息到与所述中间数据的所有目标数中的每一组有关的所述中间数据的一组数据中。
5、一种分析源文件而产生中间数据以及优化和编码该数据而产生一个目标文件的语言处理方法,包括这些步骤:
接收要处理的源文件的输入并实施对其分析处理生成中间数据;
接收在所述分析步骤生成的中间数据的输入并实施对其优化处理;
接收在所述优化步骤生成的优化的所述中间数据的输入而产生一个基于该中间数据反映优化内容及其形式近似于所述源文件形式的调试源文件,而进一步,在所述调试源文件生成期间加所获调试信息到所述优化的中间数据中;和
接收在所述调试源程序信息产生步骤加入调试信息的所述中间数据的输入并对其编码而产生一个目标文件。
6、根据权利要求5所述的语言处理方法,其特征在于:
所述调试源程序信息产生步骤包括这些步骤:
读取在所述优化步骤所述优化的中间数据在优化处理中确定的目标数据组中的一数据组;
从所述中间数据的所述读取的一组中提取源程序信息构成一个调试源文件;和
加调试信息到所述中间数据的所述一组数据中,其中
各个步骤的每个处理都相对于所述中间数据的所有目标组的每个被重复地执行。
7、根据权利要求5所述的语言处理方法,其特征在于还包括下面步骤:
代替所述的优化步骤和所述调试源程序信息产生步骤,接收在所述分析步骤产生的中间数据的输入和实施对其的优化处理,并产生一个基于优化的中间数据反映优化内容及春形式近似于所述源文件形式的一个调试源文件而进一步,在所述调试源文件生成期间加入所获调试信息到优化的中间数据中。
8、根据权利要求5所述的语言处理方法,其特征在于还包括下面步骤:
代替所述优化步骤和所述调试源程序信息产生步骤,接收在所述分析步骤产生的中间数据的输入和实施对其的优化处理,并产生一个基于优化的中间数据反映优化内容及其形式近似于所述源文件形式的一个调试源文件,而进一步,在所述调试源文件生成期间加所获调试信息到优化的中间数据中,所述具有一调试源程序信息产生功能的优化步骤包括下列步骤:
读取一组来自在所述分析步骤生成的所述中间数据在优化处理中确定的目标组的一组数据,和优化所述读取的一组所述中间数据,并从优化的中间数据中取出源程序信息构成一调试源文件;
将调试信息加到所述中间数据的所述一组数据中,其中
各个步骤的每个处理都相对于所述中间数据的所有目标组的每个被重复地执行。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP349247/96 | 1996-12-27 | ||
JP34924796A JP3196675B2 (ja) | 1996-12-27 | 1996-12-27 | 言語処理方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1195811A true CN1195811A (zh) | 1998-10-14 |
Family
ID=18402482
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN97125846A Pending CN1195811A (zh) | 1996-12-27 | 1997-12-25 | 对应于最优化图象产生调试源文件的语言处理系统和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US6014516A (zh) |
JP (1) | JP3196675B2 (zh) |
KR (1) | KR100309632B1 (zh) |
CN (1) | CN1195811A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101872301A (zh) * | 2009-04-24 | 2010-10-27 | 深圳富泰宏精密工业有限公司 | 测量程序优化系统及方法 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6151701A (en) * | 1997-09-30 | 2000-11-21 | Ahpah Software, Inc. | Method for reconstructing debugging information for a decompiled executable file |
KR100532467B1 (ko) * | 2003-09-18 | 2005-12-01 | 삼성전자주식회사 | 서로 다른 버전에서 생성된 디버깅 정보 파일들을 이용한소스 코드 레벨 디버깅을 제공하는 엠시유 응용프로그램검증 시스템 및 그 방법 |
JP4822817B2 (ja) * | 2005-11-22 | 2011-11-24 | パナソニック株式会社 | コンパイルシステム |
US8904340B2 (en) * | 2007-02-13 | 2014-12-02 | International Business Machines Corporation | Use of temporary optimized settings to reduce cycle time of automatically created spreadsheets |
US9207921B2 (en) * | 2009-06-22 | 2015-12-08 | Oracle America, Inc. | Fault tolerant compilation with automatic optimization adjustment |
FR2953612A1 (fr) * | 2009-12-03 | 2011-06-10 | Flexycore | Procede de mise au point d'application logicielle, systeme et produit programme d'ordinateur correspondant. |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0685148B2 (ja) * | 1986-03-07 | 1994-10-26 | 株式会社日立製作所 | 配列デ−タフロ−解析装置 |
JPH0814817B2 (ja) * | 1986-10-09 | 1996-02-14 | 株式会社日立製作所 | 自動ベクトル化方法 |
JP2921190B2 (ja) * | 1991-07-25 | 1999-07-19 | 日本電気株式会社 | 並列実行方式 |
JPH05158706A (ja) * | 1991-12-09 | 1993-06-25 | Nippon Denki Micom Technol Kk | 中間言語の最適化処理方式 |
JPH06274369A (ja) * | 1993-03-19 | 1994-09-30 | Hitachi Ltd | 最適化プログラムのデバッグ方式 |
JPH0721033A (ja) * | 1993-07-07 | 1995-01-24 | Nec Corp | 言語処理装置及びその方法 |
JPH0756745A (ja) * | 1993-08-13 | 1995-03-03 | Nec Corp | 言語処理プログラムのコンパイラ処理方式 |
JP3190773B2 (ja) * | 1993-09-30 | 2001-07-23 | 日本電気株式会社 | 言語処理プログラムのコンパイル処理方法 |
JP3327674B2 (ja) * | 1994-04-01 | 2002-09-24 | 松下電器産業株式会社 | プログラム翻訳装置及び方法 |
JPH0863369A (ja) * | 1994-08-24 | 1996-03-08 | Toshiba Corp | 最適化情報出力方式 |
JPH08255097A (ja) * | 1995-01-20 | 1996-10-01 | Toshiba Corp | デバッグ情報出力方式 |
-
1996
- 1996-12-27 JP JP34924796A patent/JP3196675B2/ja not_active Expired - Fee Related
-
1997
- 1997-12-22 US US08/996,426 patent/US6014516A/en not_active Expired - Fee Related
- 1997-12-25 CN CN97125846A patent/CN1195811A/zh active Pending
- 1997-12-27 KR KR1019970074890A patent/KR100309632B1/ko not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101872301A (zh) * | 2009-04-24 | 2010-10-27 | 深圳富泰宏精密工业有限公司 | 测量程序优化系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
JPH10187461A (ja) | 1998-07-21 |
KR100309632B1 (ko) | 2002-02-28 |
US6014516A (en) | 2000-01-11 |
JP3196675B2 (ja) | 2001-08-06 |
KR19980064734A (ko) | 1998-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1159649C (zh) | 一种日志信息的自动循环存储方法 | |
CN1819576A (zh) | 在客户机和服务器之间分配应用任务的方法以及应用服务系统 | |
CN1885264A (zh) | 用于嵌入式系统的软件包构建方法和系统 | |
CN1922574A (zh) | 无需额外的代码分析来进行链接时代码优化的方法和系统 | |
CN1811767A (zh) | 用于提供带有自动搜索菜单的用户界面的系统和方法 | |
CN1504881A (zh) | 爪哇执行设备和爪哇执行方法 | |
CN1229944A (zh) | 用于减少预装类的脚印的系统和方法 | |
CN1834906A (zh) | 丰富数据绑定应用程序 | |
CN1716246A (zh) | 用于web应用的多列多数据类型的国际化排序扩展方法 | |
CN101036123A (zh) | 自动翻译程序和程序翻译服务器 | |
CN1975721A (zh) | 用于管理内容文件信息的方法和装置及存储程序的介质 | |
US20110087684A1 (en) | Posting list intersection parallelism in query processing | |
CN1195811A (zh) | 对应于最优化图象产生调试源文件的语言处理系统和方法 | |
CN101763257B (zh) | java类预处理通信系统及java类预处理方法 | |
US6931570B2 (en) | Self-optimizing the diagnosis of data processing systems by flexible multitasking | |
CN1194321C (zh) | 高速信息检索系统 | |
CN101075237A (zh) | 一种数据存储方法、数据读取方法以及数据检索方法 | |
CN1893282A (zh) | 一跨序列排序涡轮码系统和其操作方法 | |
CN1369779A (zh) | 用于下载应用数据的方法和设备 | |
CN1637708A (zh) | 编译方法、编译装置及编译程序 | |
CN1295778C (zh) | 一种验证芯片硬件行为与软件模拟行为的一致性的方法 | |
CN1797404A (zh) | 用于在强类型化环境中保存未知标记的方法和系统 | |
CN1260546A (zh) | 在手持装置中存储和检索数据的方法及装置 | |
CN1818885A (zh) | 运行日志获取方法 | |
CN1945478A (zh) | 仿真装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |