13.10.2014 Views

OPTIMIZING THE JAVA VIRTUAL MACHINE INSTRUCTION SET BY ...

OPTIMIZING THE JAVA VIRTUAL MACHINE INSTRUCTION SET BY ...

OPTIMIZING THE JAVA VIRTUAL MACHINE INSTRUCTION SET BY ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

256<br />

# Len Score Multicode<br />

%<br />

1 2 100.0 aload 0 getfield<br />

2 7 30.1 iload aaload iload bipush iadd faload aload<br />

3 7 29.5 aload 0 dup getfield dup x1 iconst 1 iadd putfield<br />

4 15 28.4 iload iadd caload istore 3 aload 1 getfield aload 1 getfield iload<br />

iadd caload istore iload 3 iload if icmpeq<br />

5 10 24.1 faload fmul fadd fstore iload iconst 1 iadd bipush iand istore<br />

6 5 20.7 faload fmul fadd fstore fload<br />

7 9 20.6 astore aload getfield iload 2 iaload istore iload iload 1 if icmpne<br />

8 5 20.0 iload aaload iload faload aload<br />

9 4 15.8 aload 0 dup getfield iconst 1<br />

10 17 11.8 astore aload getfield iload 2 baload istore aload getfield aload<br />

dup getfield dup x1 iconst 1 iadd putfield iload bastore<br />

11 13 11.6 astore aload dup getfield iconst 1 isub putfield aload getfield<br />

aload getfield baload invokevirtual<br />

12 18 11.4 saload istore aload 1 iload iinc iload sipush iand i2b bastore<br />

aload 1 iload iinc iload bipush iushr i2b bastore<br />

13 5 10.7 faload fmul fadd fstore 3 fload<br />

14 7 10.7 iload 3 aaload aload 2 getfield iload 3 aaload invokevirtual<br />

15 7 8.9 iload 1 saload bipush ishl bipush iushr ireturn<br />

16 10 8.7 ishl iload iadd istore 1 iload 3 iload ishl iload ixor istore 2<br />

17 13 8.1 iload iload 2 aload 1 iload iload 3 iadd baload sipush iand ior<br />

i2c castore iinc<br />

18 6 8.0 iload 2 iload isub dup istore 2 ifge<br />

19 2 7.9 aload 0 aload 1<br />

20 25 7.8 bipush dup2 faload aload 2 bipush faload fsub fastore aload 2<br />

bipush dup2 faload aload 2 bipush faload fsub fastore aload 2<br />

bipush dup2 faload aload 2 bipush faload fsub<br />

21 6 6.3 getstatic iload iinc aaload astore fload 3<br />

22 25 6.1 iload faload aload 2 iload faload fadd ldc fmul fstore aload 2<br />

iload aload 1 iload faload aload 2 iload faload fsub ldc fmul fastore<br />

aload 1 iload fload fastore<br />

23 6 6.1 iload 3 aaload aload 2 iload 3 aaload invokevirtual<br />

24 2 6.0 bipush faload<br />

25 7 5.9 fstore fload fload fadd fstore fload fload<br />

Table A.7: Multicodes of Length 25 or Less using Transfer Reduction Scoring for All<br />

Benchmarks

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!