Advertisement
Guest User

Untitled

a guest
Apr 12th, 2016
245
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.38 KB | None | 0 0
  1. .LHOTB1:
  2. .p2align 4,,15
  3. .section .text.unlikely
  4. .Ltext_cold0:
  5. .text
  6. .globl mul
  7. .type mul, @function
  8. mul:
  9. .LFB33:
  10. .file 1 "long_mul_div.c"
  11. .loc 1 25 0
  12. .cfi_startproc
  13. .LVL0:
  14. pushl %ebp
  15. .cfi_def_cfa_offset 8
  16. .cfi_offset 5, -8
  17. pushl %edi
  18. .cfi_def_cfa_offset 12
  19. .cfi_offset 7, -12
  20. pushl %esi
  21. .cfi_def_cfa_offset 16
  22. .cfi_offset 6, -16
  23. pushl %ebx
  24. .cfi_def_cfa_offset 20
  25. .cfi_offset 3, -20
  26. subl $44, %esp
  27. .cfi_def_cfa_offset 64
  28. .loc 1 32 0
  29. movl 76(%esp), %edx
  30. testl %edx, %edx
  31. je .L1
  32. movl 80(%esp), %eax
  33. movl $0, 20(%esp)
  34. movl %eax, 24(%esp)
  35. movl 68(%esp), %eax
  36. sall $2, %eax
  37. movl %eax, 28(%esp)
  38. .LVL1:
  39. .p2align 4,,10
  40. .p2align 3
  41. .L3:
  42. .loc 1 34 0 discriminator 1
  43. movl 68(%esp), %eax
  44. xorl %ebp, %ebp
  45. movl 24(%esp), %edi
  46. movl $0, 8(%esp)
  47. testl %eax, %eax
  48. je .L9
  49. movl %ebp, 12(%esp)
  50. jmp .L15
  51. .LVL2:
  52. .p2align 4,,10
  53. .p2align 3
  54. .L4:
  55. .loc 1 55 0
  56. movl 16(%esp), %ebx
  57. addl %ebx, %eax
  58. .loc 1 56 0
  59. cmpl %eax, %ebx
  60. .loc 1 55 0
  61. movl %eax, (%edi)
  62. .loc 1 56 0
  63. ja .L22
  64. .LVL3:
  65. .L5:
  66. .loc 1 59 0 discriminator 2
  67. leal (%esi,%edx), %eax
  68. .loc 1 34 0 discriminator 2
  69. addl $1, 8(%esp)
  70. .LVL4:
  71. addl $4, %edi
  72. .loc 1 59 0 discriminator 2
  73. movl %eax, 12(%esp)
  74. .LVL5:
  75. .loc 1 34 0 discriminator 2
  76. movl 8(%esp), %eax
  77. .LVL6:
  78. cmpl 68(%esp), %eax
  79. je .L23
  80. .LVL7:
  81. .L15:
  82. .loc 1 37 0
  83. movl 64(%esp), %eax
  84. movl 8(%esp), %esi
  85. movl (%eax,%esi,4), %ebx
  86. movl 20(%esp), %esi
  87. movl 72(%esp), %eax
  88. movl %ebx, %edx
  89. .loc 1 40 0
  90. movzwl %bx, %ebp
  91. .loc 1 41 0
  92. shrl $16, %ebx
  93. .loc 1 37 0
  94. movl (%eax,%esi,4), %eax
  95. .loc 1 43 0
  96. movl %ebp, %esi
  97. .loc 1 37 0
  98. imull %eax, %edx
  99. .loc 1 40 0
  100. movzwl %ax, %ecx
  101. .loc 1 43 0
  102. shrl $16, %eax
  103. imull %eax, %esi
  104. .loc 1 37 0
  105. movl %edx, 16(%esp)
  106. .LVL8:
  107. .loc 1 41 0
  108. movl %ebx, %edx
  109. .LVL9:
  110. imull %ecx, %edx
  111. .LVL10:
  112. .loc 1 44 0
  113. imull %ebx, %eax
  114. .LVL11:
  115. .loc 1 47 0
  116. movl %edx, %ebx
  117. .loc 1 46 0
  118. movzwl %dx, %edx
  119. .LVL12:
  120. .loc 1 40 0
  121. imull %ebp, %ecx
  122. .LVL13:
  123. .loc 1 47 0
  124. shrl $16, %ebx
  125. .LVL14:
  126. .loc 1 46 0
  127. movzwl %si, %ebp
  128. .loc 1 47 0
  129. shrl $16, %esi
  130. .LVL15:
  131. addl %ebx, %esi
  132. movzwl %ax, %ebx
  133. .loc 1 49 0
  134. xorw %ax, %ax
  135. .LVL16:
  136. .loc 1 46 0
  137. shrl $16, %ecx
  138. .LVL17:
  139. .loc 1 47 0
  140. addl %ebx, %esi
  141. .loc 1 46 0
  142. addl %ebp, %ecx
  143. .LVL18:
  144. .loc 1 49 0
  145. leal (%esi,%eax), %ebx
  146. .loc 1 52 0
  147. movl (%edi), %eax
  148. .loc 1 46 0
  149. addl %edx, %ecx
  150. .loc 1 53 0
  151. xorl %edx, %edx
  152. .loc 1 49 0
  153. shrl $16, %ecx
  154. leal (%ebx,%ecx), %esi
  155. .LVL19:
  156. .loc 1 52 0
  157. movl 12(%esp), %ecx
  158. addl %ecx, %eax
  159. .loc 1 53 0
  160. cmpl %ecx, %eax
  161. .loc 1 52 0
  162. movl %eax, (%edi)
  163. .loc 1 53 0
  164. jnb .L4
  165. .LVL20:
  166. .LBB12:
  167. .LBB13:
  168. .file 2 "/usr/include/i386-linux-gnu/bits/stdio2.h"
  169. .loc 2 104 0 discriminator 1
  170. subl $8, %esp
  171. .cfi_def_cfa_offset 72
  172. pushl $.LC0
  173. .cfi_def_cfa_offset 76
  174. pushl $1
  175. .cfi_def_cfa_offset 80
  176. .LVL21:
  177. call __printf_chk
  178. .LVL22:
  179. addl $16, %esp
  180. .cfi_def_cfa_offset 64
  181. movl (%edi), %eax
  182. .LBE13:
  183. .LBE12:
  184. .loc 1 55 0 discriminator 1
  185. movl 16(%esp), %ebx
  186. .loc 1 53 0 discriminator 1
  187. movl $1, %edx
  188. .LVL23:
  189. .loc 1 55 0 discriminator 1
  190. addl %ebx, %eax
  191. .loc 1 56 0 discriminator 1
  192. cmpl %eax, %ebx
  193. .loc 1 55 0 discriminator 1
  194. movl %eax, (%edi)
  195. .loc 1 56 0 discriminator 1
  196. jbe .L5
  197. .LVL24:
  198. .L22:
  199. .LBB14:
  200. .LBB15:
  201. .loc 2 104 0 discriminator 1
  202. subl $8, %esp
  203. .cfi_def_cfa_offset 72
  204. pushl $.LC0
  205. .cfi_def_cfa_offset 76
  206. pushl $1
  207. .cfi_def_cfa_offset 80
  208. call __printf_chk
  209. .LVL25:
  210. addl $16, %esp
  211. .cfi_def_cfa_offset 64
  212. .LBE15:
  213. .LBE14:
  214. .loc 1 56 0 discriminator 1
  215. movl $1, %edx
  216. jmp .L5
  217. .LVL26:
  218. .p2align 4,,10
  219. .p2align 3
  220. .L23:
  221. movl 12(%esp), %ebp
  222. .LVL27:
  223. .loc 1 62 0
  224. testl %ebp, %ebp
  225. je .L9
  226. movl 24(%esp), %eax
  227. addl 28(%esp), %eax
  228. jmp .L8
  229. .LVL28:
  230. .p2align 4,,10
  231. .p2align 3
  232. .L11:
  233. movl $1, %ebp
  234. .LVL29:
  235. .L8:
  236. .loc 1 64 0
  237. movl (%eax), %edx
  238. addl $4, %eax
  239. addl %ebp, %edx
  240. movl %edx, -4(%eax)
  241. .LVL30:
  242. .loc 1 62 0
  243. cmpl %ebp, %edx
  244. jb .L11
  245. .LVL31:
  246. .L9:
  247. .loc 1 32 0
  248. addl $1, 20(%esp)
  249. .LVL32:
  250. addl $4, 24(%esp)
  251. movl 20(%esp), %eax
  252. .LVL33:
  253. cmpl 76(%esp), %eax
  254. jne .L3
  255. .LVL34:
  256. .L1:
  257. .loc 1 71 0
  258. addl $44, %esp
  259. .cfi_def_cfa_offset 20
  260. popl %ebx
  261. .cfi_restore 3
  262. .cfi_def_cfa_offset 16
  263. popl %esi
  264. .cfi_restore 6
  265. .cfi_def_cfa_offset 12
  266. popl %edi
  267. .cfi_restore 7
  268. .cfi_def_cfa_offset 8
  269. popl %ebp
  270. .cfi_restore 5
  271. .cfi_def_cfa_offset 4
  272. ret
  273. .cfi_endproc
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement