摘要 |
A computer system in which blocks of source code instructions are translated into blocks of target code instructions and executed. During execution, the system builds up dynamic behaviour information about frequency of execution of, and relationships between, the blocks. On the basis of this information, a block coalition mechanism selects blocks, and combines them to form an optimised superblock of target code instructions that is functionally equivalent to the combination of the selected blocks. In this way, the system can start with relatively small, naively translated blocks, and build up larger, more optimised blocks, on the basis of the dynamic behaviour of the code. |