[Soot-list] Prevent static array fill code getting pessimized to use aload+astore instead of dup?

Noam Postavsky npostavs at users.sourceforge.net
Tue Jul 22 15:42:30 EDT 2014


On Fri, Jul 11, 2014 at 3:33 PM, Noam Postavsky
<npostavs at users.sourceforge.net> wrote:
> For an array of length 1, it's just store/load/load and this case does
> get reduced to a dup. But for longer arrays, it doesn't see that the
> dups can be "chained".
>
> What actually happens is the <clinit> method gets converted into an
> initialized data section containing the raw values of things to be
> initialized.

Which would be easier: preventing soot from transforming <clinit>
methods, or writing an optimization to recognize the "chained" sll
sequences?


More information about the Soot-list mailing list