Запуск оптимизатора сажи Jimple в классе - PullRequest
0 голосов
/ 07 ноября 2018

Можно ли запустить оптимизатор JOP на SootClass? Я хотел бы оптимизировать класс, который я сгенерировал вручную, с помощью операторов Jimple через Java API. Насколько я понимаю, оптимизатор запускается только во время разрешения, поэтому не каждый раз после манипулирования телами Jimple. Можно ли повторно выполнить эту оптимизацию вручную из Java?

1 Ответ

0 голосов
/ 07 ноября 2018

Я нашел правильные вызовы функций после некоторого поиска!

PhaseOptions.v().setPhaseOption("jop", "enabled:true")
PackManager.v().getPack("jop").apply(jimpleBody)

Запустите это для каждого тела метода класса, который вы хотите оптимизировать (с заменой jimpleBody телом этого метода), и он запустит оптимизатор JOP для кода Jimple.

...