Method and system for fast unlinking of a linked branch in a caching dynamic translator

   
   

In a system and method for linking and unlinking code fragments stored in a code cache, a memory area is associated with a branch in a first code fragment that branches outside the cache. If the branch can be set to branch to a location in a second code fragment stored in the cache, branch reconstruction information is stored in the memory area associated with the branch, and the branch instruction is updated to branch to the location in the second code fragment, thereby linking the first code fragment to the second code fragment. If it is determined that the previously linked branch should be unlinked, the first and second code fragments at that branch are unlinked by reading the information stored in the associated memory area at the time of linking, and using that information to reset the branch to its state prior to the linking.

Σε ένα σύστημα και μια μέθοδο για και τα τεμάχια κώδικα που αποθηκεύονται σε μια κρύπτη κώδικα, μια περιοχή μνήμης συνδέεται με έναν κλάδο σε ένα πρώτο τεμάχιο κώδικα που διακλαδίζεται έξω από την κρύπτη. Εάν ο κλάδος μπορεί να τεθεί ως στόχος να διακλαδιστεί σε μια θέση σε ένα δεύτερο τεμάχιο κώδικα που αποθηκεύεται στην κρύπτη, διακλαδιστείτε πληροφορίες αναδημιουργίας αποθηκεύεται στην περιοχή μνήμης που συνδέεται με τον κλάδο, και η οδηγία κλάδων ενημερώνεται για να διακλαδιστεί στη θέση στο δεύτερο τεμάχιο κώδικα, με αυτόν τον τρόπο συνδεόμενος το πρώτο τεμάχιο κώδικα με το δεύτερο τεμάχιο κώδικα. Εάν καθορίζεται ότι ο προηγουμένως συνδεμένος κλάδος πρέπει να αποσυνδεθεί, τα πρώτα και δεύτερα τεμάχια κώδικα σε εκείνο τον κλάδο αποσυνδέονται με την ανάγνωση των πληροφοριών που αποθηκεύονται στη σχετική περιοχή μνήμης κατά την διάρκεια της σύνδεσης, και τη χρησιμοποίηση εκείνων των πληροφοριών για να επαναρυθμίσουν τον κλάδο στο κράτος του πριν από τη σύνδεση.

 
Web www.patentalert.com

< Circuit for allowing data return in dual-data formats

< System and method for generating cache coherence directory entries and error correction codes in a multiprocessor system

> Method and system for exclusive two-level caching in a chip-multiprocessor

> Method and apparatus for increasing flash ROM programming performance in a multiple processor computer system

~ 00109