1. .file "compression_bench.cpp"
  2. .text
  3. .align 16, 0x90
  4. .type _Z7mainGtUjjPhPtjPi,@function
  5. _Z7mainGtUjjPhPtjPi: # @_Z7mainGtUjjPhPtjPi
  6. .cfi_startproc
  7. # BB#0: # %entry
  8. .Ltmp244:
  9. .Ltmp245:
  10. .Ltmp246:
  11. .Ltmp247:
  12. # kill: R8D<def> R8D<kill> R8<def>
  13. # kill: ESI<def> ESI<kill> RSI<def>
  14. # kill: EDI<def> EDI<kill> RDI<def>
  15. movzbl (%rdx,%rsi), %eax
  16. cmpb %al, (%rdx,%rdi)
  17. jne .LBB27_1
  18. # BB#2: # %if.end
  19. movzbl 1(%rdx,%rsi), %eax
  20. cmpb %al, 1(%rdx,%rdi)
  21. jne .LBB27_1
  22. # BB#3: # %if.end21
  23. movzbl 2(%rdx,%rsi), %eax
  24. cmpb %al, 2(%rdx,%rdi)
  25. jne .LBB27_1
  26. # BB#4: # %if.end36
  27. movzbl 3(%rdx,%rsi), %eax
  28. cmpb %al, 3(%rdx,%rdi)
  29. jne .LBB27_1
  30. # BB#5: # %if.end51
  31. movzbl 4(%rdx,%rsi), %eax
  32. cmpb %al, 4(%rdx,%rdi)
  33. jne .LBB27_1
  34. # BB#6: # %if.end66
  35. movzbl 5(%rdx,%rsi), %eax
  36. cmpb %al, 5(%rdx,%rdi)
  37. jne .LBB27_1
  38. # BB#7: # %if.end81
  39. movzbl 6(%rdx,%rsi), %eax
  40. cmpb %al, 6(%rdx,%rdi)
  41. jne .LBB27_1
  42. # BB#8: # %if.end96
  43. movzbl 7(%rdx,%rsi), %eax
  44. cmpb %al, 7(%rdx,%rdi)
  45. jne .LBB27_1
  46. # BB#9: # %if.end111
  47. movzbl 8(%rdx,%rsi), %eax
  48. cmpb %al, 8(%rdx,%rdi)
  49. jne .LBB27_1
  50. # BB#10: # %if.end126
  51. movzbl 9(%rdx,%rsi), %eax
  52. cmpb %al, 9(%rdx,%rdi)
  53. jne .LBB27_1
  54. # BB#11: # %if.end141
  55. movzbl 10(%rdx,%rsi), %eax
  56. cmpb %al, 10(%rdx,%rdi)
  57. jne .LBB27_1
  58. # BB#12: # %if.end156
  59. movzbl 11(%rdx,%rsi), %eax
  60. cmpb %al, 11(%rdx,%rdi)
  61. jne .LBB27_1
  62. # BB#13: # %if.end171
  63. addl $12, %edi
  64. addl $12, %esi
  65. leal 8(%r8), %r10d
  66. .LBB27_14: # %do.body174
  67. # =>This Inner Loop Header: Depth=1
  68. movzbl (%rdx,%rsi), %eax
  69. cmpb %al, (%rdx,%rdi)
  70. jne .LBB27_1
  71. # BB#15: # %if.end187
  72. # in Loop: Header=BB27_14 Depth=1
  73. movzwl (%rcx,%rsi,2), %eax
  74. cmpw %ax, (%rcx,%rdi,2)
  75. jne .LBB27_1
  76. # BB#17: # %if.end200
  77. # in Loop: Header=BB27_14 Depth=1
  78. movzbl 1(%rdx,%rsi), %eax
  79. cmpb %al, 1(%rdx,%rdi)
  80. jne .LBB27_1
  81. # BB#19: # %if.end215
  82. # in Loop: Header=BB27_14 Depth=1
  83. movzwl 2(%rcx,%rsi,2), %eax
  84. cmpw %ax, 2(%rcx,%rdi,2)
  85. jne .LBB27_1
  86. # BB#21: # %if.end228
  87. # in Loop: Header=BB27_14 Depth=1
  88. movzbl 2(%rdx,%rsi), %eax
  89. cmpb %al, 2(%rdx,%rdi)
  90. jne .LBB27_1
  91. # BB#22: # %if.end243
  92. # in Loop: Header=BB27_14 Depth=1
  93. movzwl 4(%rcx,%rsi,2), %eax
  94. cmpw %ax, 4(%rcx,%rdi,2)
  95. jne .LBB27_1
  96. # BB#23: # %if.end256
  97. # in Loop: Header=BB27_14 Depth=1
  98. movzbl 3(%rdx,%rsi), %eax
  99. cmpb %al, 3(%rdx,%rdi)
  100. jne .LBB27_1
  101. # BB#24: # %if.end271
  102. # in Loop: Header=BB27_14 Depth=1
  103. movzwl 6(%rcx,%rsi,2), %eax
  104. cmpw %ax, 6(%rcx,%rdi,2)
  105. jne .LBB27_1
  106. # BB#25: # %if.end284
  107. # in Loop: Header=BB27_14 Depth=1
  108. movzbl 4(%rdx,%rsi), %eax
  109. cmpb %al, 4(%rdx,%rdi)
  110. jne .LBB27_1
  111. # BB#27: # %if.end299
  112. # in Loop: Header=BB27_14 Depth=1
  113. movzwl 8(%rcx,%rsi,2), %eax
  114. cmpw %ax, 8(%rcx,%rdi,2)
  115. jne .LBB27_1
  116. # BB#28: # %if.end312
  117. # in Loop: Header=BB27_14 Depth=1
  118. movzbl 5(%rdx,%rsi), %eax
  119. cmpb %al, 5(%rdx,%rdi)
  120. jne .LBB27_1
  121. # BB#30: # %if.end327
  122. # in Loop: Header=BB27_14 Depth=1
  123. movzwl 10(%rcx,%rsi,2), %eax
  124. cmpw %ax, 10(%rcx,%rdi,2)
  125. jne .LBB27_1
  126. # BB#32: # %if.end340
  127. # in Loop: Header=BB27_14 Depth=1
  128. movzbl 6(%rdx,%rsi), %eax
  129. cmpb %al, 6(%rdx,%rdi)
  130. jne .LBB27_1
  131. # BB#33: # %if.end355
  132. # in Loop: Header=BB27_14 Depth=1
  133. movzwl 12(%rcx,%rsi,2), %eax
  134. cmpw %ax, 12(%rcx,%rdi,2)
  135. jne .LBB27_1
  136. # BB#34: # %if.end368
  137. # in Loop: Header=BB27_14 Depth=1
  138. movzbl 7(%rdx,%rsi), %eax
  139. cmpb %al, 7(%rdx,%rdi)
  140. jne .LBB27_1
  141. # BB#35: # %if.end383
  142. # in Loop: Header=BB27_14 Depth=1
  143. movzwl 14(%rcx,%rsi,2), %eax
  144. cmpw %ax, 14(%rcx,%rdi,2)
  145. jne .LBB27_1
  146. # BB#36: # %if.end396
  147. # in Loop: Header=BB27_14 Depth=1
  148. addl $8, %edi
  149. addl $8, %esi
  150. movl %edi, %eax
  151. subl %r8d, %eax
  152. cmovae %eax, %edi
  153. movl %esi, %eax
  154. subl %r8d, %eax
  155. cmovae %eax, %esi
  156. decl (%r9)
  157. addl $-8, %r10d
  158. jns .LBB27_14
  159. xorl %eax, %eax
  160. ret
  161. .LBB27_1: # %if.then
  162. seta %al
  163. movzbl %al, %eax
  164. ret
  165. .Ltmp248:
  166. .size _Z7mainGtUjjPhPtjPi, .Ltmp248-_Z7mainGtUjjPhPtjPi
  167. .cfi_endproc
  168. .ident "clang version 3.5 "
  169. .section ".note.GNU-stack","",@progbits