encodeblock_amd64.go 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. // Code generated by command: go run gen.go -out encodeblock_amd64.s -stubs encodeblock_amd64.go. DO NOT EDIT.
  2. // +build !appengine
  3. // +build !noasm
  4. // +build gc
  5. package s2
  6. // encodeBlockAsm encodes a non-empty src to a guaranteed-large-enough dst.
  7. // It assumes that the varint-encoded length of the decompressed bytes has already been written.
  8. //
  9. //go:noescape
  10. func encodeBlockAsm(dst []byte, src []byte) int
  11. // encodeBlockAsm12B encodes a non-empty src to a guaranteed-large-enough dst.
  12. // It assumes that the varint-encoded length of the decompressed bytes has already been written.
  13. //
  14. //go:noescape
  15. func encodeBlockAsm12B(dst []byte, src []byte) int
  16. // encodeBlockAsm10B encodes a non-empty src to a guaranteed-large-enough dst.
  17. // It assumes that the varint-encoded length of the decompressed bytes has already been written.
  18. //
  19. //go:noescape
  20. func encodeBlockAsm10B(dst []byte, src []byte) int
  21. // encodeBlockAsm8B encodes a non-empty src to a guaranteed-large-enough dst.
  22. // It assumes that the varint-encoded length of the decompressed bytes has already been written.
  23. //
  24. //go:noescape
  25. func encodeBlockAsm8B(dst []byte, src []byte) int
  26. // encodeBlockAsmAvx encodes a non-empty src to a guaranteed-large-enough dst.
  27. // It assumes that the varint-encoded length of the decompressed bytes has already been written.
  28. //
  29. //go:noescape
  30. func encodeBlockAsmAvx(dst []byte, src []byte) int
  31. // encodeBlockAsm12BAvx encodes a non-empty src to a guaranteed-large-enough dst.
  32. // It assumes that the varint-encoded length of the decompressed bytes has already been written.
  33. //
  34. //go:noescape
  35. func encodeBlockAsm12BAvx(dst []byte, src []byte) int
  36. // encodeBlockAsm10BAvx encodes a non-empty src to a guaranteed-large-enough dst.
  37. // It assumes that the varint-encoded length of the decompressed bytes has already been written.
  38. //
  39. //go:noescape
  40. func encodeBlockAsm10BAvx(dst []byte, src []byte) int
  41. // encodeBlockAsm8BAvx encodes a non-empty src to a guaranteed-large-enough dst.
  42. // It assumes that the varint-encoded length of the decompressed bytes has already been written.
  43. //
  44. //go:noescape
  45. func encodeBlockAsm8BAvx(dst []byte, src []byte) int
  46. // encodeSnappyBlockAsm encodes a non-empty src to a guaranteed-large-enough dst.
  47. // It assumes that the varint-encoded length of the decompressed bytes has already been written.
  48. //
  49. //go:noescape
  50. func encodeSnappyBlockAsm(dst []byte, src []byte) int
  51. // encodeSnappyBlockAsm12B encodes a non-empty src to a guaranteed-large-enough dst.
  52. // It assumes that the varint-encoded length of the decompressed bytes has already been written.
  53. //
  54. //go:noescape
  55. func encodeSnappyBlockAsm12B(dst []byte, src []byte) int
  56. // encodeSnappyBlockAsm10B encodes a non-empty src to a guaranteed-large-enough dst.
  57. // It assumes that the varint-encoded length of the decompressed bytes has already been written.
  58. //
  59. //go:noescape
  60. func encodeSnappyBlockAsm10B(dst []byte, src []byte) int
  61. // encodeSnappyBlockAsm8B encodes a non-empty src to a guaranteed-large-enough dst.
  62. // It assumes that the varint-encoded length of the decompressed bytes has already been written.
  63. //
  64. //go:noescape
  65. func encodeSnappyBlockAsm8B(dst []byte, src []byte) int
  66. // encodeSnappyBlockAsmAvx encodes a non-empty src to a guaranteed-large-enough dst.
  67. // It assumes that the varint-encoded length of the decompressed bytes has already been written.
  68. //
  69. //go:noescape
  70. func encodeSnappyBlockAsmAvx(dst []byte, src []byte) int
  71. // encodeSnappyBlockAsm12BAvx encodes a non-empty src to a guaranteed-large-enough dst.
  72. // It assumes that the varint-encoded length of the decompressed bytes has already been written.
  73. //
  74. //go:noescape
  75. func encodeSnappyBlockAsm12BAvx(dst []byte, src []byte) int
  76. // encodeSnappyBlockAsm10BAvx encodes a non-empty src to a guaranteed-large-enough dst.
  77. // It assumes that the varint-encoded length of the decompressed bytes has already been written.
  78. //
  79. //go:noescape
  80. func encodeSnappyBlockAsm10BAvx(dst []byte, src []byte) int
  81. // encodeSnappyBlockAsm8BAvx encodes a non-empty src to a guaranteed-large-enough dst.
  82. // It assumes that the varint-encoded length of the decompressed bytes has already been written.
  83. //
  84. //go:noescape
  85. func encodeSnappyBlockAsm8BAvx(dst []byte, src []byte) int
  86. // emitLiteral writes a literal chunk and returns the number of bytes written.
  87. //
  88. // It assumes that:
  89. // dst is long enough to hold the encoded bytes
  90. // 0 <= len(lit) && len(lit) <= math.MaxUint32
  91. //
  92. //go:noescape
  93. func emitLiteral(dst []byte, lit []byte) int
  94. // emitLiteralAvx writes a literal chunk and returns the number of bytes written.
  95. //
  96. // It assumes that:
  97. // dst is long enough to hold the encoded bytes
  98. // 0 <= len(lit) && len(lit) <= math.MaxUint32
  99. //
  100. //go:noescape
  101. func emitLiteralAvx(dst []byte, lit []byte) int
  102. // emitRepeat writes a repeat chunk and returns the number of bytes written.
  103. // Length must be at least 4 and < 1<<32
  104. //
  105. //go:noescape
  106. func emitRepeat(dst []byte, offset int, length int) int
  107. // emitCopy writes a copy chunk and returns the number of bytes written.
  108. //
  109. // It assumes that:
  110. // dst is long enough to hold the encoded bytes
  111. // 1 <= offset && offset <= math.MaxUint32
  112. // 4 <= length && length <= 1 << 24
  113. //
  114. //go:noescape
  115. func emitCopy(dst []byte, offset int, length int) int
  116. // emitCopyNoRepeat writes a copy chunk and returns the number of bytes written.
  117. //
  118. // It assumes that:
  119. // dst is long enough to hold the encoded bytes
  120. // 1 <= offset && offset <= math.MaxUint32
  121. // 4 <= length && length <= 1 << 24
  122. //
  123. //go:noescape
  124. func emitCopyNoRepeat(dst []byte, offset int, length int) int
  125. // matchLen returns how many bytes match in a and b
  126. //
  127. // It assumes that:
  128. // len(a) <= len(b)
  129. //
  130. //go:noescape
  131. func matchLen(a []byte, b []byte) int