nld and noft Manual
noft Utility
nld and noft Manual—520384-003
4-9
Debugging With noft
Example 4-5 shows the noft output for the compute() function in Example 4-3 on
page 4-7 compiled at optimize 1. The native compilers perform many optimizations
at optimize 1.
Example 4-5. Optimize 1 Listing
noft> dumpproc compute
******** Innerlist Dump Of Procedure: compute ********
Procedure Src Line Address Long Word Instructions
-------------------------------------------------------------------
14 long compute(long a[])
[compute 14000] 0x70000460 0x27bdfff8 addiu sp,sp,0xfffffff8
15 {
16 long b;
17 int c,i;
18 b=0;
[compute 18000] 0x70000464 0xafa00004 sw zero,0x4(sp)
19 for (i=0; i<20; i++)
[compute 19000] 0x70000468 0xafa00000 sw zero,0(sp)
20 b += a[i];
[compute 20000] 0x7000046c 0x8faf0000 lw t7,0(sp)
[compute 20000] 0x70000470 0x8fae0004 lw t6,0x4(sp)
[compute 20000] 0x70000474 0x000fc080 sll t8,t7,2
[compute 20000] 0x70000478 0x0098c821 addu t9,a0,t8
[compute 20000] 0x7000047c 0x8f280000 lw t0,0(t9)
[compute 20000] 0x70000480 0x25ea0001 addiu t2,t7,0x1
[compute 20000] 0x70000484 0x29410014 slti at,t2,0x14
[compute 20000] 0x70000488 0x01c84821 addu t1,t6,t0
[compute 20000] 0x7000048c 0xafa90004 sw t1,0x4(sp)
[compute 20000] 0x70000490 0x1420fff6 bne at,zero,0x7000046c
[compute 20000] 0x70000494 0xafaa0000 sw t2,0(sp)
21 return b;
[compute 21000] 0x70000498 0x8fa20004 lw v0,0x4(sp)
[compute 21000] 0x7000049c 0000000000 nop
22 }
[compute 22000] 0x700004a0 0x03e00008 jr ra
[compute 22000] 0x700004a4 0x27bd0008 addiu sp,sp,0x8