Advertisement
Guest User

Untitled

a guest
Feb 21st, 2020
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.69 KB | None | 0 0
  1. .data
  2. one:
  3. .double 1
  4. sign:
  5. .double -1
  6. .text
  7. .global mysin
  8. mysin:
  9. pushl %ebp
  10. movl %esp, %ebp
  11. pushl %ebx
  12. pushl %esi
  13. pushl %edi
  14.  
  15. movsd %xmm7, %xmm0 // xmm0 = sum
  16. movsd %xmm7, %xmm1 // xmm1 = last
  17. movsd one, %xmm2 // xmm2 = 1,3,5
  18. movsd sign, %xmm3 // xmm3 = sign
  19. movsd one, %xmm5 //xmm5 = const = 1
  20. cycle:
  21. movsd %xmm0, %xmm4
  22.  
  23. mulsd %xmm3, %xmm1
  24. mulsd %xmm7, %xmm1
  25. mulsd %xmm7, %xmm1
  26.  
  27. addsd %xmm5, %xmm2
  28. divsd %xmm2, %xmm1
  29. addsd %xmm5, %xmm2
  30. divsd %xmm2, %xmm1
  31.  
  32. addsd %xmm1, %xmm0
  33.  
  34. comisd %xmm0, %xmm4
  35. je end
  36. jmp cycle
  37. end:
  38. movsd %xmm0, %xmm7
  39. movl -12(%ebp), %edi
  40. movl -8(%ebp), %esi
  41. movl -4(%ebp), %ebx
  42. movl %ebp, %esp
  43. popl %ebp
  44. ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement