A computer-implemented system and method are provided to designate traces of original instructions of an executable file at run time based on evaluations of control flow through jump instructions. Such designation typically increases the opportunities for dynamic optimization based on loop unrolling and other modifications of the control-flow structure of the executable file. The target of a jump instruction is designated as the start of a trace if the number of times that control has passed to it through any one or more jump instructions of a predetermined type of jump instruction reaches a predetermined start-trace threshold. The trace is ended if the number of times that control has passed through jump instructions of one of a variety of particular types of jump instructions reaches an end-trace threshold that is predetermined for each such type of jump instruction. The invention includes an instruction emulator, a start-end designator, a trace translator and optimizer, and a backpatch manager. The instruction emulator emulates original instructions that have not been translated. The start-end designator designates the start and end of traces. The trace translator and optimizer translates and optimizes traces designated by the start-end designator. The backpatch manager backpatches jump instructions in translated instructions so that they jump to target instructions that have been translated, when present.

Um sistema e um método computador-executados são fornecidos para designar traços de instruções originais de uma lima executável no tempo funcionado baseado em avaliações do controle correm através de instruções de salto. Tal designação aumenta tipicamente as oportunidades para o optimization dinâmico baseado no laço que unrolling e outras modificações do controle-fluem estrutura da lima executável. O alvo de uma instrução de salto está designado como o começo de um traço se o número das épocas que o controle lhe passou com todo o ou mais instruções de salto de um tipo predeterminado de instrução de salto alcançar predeterminadas inicí-seguir o ponto inicial. O traço está terminado se o número das épocas que o controle passou com as instruções de salto de uma de uma variedade de tipos particulares de instruções de salto alcançar extremidade-seguir o ponto inicial que está predeterminado para cada tal tipo de instrução de salto. A invenção inclui um emulador da instrução, um designador da inicí-extremidade, um tradutor e um optimizer do traço, e um gerente do backpatch. O emulador da instrução emula as instruções originais que não foram traduzidas. O designador da inicí-extremidade designa o começo e a extremidade dos traços. O tradutor e o optimizer do traço traduzem e optimizes os traços designados pelo designador da inicí-extremidade. As instruções de salto dos backpatches do gerente do backpatch em instruções traduzidas de modo que saltem às instruções do alvo que foram traduzidas, quando presente.

 
Web www.patentalert.com

< (none)

< Data radio communication apparatus and system

> Apparatus and method for remotely executing commands using distributed computing environment remote procedure calls

> (none)

~ 00003