Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .globl sub_array
- sub_array:
- pushl %ebx
- pushl %edi
- pushl %esi
- subl $20,%esp #prologo
- xorl %ebx,%ebx #ebx= i= 0
- L: movl 40(%esp),%edi #edi= na
- addl %ebx,%edi #edi= edx+ecx
- cmpl 48(%esp),%edi #edi-nb ?
- jg E
- movl 36(%esp),%eax
- movl %eax,(%esp) #*esp=a
- movl 44(%esp),%eax
- addl %ebx,%eax
- addl %ebx,%eax #eax=b+2*i
- movl %eax,4(%esp) #*esp+4=b+i
- movl 40(%esp),%eax
- movl %eax,8(%esp) #*esp+8=na
- leal 16(%esp),%eax
- movl %eax,12(%esp) #*esp+12=&res
- call is_prefix
- movl 16(%esp),%eax #eax=res
- cmpl $0,%eax #eax ?
- jne D
- incl %ebx #ebx++
- jmp L
- E: xorl %eax,%eax
- addl $20,%esp #epilogo
- popl %esi
- popl %edi
- popl %ebx
- ret
- D: movl $1,%eax
- addl $20,%esp #epilogo
- popl %esi
- popl %edi
- popl %ebx
- ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement