Branch resolution via backward symbolic execution

G - Physics – 06 – F

Patent

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

G06F 9/44 (2006.01) F25B 45/00 (2006.01) G06F 9/45 (2006.01)

Patent

CA 2082070

Possible values for a computed destination address of an execution transfer instruction are found by a backward search through a flowgraph of a program. During the search, a symbolic expression for the destination address is successively modified to reflect the effect of each prior instruction until the symbolic expression represents an absolute or program-counter relative address, or until the search can no longer continue. The search can no longer continue, for example, when an instruction is reached that affects the value of the expression in an indefinite way. When backward symbolic execution reaches the entry point of a block in the flowgraph, backward symbolic execution proceeds backward to each predecessor block that has not already been examined for the execution transfer instruction. Therefore multiple definite values as well as a value of "unknown" may be found for a computed destination address. Preferably backward symbolic execution is performed while constructing the flowgraph, in order to find the locations of additional instructions. As additional instructions are found, new blocks and new paths between blocks are added to the flowgraph. Backward symbolic execution is repeated when the new paths may provide additional values for the computed destination addresses.

Les valeurs possibles d'une adresse de destination calculée d'une instruction de transfert d'exécution sont retracées au moyen d'une recherche arrière dans un graphe de fluence d'un programme. Durant la recherche, une expression symbolique de l'adresse de destination est modifiée successivement pour refléter l'effet de chacune des instructions antérieures jusqu'à ce qu'elle représente une adresse absolue, ou jusqu'à ce que la recherche doive s'interrompre. La recherche doit s'interrompre, par exemple, quand on arrive à une instruction qui modifie la valeur de l'expression de façon indéterminée. Quand une exécution symbolique arrière atteint le point d'entrée d'un bloc du graphe de fluence, l'exécution symbolique arrière recule jusqu'à chaque bloc précédent qui n'a pas déjà été examiné en rapport avec l'instruction de transfert d'exécution. Par conséquent, on peut trouver plusieurs valeurs bien définies, ainsi qu'une valeur « inconnue » pour une adresse de destination calculée. Dans la concrétisation privilégiée de l'invention, l'exécution symbolique arrière est exécutée durant la construction du graphe de fluence afin de localiser les instructions additionnelles. € mesure que celles-ci sont localisées, de nouveaux blocs et de nouveaux trajets entre les blocs sont ajoutés au graphe de fluence. L'exécution symbolique arrière est répétée quand les nouveaux trajets peuvent donner des valeurs additionnelles pour les adresses de destination calculées.

LandOfFree

Say what you really think

Search LandOfFree.com for Canadian inventors and patents. Rate them and share your experience with other people.

Rating

Branch resolution via backward symbolic execution does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Branch resolution via backward symbolic execution, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Branch resolution via backward symbolic execution will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFCA-PAI-O-2023826

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.