|
|
1.1 ! root 1: # "@(#)h_indx_s.s 5.1 (Berkeley) 11/3/86" ! 2: ! 3: .data ! 4: .text ! 5: LL0:.align 1 ! 6: .globl _h_indx ! 7: .set MASK__, 0x1c0c ! 8: .data ! 9: .text ! 10: _h_indx: .word MASK__ ! 11: ! 12: movl 4(fp), r3 /* s = a */ ! 13: movl 8(fp), r10 /* b */ ! 14: movl 16(fp), r12 /* lb */ ! 15: addl3 r3, 12(fp), r11 /* end = a + la */ ! 16: subl2 r12, r11 /* end -= lb */ ! 17: loop: ! 18: cmpl r3, r11 /* while (s <= end) */ ! 19: jgtr out0 /* not found - return(0) */ ! 20: movl r3, r0 /* current s in string */ ! 21: movl r10, r1 /* b */ ! 22: movl r12, r2 /* lb */ ! 23: cmps3 /* if strings equal */ ! 24: jeql out /* return index */ ! 25: ! 26: incl r3 /* s++ */ ! 27: jbr loop ! 28: ! 29: out: ! 30: incl r3 /* index = ++s - a */ ! 31: subl3 4(fp), r3, r0 ! 32: ret ! 33: ! 34: out0: ! 35: clrl r0 ! 36: ret
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.