The invention is directed to the transformation of software loops having early exit conditions, thereby allowing the loops to be more effectively converted to a single basic block for software pipelining. The invention assigns a predicate register for each early exit condition of the software loop. The predicate registers are set when the corresponding early exit condition is satisfied. In this manner, when the loop terminates the predicate registers can be examined to indicate which early exit conditions were satisfied. The invention produces loops having a lower recurrence II and resource II than conventional techniques.

L'invention est dirigée vers la transformation des boucles de logiciel ayant des états tôt de sortie, permettant de ce fait aux boucles d'être converties plus efficacement en bloc de base simple pour la canalisation de logiciel. L'invention assigne un registre d'attribut pour chaque état tôt de sortie de la boucle de logiciel. Les registres d'attribut sont placés quand la condition tôt correspondante de sortie est satisfaite. De cette manière, quand la boucle se termine les registres d'attribut peuvent être examinés pour indiquer quels états tôt de sortie ont été satisfaits. L'invention produit des boucles ayant une répétition inférieure II et la ressource II que des techniques conventionnelles.

 
Web www.patentalert.com

< Method for repeater management

< Critical path optimization-optimizing branch operation insertion

> Auto-install apparatus and method

> Bowling center system

~ 00072