Patent ID: 7007272
Filing Date: 2006-02-28
Classification: G06F

Abstract:
1. A method of compiling a computer program from a sequence of computer instructions, the method comprising; a) reading, in blocks, said computer instructions including a plurality of first set branch instructions which each identify a target address for a branch and a plurality of associated second, effect branch instructions which each implement a branch to a target address; b) allocating each set branch instruction to an initial node in a dominator tree, said initial node being the node which contains the corresponding effect branch instruction; c) determining the effect of migrating set branch instructions to each of a set of ancestor nodes in the dominator tree based on a performance cost parameter and selecting an ancestor node with the best performance cost parameter; d) locating said set branch instruction at the ancestor node determined by step c); and e) repeating steps c) and d) for said plurality of set branch instructions wherein prior to step c), a priority list is formed of set branch instructions arranged in order of priority, based on their frequency of execution in a computer system; and where steps c) and d) are repeated on the set branch instructions in their order of priority.