Patent · US Expired

Method and system for optimizing code

US5901318A · kind A · utility

30Cited by
6References
23Claims
0Family size

Assignee

Inventor

Key dates

Filing dateMay 6, 1996
Grant dateMay 4, 1999
Priority date
Expiry dateMay 6, 2016

Classification

  • Technology area (CPC G)Physics
  • CPC primaryG06F8/452
  • WIPO fieldComputer technology
  • WIPO sectorElectrical engineering

Abstract

An optimizing compiler for optimizing code in a computer system having a CPU and a memory. The code has a loop wherein the loop includes statements conditionally executed depending on the evaluation of a control flow statement. The inventive compiler separates the code into a index collection phase and an execution phase. The index collection phase collects array indices indicating whether the control flow statement evaluates true for each particular loop iteration. The execution phase builds self loops without conditional statements. The self loops use the array indices to execute only the loop instructions that should be executed. Since those instruction are predetermined by the index collection phase, performance enhancement features of the CPU, such as branch prediction, pipelining, and a superscalar architecture can be fully exploited.

Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.