Guest User

optoassembly for computeNewCentroids

a guest
Jan 16th, 2012
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 34.45 KB | None | 0 0
  1. abababab N1: # B1 <- B38 B39 B37 B36 B3 Freq: 1
  2. abababab
  3. 000 B1: # B38 B2 <- BLOCK HEAD IS JUNK Freq: 1
  4. 000 # stack bang
  5. pushq rbp
  6. subq rsp, #64 # Create frame
  7. 00c movl R10, [RDX + #12 (8-bit)] # range
  8. 010 NullCheck RDX
  9. 010
  10. 010 B2: # B4 B3 <- B1 Freq: 0.999999
  11. 010 movl R11, RCX # spill
  12. 013 imull R11, R8 # int
  13. 017 cmpl R11, R10
  14. 01a je,s B4 P=0.100000 C=-1.000000
  15. 01a
  16. 01c B3: # N1 <- B2 B5 B12 B6 Freq: 0.990096
  17. 01c addq rsp, 64 # Destroy frame
  18. popq rbp
  19. testl rax, [rip + #offset_to_poll_page] # Safepoint: poll for GC
  20.  
  21. 027 ret
  22. 027
  23. 028 B4: # B39 B5 <- B2 Freq: 0.0999999
  24. 028 movl R14, [R9 + #12 (8-bit)] # range
  25. 02c NullCheck R9
  26. 02c
  27. 02c B5: # B3 B6 <- B4 Freq: 0.0999998
  28. 02c movl RBX, RDI # spill
  29. 02e imull RBX, [RSP + #80 (32-bit)] # int
  30. 033 cmpl RBX, R14
  31. 036 jne,s B3 P=0.900000 C=-1.000000
  32. 036
  33. 038 B6: # B3 B7 <- B5 Freq: 0.00999998
  34. 038 movl RBX, RCX # spill
  35. 03a testl RCX, RCX
  36. 03c jle,s B3 P=0.000000 C=8193.000000
  37. 03c
  38. 03e B7: # B37 B8 <- B6 Freq: 0.00999998
  39. 03e movq RAX, RSI # spill
  40. 041 movl RCX, [RSI + #12 (8-bit)] # range
  41. 044 NullCheck RSI
  42. 044
  43. 044 B8: # B37 B9 <- B7 Freq: 0.00999997
  44. 044 testl RCX, RCX # unsigned
  45. 046 jbe,u B37 P=0.000001 C=-1.000000
  46. 046
  47. 04c B9: # B37 B10 <- B8 Freq: 0.00999996
  48. 04c movl RSI, RBX # spill
  49. 04e decl RSI # int
  50. 050 cmpl RSI, RCX # unsigned
  51. 052 jnb,u B37 P=0.000001 C=-1.000000
  52. 052
  53. 058 B10: # B14 <- B9 Freq: 0.00999995
  54. 058 movl RCX, R8 # spill
  55. 05b decl RCX # int
  56. 05d # MachConstantBaseNode (empty encoding)
  57. 05d movsd XMM0, [constant table base + #0] # load from constant table: double=#-0.500000
  58. 065 movsd XMM1, [constant table base + #8] # load from constant table: double=#-1.000000
  59. 06d movl RSI, #-2147483648 # int
  60. 072 cmpl R8, RCX
  61. 075 cmovll RCX, RSI # signed, int
  62. 078 xorl R11, R11 # int
  63. 07b xorl RSI, RSI # int
  64. 07d jmp,s B14
  65. 07d
  66. 07f B11: # B12 <- B21 Freq: 191.628
  67. 07f cvtsi2sdl XMM2, R13 # i2d
  68. 084 movl RDI, [rsp + #4] # spill
  69. 088 movl RSI, [rsp + #16] # spill
  70. 088
  71. 08c B12: # B3 B13 <- B11 B34 Freq: 203.606
  72. 08c movsd [RAX + #16 + RSI << #3], XMM2 # double
  73. 092 incl RSI # int
  74. 094 cmpl RSI, RBX
  75. 096 jge B3 # loop end P=0.000000 C=8192.000000
  76. 096
  77. 09c B13: # B14 <- B12 Freq: 203.606
  78. 09c movl R11, R8 # spill
  79. 09f imull R11, RSI # int
  80. 0a3
  81. 0a3 B14: # B34 B15 <- B10 B13 Loop: B14-B13 Freq: 203.616
  82. 0a3 testl RDI, RDI
  83. 0a5 jle B34 P=0.058824 C=139264.000000
  84. 0a5
  85. 0ab B15: # B22 <- B14 Freq: 191.638
  86. 0ab movl [rsp + #16], RSI # spill
  87. 0af movl [rsp + #4], RDI # spill
  88. 0b3 movl RDI, R8 # spill
  89. 0b6 addl RDI, R11 # int
  90. 0b9 decl RDI # int
  91. 0bb movl [rsp + #20], RDI # spill
  92. 0bf movapd XMM2, XMM1 # spill
  93. 0c3 xorl RDI, RDI # int
  94. 0c5 movl R13, #-1 # int
  95. 0cb jmp,s B22
  96. 0cb
  97. 0cd B16: # B21 <- B20 B19 Freq: 605.054
  98. 0cd movl R13, RDI # spill
  99. 0d0 movapd XMM2, XMM3 # spill
  100. 0d4 jmp,s B21
  101. nop # 2 bytes pad for loops and calls
  102.  
  103. 0d8 B17: # B17 B18 <- B32 B17 Loop: B17-B17 inner post of N410 Freq: 2443.26
  104. 0d8 movl RBP, RBX # spill
  105. 0da addl RBP, RSI # int
  106. 0dc movsd XMM4, [R9 + #16 + RBP << #3] # double
  107. 0e3 movl RBP, RBX # spill
  108. 0e5 addl RBP, R11 # int
  109. 0e8 movsd XMM5, [RDX + #16 + RBP << #3] # double
  110. 0ee subsd XMM5, XMM4
  111. 0f2 mulsd XMM5, XMM5
  112. 0f6 addsd XMM3, XMM5
  113. 0fa incl RBX # int
  114. 0fc cmpl RBX, R8
  115. 0ff jl,s B17 # loop end P=0.500000 C=393216.000000
  116. 0ff
  117. 101 B18: # B19 <- B17 B33 top-of-loop Freq: 2443.26
  118. 101 movl RBX, [rsp + #0] # spill
  119. 104 movq RAX, [rsp + #8] # spill
  120. 104
  121. 109 B19: # B16 B20 <- B18 B23 Freq: 3257.68
  122. 109 ucomisd XMM0, XMM2 test
  123. 10d jnbe,us B16 P=0.062508 C=131071.000000
  124. 10d
  125. 10f B20: # B16 B21 <- B19 Freq: 3054.05
  126. 10f ucomisd XMM2, XMM3 test
  127. 113 jnbe,us B16 P=0.131439 C=122878.000000
  128. 113
  129. 115 B21: # B11 B22 <- B16 B20 Freq: 3257.68
  130. 115 incl RDI # int
  131. 117 cmpl RDI, [RSP + #4 (32-bit)]
  132. 11b jge B11 # loop end P=0.058824 C=131071.000000
  133. 11b
  134. 121 B22: # B24 B23 <- B15 B21 Loop: B22-B21 Freq: 3257.69
  135. 121 testl R8, R8
  136. 124 jg,s B24 P=0.750001 C=524287.000000
  137. 124
  138. 126 B23: # B19 <- B22 Freq: 814.419
  139. 126 xorpd XMM3, XMM3 # double 0.0
  140. 12a jmp,s B19
  141. 12a
  142. 12c B24: # B36 B25 <- B22 Freq: 2443.27
  143. 12c cmpl R11, R10 # unsigned
  144. 12f jnb,u B36 P=0.000001 C=-1.000000
  145. 12f
  146. 135 B25: # B36 B26 <- B24 Freq: 2443.27
  147. 135 movl RSI, [rsp + #20] # spill
  148. 139 cmpl RSI, R10 # unsigned
  149. 13c jnb,u B36 P=0.000001 C=-1.000000
  150. 13c
  151. 142 B26: # B36 B27 <- B25 Freq: 2443.27
  152. 142 movl RSI, RDI # spill
  153. 144 imull RSI, [RSP + #80 (32-bit)] # int
  154. 149 cmpl RSI, R14 # unsigned
  155. 14c jnb,u B36 P=0.000001 C=-1.000000
  156. 14c
  157. 152 B27: # B35 B28 <- B26 Freq: 2443.27
  158. 152 movq [rsp + #8], RAX # spill
  159. 157 movl [rsp + #0], RBX # spill
  160. 15a movl RAX, RSI # spill
  161. 15c addl RAX, R8 # int
  162. 15f decl RAX # int
  163. 161 cmpl RAX, R14 # unsigned
  164. 164 jnb,u B35 P=0.000001 C=-1.000000
  165. 164
  166. 16a B28: # B29 <- B27 Freq: 2443.26
  167. 16a xorl RBX, RBX # int
  168. 16c xorpd XMM3, XMM3 # double 0.0
  169. 16c
  170. 170 B29: # B29 B30 <- B28 B29 Loop: B29-B29 inner pre of N410 Freq: 4886.53
  171. 170 movl RBP, RBX # spill
  172. 172 addl RBP, RSI # int
  173. 174 movsd XMM4, [R9 + #16 + RBP << #3] # double
  174. 17b movl RBP, RBX # spill
  175. 17d addl RBP, R11 # int
  176. 180 movsd XMM5, [RDX + #16 + RBP << #3] # double
  177. 186 subsd XMM5, XMM4
  178. 18a mulsd XMM5, XMM5
  179. 18e addsd XMM3, XMM5
  180. 192 incl RBX # int
  181. 194 cmpl RBX, #1
  182. 197 jl,s B29 # loop end P=0.500000 C=393216.000000
  183. 197
  184. 199 B30: # B32 B31 <- B29 Freq: 2443.26
  185. 199 cmpl RBX, RCX
  186. 19b jge,s B32 P=0.000001 C=-1.000000
  187. nop # 3 bytes pad for loops and calls
  188.  
  189. 1a0 B31: # B31 B32 <- B30 B31 Loop: B31-B31 inner main of N156 Freq: 9773.1
  190. 1a0 movl RBP, RBX # spill
  191. 1a2 addl RBP, RSI # int
  192. 1a4 movsd XMM4, [R9 + #16 + RBP << #3] # double
  193. 1ab movl RAX, RBX # spill
  194. 1ad addl RAX, R11 # int
  195. 1b0 movsd XMM5, [RDX + #16 + RAX << #3] # double
  196. 1b6 subsd XMM5, XMM4
  197. 1ba mulsd XMM5, XMM5
  198. 1be addsd XMM5, XMM3
  199. 1c2 addl RBX, #2 # int
  200. 1c5 movslq RAX, RAX # i2l
  201. 1c8 movsd XMM3, [RDX + #24 + RAX << #3] # double
  202. 1ce movslq RAX, RBP # i2l
  203. 1d1 movsd XMM4, [R9 + #24 + RAX << #3] # double
  204. 1d8 subsd XMM3, XMM4
  205. 1dc mulsd XMM3, XMM3
  206. 1e0 addsd XMM3, XMM5
  207. 1e4 cmpl RBX, RCX
  208. 1e6 jl,s B31 # loop end P=0.750001 C=393216.000000
  209. 1e6
  210. 1e8 B32: # B17 B33 <- B30 B31 Freq: 2443.26
  211. 1e8 cmpl RBX, R8
  212. 1eb jl B17 P=0.500000 C=-1.000000
  213. 1eb
  214. 1f1 B33: # B18 <- B32 Freq: 1221.63
  215. 1f1 jmp B18
  216. 1f1
  217. 1f6 B34: # B12 <- B14 Freq: 11.9774
  218. 1f6 movapd XMM2, XMM1 # spill
  219. 1fa jmp B12
  220. 1fa
  221. 1ff B35: # B36 <- B27 Freq: 0.00247571
  222. 1ff movq RAX, [rsp + #8] # spill
  223. 1ff
  224. 204 B36: # N1 <- B35 B24 B25 B26 Freq: 0.00990286
  225. 204 movl RSI, #-122 # int
  226. 209 movq RBP, RDX # spill
  227. 20c movl [rsp + #0], R8 # spill
  228. 210 movq [rsp + #8], R9 # spill
  229. 215 movl [rsp + #20], RDI # spill
  230. 219 movsd [rsp + #24], XMM2 # spill
  231. 21f movl [rsp + #32], R13 # spill
  232. 224 movq [rsp + #40], RAX # spill
  233. 229 movl [rsp + #36], RBX # spill
  234. 22d nop # 2 bytes pad for loops and calls
  235. 22f call,static wrapper for: uncommon_trap(reason='predicate' action='maybe_recompile')
  236. # KmeansBoundsCheck::constructNearestClusterVector @ bci:60 L[0]=rsp + #40 L[1]=RBP L[2]=rsp + #36 L[3]=rsp + #0 L[4]=rsp + #8 L[5]=rsp + #4 L[6]=rsp + #80 L[7]=rsp + #16 L[8]=rsp + #20 L[9]=#0 L[10]=#0.000000D L[11]=_ L[12]=rsp + #24 L[13]=_ L[14]=rsp + #32 L[15]=_ L[16]=_
  237. # OopMap{rbp=Oop [8]=Oop [40]=Oop off=564}
  238. 234 int3 # ShouldNotReachHere
  239. 234
  240. 239 B37: # N1 <- B9 B7 B8 Freq: 3.02655e-08
  241. 239 movl RSI, #-122 # int
  242. 23e movq RBP, RDX # spill
  243. 241 movl [rsp + #0], R8 # spill
  244. 245 movq [rsp + #8], R9 # spill
  245. 24a movl [rsp + #4], RDI # spill
  246. 24e movq [rsp + #16], RAX # spill
  247. 253 movl [rsp + #24], RBX # spill
  248. 257 call,static wrapper for: uncommon_trap(reason='predicate' action='maybe_recompile')
  249. # KmeansBoundsCheck::constructNearestClusterVector @ bci:30 L[0]=rsp + #16 L[1]=RBP L[2]=rsp + #24 L[3]=rsp + #0 L[4]=rsp + #8 L[5]=rsp + #4 L[6]=rsp + #80 L[7]=#0 L[8]=_ L[9]=_ L[10]=_ L[11]=_ L[12]=_ L[13]=_ L[14]=_ L[15]=_ L[16]=_
  250. # OopMap{rbp=Oop [8]=Oop [16]=Oop off=604}
  251. 25c int3 # ShouldNotReachHere
  252. 25c
  253. 261 B38: # N1 <- B1 Freq: 1.01328e-06
  254. 261 movl RSI, #-10 # int
  255. 266 nop # 1 bytes pad for loops and calls
  256. 267 call,static wrapper for: uncommon_trap(reason='null_check' action='maybe_recompile')
  257. # KmeansBoundsCheck::constructNearestClusterVector @ bci:4 L[0]=_ L[1]=_ L[2]=_ L[3]=_ L[4]=_ L[5]=_ L[6]=_ L[7]=_ L[8]=_ L[9]=_ L[10]=_ L[11]=_ L[12]=_ L[13]=_ L[14]=_ L[15]=_ L[16]=_ STK[0]=_ STK[1]=#NULL
  258. # OopMap{off=620}
  259. 26c int3 # ShouldNotReachHere
  260. 26c
  261. 271 B39: # N1 <- B4 Freq: 1.01328e-07
  262. 271 movl RSI, #-10 # int
  263. 276 nop # 1 bytes pad for loops and calls
  264. 277 call,static wrapper for: uncommon_trap(reason='null_check' action='maybe_recompile')
  265. # KmeansBoundsCheck::constructNearestClusterVector @ bci:16 L[0]=_ L[1]=_ L[2]=_ L[3]=_ L[4]=_ L[5]=_ L[6]=_ L[7]=_ L[8]=_ L[9]=_ L[10]=_ L[11]=_ L[12]=_ L[13]=_ L[14]=_ L[15]=_ L[16]=_ STK[0]=_ STK[1]=#NULL
  266. # OopMap{off=636}
  267. 27c int3 # ShouldNotReachHere
  268. 27c
  269.  
  270. manohar@tflop1:~/java/twomethods/constant$ q
  271. q: command not found
  272. manohar@tflop1:~/java/twomethods/constant$ cat cleanedlogs.txt
  273. abababab N1: # B1 <- B75 B65 B71 B73 B6 B70 Freq: 1
  274. abababab
  275. 000 B1: # B68 B2 <- BLOCK HEAD IS JUNK Freq: 1
  276. 000 # stack bang
  277. pushq rbp
  278. subq rsp, #80 # Create frame
  279. 00c movl [rsp + #20], RDI # spill
  280. 010 movq [rsp + #24], R9 # spill
  281. 015 movl [rsp + #16], RCX # spill
  282. 019 movq [rsp + #8], RDX # spill
  283. 01e movq [rsp + #0], RSI # spill
  284. 022 movl RBP, R8 # spill
  285. 025 cmpl R8, #131072 # unsigned
  286. 02c jnbe,u B68 P=0.000001 C=-1.000000
  287. 02c
  288. 032 B2: # B68 B3 <- B1 Freq: 0.999999
  289. 032 movslq RCX, R8 # i2l
  290. 035 # TLS is in R15
  291. 035 movq R13, [R15 + #112 (8-bit)] # ptr
  292. 039 leaq R10, [R13 + #16 + RCX << #3] # ptr idxscaleoff
  293. 03e cmpq R10, [R15 + #128 (32-bit)] # raw ptr
  294. 045 jnb,u B68 P=0.000100 C=-1.000000
  295. 045
  296. 04b B3: # B4 <- B2 Freq: 0.999899
  297. 04b movq [R15 + #112 (8-bit)], R10 # ptr
  298. 04f movq RDI, R13 # spill
  299. 052 addq RDI, #16 # ptr
  300. 056 movq [R13], 0x0000000000000001 # ptr
  301. 05e PREFETCHNTA [R10 + #192 (32-bit)] # Prefetch to non-temporal cache for write
  302. 066 movl [R13 + #8 (8-bit)], narrowoop: precise klass [D: 0x000000000144c758:Constant:exact * # compressed ptr
  303. 06e movl [R13 + #12 (8-bit)], R8 # int
  304. 072 xorl rax, rax # ClearArray:
  305. rep stosq # Store rax to *rdi++ while rcx--
  306. 077 PREFETCHNTA [R10 + #256 (32-bit)] # Prefetch to non-temporal cache for write
  307. 07f PREFETCHNTA [R10 + #320 (32-bit)] # Prefetch to non-temporal cache for write
  308. 087 PREFETCHNTA [R10 + #384 (32-bit)] # Prefetch to non-temporal cache for write
  309. 087
  310. 08f B4: # B6 B5 <- B69 B3 Freq: 1
  311. 08f
  312. 08f # checkcastPP of R13
  313. 08f movl RCX, [rsp + #20] # spill
  314. 093 testl RCX, RCX
  315. 095 jle,s B6 P=0.500000 C=-1.000000
  316. 095
  317. 097 B5: # B21 <- B4 Freq: 0.5
  318. 097 movl R8, RBP # spill
  319. 09a decl R8 # int
  320. 09d movl RDI, RBP # spill
  321. 09f addl RDI, #-15 # int
  322. 0a2 movl RDX, [rsp + #16] # spill
  323. 0a6 decl RDX # int
  324. 0a8 movl RSI, [rsp + #96] # spill
  325. 0ac decl RSI # int
  326. 0ae movl RAX, [rsp + #96] # spill
  327. 0b2 addl RAX, #-7 # int
  328. 0b5 movl R10, #-2147483648 # int
  329. 0bb movl RBX, [rsp + #96] # spill
  330. 0bf cmpl RBX, RAX
  331. 0c1 cmovll RAX, R10 # signed, int
  332. 0c5 cmpl R8, RDI
  333. 0c8 cmovll RDI, R10 # signed, int
  334. 0cc # MachConstantBaseNode (empty encoding)
  335. 0cc movsd XMM3, [constant table base + #0] # load from constant table: double=#0.000000
  336. 0d4 xorl R10, R10 # int
  337. 0d7 jmp B21
  338. 0d7
  339. 0dc B6: # N1 <- B19 B4 Freq: 0.742731
  340. 0dc addq rsp, 80 # Destroy frame
  341. popq rbp
  342. testl rax, [rip + #offset_to_poll_page] # Safepoint: poll for GC
  343.  
  344. 0e7 ret
  345. 0e7
  346. 0e8 B7: # B8 <- B28 Freq: 9.80054e-06
  347. 0e8 movl [rsp + #44], R10 # spill
  348. 0ed movl [rsp + #40], RAX # spill
  349. 0f1 movl [rsp + #36], RSI # spill
  350. 0f5 movl [rsp + #32], RDX # spill
  351. 0f9 movl [rsp + #20], RDI # spill
  352. 0fd movl [rsp + #96], R8 # spill
  353. 102 xorl R14, R14 # int
  354. 105 movq RDI, [rsp + #0] # spill
  355. 109 movq RDX, [rsp + #8] # spill
  356. 109
  357. 10e B8: # B18 B9 <- B35 B7 Freq: 2.42731
  358. 10e testl RBX, RBX
  359. 110 jle B18 P=0.500000 C=-1.000000
  360. 110
  361. 116 B9: # B74 B10 <- B8 Freq: 1.21366
  362. 116 testl R14, R14
  363. 119 movl R10, #1 # int
  364. 11f cmovle R14, R10 # signed, int
  365. 123 testl RBP, RBP # unsigned
  366. 125 jbe,u B74 P=0.000001 C=-1.000000
  367. 125
  368. 12b B10: # B72 B11 <- B9 Freq: 1.21366
  369. 12b movl R10, [rsp + #36] # spill
  370. 130 cmpl R10, RBP # unsigned
  371. 133 jnb,u B72 P=0.000001 C=-1.000000
  372. 133
  373. 139 B11: # B73 B12 <- B10 Freq: 1.21365
  374. 139 movq RAX, [rsp + #24] # spill
  375. 13e movl RSI, [RAX + #12 (8-bit)] # range
  376. 141 NullCheck RAX
  377. 141
  378. 141 B12: # B73 B13 <- B11 Freq: 1.21365
  379. 141 movl R11, [rsp + #44] # spill
  380. 146 imull R11, RBX # int
  381. 14a cmpl R11, RSI # unsigned
  382. 14d jnb,u B73 P=0.000001 C=-1.000000
  383. 14d
  384. 153 B13: # B73 B14 <- B12 Freq: 1.21365
  385. 153 movl R10, R11 # spill
  386. 156 addl R10, RBX # int
  387. 159 decl R10 # int
  388. 15c cmpl R10, RSI # unsigned
  389. 15f jnb,u B73 P=0.000001 C=-1.000000
  390. 15f
  391. 165 B14: # B15 <- B13 Freq: 1.21365
  392. 165 cvtsi2sdl XMM0, R14 # i2d
  393. 16a xorl R10, R10 # int
  394. nop # 3 bytes pad for loops and calls
  395.  
  396. 170 B15: # B15 B16 <- B14 B15 Loop: B15-B15 inner pre of N659 Freq: 12.1365
  397. 170 movsd XMM1, [R13 + #16 + R10 << #3] # double
  398. 177 movl RSI, R10 # spill
  399. 17a addl RSI, R11 # int
  400. 17d divsd XMM1, XMM0
  401. 181 movsd [RAX + #16 + RSI << #3], XMM1 # double
  402. 187 incl R10 # int
  403. 18a cmpl R10, #1
  404. 18e jl,s B15 # loop end P=0.900000 C=-1.000000
  405. 18e
  406. 190 B16: # B60 B17 <- B15 Freq: 1.21365
  407. 190 cmpl R10, [RSP + #40 (32-bit)]
  408. 195 jl B60 P=0.999999 C=-1.000000
  409. 195
  410. 19b B17: # B61 <- B16 Freq: 1.22977e-06
  411. 19b movl RSI, R10 # spill
  412. 19e jmp B61
  413. 19e
  414. 1a3 B18: # B19 <- B8 Freq: 1.21366
  415. 1a3 movq RAX, [rsp + #24] # spill
  416. 1a3
  417. 1a8 B19: # B6 B20 <- B63 B61 B18 Freq: 2.42731
  418. 1a8 movl R10, [rsp + #44] # spill
  419. 1ad incl R10 # int
  420. 1b0 cmpl R10, RCX
  421. 1b3 jge B6 # loop end P=0.100000 C=-1.000000
  422. 1b3
  423. 1b9 B20: # B21 <- B19 Freq: 2.18458
  424. 1b9 movq [rsp + #0], RDI # spill
  425. 1bd movq [rsp + #8], RDX # spill
  426. 1c2 movl [rsp + #16], R9 # spill
  427. 1c7 movq [rsp + #24], RAX # spill
  428. 1cc movl R8, [rsp + #96] # spill
  429. 1d1 movl RDI, [rsp + #20] # spill
  430. 1d5 movl RDX, [rsp + #32] # spill
  431. 1d9 movl RSI, [rsp + #36] # spill
  432. 1dd movl RAX, [rsp + #40] # spill
  433. 1dd
  434. 1e1 B21: # B28 B22 <- B5 B20 Loop: B21-B20 Freq: 2.68458
  435. 1e1 testl RBP, RBP
  436. 1e3 jle,s B28 P=0.500000 C=-1.000000
  437. 1e3
  438. 1e5 B22: # B71 B23 <- B21 Freq: 1.34229
  439. 1e5 testl RBP, RBP # unsigned
  440. 1e7 jbe,u B71 P=0.000001 C=-1.000000
  441. 1e7
  442. 1ed B23: # B71 B24 <- B22 Freq: 1.34229
  443. 1ed cmpl R8, RBP # unsigned
  444. 1f0 jnb,u B71 P=0.000001 C=-1.000000
  445. 1f0
  446. 1f6 B24: # B25 <- B23 Freq: 1.34229
  447. 1f6 xorl R11, R11 # int
  448. nop # 3 bytes pad for loops and calls
  449.  
  450. 1fc B25: # B25 B26 <- B24 B25 Loop: B25-B25 inner pre of N638 Freq: 13.4229
  451. 1fc movq [R13 + #16 + R11 << #3], R12 # double 0. (R12_heapbase==0)
  452. 201 incl R11 # int
  453. 204 cmpl R11, #1
  454. 208 jl,s B25 # loop end P=0.900000 C=-1.000000
  455. 208
  456. 20a B26: # B55 B27 <- B25 Freq: 1.34229
  457. 20a cmpl R11, RDI
  458. 20d jl B55 P=0.999999 C=-1.000000
  459. 20d
  460. 213 B27: # B56 <- B26 Freq: 1.36011e-06
  461. 213 movl R14, R11 # spill
  462. 216 jmp B56
  463. 216
  464. 21b B28: # B7 B29 <- B58 B56 B21 Freq: 2.68458
  465. 21b movl R9, [rsp + #16] # spill
  466. 220 testl R9, R9
  467. 223 jle B7 P=0.000004 C=547842.000000
  468. 223
  469. 229 B29: # B70 B30 <- B28 Freq: 2.68457
  470. 229 movl [rsp + #44], R10 # spill
  471. 22e movl [rsp + #40], RAX # spill
  472. 232 movl [rsp + #36], RSI # spill
  473. 236 movl [rsp + #32], RDX # spill
  474. 23a movl [rsp + #20], RDI # spill
  475. 23e movl [rsp + #96], R8 # spill
  476. 243 movq RDI, [rsp + #0] # spill
  477. 247 movl R10, [RDI + #12 (8-bit)] # range
  478. 24b NullCheck RDI
  479. 24b
  480. 24b B30: # B70 B31 <- B29 Freq: 2.68456
  481. 24b testl R10, R10 # unsigned
  482. 24e jbe,u B70 P=0.000001 C=-1.000000
  483. 24e
  484. 254 B31: # B70 B32 <- B30 Freq: 2.68456
  485. 254 cmpl RDX, R10 # unsigned
  486. 257 jnb,u B70 P=0.000001 C=-1.000000
  487. 257
  488. 25d B32: # B37 <- B31 Freq: 2.68456
  489. 25d movl R10, [rsp + #44] # spill
  490. 262 cvtsi2sdl XMM0, R10 # i2d
  491. 267 xorl R10, R10 # int
  492. 26a xorl R14, R14 # int
  493. 26d jmp,s B37
  494. nop # 1 bytes pad for loops and calls
  495.  
  496. 270 B33: # B49 <- B49 top-of-loop Freq: 152728
  497. 270 movl RSI, R11 # spill
  498. 273 jmp B49
  499. 273
  500. 278 B34: # B35 <- B37 top-of-loop Freq: 599718
  501. 278 movq RDX, [rsp + #8] # spill
  502. 278
  503. 27d B35: # B8 B36 <- B53 B34 Freq: 667597
  504. 27d incl R10 # int
  505. 280 cmpl R10, R9
  506. 283 jge B8 # loop end P=0.000004 C=547840.000000
  507. 283
  508. 289 B36: # B37 <- B35 Freq: 667595
  509. 289 movq [rsp + #8], RDX # spill
  510. 289
  511. 28e B37: # B34 B38 <- B32 B36 Loop: B37-B36 Freq: 667597
  512. 28e movsd XMM1, [RDI + #16 + R10 << #3] # double
  513. 295 subsd XMM1, XMM0
  514. 299 andpd XMM1, [0x7fffffffffffffff] # abs double by sign masking
  515. 2a1 ucomisd XMM3, XMM1 test
  516. 2a5 jbe,us B34 P=0.898323 C=547840.000000
  517. 2a5
  518. 2a7 B38: # B40 B39 <- B37 Freq: 67879.6
  519. 2a7 testl RBP, RBP
  520. 2a9 jg,s B40 P=0.750000 C=222812.000000
  521. 2a9
  522. 2ab B39: # B53 <- B38 Freq: 16969.9
  523. 2ab movq RDX, [rsp + #8] # spill
  524. 2b0 jmp B53
  525. 2b0
  526. 2b5 B40: # B67 B41 <- B38 Freq: 50909.7
  527. 2b5 testl RBP, RBP # unsigned
  528. 2b7 jbe,u B67 P=0.000001 C=-1.000000
  529. 2b7
  530. 2bd B41: # B64 B42 <- B40 Freq: 50909.7
  531. 2bd movl R11, [rsp + #96] # spill
  532. 2c2 cmpl R11, RBP # unsigned
  533. 2c5 jnb,u B64 P=0.000001 C=-1.000000
  534. 2c5
  535. 2cb B42: # B65 B43 <- B41 Freq: 50909.6
  536. 2cb movq RDX, [rsp + #8] # spill
  537. 2d0 movl R11, [RDX + #12 (8-bit)] # range
  538. 2d4 NullCheck RDX
  539. 2d4
  540. 2d4 B43: # B65 B44 <- B42 Freq: 50909.6
  541. 2d4 movl R8, R10 # spill
  542. 2d7 imull R8, RBP # int
  543. 2db cmpl R8, R11 # unsigned
  544. 2de jnb,u B65 P=0.000001 C=-1.000000
  545. 2de
  546. 2e4 B44: # B65 B45 <- B43 Freq: 50909.5
  547. 2e4 movl RSI, R8 # spill
  548. 2e7 addl RSI, RBP # int
  549. 2e9 decl RSI # int
  550. 2eb cmpl RSI, R11 # unsigned
  551. 2ee jnb,u B65 P=0.000001 C=-1.000000
  552. 2ee
  553. 2f4 B45: # B46 <- B44 Freq: 50909.5
  554. 2f4 xorl RSI, RSI # int
  555. 2f6
  556. 2f6 B46: # B46 B47 <- B45 B46 Loop: B46-B46 inner pre of N652 Freq: 101819
  557. 2f6 movsd XMM1, [R13 + #16 + RSI << #3] # double
  558. 2fd movl R11, RSI # spill
  559. 300 addl R11, R8 # int
  560. 303 movsd XMM2, [RDX + #16 + R11 << #3] # double
  561. 30a addsd XMM1, XMM2
  562. 30e movsd [R13 + #16 + RSI << #3], XMM1 # double
  563. 315 incl RSI # int
  564. 317 cmpl RSI, #1
  565. 31a jl,s B46 # loop end P=0.500000 C=167109.000000
  566. 31a
  567. 31c B47: # B66 B48 <- B46 Freq: 50909.5
  568. 31c cmpl RSI, [RSP + #96 (32-bit)]
  569. 320 jge B66 P=0.000001 C=-1.000000
  570. 320
  571. 326 B48: # B49 <- B47 Freq: 50909.4
  572. 326 movl RAX, RCX # spill
  573. 326
  574. 328 B49: # B33 B50 <- B48 B33 Loop: B49-B33 inner main of N214 Freq: 203638
  575. 328 movsd XMM1, [R13 + #16 + RSI << #3] # double
  576. 32f movl RCX, RSI # spill
  577. 331 addl RCX, R8 # int
  578. 334 movsd XMM2, [RDX + #16 + RCX << #3] # double
  579. 33a addsd XMM1, XMM2
  580. 33e movsd [R13 + #16 + RSI << #3], XMM1 # double
  581. 345 movl R11, RSI # spill
  582. 348 addl R11, #2 # int
  583. 34c movslq RCX, RCX # i2l
  584. 34f movsd XMM1, [RDX + #24 + RCX << #3] # double
  585. 355 movslq RCX, RSI # i2l
  586. 358 movsd XMM2, [R13 + #24 + RCX << #3] # double
  587. 35f addsd XMM2, XMM1
  588. 363 movsd [R13 + #24 + RCX << #3], XMM2 # double
  589. 36a cmpl R11, [RSP + #96 (32-bit)]
  590. 36f jl B33 # loop end P=0.750000 C=167109.000000
  591. 36f
  592. 375 B50: # B51 <- B49 Freq: 50909.4
  593. 375 movl RCX, RAX # spill
  594. 375
  595. 377 B51: # B53 B52 <- B66 B50 Freq: 50909.5
  596. 377 cmpl R11, RBP
  597. 37a jge,s B53 P=0.500000 C=-1.000000
  598. 37a
  599. 37c B52: # B52 B53 <- B51 B52 Loop: B52-B52 inner post of N652 Freq: 50909.5
  600. 37c movsd XMM1, [R13 + #16 + R11 << #3] # double
  601. 383 movl RSI, R11 # spill
  602. 386 addl RSI, R8 # int
  603. 389 movsd XMM2, [RDX + #16 + RSI << #3] # double
  604. 38f addsd XMM1, XMM2
  605. 393 movsd [R13 + #16 + R11 << #3], XMM1 # double
  606. 39a incl R11 # int
  607. 39d cmpl R11, RBP
  608. 3a0 jl,s B52 # loop end P=0.500000 C=167109.000000
  609. 3a0
  610. 3a2 B53: # B35 <- B52 B51 B39 Freq: 67879.4
  611. 3a2 incl R14 # int
  612. 3a5 jmp B35
  613. nop # 6 bytes pad for loops and calls
  614.  
  615. 3b0 B54: # B55 <- B55 top-of-loop Freq: 12.0806
  616. 3b0 movl R11, R14 # spill
  617. 3b0
  618. 3b3 B55: # B54 B56 <- B26 B54 Loop: B55-B54 inner main of N274 Freq: 13.4228
  619. 3b3 movq [R13 + #16 + R11 << #3], R12 # double 0. (R12_heapbase==0)
  620. 3b8 movl R14, R11 # spill
  621. 3bb addl R14, #16 # int
  622. 3bf movslq R11, R11 # i2l
  623. 3c2 movq [R13 + #24 + R11 << #3], R12 # double 0. (R12_heapbase==0)
  624. 3c7 movq [R13 + #32 + R11 << #3], R12 # double 0. (R12_heapbase==0)
  625. 3cc movq [R13 + #40 + R11 << #3], R12 # double 0. (R12_heapbase==0)
  626. 3d1 movq [R13 + #48 + R11 << #3], R12 # double 0. (R12_heapbase==0)
  627. 3d6 movq [R13 + #56 + R11 << #3], R12 # double 0. (R12_heapbase==0)
  628. 3db movq [R13 + #64 + R11 << #3], R12 # double 0. (R12_heapbase==0)
  629. 3e0 movq [R13 + #72 + R11 << #3], R12 # double 0. (R12_heapbase==0)
  630. 3e5 movq [R13 + #80 + R11 << #3], R12 # double 0. (R12_heapbase==0)
  631. 3ea movq [R13 + #88 + R11 << #3], R12 # double 0. (R12_heapbase==0)
  632. 3ef movq [R13 + #96 + R11 << #3], R12 # double 0. (R12_heapbase==0)
  633. 3f4 movq [R13 + #104 + R11 << #3], R12 # double 0. (R12_heapbase==0)
  634. 3f9 movq [R13 + #112 + R11 << #3], R12 # double 0. (R12_heapbase==0)
  635. 3fe movq [R13 + #120 + R11 << #3], R12 # double 0. (R12_heapbase==0)
  636. 403 movq [R13 + #128 + R11 << #3], R12 # double 0. (R12_heapbase==0)
  637. 40b movq [R13 + #136 + R11 << #3], R12 # double 0. (R12_heapbase==0)
  638. 413 cmpl R14, RDI
  639. 416 jl,s B54 # loop end P=0.900000 C=-1.000000
  640. 416
  641. 418 B56: # B28 B57 <- B27 B55 Freq: 1.34229
  642. 418 cmpl R14, RBP
  643. 41b jge B28 P=0.500000 C=-1.000000
  644. nop # 3 bytes pad for loops and calls
  645.  
  646. 424 B57: # B57 B58 <- B56 B57 Loop: B57-B57 inner post of N638 Freq: 6.71143
  647. 424 movq [R13 + #16 + R14 << #3], R12 # double 0. (R12_heapbase==0)
  648. 429 incl R14 # int
  649. 42c cmpl R14, RBP
  650. 42f jl,s B57 # loop end P=0.900000 C=-1.000000
  651. 42f
  652. 431 B58: # B28 <- B57 Freq: 0.671143
  653. 431 jmp B28
  654. nop # 10 bytes pad for loops and calls
  655.  
  656. 440 B59: # B60 <- B60 top-of-loop Freq: 10.9228
  657. 440 movl R10, RSI # spill
  658. 440
  659. 443 B60: # B59 B61 <- B16 B59 Loop: B60-B59 inner main of N250 Freq: 12.1365
  660. 443 movsd XMM1, [R13 + #16 + R10 << #3] # double
  661. 44a movl R8, R10 # spill
  662. 44d addl R8, R11 # int
  663. 450 divsd XMM1, XMM0
  664. 454 movsd [RAX + #16 + R8 << #3], XMM1 # double
  665. 45b movl RSI, R10 # spill
  666. 45e addl RSI, #8 # int
  667. 461 movslq R10, R10 # i2l
  668. 464 movsd XMM1, [R13 + #24 + R10 << #3] # double
  669. 46b divsd XMM1, XMM0
  670. 46f movslq R8, R8 # i2l
  671. 472 movsd [RAX + #24 + R8 << #3], XMM1 # double
  672. 479 movsd XMM1, [R13 + #32 + R10 << #3] # double
  673. 480 divsd XMM1, XMM0
  674. 484 movsd [RAX + #32 + R8 << #3], XMM1 # double
  675. 48b movsd XMM1, [R13 + #40 + R10 << #3] # double
  676. 492 divsd XMM1, XMM0
  677. 496 movsd [RAX + #40 + R8 << #3], XMM1 # double
  678. 49d movsd XMM1, [R13 + #48 + R10 << #3] # double
  679. 4a4 divsd XMM1, XMM0
  680. 4a8 movsd [RAX + #48 + R8 << #3], XMM1 # double
  681. 4af movsd XMM1, [R13 + #56 + R10 << #3] # double
  682. 4b6 divsd XMM1, XMM0
  683. 4ba movsd [RAX + #56 + R8 << #3], XMM1 # double
  684. 4c1 movsd XMM1, [R13 + #64 + R10 << #3] # double
  685. 4c8 divsd XMM1, XMM0
  686. 4cc movsd [RAX + #64 + R8 << #3], XMM1 # double
  687. 4d3 movsd XMM1, [R13 + #72 + R10 << #3] # double
  688. 4da divsd XMM1, XMM0
  689. 4de movsd [RAX + #72 + R8 << #3], XMM1 # double
  690. 4e5 cmpl RSI, [RSP + #40 (32-bit)]
  691. 4e9 jl B59 # loop end P=0.900000 C=-1.000000
  692. 4e9
  693. 4ef B61: # B19 B62 <- B17 B60 Freq: 1.21365
  694. 4ef cmpl RSI, RBX
  695. 4f1 jge B19 P=0.500000 C=-1.000000
  696. nop # 1 bytes pad for loops and calls
  697.  
  698. 4f8 B62: # B62 B63 <- B61 B62 Loop: B62-B62 inner post of N659 Freq: 6.06826
  699. 4f8 movsd XMM1, [R13 + #16 + RSI << #3] # double
  700. 4ff movl R10, RSI # spill
  701. 502 addl R10, R11 # int
  702. 505 divsd XMM1, XMM0
  703. 509 movsd [RAX + #16 + R10 << #3], XMM1 # double
  704. 510 incl RSI # int
  705. 512 cmpl RSI, RBX
  706. 514 jl,s B62 # loop end P=0.900000 C=-1.000000
  707. 514
  708. 516 B63: # B19 <- B62 Freq: 0.606826
  709. 516 jmp B19
  710. 516
  711. 51b B64: # B65 <- B41 Freq: 0.0515857
  712. 51b movq RDX, [rsp + #8] # spill
  713. 51b
  714. 520 B65: # N1 <- B44 B67 B64 B42 B43 Freq: 0.257252
  715. 520 movl RSI, #-122 # int
  716. 525 movq [rsp + #0], RDI # spill
  717. 529 movq [rsp + #8], RDX # spill
  718. 52e movl [rsp + #96], R9 # spill
  719. 533 movq R11, [rsp + #24] # spill
  720. 538 movq [rsp + #16], R11 # spill
  721. 53d movl [rsp + #24], RBX # spill
  722. 541 movq [rsp + #32], R13 # spill
  723. 546 movq [rsp - #8], rax # 32-bit mem-mem spill
  724. movl rax, [rsp + #44]
  725. movl [rsp + #28], rax
  726. movq rax, [rsp - #8]
  727. 558 movl [rsp + #40], R14 # spill
  728. 55d movl [rsp + #44], R10 # spill
  729. 562 movl [rsp + #48], RCX # spill
  730. 566 nop # 1 bytes pad for loops and calls
  731. 567 call,static wrapper for: uncommon_trap(reason='predicate' action='maybe_recompile')
  732. # KmeansBoundsCheck::computeNewCentroids @ bci:75 L[0]=rsp + #0 L[1]=rsp + #8 L[2]=rsp + #96 L[3]=RBP L[4]=rsp + #16 L[5]=rsp + #48 L[6]=rsp + #24 L[7]=rsp + #32 L[8]=rsp + #28 L[9]=rsp + #40 L[10]=rsp + #44 L[11]=#0
  733. # OopMap{[0]=Oop [8]=Oop [16]=Oop [32]=Oop off=1388}
  734. 56c int3 # ShouldNotReachHere
  735. 56c
  736. 571 B66: # B51 <- B47 Freq: 0.0515855
  737. 571 movl R11, RSI # spill
  738. 574 jmp B51
  739. 574
  740. 579 B67: # B65 <- B40 Freq: 0.0509097
  741. 579 movq RDX, [rsp + #8] # spill
  742. 57e jmp,s B65
  743. 57e
  744. 580 B68: # B75 B69 <- B1 B2 Freq: 0.00010103
  745. 580 movq RSI, precise klass [D: 0x000000000144c758:Constant:exact * # ptr
  746. 58a movl RDX, R8 # spill
  747. 58d nop # 2 bytes pad for loops and calls
  748. 58f call,static wrapper for: _new_array_Java
  749. # KmeansBoundsCheck::computeNewCentroids @ bci:1 L[0]=rsp + #0 L[1]=rsp + #8 L[2]=rsp + #16 L[3]=RBP L[4]=rsp + #24 L[5]=rsp + #20 L[6]=rsp + #96 L[7]=_ L[8]=_ L[9]=_ L[10]=_ L[11]=_
  750. # OopMap{[0]=Oop [8]=Oop [24]=Oop off=1428}
  751. 594
  752. 594 B69: # B4 <- B68 Freq: 0.000101028
  753. # Block is sole successor of call
  754. 594 movq R13, RAX # spill
  755. 597 jmp B4
  756. 597
  757. 59c B70: # N1 <- B31 B29 B30 Freq: 8.12498e-06
  758. 59c movl RSI, #-122 # int
  759. 5a1 movq [rsp - #8], rax # 32-bit mem-mem spill
  760. movl rax, [rsp + #16]
  761. movl [rsp + #96], rax
  762. movq rax, [rsp - #8]
  763. 5b3 movq R10, [rsp + #24] # spill
  764. 5b8 movq [rsp + #16], R10 # spill
  765. 5bd movl [rsp + #24], RBX # spill
  766. 5c1 movq [rsp + #32], R13 # spill
  767. 5c6 movl [rsp + #40], RCX # spill
  768. 5ca nop # 1 bytes pad for loops and calls
  769. 5cb call,static wrapper for: uncommon_trap(reason='predicate' action='maybe_recompile')
  770. # KmeansBoundsCheck::computeNewCentroids @ bci:48 L[0]=rsp + #0 L[1]=rsp + #8 L[2]=rsp + #96 L[3]=RBP L[4]=rsp + #16 L[5]=rsp + #40 L[6]=rsp + #24 L[7]=rsp + #32 L[8]=rsp + #44 L[9]=#0 L[10]=#0 L[11]=_
  771. # OopMap{[0]=Oop [8]=Oop [16]=Oop [32]=Oop off=1488}
  772. 5d0 int3 # ShouldNotReachHere
  773. 5d0
  774. 5d5 B71: # N1 <- B23 B22 Freq: 2.7024e-06
  775. 5d5 movl RSI, #-122 # int
  776. 5da movl R11, [rsp + #16] # spill
  777. 5df movl [rsp + #96], R11 # spill
  778. 5e4 movq R11, [rsp + #24] # spill
  779. 5e9 movq [rsp + #16], R11 # spill
  780. 5ee movl [rsp + #24], RBX # spill
  781. 5f2 movq [rsp + #32], R13 # spill
  782. 5f7 movl [rsp + #28], R10 # spill
  783. 5fc movl [rsp + #40], RCX # spill
  784. 600 nop # 3 bytes pad for loops and calls
  785. 603 call,static wrapper for: uncommon_trap(reason='predicate' action='maybe_recompile')
  786. # KmeansBoundsCheck::computeNewCentroids @ bci:24 L[0]=rsp + #0 L[1]=rsp + #8 L[2]=rsp + #96 L[3]=RBP L[4]=rsp + #16 L[5]=rsp + #40 L[6]=rsp + #24 L[7]=rsp + #32 L[8]=rsp + #28 L[9]=#0 L[10]=_ L[11]=_
  787. # OopMap{[0]=Oop [8]=Oop [16]=Oop [32]=Oop off=1544}
  788. 608 int3 # ShouldNotReachHere
  789. 608
  790. 60d B72: # B73 <- B10 Freq: 1.22977e-06
  791. 60d movq RAX, [rsp + #24] # spill
  792. 60d
  793. 612 B73: # N1 <- B13 B74 B72 B11 B12 Freq: 6.13274e-06
  794. 612 movl RSI, #-122 # int
  795. 617 movq [rsp + #0], RDI # spill
  796. 61b movq [rsp + #8], RDX # spill
  797. 620 movl [rsp + #96], R9 # spill
  798. 625 movq [rsp + #16], RAX # spill
  799. 62a movl [rsp + #24], RBX # spill
  800. 62e movq [rsp + #32], R13 # spill
  801. 633 movq [rsp - #8], rax # 32-bit mem-mem spill
  802. movl rax, [rsp + #44]
  803. movl [rsp + #28], rax
  804. movq rax, [rsp - #8]
  805. 645 movl [rsp + #40], R14 # spill
  806. 64a movl [rsp + #44], RCX # spill
  807. 64e nop # 1 bytes pad for loops and calls
  808. 64f call,static wrapper for: uncommon_trap(reason='predicate' action='maybe_recompile')
  809. # KmeansBoundsCheck::computeNewCentroids @ bci:125 L[0]=rsp + #0 L[1]=rsp + #8 L[2]=rsp + #96 L[3]=RBP L[4]=rsp + #16 L[5]=rsp + #44 L[6]=rsp + #24 L[7]=rsp + #32 L[8]=rsp + #28 L[9]=rsp + #40 L[10]=#0 L[11]=_
  810. # OopMap{[0]=Oop [8]=Oop [16]=Oop [32]=Oop off=1620}
  811. 654 int3 # ShouldNotReachHere
  812. 654
  813. 659 B74: # B73 <- B9 Freq: 1.21366e-06
  814. 659 movq RAX, [rsp + #24] # spill
  815. 65e jmp,s B73
  816. 65e
  817. 660 B75: # N1 <- B68 Freq: 1.0103e-09
  818. 660 # exception oop is in rax; no code emitted
  819. 660 movq RSI, RAX # spill
  820. 663 addq rsp, 80 # Destroy frame
  821. popq rbp
  822.  
  823. 668 jmp rethrow_stub
  824. 668
Advertisement
Add Comment
Please, Sign In to add comment