2017-10-03 7 views
0

Pour un projet sur lequel je travaille actuellement, nous devons pouvoir mapper avec précision les adresses de bytecode pour les instructions correspondant aux emplacements dans Shimple, ainsi que les décalages de pile et les références d'objet aux identifiants dans Shimple . Les emplacements d'instruction seront utilisés pour "piéger" l'exécution du SPF afin de démarrer l'exécution symbolique statique. À ces points de piège, nous devons être en mesure de transférer des informations dans et hors des emplacements de pile et des références de champ qui sont utilisés par la région de code statique.Décalages de bytecode et empilement dans Soot

Est-il possible d'utiliser "tel quel" ou de modifier la suie afin de fournir cette information? Nous nous intéressons soit aux informations du code original, soit, si cela est plus facile, au réécriture du bytecode à partir du formulaire Soot Shimple. Dans les versions précédentes de Soot, nous pouvions saisir les instructions du bytecode, mais il semble que la version actuelle utilisant le frontal ASM ne soit plus compatible avec cela.

Encore une fois, les choses dont nous avons besoin en particulier sont: - les décalages bytecode java correspondant à Shimple déclarations de branchement - les décalages de pile pour les variables locales référencées dans Shimple - les numéros de champs associés à des références sur le terrain dans Shimple.

Merci beaucoup pour votre temps!

Répondre

0

Pourriez-vous s'il vous plaît en discuter dans le bug tracker de Soot? De cette façon, nous pouvons tous contribuer ...

+0

Merci beaucoup. Je viens juste de faire ça! – Inquirer