insert: !#PROLOGUE# 0 !#PROLOGUE# 1 .LL42: cmp %o0, 0 bl .LL9 sethi %hi(num), %g3 or %g3, %lo(num), %o3 sll %o0, 2, %o2 ld [%o3+%o2], %g2 cmp %g2, %o1 ble .LL9 add %o2, 4, %g2 mov %o3, %o4 add %g2, %o4, %o3 ld [%o2+%o4], %g2 addcc %o0, -1, %o0 st %g2, [%o3] b .LL42 .LL9: add %o0, 1, %g2 or %g3, %lo(num), %g3 sll %g2, 2, %g2 retl st %o1, [%g3+%g2]