Patent · US Expired

Compare speculation in software-pipelined loops

US6615403B1 · kind B1 · utility

20Cited by
3References
21Claims
0Family size

Assignee

Inventors

Key dates

Filing dateJun 30, 2000
Grant dateSep 2, 2003
Priority date
Expiry dateJan 25, 2021

Classification

  • Technology area (CPC G)Physics
  • CPC primaryG06F9/3842
  • WIPO fieldComputer technology
  • WIPO sectorElectrical engineering

Abstract

The present invention provides a mechanism for implementing compare speculation in software pipelined loops. A data dependency graph (DDG) is generated for a loop that includes a control compare instruction, a compare instruction and a non-speculative instruction that depends directly or indirectly on the compare instruction. A loop-carried edge between the control compare instruction and the compare instruction is replaced by a loop-carried edge between the control compare instruction and the non-speculative instruction. If the compare instruction is speculated when the loop is modulo-scheduled, any load instruction that depends on the compare is converted to a speculative load, and a loop-carried edge is added between the control compare and a check instruction associated with the speculative load. A loop-independent edge is also added between the check instruction and the non-speculative instruction if the non-speculative instruction also depends on the load.

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