Apparatus, methods, systems and computer program products are disclosed to
provide improved optimizations of single-basic-block-loops. These
optimizations include improved scheduling of blocking instructions for
pipelined computers and improved scheduling and allocation of resources
(such as registers) that cannot be spilled to memory. Scheduling of
blocking instructions is improved by pre-allocating space in the
scheduling reservation table. Improved scheduling and allocation of
non-spillable resources results from converting the resource constraint
into a data dependency constraint.
Οι συσκευές, οι μέθοδοι, τα συστήματα και τα προϊόντα προγράμματος υπολογιστών αποκαλύπτονται για να παρέχουν τις βελτιωμένες βελτιστοποιήσεις των ενιαίος-βασικός-φραγμός-βρόχων. Αυτές οι βελτιστοποιήσεις περιλαμβάνουν το βελτιωμένο σχεδιασμό του φραξίματος των οδηγιών για τους διοχετευμένους υπολογιστές και το βελτιωμένο σχεδιασμό και της κατανομής των πόρων (όπως οι κατάλογοι) που δεν μπορούν να ανατραπούν στη μνήμη. Το σχέδιο του φραξίματος των οδηγιών βελτιώνεται με την προ-διάθεση του διαστήματος στον πίνακα επιφύλαξης σχεδιασμού. Ο βελτιωμένοι σχεδιασμός και η κατανομή των μη- spillable πόρων προκύπτουν από τη μετατροπή του περιορισμού των πόρων σε έναν περιορισμό εξάρτησης στοιχείων.