Research Article
Automatic Optimizer Generation Method Based on Location and Context Information to Improve Mobile Services
Table 1
Optimization results.
| Hash.saf | Hash.saf (optimized) | hanoi.saf | hanoi.saf (optimized) |
| %Line 143: | %Line 143: | %Line 25: | %Line 25: | scanf(“%s”, operation); | scanf(“%s”, operation); | if (num == 1) move(from, to); | if (num == 1) move(from, to); | ldp | ldp | lod.i 1 12 | lod.i 1 12 | ldc.p @0×0247 | ldc.p @0 × 0247 | ldc.i 1 | ldc.i.1 | lda 1 0 | lda 1 0 | eq.i | jne.i 0 | call scanf | call scanf | fjp 0 | %Line 25: | %Line 146: | %Line 146: | %Line 25: | if (num == 1) move(from, to); | || operation == ‘c’) | || operation == ‘c’) | if (num == 1) move(from, to); | ldp | 22: nop | 22: nop | ldp | lod.i 1 0 | lda 1 0 | ldele.c 1 0 0 | lod.i 1 0 | lod.i 1 4 | ldc.i 0 | cvc.i | lod.i 1 4 | call move | cvi.ui | ldc.c 97 | call move | ujp 1 | cvui.p | cvc.i | ujp 1 | 0: nop | add.p | eq.i | 0: nop | %Line 26: | ldi.c | dup | %Line 26: | else transfer(from, spare, to, | cvc.i | tjp 25 | else transfer(from, spare, to, | num-1); | ldc.c 97 | pop | num-1); | ldp | cvc.i | ldele.c 1 0 0 | ldp | lod.i 1 0 | eq.i | cvc.i | lod.i 1 0 | lod.i 1 8 | dup | ldc.c 98 | lod.i 1 8 | lod.i 1 4 | tjp 25 | cvc.i | lod.i 1 4 | lod.i 1 12 | pop | eq.i | lod.i 1 12 | ldc.i.1 | lda 1 0 | | ldc.i 1 | sub.i | ldc.i 0 | | sub.i | call transfer | cvi.ui | | call transfer | | cvui.p | | | | add.p | | | | ldi.c | | | | cvc.i | | | | ldc.c 98 | | | | cvc.i | | | | eq.i | | | |
|
|