ruby_snowflake_client 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2097) hide show
  1. checksums.yaml +7 -0
  2. data/.github/dependabot.yml +11 -0
  3. data/.github/workflows/ci.yml +42 -0
  4. data/.github/workflows/release.yml +30 -0
  5. data/.gitignore +10 -0
  6. data/Gemfile +12 -0
  7. data/Gemfile.lock +43 -0
  8. data/LICENSE.txt +21 -0
  9. data/README.md +130 -0
  10. data/Rakefile +3 -0
  11. data/ext/c-decl.go +54 -0
  12. data/ext/extconf.rb +21 -0
  13. data/ext/go.mod +60 -0
  14. data/ext/go.sum +173 -0
  15. data/ext/result.go +181 -0
  16. data/ext/ruby_snowflake.go +179 -0
  17. data/ext/vendor/github.com/99designs/go-keychain/.gitignore +24 -0
  18. data/ext/vendor/github.com/99designs/go-keychain/.golangci.yml +11 -0
  19. data/ext/vendor/github.com/99designs/go-keychain/.travis.yml +20 -0
  20. data/ext/vendor/github.com/99designs/go-keychain/LICENSE +22 -0
  21. data/ext/vendor/github.com/99designs/go-keychain/README.md +159 -0
  22. data/ext/vendor/github.com/99designs/go-keychain/corefoundation.go +359 -0
  23. data/ext/vendor/github.com/99designs/go-keychain/datetime.go +68 -0
  24. data/ext/vendor/github.com/99designs/go-keychain/ios.go +22 -0
  25. data/ext/vendor/github.com/99designs/go-keychain/keychain.go +531 -0
  26. data/ext/vendor/github.com/99designs/go-keychain/macos.go +272 -0
  27. data/ext/vendor/github.com/99designs/go-keychain/util.go +31 -0
  28. data/ext/vendor/github.com/99designs/keyring/.gitattributes +1 -0
  29. data/ext/vendor/github.com/99designs/keyring/.gitignore +1 -0
  30. data/ext/vendor/github.com/99designs/keyring/.golangci.yml +39 -0
  31. data/ext/vendor/github.com/99designs/keyring/LICENSE +22 -0
  32. data/ext/vendor/github.com/99designs/keyring/README.md +67 -0
  33. data/ext/vendor/github.com/99designs/keyring/Vagrantfile +85 -0
  34. data/ext/vendor/github.com/99designs/keyring/array.go +54 -0
  35. data/ext/vendor/github.com/99designs/keyring/config.go +58 -0
  36. data/ext/vendor/github.com/99designs/keyring/docker-compose.yml +7 -0
  37. data/ext/vendor/github.com/99designs/keyring/file.go +181 -0
  38. data/ext/vendor/github.com/99designs/keyring/keychain.go +296 -0
  39. data/ext/vendor/github.com/99designs/keyring/keyctl.go +327 -0
  40. data/ext/vendor/github.com/99designs/keyring/keyring.go +134 -0
  41. data/ext/vendor/github.com/99designs/keyring/kwallet.go +237 -0
  42. data/ext/vendor/github.com/99designs/keyring/pass.go +166 -0
  43. data/ext/vendor/github.com/99designs/keyring/prompt.go +27 -0
  44. data/ext/vendor/github.com/99designs/keyring/secretservice.go +293 -0
  45. data/ext/vendor/github.com/99designs/keyring/tilde.go +22 -0
  46. data/ext/vendor/github.com/99designs/keyring/wincred.go +98 -0
  47. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/CHANGELOG.md +537 -0
  48. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/LICENSE.txt +21 -0
  49. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/README.md +39 -0
  50. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/ci.yml +29 -0
  51. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/cloud/cloud.go +44 -0
  52. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/cloud/doc.go +53 -0
  53. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/core.go +113 -0
  54. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/doc.go +257 -0
  55. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/errors.go +14 -0
  56. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/etag.go +48 -0
  57. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/exported/exported.go +83 -0
  58. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/exported/pipeline.go +97 -0
  59. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/exported/request.go +182 -0
  60. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/exported/response_error.go +142 -0
  61. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/log/log.go +38 -0
  62. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers/async/async.go +158 -0
  63. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers/body/body.go +134 -0
  64. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers/loc/loc.go +118 -0
  65. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers/op/op.go +144 -0
  66. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers/poller.go +24 -0
  67. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers/util.go +317 -0
  68. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/shared/constants.go +35 -0
  69. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/shared/shared.go +159 -0
  70. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/log/doc.go +10 -0
  71. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/log/log.go +50 -0
  72. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/policy/doc.go +10 -0
  73. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/policy/policy.go +155 -0
  74. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/doc.go +10 -0
  75. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/errors.go +19 -0
  76. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/pager.go +77 -0
  77. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/pipeline.go +66 -0
  78. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_api_version.go +75 -0
  79. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_bearer_token.go +116 -0
  80. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_body_download.go +73 -0
  81. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_http_header.go +39 -0
  82. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_include_response.go +34 -0
  83. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_logging.go +263 -0
  84. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_request_id.go +34 -0
  85. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_retry.go +251 -0
  86. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_telemetry.go +79 -0
  87. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/poller.go +326 -0
  88. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/request.go +248 -0
  89. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/response.go +136 -0
  90. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/transport_default_http_client.go +37 -0
  91. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/streaming/doc.go +9 -0
  92. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/streaming/progress.go +75 -0
  93. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/to/doc.go +9 -0
  94. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/to/to.go +21 -0
  95. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/tracing/constants.go +41 -0
  96. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/tracing/tracing.go +168 -0
  97. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/LICENSE.txt +21 -0
  98. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/diag/diag.go +51 -0
  99. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/diag/doc.go +7 -0
  100. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/errorinfo/doc.go +7 -0
  101. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/errorinfo/errorinfo.go +16 -0
  102. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/log/doc.go +7 -0
  103. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/log/log.go +104 -0
  104. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/temporal/resource.go +123 -0
  105. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/uuid/doc.go +7 -0
  106. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/uuid/uuid.go +76 -0
  107. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/CHANGELOG.md +167 -0
  108. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/LICENSE.txt +21 -0
  109. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/README.md +274 -0
  110. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/appendblob/client.go +352 -0
  111. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/appendblob/models.go +176 -0
  112. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/appendblob/responses.go +26 -0
  113. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/assets.json +6 -0
  114. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blob/client.go +446 -0
  115. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blob/constants.go +229 -0
  116. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blob/models.go +567 -0
  117. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blob/responses.go +116 -0
  118. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blob/retry_reader.go +192 -0
  119. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blob/utils.go +79 -0
  120. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/bloberror/error_codes.go +156 -0
  121. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blockblob/chunkwriting.go +313 -0
  122. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blockblob/client.go +532 -0
  123. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blockblob/constants.go +39 -0
  124. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blockblob/mmf_unix.go +38 -0
  125. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blockblob/mmf_windows.go +54 -0
  126. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blockblob/models.go +348 -0
  127. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blockblob/responses.go +114 -0
  128. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/ci.yml +28 -0
  129. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/client.go +176 -0
  130. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/common.go +36 -0
  131. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/constants.go +37 -0
  132. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/container/client.go +331 -0
  133. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/container/constants.go +150 -0
  134. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/container/models.go +331 -0
  135. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/container/responses.go +44 -0
  136. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/doc.go +213 -0
  137. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/base/clients.go +89 -0
  138. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported/access_conditions.go +43 -0
  139. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported/access_policy.go +67 -0
  140. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported/exported.go +33 -0
  141. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported/log_events.go +14 -0
  142. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported/set_expiry.go +71 -0
  143. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported/shared_key_credential.go +218 -0
  144. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported/transfer_validation_option.go +67 -0
  145. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported/user_delegation_credential.go +64 -0
  146. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported/version.go +12 -0
  147. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/appendblob_client.go +19 -0
  148. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/autorest.md +387 -0
  149. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/blob_client.go +17 -0
  150. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/block_blob_client.go +19 -0
  151. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/build.go +10 -0
  152. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/container_client.go +17 -0
  153. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/models.go +65 -0
  154. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/pageblob_client.go +17 -0
  155. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/service_client.go +17 -0
  156. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_appendblob_client.go +659 -0
  157. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_blob_client.go +2879 -0
  158. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_blockblob_client.go +972 -0
  159. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_constants.go +714 -0
  160. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_container_client.go +1478 -0
  161. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_models.go +1733 -0
  162. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_models_serde.go +481 -0
  163. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_pageblob_client.go +1297 -0
  164. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_response_types.go +1972 -0
  165. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_service_client.go +558 -0
  166. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_time_rfc1123.go +43 -0
  167. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_time_rfc3339.go +59 -0
  168. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_xml_helper.go +41 -0
  169. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/shared/batch_transfer.go +77 -0
  170. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/shared/bytes_writer.go +30 -0
  171. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/shared/section_writer.go +53 -0
  172. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/shared/shared.go +243 -0
  173. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/log.go +11 -0
  174. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/migrationguide.md +76 -0
  175. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/models.go +69 -0
  176. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/pageblob/client.go +433 -0
  177. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/pageblob/constants.go +65 -0
  178. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/pageblob/models.go +330 -0
  179. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/pageblob/responses.go +38 -0
  180. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/responses.go +51 -0
  181. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/sas/account.go +202 -0
  182. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/sas/query_params.go +440 -0
  183. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/sas/service.go +448 -0
  184. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/sas/url_parts.go +166 -0
  185. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/service/client.go +282 -0
  186. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/service/constants.go +92 -0
  187. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/service/models.go +301 -0
  188. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/service/responses.go +44 -0
  189. data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/test-resources.json +579 -0
  190. data/ext/vendor/github.com/andybalholm/brotli/LICENSE +19 -0
  191. data/ext/vendor/github.com/andybalholm/brotli/README.md +7 -0
  192. data/ext/vendor/github.com/andybalholm/brotli/backward_references.go +185 -0
  193. data/ext/vendor/github.com/andybalholm/brotli/backward_references_hq.go +796 -0
  194. data/ext/vendor/github.com/andybalholm/brotli/bit_cost.go +436 -0
  195. data/ext/vendor/github.com/andybalholm/brotli/bit_reader.go +266 -0
  196. data/ext/vendor/github.com/andybalholm/brotli/block_splitter.go +144 -0
  197. data/ext/vendor/github.com/andybalholm/brotli/block_splitter_command.go +434 -0
  198. data/ext/vendor/github.com/andybalholm/brotli/block_splitter_distance.go +433 -0
  199. data/ext/vendor/github.com/andybalholm/brotli/block_splitter_literal.go +433 -0
  200. data/ext/vendor/github.com/andybalholm/brotli/brotli_bit_stream.go +1300 -0
  201. data/ext/vendor/github.com/andybalholm/brotli/cluster.go +30 -0
  202. data/ext/vendor/github.com/andybalholm/brotli/cluster_command.go +164 -0
  203. data/ext/vendor/github.com/andybalholm/brotli/cluster_distance.go +326 -0
  204. data/ext/vendor/github.com/andybalholm/brotli/cluster_literal.go +326 -0
  205. data/ext/vendor/github.com/andybalholm/brotli/command.go +254 -0
  206. data/ext/vendor/github.com/andybalholm/brotli/compress_fragment.go +834 -0
  207. data/ext/vendor/github.com/andybalholm/brotli/compress_fragment_two_pass.go +748 -0
  208. data/ext/vendor/github.com/andybalholm/brotli/constants.go +77 -0
  209. data/ext/vendor/github.com/andybalholm/brotli/context.go +2176 -0
  210. data/ext/vendor/github.com/andybalholm/brotli/decode.go +2586 -0
  211. data/ext/vendor/github.com/andybalholm/brotli/dictionary.go +122890 -0
  212. data/ext/vendor/github.com/andybalholm/brotli/dictionary_hash.go +32779 -0
  213. data/ext/vendor/github.com/andybalholm/brotli/encode.go +1220 -0
  214. data/ext/vendor/github.com/andybalholm/brotli/encoder_dict.go +22 -0
  215. data/ext/vendor/github.com/andybalholm/brotli/entropy_encode.go +592 -0
  216. data/ext/vendor/github.com/andybalholm/brotli/entropy_encode_static.go +4394 -0
  217. data/ext/vendor/github.com/andybalholm/brotli/fast_log.go +290 -0
  218. data/ext/vendor/github.com/andybalholm/brotli/find_match_length.go +45 -0
  219. data/ext/vendor/github.com/andybalholm/brotli/h10.go +287 -0
  220. data/ext/vendor/github.com/andybalholm/brotli/h5.go +214 -0
  221. data/ext/vendor/github.com/andybalholm/brotli/h6.go +216 -0
  222. data/ext/vendor/github.com/andybalholm/brotli/hash.go +342 -0
  223. data/ext/vendor/github.com/andybalholm/brotli/hash_composite.go +93 -0
  224. data/ext/vendor/github.com/andybalholm/brotli/hash_forgetful_chain.go +252 -0
  225. data/ext/vendor/github.com/andybalholm/brotli/hash_longest_match_quickly.go +214 -0
  226. data/ext/vendor/github.com/andybalholm/brotli/hash_rolling.go +168 -0
  227. data/ext/vendor/github.com/andybalholm/brotli/histogram.go +226 -0
  228. data/ext/vendor/github.com/andybalholm/brotli/http.go +192 -0
  229. data/ext/vendor/github.com/andybalholm/brotli/huffman.go +653 -0
  230. data/ext/vendor/github.com/andybalholm/brotli/literal_cost.go +182 -0
  231. data/ext/vendor/github.com/andybalholm/brotli/memory.go +66 -0
  232. data/ext/vendor/github.com/andybalholm/brotli/metablock.go +574 -0
  233. data/ext/vendor/github.com/andybalholm/brotli/metablock_command.go +165 -0
  234. data/ext/vendor/github.com/andybalholm/brotli/metablock_distance.go +165 -0
  235. data/ext/vendor/github.com/andybalholm/brotli/metablock_literal.go +165 -0
  236. data/ext/vendor/github.com/andybalholm/brotli/params.go +37 -0
  237. data/ext/vendor/github.com/andybalholm/brotli/platform.go +103 -0
  238. data/ext/vendor/github.com/andybalholm/brotli/prefix.go +30 -0
  239. data/ext/vendor/github.com/andybalholm/brotli/prefix_dec.go +723 -0
  240. data/ext/vendor/github.com/andybalholm/brotli/quality.go +196 -0
  241. data/ext/vendor/github.com/andybalholm/brotli/reader.go +102 -0
  242. data/ext/vendor/github.com/andybalholm/brotli/ringbuffer.go +134 -0
  243. data/ext/vendor/github.com/andybalholm/brotli/state.go +295 -0
  244. data/ext/vendor/github.com/andybalholm/brotli/static_dict.go +662 -0
  245. data/ext/vendor/github.com/andybalholm/brotli/static_dict_lut.go +75094 -0
  246. data/ext/vendor/github.com/andybalholm/brotli/symbol_list.go +22 -0
  247. data/ext/vendor/github.com/andybalholm/brotli/transform.go +641 -0
  248. data/ext/vendor/github.com/andybalholm/brotli/utf8_util.go +70 -0
  249. data/ext/vendor/github.com/andybalholm/brotli/util.go +7 -0
  250. data/ext/vendor/github.com/andybalholm/brotli/write_bits.go +52 -0
  251. data/ext/vendor/github.com/andybalholm/brotli/writer.go +119 -0
  252. data/ext/vendor/github.com/apache/arrow/go/v10/LICENSE.txt +1873 -0
  253. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/.editorconfig +21 -0
  254. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/.gitignore +35 -0
  255. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/Gopkg.lock +44 -0
  256. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/Gopkg.toml +23 -0
  257. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/Makefile +54 -0
  258. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/array.go +184 -0
  259. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/binary.go +308 -0
  260. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/binarybuilder.go +335 -0
  261. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/boolean.go +117 -0
  262. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/booleanbuilder.go +234 -0
  263. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/bufferbuilder.go +143 -0
  264. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/bufferbuilder_byte.go +30 -0
  265. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/bufferbuilder_numeric.gen.go +124 -0
  266. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/bufferbuilder_numeric.gen.go.tmpl +61 -0
  267. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/builder.go +337 -0
  268. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/compare.go +728 -0
  269. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/concat.go +567 -0
  270. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/data.go +250 -0
  271. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/decimal128.go +334 -0
  272. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/decimal256.go +333 -0
  273. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/dictionary.go +1666 -0
  274. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/doc.go +20 -0
  275. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/extension.go +256 -0
  276. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/fixed_size_list.go +337 -0
  277. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/fixedsize_binary.go +116 -0
  278. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/fixedsize_binarybuilder.go +229 -0
  279. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/float16.go +107 -0
  280. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/float16_builder.go +237 -0
  281. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/interval.go +847 -0
  282. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/json_reader.go +205 -0
  283. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/list.go +589 -0
  284. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/map.go +304 -0
  285. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/null.go +198 -0
  286. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/numeric.gen.go +1406 -0
  287. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/numeric.gen.go.tmpl +136 -0
  288. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/numericbuilder.gen.go +3429 -0
  289. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/numericbuilder.gen.go.tmpl +371 -0
  290. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/numericbuilder.gen_test.go.tmpl +216 -0
  291. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/record.go +383 -0
  292. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/string.go +498 -0
  293. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/struct.go +442 -0
  294. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/table.go +337 -0
  295. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/union.go +1308 -0
  296. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/util.go +492 -0
  297. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array.go +122 -0
  298. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/arrio/arrio.go +92 -0
  299. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/Makefile +62 -0
  300. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops.go +63 -0
  301. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops_amd64.go +35 -0
  302. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops_arm64.go +25 -0
  303. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops_avx2_amd64.go +38 -0
  304. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops_avx2_amd64.s +192 -0
  305. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops_noasm.go +25 -0
  306. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops_ppc64le.go +25 -0
  307. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops_s390x.go +25 -0
  308. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops_sse4_amd64.go +38 -0
  309. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops_sse4_amd64.s +256 -0
  310. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmaps.go +586 -0
  311. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitutil.go +220 -0
  312. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/endian_default.go +33 -0
  313. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/endian_s390x.go +32 -0
  314. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/compare.go +127 -0
  315. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/datatype.go +376 -0
  316. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/datatype_binary.go +98 -0
  317. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/datatype_extension.go +173 -0
  318. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/datatype_fixedwidth.go +786 -0
  319. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/datatype_nested.go +732 -0
  320. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/datatype_null.go +33 -0
  321. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/datatype_numeric.gen.go +206 -0
  322. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/datatype_numeric.gen.go.tmpl +45 -0
  323. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/datatype_numeric.gen.go.tmpldata +66 -0
  324. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/decimal128/decimal128.go +445 -0
  325. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/decimal256/decimal256.go +545 -0
  326. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/doc.go +43 -0
  327. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/endian/big.go +30 -0
  328. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/endian/endian.go +41 -0
  329. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/endian/little.go +30 -0
  330. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/errors.go +27 -0
  331. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/float16/float16.go +70 -0
  332. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/debug/assert_off.go +24 -0
  333. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/debug/assert_on.go +28 -0
  334. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/debug/doc.go +32 -0
  335. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/debug/log_off.go +21 -0
  336. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/debug/log_on.go +32 -0
  337. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/debug/util.go +37 -0
  338. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/dictutils/dict.go +406 -0
  339. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Binary.go +51 -0
  340. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Block.go +74 -0
  341. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/BodyCompression.go +89 -0
  342. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/BodyCompressionMethod.go +52 -0
  343. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Bool.go +50 -0
  344. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Buffer.go +73 -0
  345. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/CompressionType.go +45 -0
  346. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Date.go +71 -0
  347. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/DateUnit.go +45 -0
  348. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Decimal.go +107 -0
  349. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/DictionaryBatch.go +108 -0
  350. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/DictionaryEncoding.go +135 -0
  351. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/DictionaryKind.go +47 -0
  352. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Duration.go +65 -0
  353. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Endianness.go +47 -0
  354. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Feature.go +71 -0
  355. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Field.go +188 -0
  356. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/FieldNode.go +76 -0
  357. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/FixedSizeBinary.go +67 -0
  358. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/FixedSizeList.go +67 -0
  359. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/FloatingPoint.go +65 -0
  360. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Footer.go +162 -0
  361. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Int.go +80 -0
  362. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Interval.go +65 -0
  363. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/IntervalUnit.go +48 -0
  364. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/KeyValue.go +75 -0
  365. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/LargeBinary.go +52 -0
  366. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/LargeList.go +52 -0
  367. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/LargeUtf8.go +52 -0
  368. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/List.go +50 -0
  369. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Map.go +92 -0
  370. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Message.go +133 -0
  371. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/MessageHeader.go +65 -0
  372. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/MetadataVersion.go +65 -0
  373. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Null.go +51 -0
  374. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Precision.go +48 -0
  375. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/RecordBatch.go +154 -0
  376. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Schema.go +159 -0
  377. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/SparseMatrixCompressedAxis.go +45 -0
  378. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/SparseMatrixIndexCSR.go +181 -0
  379. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/SparseMatrixIndexCSX.go +200 -0
  380. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/SparseTensor.go +175 -0
  381. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/SparseTensorIndex.go +51 -0
  382. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/SparseTensorIndexCOO.go +179 -0
  383. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/SparseTensorIndexCSF.go +291 -0
  384. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Struct_.go +53 -0
  385. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Tensor.go +163 -0
  386. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/TensorDim.go +83 -0
  387. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Time.go +94 -0
  388. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/TimeUnit.go +51 -0
  389. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Timestamp.go +201 -0
  390. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Type.go +108 -0
  391. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Union.go +101 -0
  392. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/UnionMode.go +45 -0
  393. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Utf8.go +51 -0
  394. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/utils.go +47 -0
  395. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/ipc/compression.go +120 -0
  396. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/ipc/endian_swap.go +162 -0
  397. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/ipc/file_reader.go +728 -0
  398. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/ipc/file_writer.go +392 -0
  399. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/ipc/ipc.go +178 -0
  400. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/ipc/message.go +242 -0
  401. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/ipc/metadata.go +1237 -0
  402. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/ipc/reader.go +284 -0
  403. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/ipc/writer.go +892 -0
  404. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/Makefile +66 -0
  405. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/allocator.go +33 -0
  406. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/buffer.go +145 -0
  407. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/cgo_allocator.go +108 -0
  408. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/cgo_allocator_defaults.go +23 -0
  409. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/cgo_allocator_logging.go +23 -0
  410. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/checked_allocator.go +157 -0
  411. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/doc.go +20 -0
  412. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/go_allocator.go +48 -0
  413. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/internal/cgoalloc/allocator.cc +71 -0
  414. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/internal/cgoalloc/allocator.go +107 -0
  415. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/internal/cgoalloc/allocator.h +39 -0
  416. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/internal/cgoalloc/helpers.h +52 -0
  417. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory.go +33 -0
  418. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_amd64.go +33 -0
  419. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_arm64.go +31 -0
  420. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_avx2_amd64.go +41 -0
  421. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_avx2_amd64.s +85 -0
  422. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_js_wasm.go +23 -0
  423. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_neon_arm64.go +31 -0
  424. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_neon_arm64.s +43 -0
  425. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_noasm.go +23 -0
  426. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_sse4_amd64.go +31 -0
  427. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_sse4_amd64.s +84 -0
  428. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/util.go +37 -0
  429. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/numeric.schema.json +15 -0
  430. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/numeric.tmpldata +147 -0
  431. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/record.go +48 -0
  432. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/schema.go +266 -0
  433. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/table.go +189 -0
  434. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/tools.go +25 -0
  435. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/type_string.go +61 -0
  436. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/type_traits_boolean.go +28 -0
  437. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/type_traits_decimal128.go +75 -0
  438. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/type_traits_decimal256.go +70 -0
  439. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/type_traits_float16.go +74 -0
  440. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/type_traits_interval.go +184 -0
  441. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/type_traits_numeric.gen.go +814 -0
  442. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/type_traits_numeric.gen.go.tmpl +95 -0
  443. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/type_traits_numeric.gen_test.go.tmpl +61 -0
  444. data/ext/vendor/github.com/apache/arrow/go/v10/arrow/unionmode_string.go +25 -0
  445. data/ext/vendor/github.com/apache/arrow/go/v10/internal/bitutils/bit_block_counter.go +417 -0
  446. data/ext/vendor/github.com/apache/arrow/go/v10/internal/bitutils/bit_run_reader.go +151 -0
  447. data/ext/vendor/github.com/apache/arrow/go/v10/internal/bitutils/bit_set_run_reader.go +346 -0
  448. data/ext/vendor/github.com/apache/arrow/go/v10/internal/bitutils/bitmap_generate.go +107 -0
  449. data/ext/vendor/github.com/apache/arrow/go/v10/internal/hashing/types.tmpldata +42 -0
  450. data/ext/vendor/github.com/apache/arrow/go/v10/internal/hashing/xxh3_memo_table.gen.go +2783 -0
  451. data/ext/vendor/github.com/apache/arrow/go/v10/internal/hashing/xxh3_memo_table.gen.go.tmpl +343 -0
  452. data/ext/vendor/github.com/apache/arrow/go/v10/internal/hashing/xxh3_memo_table.go +465 -0
  453. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/Makefile +80 -0
  454. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/buf_reader.go +212 -0
  455. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/endians_default.go +31 -0
  456. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/endians_s390x.go +33 -0
  457. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/math.go +49 -0
  458. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max.go +212 -0
  459. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_amd64.go +56 -0
  460. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_arm64.go +66 -0
  461. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_avx2_amd64.go +91 -0
  462. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_avx2_amd64.s +927 -0
  463. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_neon_arm64.go +56 -0
  464. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_neon_arm64.s +324 -0
  465. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_noasm.go +32 -0
  466. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_ppc64le.go +31 -0
  467. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_s390x.go +31 -0
  468. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_sse4_amd64.go +89 -0
  469. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_sse4_amd64.s +1044 -0
  470. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints.go +407 -0
  471. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints.go.tmpl +34 -0
  472. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints.tmpldata +34 -0
  473. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_amd64.go +326 -0
  474. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_amd64.go.tmpl +75 -0
  475. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_arm64.go +97 -0
  476. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_avx2_amd64.go +474 -0
  477. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_avx2_amd64.s +3074 -0
  478. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_def.go +227 -0
  479. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_noasm.go +97 -0
  480. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_noasm.go.tmpl +34 -0
  481. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_ppc64le.go +97 -0
  482. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_s390x.go +97 -0
  483. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_s390x.go.tmpl +34 -0
  484. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_simd.go.tmpl +42 -0
  485. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_sse4_amd64.go +474 -0
  486. data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_sse4_amd64.s +3074 -0
  487. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/.gitignore +31 -0
  488. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/compress/brotli.go +115 -0
  489. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/compress/compress.go +156 -0
  490. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/compress/gzip.go +98 -0
  491. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/compress/snappy.go +62 -0
  492. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/compress/zstd.go +112 -0
  493. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/doc.go +67 -0
  494. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/encryption_properties.go +711 -0
  495. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/internal/debug/assert_off.go +24 -0
  496. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/internal/debug/assert_on.go +28 -0
  497. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/internal/debug/doc.go +23 -0
  498. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/internal/debug/log_off.go +24 -0
  499. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/internal/debug/log_on.go +32 -0
  500. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/internal/gen-go/parquet/GoUnusedProtection__.go +6 -0
  501. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/internal/gen-go/parquet/parquet-consts.go +23 -0
  502. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/internal/gen-go/parquet/parquet.go +10967 -0
  503. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/internal/gen-go/parquet/staticcheck.conf +17 -0
  504. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/reader_properties.go +88 -0
  505. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/tools.go +26 -0
  506. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/types.go +391 -0
  507. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/version_string.go +25 -0
  508. data/ext/vendor/github.com/apache/arrow/go/v10/parquet/writer_properties.go +533 -0
  509. data/ext/vendor/github.com/apache/thrift/LICENSE +306 -0
  510. data/ext/vendor/github.com/apache/thrift/NOTICE +5 -0
  511. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/application_exception.go +183 -0
  512. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/binary_protocol.go +548 -0
  513. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/buf_pool.go +52 -0
  514. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/buffered_transport.go +99 -0
  515. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/client.go +109 -0
  516. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/compact_protocol.go +846 -0
  517. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/configuration.go +378 -0
  518. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/context.go +24 -0
  519. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/debug_protocol.go +447 -0
  520. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/deserializer.go +121 -0
  521. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/exception.go +116 -0
  522. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/framed_transport.go +250 -0
  523. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/header_context.go +110 -0
  524. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/header_protocol.go +351 -0
  525. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/header_transport.go +816 -0
  526. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/http_client.go +256 -0
  527. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/http_transport.go +74 -0
  528. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/iostream_transport.go +222 -0
  529. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/json_protocol.go +564 -0
  530. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/logger.go +69 -0
  531. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/memory_buffer.go +80 -0
  532. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/messagetype.go +31 -0
  533. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/middleware.go +109 -0
  534. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/multiplexed_protocol.go +237 -0
  535. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/numeric.go +164 -0
  536. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/pointerize.go +52 -0
  537. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/processor_factory.go +80 -0
  538. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/protocol.go +184 -0
  539. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/protocol_exception.go +104 -0
  540. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/protocol_factory.go +25 -0
  541. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/response_helper.go +94 -0
  542. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/rich_transport.go +71 -0
  543. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/serializer.go +136 -0
  544. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/server.go +35 -0
  545. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/server_socket.go +137 -0
  546. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/server_transport.go +34 -0
  547. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/simple_json_protocol.go +1334 -0
  548. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/simple_server.go +336 -0
  549. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/socket.go +241 -0
  550. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/socket_conn.go +124 -0
  551. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/socket_non_unix_conn.go +35 -0
  552. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/socket_unix_conn.go +84 -0
  553. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/ssl_server_socket.go +112 -0
  554. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/ssl_socket.go +262 -0
  555. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/staticcheck.conf +4 -0
  556. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/transport.go +70 -0
  557. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/transport_exception.go +131 -0
  558. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/transport_factory.go +39 -0
  559. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/type.go +69 -0
  560. data/ext/vendor/github.com/apache/thrift/lib/go/thrift/zlib_transport.go +137 -0
  561. data/ext/vendor/github.com/aws/aws-sdk-go-v2/LICENSE.txt +202 -0
  562. data/ext/vendor/github.com/aws/aws-sdk-go-v2/NOTICE.txt +3 -0
  563. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/arn/arn.go +92 -0
  564. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/config.go +179 -0
  565. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/context.go +22 -0
  566. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/credential_cache.go +218 -0
  567. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/credentials.go +131 -0
  568. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/defaults/auto.go +38 -0
  569. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/defaults/configuration.go +43 -0
  570. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/defaults/defaults.go +50 -0
  571. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/defaults/doc.go +2 -0
  572. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/defaultsmode.go +95 -0
  573. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/doc.go +62 -0
  574. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/endpoints.go +229 -0
  575. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/errors.go +9 -0
  576. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/from_ptr.go +365 -0
  577. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/go_module_metadata.go +6 -0
  578. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/logging.go +119 -0
  579. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/logging_generate.go +95 -0
  580. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/metadata.go +180 -0
  581. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/middleware.go +168 -0
  582. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/osname.go +24 -0
  583. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/osname_go115.go +24 -0
  584. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/request_id.go +27 -0
  585. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/request_id_retriever.go +49 -0
  586. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/user_agent.go +243 -0
  587. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/CHANGELOG.md +54 -0
  588. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/LICENSE.txt +202 -0
  589. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/debug.go +144 -0
  590. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/decode.go +218 -0
  591. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/encode.go +167 -0
  592. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/error.go +23 -0
  593. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/eventstreamapi/headers.go +24 -0
  594. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/eventstreamapi/middleware.go +71 -0
  595. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/eventstreamapi/transport.go +13 -0
  596. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/eventstreamapi/transport_go117.go +12 -0
  597. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/go_module_metadata.go +6 -0
  598. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/header.go +175 -0
  599. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/header_value.go +521 -0
  600. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/message.go +117 -0
  601. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/xml/error_utils.go +56 -0
  602. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/ratelimit/token_bucket.go +96 -0
  603. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/ratelimit/token_rate_limit.go +87 -0
  604. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/request.go +25 -0
  605. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/adaptive.go +156 -0
  606. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/adaptive_ratelimit.go +158 -0
  607. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/adaptive_token_bucket.go +83 -0
  608. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/doc.go +80 -0
  609. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/errors.go +20 -0
  610. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/jitter_backoff.go +49 -0
  611. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/metadata.go +52 -0
  612. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/middleware.go +331 -0
  613. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/retry.go +90 -0
  614. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/retryable_error.go +186 -0
  615. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/standard.go +258 -0
  616. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/throttle_error.go +60 -0
  617. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/timeout_error.go +52 -0
  618. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retryer.go +127 -0
  619. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/runtime.go +14 -0
  620. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/cache.go +115 -0
  621. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/const.go +40 -0
  622. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/header_rules.go +82 -0
  623. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/headers.go +68 -0
  624. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/hmac.go +13 -0
  625. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/host.go +75 -0
  626. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/scope.go +13 -0
  627. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/time.go +36 -0
  628. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/util.go +80 -0
  629. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/v4/middleware.go +400 -0
  630. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/v4/presign_middleware.go +127 -0
  631. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/v4/stream.go +86 -0
  632. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/v4/v4.go +548 -0
  633. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/to_ptr.go +297 -0
  634. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/transport/http/client.go +310 -0
  635. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/transport/http/content_type.go +42 -0
  636. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/transport/http/response_error.go +33 -0
  637. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/transport/http/response_error_middleware.go +54 -0
  638. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/transport/http/timeout_read_closer.go +104 -0
  639. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/types.go +42 -0
  640. data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/version.go +8 -0
  641. data/ext/vendor/github.com/aws/aws-sdk-go-v2/credentials/CHANGELOG.md +197 -0
  642. data/ext/vendor/github.com/aws/aws-sdk-go-v2/credentials/LICENSE.txt +202 -0
  643. data/ext/vendor/github.com/aws/aws-sdk-go-v2/credentials/doc.go +4 -0
  644. data/ext/vendor/github.com/aws/aws-sdk-go-v2/credentials/go_module_metadata.go +6 -0
  645. data/ext/vendor/github.com/aws/aws-sdk-go-v2/credentials/static_provider.go +53 -0
  646. data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/CHANGELOG.md +249 -0
  647. data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/LICENSE.txt +202 -0
  648. data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/api.go +37 -0
  649. data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/arn.go +23 -0
  650. data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/bucket_region.go +139 -0
  651. data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/buffered_read_seeker.go +79 -0
  652. data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/default_read_seeker_write_to.go +8 -0
  653. data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/default_read_seeker_write_to_windows.go +5 -0
  654. data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/default_writer_read_from.go +8 -0
  655. data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/default_writer_read_from_windows.go +5 -0
  656. data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/doc.go +3 -0
  657. data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/download.go +525 -0
  658. data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/go_module_metadata.go +6 -0
  659. data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/pool.go +251 -0
  660. data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/read_seeker_write_to.go +65 -0
  661. data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/types.go +187 -0
  662. data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/upload.go +808 -0
  663. data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/writer_read_from.go +83 -0
  664. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/awsutil/copy.go +112 -0
  665. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/awsutil/equal.go +33 -0
  666. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/awsutil/path_value.go +225 -0
  667. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/awsutil/prettify.go +131 -0
  668. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/awsutil/string_value.go +88 -0
  669. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/CHANGELOG.md +130 -0
  670. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/LICENSE.txt +202 -0
  671. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/config.go +65 -0
  672. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/go_module_metadata.go +6 -0
  673. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/CHANGELOG.md +103 -0
  674. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/LICENSE.txt +202 -0
  675. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/endpoints.go +302 -0
  676. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/go_module_metadata.go +6 -0
  677. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/rand/rand.go +33 -0
  678. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/sdk/interfaces.go +9 -0
  679. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/sdk/time.go +74 -0
  680. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/sdkio/byte.go +12 -0
  681. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/strings/strings.go +11 -0
  682. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/sync/singleflight/LICENSE +28 -0
  683. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/sync/singleflight/docs.go +7 -0
  684. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/sync/singleflight/singleflight.go +210 -0
  685. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/timeconv/duration.go +13 -0
  686. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/CHANGELOG.md +61 -0
  687. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/LICENSE.txt +202 -0
  688. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/credentials.go +141 -0
  689. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/error.go +17 -0
  690. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/go_module_metadata.go +6 -0
  691. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/internal/crypto/compare.go +30 -0
  692. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/internal/crypto/ecc.go +113 -0
  693. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/internal/v4/const.go +36 -0
  694. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/internal/v4/header_rules.go +82 -0
  695. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/internal/v4/headers.go +67 -0
  696. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/internal/v4/hmac.go +13 -0
  697. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/internal/v4/host.go +75 -0
  698. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/internal/v4/time.go +36 -0
  699. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/internal/v4/util.go +64 -0
  700. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/middleware.go +105 -0
  701. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/presign_middleware.go +117 -0
  702. data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/v4a.go +520 -0
  703. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/CHANGELOG.md +80 -0
  704. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/LICENSE.txt +202 -0
  705. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/accept_encoding_gzip.go +176 -0
  706. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/doc.go +22 -0
  707. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/go_module_metadata.go +6 -0
  708. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/CHANGELOG.md +84 -0
  709. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/LICENSE.txt +202 -0
  710. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/algorithms.go +323 -0
  711. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/aws_chunked_encoding.go +389 -0
  712. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/go_module_metadata.go +6 -0
  713. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/middleware_add.go +185 -0
  714. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/middleware_compute_input_checksum.go +479 -0
  715. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/middleware_setup_context.go +117 -0
  716. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/middleware_validate_output.go +131 -0
  717. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/CHANGELOG.md +147 -0
  718. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/LICENSE.txt +202 -0
  719. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/context.go +48 -0
  720. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/doc.go +3 -0
  721. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/go_module_metadata.go +6 -0
  722. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/middleware.go +110 -0
  723. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/CHANGELOG.md +156 -0
  724. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/LICENSE.txt +202 -0
  725. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn/accesspoint_arn.go +53 -0
  726. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn/arn.go +85 -0
  727. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn/outpost_arn.go +128 -0
  728. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn/s3_object_lambda_arn.go +15 -0
  729. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn_lookup.go +73 -0
  730. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/config/config.go +22 -0
  731. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/endpoint_error.go +183 -0
  732. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/go_module_metadata.go +6 -0
  733. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/host_id.go +29 -0
  734. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/metadata.go +28 -0
  735. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/metadata_retriever.go +52 -0
  736. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/resource_request.go +77 -0
  737. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/response_error.go +33 -0
  738. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/response_error_middleware.go +60 -0
  739. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/update_endpoint.go +78 -0
  740. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/xml_utils.go +89 -0
  741. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/CHANGELOG.md +228 -0
  742. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/LICENSE.txt +202 -0
  743. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_client.go +772 -0
  744. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_AbortMultipartUpload.go +232 -0
  745. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CompleteMultipartUpload.go +436 -0
  746. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CopyObject.go +574 -0
  747. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CreateBucket.go +318 -0
  748. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CreateMultipartUpload.go +604 -0
  749. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucket.go +200 -0
  750. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketAnalyticsConfiguration.go +189 -0
  751. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketCors.go +172 -0
  752. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketEncryption.go +180 -0
  753. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketIntelligentTieringConfiguration.go +188 -0
  754. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketInventoryConfiguration.go +188 -0
  755. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketLifecycle.go +178 -0
  756. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketMetricsConfiguration.go +194 -0
  757. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketOwnershipControls.go +171 -0
  758. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketPolicy.go +181 -0
  759. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketReplication.go +179 -0
  760. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketTagging.go +170 -0
  761. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketWebsite.go +179 -0
  762. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteObject.go +270 -0
  763. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteObjectTagging.go +202 -0
  764. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteObjects.go +294 -0
  765. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeletePublicAccessBlock.go +183 -0
  766. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketAccelerateConfiguration.go +188 -0
  767. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketAcl.go +181 -0
  768. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketAnalyticsConfiguration.go +194 -0
  769. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketCors.go +179 -0
  770. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketEncryption.go +188 -0
  771. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketIntelligentTieringConfiguration.go +193 -0
  772. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketInventoryConfiguration.go +192 -0
  773. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketLifecycleConfiguration.go +209 -0
  774. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketLocation.go +248 -0
  775. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketLogging.go +177 -0
  776. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketMetricsConfiguration.go +199 -0
  777. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketNotificationConfiguration.go +193 -0
  778. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketOwnershipControls.go +177 -0
  779. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketPolicy.go +180 -0
  780. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketPolicyStatus.go +189 -0
  781. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketReplication.go +188 -0
  782. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketRequestPayment.go +172 -0
  783. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketTagging.go +185 -0
  784. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketVersioning.go +186 -0
  785. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketWebsite.go +190 -0
  786. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObject.go +593 -0
  787. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectAcl.go +224 -0
  788. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectAttributes.go +363 -0
  789. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectLegalHold.go +195 -0
  790. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectLockConfiguration.go +181 -0
  791. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectRetention.go +195 -0
  792. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectTagging.go +223 -0
  793. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectTorrent.go +191 -0
  794. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetPublicAccessBlock.go +196 -0
  795. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_HeadBucket.go +541 -0
  796. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_HeadObject.go +884 -0
  797. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBucketAnalyticsConfigurations.go +214 -0
  798. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBucketIntelligentTieringConfigurations.go +206 -0
  799. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBucketInventoryConfigurations.go +215 -0
  800. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBucketMetricsConfigurations.go +218 -0
  801. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBuckets.go +145 -0
  802. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListMultipartUploads.go +310 -0
  803. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjectVersions.go +276 -0
  804. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjects.go +284 -0
  805. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjectsV2.go +408 -0
  806. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListParts.go +424 -0
  807. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketAccelerateConfiguration.go +237 -0
  808. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketAcl.go +368 -0
  809. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketAnalyticsConfiguration.go +234 -0
  810. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketCors.go +253 -0
  811. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketEncryption.go +243 -0
  812. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketIntelligentTieringConfiguration.go +225 -0
  813. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketInventoryConfiguration.go +235 -0
  814. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketLifecycleConfiguration.go +269 -0
  815. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketLogging.go +258 -0
  816. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketMetricsConfiguration.go +209 -0
  817. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketNotificationConfiguration.go +209 -0
  818. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketOwnershipControls.go +197 -0
  819. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketPolicy.go +229 -0
  820. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketReplication.go +264 -0
  821. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketRequestPayment.go +221 -0
  822. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketTagging.go +266 -0
  823. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketVersioning.go +243 -0
  824. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketWebsite.go +279 -0
  825. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObject.go +613 -0
  826. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectAcl.go +410 -0
  827. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectLegalHold.go +237 -0
  828. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectLockConfiguration.go +234 -0
  829. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectRetention.go +244 -0
  830. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectTagging.go +291 -0
  831. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutPublicAccessBlock.go +240 -0
  832. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_RestoreObject.go +457 -0
  833. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_SelectObjectContent.go +426 -0
  834. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_UploadPart.go +496 -0
  835. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_UploadPartCopy.go +437 -0
  836. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_WriteGetObjectResponse.go +457 -0
  837. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/deserializers.go +21940 -0
  838. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/doc.go +5 -0
  839. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/endpoints.go +208 -0
  840. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/eventstream.go +285 -0
  841. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/generated.json +128 -0
  842. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/go_module_metadata.go +6 -0
  843. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/arn/arn_parser.go +106 -0
  844. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations/doc.go +80 -0
  845. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations/handle_200_error.go +74 -0
  846. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations/host.go +22 -0
  847. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations/presigned_expires.go +49 -0
  848. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations/process_arn_resource.go +564 -0
  849. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations/remove_bucket_middleware.go +58 -0
  850. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations/s3_object_lambda.go +84 -0
  851. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations/signer_wrapper.go +213 -0
  852. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations/update_endpoint.go +306 -0
  853. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/endpoints/endpoints.go +836 -0
  854. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/serializers.go +12713 -0
  855. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/types/enums.go +1200 -0
  856. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/types/errors.go +188 -0
  857. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/types/types.go +3892 -0
  858. data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/validators.go +5494 -0
  859. data/ext/vendor/github.com/aws/smithy-go/.gitignore +22 -0
  860. data/ext/vendor/github.com/aws/smithy-go/.travis.yml +28 -0
  861. data/ext/vendor/github.com/aws/smithy-go/CHANGELOG.md +157 -0
  862. data/ext/vendor/github.com/aws/smithy-go/CODE_OF_CONDUCT.md +4 -0
  863. data/ext/vendor/github.com/aws/smithy-go/CONTRIBUTING.md +59 -0
  864. data/ext/vendor/github.com/aws/smithy-go/LICENSE +175 -0
  865. data/ext/vendor/github.com/aws/smithy-go/Makefile +63 -0
  866. data/ext/vendor/github.com/aws/smithy-go/NOTICE +1 -0
  867. data/ext/vendor/github.com/aws/smithy-go/README.md +12 -0
  868. data/ext/vendor/github.com/aws/smithy-go/auth/bearer/docs.go +3 -0
  869. data/ext/vendor/github.com/aws/smithy-go/auth/bearer/middleware.go +104 -0
  870. data/ext/vendor/github.com/aws/smithy-go/auth/bearer/token.go +50 -0
  871. data/ext/vendor/github.com/aws/smithy-go/auth/bearer/token_cache.go +208 -0
  872. data/ext/vendor/github.com/aws/smithy-go/context/suppress_expired.go +81 -0
  873. data/ext/vendor/github.com/aws/smithy-go/doc.go +2 -0
  874. data/ext/vendor/github.com/aws/smithy-go/document/doc.go +12 -0
  875. data/ext/vendor/github.com/aws/smithy-go/document/document.go +153 -0
  876. data/ext/vendor/github.com/aws/smithy-go/document/errors.go +75 -0
  877. data/ext/vendor/github.com/aws/smithy-go/document.go +10 -0
  878. data/ext/vendor/github.com/aws/smithy-go/encoding/doc.go +4 -0
  879. data/ext/vendor/github.com/aws/smithy-go/encoding/encoding.go +40 -0
  880. data/ext/vendor/github.com/aws/smithy-go/encoding/httpbinding/encode.go +116 -0
  881. data/ext/vendor/github.com/aws/smithy-go/encoding/httpbinding/header.go +122 -0
  882. data/ext/vendor/github.com/aws/smithy-go/encoding/httpbinding/path_replace.go +108 -0
  883. data/ext/vendor/github.com/aws/smithy-go/encoding/httpbinding/query.go +107 -0
  884. data/ext/vendor/github.com/aws/smithy-go/encoding/httpbinding/uri.go +111 -0
  885. data/ext/vendor/github.com/aws/smithy-go/encoding/xml/array.go +49 -0
  886. data/ext/vendor/github.com/aws/smithy-go/encoding/xml/constants.go +10 -0
  887. data/ext/vendor/github.com/aws/smithy-go/encoding/xml/doc.go +49 -0
  888. data/ext/vendor/github.com/aws/smithy-go/encoding/xml/element.go +91 -0
  889. data/ext/vendor/github.com/aws/smithy-go/encoding/xml/encoder.go +51 -0
  890. data/ext/vendor/github.com/aws/smithy-go/encoding/xml/error_utils.go +51 -0
  891. data/ext/vendor/github.com/aws/smithy-go/encoding/xml/escape.go +137 -0
  892. data/ext/vendor/github.com/aws/smithy-go/encoding/xml/map.go +53 -0
  893. data/ext/vendor/github.com/aws/smithy-go/encoding/xml/value.go +302 -0
  894. data/ext/vendor/github.com/aws/smithy-go/encoding/xml/xml_decoder.go +154 -0
  895. data/ext/vendor/github.com/aws/smithy-go/errors.go +137 -0
  896. data/ext/vendor/github.com/aws/smithy-go/go_module_metadata.go +6 -0
  897. data/ext/vendor/github.com/aws/smithy-go/internal/sync/singleflight/LICENSE +28 -0
  898. data/ext/vendor/github.com/aws/smithy-go/internal/sync/singleflight/docs.go +8 -0
  899. data/ext/vendor/github.com/aws/smithy-go/internal/sync/singleflight/singleflight.go +210 -0
  900. data/ext/vendor/github.com/aws/smithy-go/io/byte.go +12 -0
  901. data/ext/vendor/github.com/aws/smithy-go/io/doc.go +2 -0
  902. data/ext/vendor/github.com/aws/smithy-go/io/reader.go +16 -0
  903. data/ext/vendor/github.com/aws/smithy-go/io/ringbuffer.go +94 -0
  904. data/ext/vendor/github.com/aws/smithy-go/local-mod-replace.sh +39 -0
  905. data/ext/vendor/github.com/aws/smithy-go/logging/logger.go +82 -0
  906. data/ext/vendor/github.com/aws/smithy-go/middleware/doc.go +67 -0
  907. data/ext/vendor/github.com/aws/smithy-go/middleware/logging.go +46 -0
  908. data/ext/vendor/github.com/aws/smithy-go/middleware/metadata.go +65 -0
  909. data/ext/vendor/github.com/aws/smithy-go/middleware/middleware.go +71 -0
  910. data/ext/vendor/github.com/aws/smithy-go/middleware/ordered_group.go +268 -0
  911. data/ext/vendor/github.com/aws/smithy-go/middleware/stack.go +209 -0
  912. data/ext/vendor/github.com/aws/smithy-go/middleware/stack_values.go +100 -0
  913. data/ext/vendor/github.com/aws/smithy-go/middleware/step_build.go +211 -0
  914. data/ext/vendor/github.com/aws/smithy-go/middleware/step_deserialize.go +217 -0
  915. data/ext/vendor/github.com/aws/smithy-go/middleware/step_finalize.go +211 -0
  916. data/ext/vendor/github.com/aws/smithy-go/middleware/step_initialize.go +211 -0
  917. data/ext/vendor/github.com/aws/smithy-go/middleware/step_serialize.go +219 -0
  918. data/ext/vendor/github.com/aws/smithy-go/modman.toml +11 -0
  919. data/ext/vendor/github.com/aws/smithy-go/ptr/doc.go +5 -0
  920. data/ext/vendor/github.com/aws/smithy-go/ptr/from_ptr.go +601 -0
  921. data/ext/vendor/github.com/aws/smithy-go/ptr/gen_scalars.go +83 -0
  922. data/ext/vendor/github.com/aws/smithy-go/ptr/to_ptr.go +499 -0
  923. data/ext/vendor/github.com/aws/smithy-go/rand/doc.go +3 -0
  924. data/ext/vendor/github.com/aws/smithy-go/rand/rand.go +31 -0
  925. data/ext/vendor/github.com/aws/smithy-go/rand/uuid.go +87 -0
  926. data/ext/vendor/github.com/aws/smithy-go/sync/error.go +53 -0
  927. data/ext/vendor/github.com/aws/smithy-go/time/time.go +134 -0
  928. data/ext/vendor/github.com/aws/smithy-go/transport/http/checksum_middleware.go +70 -0
  929. data/ext/vendor/github.com/aws/smithy-go/transport/http/client.go +120 -0
  930. data/ext/vendor/github.com/aws/smithy-go/transport/http/doc.go +5 -0
  931. data/ext/vendor/github.com/aws/smithy-go/transport/http/headerlist.go +163 -0
  932. data/ext/vendor/github.com/aws/smithy-go/transport/http/host.go +89 -0
  933. data/ext/vendor/github.com/aws/smithy-go/transport/http/internal/io/safe.go +75 -0
  934. data/ext/vendor/github.com/aws/smithy-go/transport/http/md5_checksum.go +25 -0
  935. data/ext/vendor/github.com/aws/smithy-go/transport/http/middleware_close_response_body.go +79 -0
  936. data/ext/vendor/github.com/aws/smithy-go/transport/http/middleware_content_length.go +84 -0
  937. data/ext/vendor/github.com/aws/smithy-go/transport/http/middleware_headers.go +167 -0
  938. data/ext/vendor/github.com/aws/smithy-go/transport/http/middleware_http_logging.go +75 -0
  939. data/ext/vendor/github.com/aws/smithy-go/transport/http/middleware_metadata.go +51 -0
  940. data/ext/vendor/github.com/aws/smithy-go/transport/http/middleware_min_proto.go +79 -0
  941. data/ext/vendor/github.com/aws/smithy-go/transport/http/request.go +189 -0
  942. data/ext/vendor/github.com/aws/smithy-go/transport/http/response.go +34 -0
  943. data/ext/vendor/github.com/aws/smithy-go/transport/http/time.go +13 -0
  944. data/ext/vendor/github.com/aws/smithy-go/transport/http/url.go +44 -0
  945. data/ext/vendor/github.com/aws/smithy-go/transport/http/user_agent.go +37 -0
  946. data/ext/vendor/github.com/aws/smithy-go/validation.go +140 -0
  947. data/ext/vendor/github.com/aws/smithy-go/waiter/logger.go +36 -0
  948. data/ext/vendor/github.com/aws/smithy-go/waiter/waiter.go +66 -0
  949. data/ext/vendor/github.com/danieljoos/wincred/.gitattributes +1 -0
  950. data/ext/vendor/github.com/danieljoos/wincred/.gitignore +25 -0
  951. data/ext/vendor/github.com/danieljoos/wincred/LICENSE +21 -0
  952. data/ext/vendor/github.com/danieljoos/wincred/README.md +145 -0
  953. data/ext/vendor/github.com/danieljoos/wincred/conversion.go +116 -0
  954. data/ext/vendor/github.com/danieljoos/wincred/conversion_unsupported.go +11 -0
  955. data/ext/vendor/github.com/danieljoos/wincred/sys.go +143 -0
  956. data/ext/vendor/github.com/danieljoos/wincred/sys_unsupported.go +36 -0
  957. data/ext/vendor/github.com/danieljoos/wincred/types.go +69 -0
  958. data/ext/vendor/github.com/danieljoos/wincred/wincred.go +111 -0
  959. data/ext/vendor/github.com/dvsekhvalnov/jose2go/.gitignore +23 -0
  960. data/ext/vendor/github.com/dvsekhvalnov/jose2go/LICENSE +21 -0
  961. data/ext/vendor/github.com/dvsekhvalnov/jose2go/README.md +938 -0
  962. data/ext/vendor/github.com/dvsekhvalnov/jose2go/aes/ecb.go +68 -0
  963. data/ext/vendor/github.com/dvsekhvalnov/jose2go/aes/key_wrap.go +113 -0
  964. data/ext/vendor/github.com/dvsekhvalnov/jose2go/aes_cbc_hmac.go +112 -0
  965. data/ext/vendor/github.com/dvsekhvalnov/jose2go/aes_gcm.go +98 -0
  966. data/ext/vendor/github.com/dvsekhvalnov/jose2go/aes_gcm_kw.go +128 -0
  967. data/ext/vendor/github.com/dvsekhvalnov/jose2go/aeskw.go +64 -0
  968. data/ext/vendor/github.com/dvsekhvalnov/jose2go/arrays/arrays.go +116 -0
  969. data/ext/vendor/github.com/dvsekhvalnov/jose2go/base64url/base64url.go +31 -0
  970. data/ext/vendor/github.com/dvsekhvalnov/jose2go/compact/compact.go +33 -0
  971. data/ext/vendor/github.com/dvsekhvalnov/jose2go/deflate.go +39 -0
  972. data/ext/vendor/github.com/dvsekhvalnov/jose2go/direct.go +39 -0
  973. data/ext/vendor/github.com/dvsekhvalnov/jose2go/ecdh.go +157 -0
  974. data/ext/vendor/github.com/dvsekhvalnov/jose2go/ecdh_aeskw.go +42 -0
  975. data/ext/vendor/github.com/dvsekhvalnov/jose2go/ecdsa_using_sha.go +76 -0
  976. data/ext/vendor/github.com/dvsekhvalnov/jose2go/hmac.go +13 -0
  977. data/ext/vendor/github.com/dvsekhvalnov/jose2go/hmac_using_sha.go +46 -0
  978. data/ext/vendor/github.com/dvsekhvalnov/jose2go/jose.go +424 -0
  979. data/ext/vendor/github.com/dvsekhvalnov/jose2go/kdf/nist_sp800_56a.go +43 -0
  980. data/ext/vendor/github.com/dvsekhvalnov/jose2go/kdf/pbkdf2.go +63 -0
  981. data/ext/vendor/github.com/dvsekhvalnov/jose2go/keys/ecc/ec_cert.pem +14 -0
  982. data/ext/vendor/github.com/dvsekhvalnov/jose2go/keys/ecc/ec_private.key +5 -0
  983. data/ext/vendor/github.com/dvsekhvalnov/jose2go/keys/ecc/ec_private.pem +5 -0
  984. data/ext/vendor/github.com/dvsekhvalnov/jose2go/keys/ecc/ec_public.key +4 -0
  985. data/ext/vendor/github.com/dvsekhvalnov/jose2go/keys/ecc/ecc.go +88 -0
  986. data/ext/vendor/github.com/dvsekhvalnov/jose2go/padding/align.go +23 -0
  987. data/ext/vendor/github.com/dvsekhvalnov/jose2go/padding/pkcs7.go +38 -0
  988. data/ext/vendor/github.com/dvsekhvalnov/jose2go/pbse2_hmac_aeskw.go +103 -0
  989. data/ext/vendor/github.com/dvsekhvalnov/jose2go/plaintext.go +38 -0
  990. data/ext/vendor/github.com/dvsekhvalnov/jose2go/rsa_oaep.go +57 -0
  991. data/ext/vendor/github.com/dvsekhvalnov/jose2go/rsa_pkcs1v15.go +41 -0
  992. data/ext/vendor/github.com/dvsekhvalnov/jose2go/rsa_using_sha.go +50 -0
  993. data/ext/vendor/github.com/dvsekhvalnov/jose2go/rsapss_using_sha.go +43 -0
  994. data/ext/vendor/github.com/dvsekhvalnov/jose2go/sha.go +24 -0
  995. data/ext/vendor/github.com/form3tech-oss/jwt-go/.gitignore +5 -0
  996. data/ext/vendor/github.com/form3tech-oss/jwt-go/.travis.yml +12 -0
  997. data/ext/vendor/github.com/form3tech-oss/jwt-go/LICENSE +8 -0
  998. data/ext/vendor/github.com/form3tech-oss/jwt-go/MIGRATION_GUIDE.md +97 -0
  999. data/ext/vendor/github.com/form3tech-oss/jwt-go/README.md +104 -0
  1000. data/ext/vendor/github.com/form3tech-oss/jwt-go/VERSION_HISTORY.md +118 -0
  1001. data/ext/vendor/github.com/form3tech-oss/jwt-go/claims.go +136 -0
  1002. data/ext/vendor/github.com/form3tech-oss/jwt-go/doc.go +4 -0
  1003. data/ext/vendor/github.com/form3tech-oss/jwt-go/ecdsa.go +148 -0
  1004. data/ext/vendor/github.com/form3tech-oss/jwt-go/ecdsa_utils.go +69 -0
  1005. data/ext/vendor/github.com/form3tech-oss/jwt-go/errors.go +59 -0
  1006. data/ext/vendor/github.com/form3tech-oss/jwt-go/hmac.go +95 -0
  1007. data/ext/vendor/github.com/form3tech-oss/jwt-go/map_claims.go +122 -0
  1008. data/ext/vendor/github.com/form3tech-oss/jwt-go/none.go +52 -0
  1009. data/ext/vendor/github.com/form3tech-oss/jwt-go/parser.go +148 -0
  1010. data/ext/vendor/github.com/form3tech-oss/jwt-go/rsa.go +101 -0
  1011. data/ext/vendor/github.com/form3tech-oss/jwt-go/rsa_pss.go +142 -0
  1012. data/ext/vendor/github.com/form3tech-oss/jwt-go/rsa_utils.go +101 -0
  1013. data/ext/vendor/github.com/form3tech-oss/jwt-go/signing_method.go +35 -0
  1014. data/ext/vendor/github.com/form3tech-oss/jwt-go/token.go +108 -0
  1015. data/ext/vendor/github.com/gabriel-vasile/mimetype/.gitattributes +1 -0
  1016. data/ext/vendor/github.com/gabriel-vasile/mimetype/CODE_OF_CONDUCT.md +76 -0
  1017. data/ext/vendor/github.com/gabriel-vasile/mimetype/CONTRIBUTING.md +12 -0
  1018. data/ext/vendor/github.com/gabriel-vasile/mimetype/LICENSE +21 -0
  1019. data/ext/vendor/github.com/gabriel-vasile/mimetype/README.md +108 -0
  1020. data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/charset/charset.go +309 -0
  1021. data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/json/json.go +544 -0
  1022. data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/archive.go +116 -0
  1023. data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/audio.go +76 -0
  1024. data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/binary.go +196 -0
  1025. data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/database.go +13 -0
  1026. data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/document.go +62 -0
  1027. data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/font.go +39 -0
  1028. data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/ftyp.go +57 -0
  1029. data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/geo.go +55 -0
  1030. data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/image.go +106 -0
  1031. data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/magic.go +239 -0
  1032. data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/ms_office.go +225 -0
  1033. data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/ogg.go +42 -0
  1034. data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/text.go +375 -0
  1035. data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/text_csv.go +51 -0
  1036. data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/video.go +85 -0
  1037. data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/zip.go +92 -0
  1038. data/ext/vendor/github.com/gabriel-vasile/mimetype/mime.go +186 -0
  1039. data/ext/vendor/github.com/gabriel-vasile/mimetype/mimetype.gif +0 -0
  1040. data/ext/vendor/github.com/gabriel-vasile/mimetype/mimetype.go +123 -0
  1041. data/ext/vendor/github.com/gabriel-vasile/mimetype/supported_mimes.md +176 -0
  1042. data/ext/vendor/github.com/gabriel-vasile/mimetype/tree.go +258 -0
  1043. data/ext/vendor/github.com/goccy/go-json/.codecov.yml +32 -0
  1044. data/ext/vendor/github.com/goccy/go-json/.gitignore +2 -0
  1045. data/ext/vendor/github.com/goccy/go-json/.golangci.yml +83 -0
  1046. data/ext/vendor/github.com/goccy/go-json/CHANGELOG.md +393 -0
  1047. data/ext/vendor/github.com/goccy/go-json/LICENSE +21 -0
  1048. data/ext/vendor/github.com/goccy/go-json/Makefile +39 -0
  1049. data/ext/vendor/github.com/goccy/go-json/README.md +529 -0
  1050. data/ext/vendor/github.com/goccy/go-json/color.go +68 -0
  1051. data/ext/vendor/github.com/goccy/go-json/decode.go +232 -0
  1052. data/ext/vendor/github.com/goccy/go-json/docker-compose.yml +13 -0
  1053. data/ext/vendor/github.com/goccy/go-json/encode.go +326 -0
  1054. data/ext/vendor/github.com/goccy/go-json/error.go +39 -0
  1055. data/ext/vendor/github.com/goccy/go-json/internal/decoder/anonymous_field.go +37 -0
  1056. data/ext/vendor/github.com/goccy/go-json/internal/decoder/array.go +169 -0
  1057. data/ext/vendor/github.com/goccy/go-json/internal/decoder/bool.go +78 -0
  1058. data/ext/vendor/github.com/goccy/go-json/internal/decoder/bytes.go +113 -0
  1059. data/ext/vendor/github.com/goccy/go-json/internal/decoder/compile.go +487 -0
  1060. data/ext/vendor/github.com/goccy/go-json/internal/decoder/compile_norace.go +29 -0
  1061. data/ext/vendor/github.com/goccy/go-json/internal/decoder/compile_race.go +37 -0
  1062. data/ext/vendor/github.com/goccy/go-json/internal/decoder/context.go +254 -0
  1063. data/ext/vendor/github.com/goccy/go-json/internal/decoder/float.go +158 -0
  1064. data/ext/vendor/github.com/goccy/go-json/internal/decoder/func.go +141 -0
  1065. data/ext/vendor/github.com/goccy/go-json/internal/decoder/int.go +242 -0
  1066. data/ext/vendor/github.com/goccy/go-json/internal/decoder/interface.go +458 -0
  1067. data/ext/vendor/github.com/goccy/go-json/internal/decoder/invalid.go +45 -0
  1068. data/ext/vendor/github.com/goccy/go-json/internal/decoder/map.go +187 -0
  1069. data/ext/vendor/github.com/goccy/go-json/internal/decoder/number.go +112 -0
  1070. data/ext/vendor/github.com/goccy/go-json/internal/decoder/option.go +15 -0
  1071. data/ext/vendor/github.com/goccy/go-json/internal/decoder/ptr.go +87 -0
  1072. data/ext/vendor/github.com/goccy/go-json/internal/decoder/slice.go +301 -0
  1073. data/ext/vendor/github.com/goccy/go-json/internal/decoder/stream.go +556 -0
  1074. data/ext/vendor/github.com/goccy/go-json/internal/decoder/string.go +441 -0
  1075. data/ext/vendor/github.com/goccy/go-json/internal/decoder/struct.go +819 -0
  1076. data/ext/vendor/github.com/goccy/go-json/internal/decoder/type.go +29 -0
  1077. data/ext/vendor/github.com/goccy/go-json/internal/decoder/uint.go +190 -0
  1078. data/ext/vendor/github.com/goccy/go-json/internal/decoder/unmarshal_json.go +99 -0
  1079. data/ext/vendor/github.com/goccy/go-json/internal/decoder/unmarshal_text.go +280 -0
  1080. data/ext/vendor/github.com/goccy/go-json/internal/decoder/wrapped_string.go +68 -0
  1081. data/ext/vendor/github.com/goccy/go-json/internal/encoder/code.go +1017 -0
  1082. data/ext/vendor/github.com/goccy/go-json/internal/encoder/compact.go +286 -0
  1083. data/ext/vendor/github.com/goccy/go-json/internal/encoder/compiler.go +930 -0
  1084. data/ext/vendor/github.com/goccy/go-json/internal/encoder/compiler_norace.go +32 -0
  1085. data/ext/vendor/github.com/goccy/go-json/internal/encoder/compiler_race.go +45 -0
  1086. data/ext/vendor/github.com/goccy/go-json/internal/encoder/context.go +105 -0
  1087. data/ext/vendor/github.com/goccy/go-json/internal/encoder/decode_rune.go +126 -0
  1088. data/ext/vendor/github.com/goccy/go-json/internal/encoder/encoder.go +596 -0
  1089. data/ext/vendor/github.com/goccy/go-json/internal/encoder/indent.go +211 -0
  1090. data/ext/vendor/github.com/goccy/go-json/internal/encoder/int.go +152 -0
  1091. data/ext/vendor/github.com/goccy/go-json/internal/encoder/map112.go +9 -0
  1092. data/ext/vendor/github.com/goccy/go-json/internal/encoder/map113.go +9 -0
  1093. data/ext/vendor/github.com/goccy/go-json/internal/encoder/opcode.go +669 -0
  1094. data/ext/vendor/github.com/goccy/go-json/internal/encoder/option.go +47 -0
  1095. data/ext/vendor/github.com/goccy/go-json/internal/encoder/optype.go +932 -0
  1096. data/ext/vendor/github.com/goccy/go-json/internal/encoder/query.go +135 -0
  1097. data/ext/vendor/github.com/goccy/go-json/internal/encoder/string.go +459 -0
  1098. data/ext/vendor/github.com/goccy/go-json/internal/encoder/string_table.go +415 -0
  1099. data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm/debug_vm.go +35 -0
  1100. data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm/hack.go +9 -0
  1101. data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm/util.go +207 -0
  1102. data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm/vm.go +4859 -0
  1103. data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_color/debug_vm.go +35 -0
  1104. data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_color/hack.go +9 -0
  1105. data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_color/util.go +274 -0
  1106. data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_color/vm.go +4859 -0
  1107. data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_color_indent/debug_vm.go +35 -0
  1108. data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_color_indent/util.go +296 -0
  1109. data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_color_indent/vm.go +4859 -0
  1110. data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_indent/debug_vm.go +35 -0
  1111. data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_indent/hack.go +9 -0
  1112. data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_indent/util.go +229 -0
  1113. data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_indent/vm.go +4859 -0
  1114. data/ext/vendor/github.com/goccy/go-json/internal/errors/error.go +164 -0
  1115. data/ext/vendor/github.com/goccy/go-json/internal/runtime/rtype.go +263 -0
  1116. data/ext/vendor/github.com/goccy/go-json/internal/runtime/struct_field.go +91 -0
  1117. data/ext/vendor/github.com/goccy/go-json/internal/runtime/type.go +100 -0
  1118. data/ext/vendor/github.com/goccy/go-json/json.go +371 -0
  1119. data/ext/vendor/github.com/goccy/go-json/option.go +72 -0
  1120. data/ext/vendor/github.com/goccy/go-json/query.go +47 -0
  1121. data/ext/vendor/github.com/godbus/dbus/.travis.yml +46 -0
  1122. data/ext/vendor/github.com/godbus/dbus/CONTRIBUTING.md +50 -0
  1123. data/ext/vendor/github.com/godbus/dbus/LICENSE +25 -0
  1124. data/ext/vendor/github.com/godbus/dbus/MAINTAINERS +3 -0
  1125. data/ext/vendor/github.com/godbus/dbus/README.markdown +44 -0
  1126. data/ext/vendor/github.com/godbus/dbus/auth.go +252 -0
  1127. data/ext/vendor/github.com/godbus/dbus/auth_anonymous.go +16 -0
  1128. data/ext/vendor/github.com/godbus/dbus/auth_external.go +26 -0
  1129. data/ext/vendor/github.com/godbus/dbus/auth_sha1.go +102 -0
  1130. data/ext/vendor/github.com/godbus/dbus/call.go +60 -0
  1131. data/ext/vendor/github.com/godbus/dbus/conn.go +865 -0
  1132. data/ext/vendor/github.com/godbus/dbus/conn_darwin.go +37 -0
  1133. data/ext/vendor/github.com/godbus/dbus/conn_other.go +93 -0
  1134. data/ext/vendor/github.com/godbus/dbus/conn_unix.go +17 -0
  1135. data/ext/vendor/github.com/godbus/dbus/conn_windows.go +15 -0
  1136. data/ext/vendor/github.com/godbus/dbus/dbus.go +427 -0
  1137. data/ext/vendor/github.com/godbus/dbus/decoder.go +286 -0
  1138. data/ext/vendor/github.com/godbus/dbus/default_handler.go +328 -0
  1139. data/ext/vendor/github.com/godbus/dbus/doc.go +69 -0
  1140. data/ext/vendor/github.com/godbus/dbus/encoder.go +210 -0
  1141. data/ext/vendor/github.com/godbus/dbus/export.go +412 -0
  1142. data/ext/vendor/github.com/godbus/dbus/homedir.go +28 -0
  1143. data/ext/vendor/github.com/godbus/dbus/homedir_dynamic.go +15 -0
  1144. data/ext/vendor/github.com/godbus/dbus/homedir_static.go +45 -0
  1145. data/ext/vendor/github.com/godbus/dbus/match.go +62 -0
  1146. data/ext/vendor/github.com/godbus/dbus/message.go +353 -0
  1147. data/ext/vendor/github.com/godbus/dbus/object.go +211 -0
  1148. data/ext/vendor/github.com/godbus/dbus/server_interfaces.go +107 -0
  1149. data/ext/vendor/github.com/godbus/dbus/sig.go +259 -0
  1150. data/ext/vendor/github.com/godbus/dbus/transport_darwin.go +6 -0
  1151. data/ext/vendor/github.com/godbus/dbus/transport_generic.go +50 -0
  1152. data/ext/vendor/github.com/godbus/dbus/transport_nonce_tcp.go +39 -0
  1153. data/ext/vendor/github.com/godbus/dbus/transport_tcp.go +41 -0
  1154. data/ext/vendor/github.com/godbus/dbus/transport_unix.go +214 -0
  1155. data/ext/vendor/github.com/godbus/dbus/transport_unixcred_dragonfly.go +95 -0
  1156. data/ext/vendor/github.com/godbus/dbus/transport_unixcred_freebsd.go +91 -0
  1157. data/ext/vendor/github.com/godbus/dbus/transport_unixcred_linux.go +25 -0
  1158. data/ext/vendor/github.com/godbus/dbus/transport_unixcred_openbsd.go +14 -0
  1159. data/ext/vendor/github.com/godbus/dbus/variant.go +144 -0
  1160. data/ext/vendor/github.com/godbus/dbus/variant_lexer.go +284 -0
  1161. data/ext/vendor/github.com/godbus/dbus/variant_parser.go +817 -0
  1162. data/ext/vendor/github.com/golang/snappy/.gitignore +16 -0
  1163. data/ext/vendor/github.com/golang/snappy/AUTHORS +18 -0
  1164. data/ext/vendor/github.com/golang/snappy/CONTRIBUTORS +41 -0
  1165. data/ext/vendor/github.com/golang/snappy/LICENSE +27 -0
  1166. data/ext/vendor/github.com/golang/snappy/README +107 -0
  1167. data/ext/vendor/github.com/golang/snappy/decode.go +264 -0
  1168. data/ext/vendor/github.com/golang/snappy/decode_amd64.s +490 -0
  1169. data/ext/vendor/github.com/golang/snappy/decode_arm64.s +494 -0
  1170. data/ext/vendor/github.com/golang/snappy/decode_asm.go +15 -0
  1171. data/ext/vendor/github.com/golang/snappy/decode_other.go +115 -0
  1172. data/ext/vendor/github.com/golang/snappy/encode.go +289 -0
  1173. data/ext/vendor/github.com/golang/snappy/encode_amd64.s +730 -0
  1174. data/ext/vendor/github.com/golang/snappy/encode_arm64.s +722 -0
  1175. data/ext/vendor/github.com/golang/snappy/encode_asm.go +30 -0
  1176. data/ext/vendor/github.com/golang/snappy/encode_other.go +238 -0
  1177. data/ext/vendor/github.com/golang/snappy/snappy.go +98 -0
  1178. data/ext/vendor/github.com/google/flatbuffers/LICENSE.txt +202 -0
  1179. data/ext/vendor/github.com/google/flatbuffers/go/BUILD.bazel +23 -0
  1180. data/ext/vendor/github.com/google/flatbuffers/go/builder.go +835 -0
  1181. data/ext/vendor/github.com/google/flatbuffers/go/doc.go +3 -0
  1182. data/ext/vendor/github.com/google/flatbuffers/go/encode.go +238 -0
  1183. data/ext/vendor/github.com/google/flatbuffers/go/grpc.go +38 -0
  1184. data/ext/vendor/github.com/google/flatbuffers/go/lib.go +25 -0
  1185. data/ext/vendor/github.com/google/flatbuffers/go/sizes.go +55 -0
  1186. data/ext/vendor/github.com/google/flatbuffers/go/struct.go +8 -0
  1187. data/ext/vendor/github.com/google/flatbuffers/go/table.go +505 -0
  1188. data/ext/vendor/github.com/gsterjov/go-libsecret/LICENSE +22 -0
  1189. data/ext/vendor/github.com/gsterjov/go-libsecret/collection.go +124 -0
  1190. data/ext/vendor/github.com/gsterjov/go-libsecret/item.go +77 -0
  1191. data/ext/vendor/github.com/gsterjov/go-libsecret/prompt.go +55 -0
  1192. data/ext/vendor/github.com/gsterjov/go-libsecret/secret.go +21 -0
  1193. data/ext/vendor/github.com/gsterjov/go-libsecret/service.go +141 -0
  1194. data/ext/vendor/github.com/gsterjov/go-libsecret/session.go +22 -0
  1195. data/ext/vendor/github.com/jmespath/go-jmespath/.gitignore +4 -0
  1196. data/ext/vendor/github.com/jmespath/go-jmespath/.travis.yml +28 -0
  1197. data/ext/vendor/github.com/jmespath/go-jmespath/LICENSE +13 -0
  1198. data/ext/vendor/github.com/jmespath/go-jmespath/Makefile +51 -0
  1199. data/ext/vendor/github.com/jmespath/go-jmespath/README.md +87 -0
  1200. data/ext/vendor/github.com/jmespath/go-jmespath/api.go +49 -0
  1201. data/ext/vendor/github.com/jmespath/go-jmespath/astnodetype_string.go +16 -0
  1202. data/ext/vendor/github.com/jmespath/go-jmespath/functions.go +842 -0
  1203. data/ext/vendor/github.com/jmespath/go-jmespath/interpreter.go +418 -0
  1204. data/ext/vendor/github.com/jmespath/go-jmespath/lexer.go +420 -0
  1205. data/ext/vendor/github.com/jmespath/go-jmespath/parser.go +603 -0
  1206. data/ext/vendor/github.com/jmespath/go-jmespath/toktype_string.go +16 -0
  1207. data/ext/vendor/github.com/jmespath/go-jmespath/util.go +185 -0
  1208. data/ext/vendor/github.com/klauspost/asmfmt/.gitignore +24 -0
  1209. data/ext/vendor/github.com/klauspost/asmfmt/.goreleaser.yml +77 -0
  1210. data/ext/vendor/github.com/klauspost/asmfmt/LICENSE +22 -0
  1211. data/ext/vendor/github.com/klauspost/asmfmt/README.md +113 -0
  1212. data/ext/vendor/github.com/klauspost/asmfmt/asmfmt.go +652 -0
  1213. data/ext/vendor/github.com/klauspost/asmfmt/cmd/asmfmt/LICENSE +27 -0
  1214. data/ext/vendor/github.com/klauspost/asmfmt/cmd/asmfmt/doc.go +43 -0
  1215. data/ext/vendor/github.com/klauspost/asmfmt/cmd/asmfmt/main.go +203 -0
  1216. data/ext/vendor/github.com/klauspost/compress/.gitattributes +2 -0
  1217. data/ext/vendor/github.com/klauspost/compress/.gitignore +32 -0
  1218. data/ext/vendor/github.com/klauspost/compress/.goreleaser.yml +141 -0
  1219. data/ext/vendor/github.com/klauspost/compress/LICENSE +304 -0
  1220. data/ext/vendor/github.com/klauspost/compress/README.md +578 -0
  1221. data/ext/vendor/github.com/klauspost/compress/compressible.go +85 -0
  1222. data/ext/vendor/github.com/klauspost/compress/flate/deflate.go +910 -0
  1223. data/ext/vendor/github.com/klauspost/compress/flate/dict_decoder.go +184 -0
  1224. data/ext/vendor/github.com/klauspost/compress/flate/fast_encoder.go +216 -0
  1225. data/ext/vendor/github.com/klauspost/compress/flate/huffman_bit_writer.go +1187 -0
  1226. data/ext/vendor/github.com/klauspost/compress/flate/huffman_code.go +417 -0
  1227. data/ext/vendor/github.com/klauspost/compress/flate/huffman_sortByFreq.go +178 -0
  1228. data/ext/vendor/github.com/klauspost/compress/flate/huffman_sortByLiteral.go +201 -0
  1229. data/ext/vendor/github.com/klauspost/compress/flate/inflate.go +793 -0
  1230. data/ext/vendor/github.com/klauspost/compress/flate/inflate_gen.go +1283 -0
  1231. data/ext/vendor/github.com/klauspost/compress/flate/level1.go +241 -0
  1232. data/ext/vendor/github.com/klauspost/compress/flate/level2.go +214 -0
  1233. data/ext/vendor/github.com/klauspost/compress/flate/level3.go +241 -0
  1234. data/ext/vendor/github.com/klauspost/compress/flate/level4.go +221 -0
  1235. data/ext/vendor/github.com/klauspost/compress/flate/level5.go +310 -0
  1236. data/ext/vendor/github.com/klauspost/compress/flate/level6.go +325 -0
  1237. data/ext/vendor/github.com/klauspost/compress/flate/regmask_amd64.go +37 -0
  1238. data/ext/vendor/github.com/klauspost/compress/flate/regmask_other.go +40 -0
  1239. data/ext/vendor/github.com/klauspost/compress/flate/stateless.go +305 -0
  1240. data/ext/vendor/github.com/klauspost/compress/flate/token.go +379 -0
  1241. data/ext/vendor/github.com/klauspost/compress/fse/README.md +79 -0
  1242. data/ext/vendor/github.com/klauspost/compress/fse/bitreader.go +122 -0
  1243. data/ext/vendor/github.com/klauspost/compress/fse/bitwriter.go +168 -0
  1244. data/ext/vendor/github.com/klauspost/compress/fse/bytereader.go +47 -0
  1245. data/ext/vendor/github.com/klauspost/compress/fse/compress.go +683 -0
  1246. data/ext/vendor/github.com/klauspost/compress/fse/decompress.go +374 -0
  1247. data/ext/vendor/github.com/klauspost/compress/fse/fse.go +144 -0
  1248. data/ext/vendor/github.com/klauspost/compress/gen.sh +4 -0
  1249. data/ext/vendor/github.com/klauspost/compress/gzip/gunzip.go +349 -0
  1250. data/ext/vendor/github.com/klauspost/compress/gzip/gzip.go +269 -0
  1251. data/ext/vendor/github.com/klauspost/compress/huff0/.gitignore +1 -0
  1252. data/ext/vendor/github.com/klauspost/compress/huff0/README.md +89 -0
  1253. data/ext/vendor/github.com/klauspost/compress/huff0/bitreader.go +233 -0
  1254. data/ext/vendor/github.com/klauspost/compress/huff0/bitwriter.go +95 -0
  1255. data/ext/vendor/github.com/klauspost/compress/huff0/bytereader.go +44 -0
  1256. data/ext/vendor/github.com/klauspost/compress/huff0/compress.go +730 -0
  1257. data/ext/vendor/github.com/klauspost/compress/huff0/decompress.go +1167 -0
  1258. data/ext/vendor/github.com/klauspost/compress/huff0/decompress_amd64.go +226 -0
  1259. data/ext/vendor/github.com/klauspost/compress/huff0/decompress_amd64.s +846 -0
  1260. data/ext/vendor/github.com/klauspost/compress/huff0/decompress_generic.go +299 -0
  1261. data/ext/vendor/github.com/klauspost/compress/huff0/huff0.go +337 -0
  1262. data/ext/vendor/github.com/klauspost/compress/internal/cpuinfo/cpuinfo.go +34 -0
  1263. data/ext/vendor/github.com/klauspost/compress/internal/cpuinfo/cpuinfo_amd64.go +11 -0
  1264. data/ext/vendor/github.com/klauspost/compress/internal/cpuinfo/cpuinfo_amd64.s +36 -0
  1265. data/ext/vendor/github.com/klauspost/compress/internal/snapref/LICENSE +27 -0
  1266. data/ext/vendor/github.com/klauspost/compress/internal/snapref/decode.go +264 -0
  1267. data/ext/vendor/github.com/klauspost/compress/internal/snapref/decode_other.go +113 -0
  1268. data/ext/vendor/github.com/klauspost/compress/internal/snapref/encode.go +289 -0
  1269. data/ext/vendor/github.com/klauspost/compress/internal/snapref/encode_other.go +240 -0
  1270. data/ext/vendor/github.com/klauspost/compress/internal/snapref/snappy.go +98 -0
  1271. data/ext/vendor/github.com/klauspost/compress/s2sx.mod +4 -0
  1272. data/ext/vendor/github.com/klauspost/compress/s2sx.sum +0 -0
  1273. data/ext/vendor/github.com/klauspost/compress/zstd/README.md +441 -0
  1274. data/ext/vendor/github.com/klauspost/compress/zstd/bitreader.go +140 -0
  1275. data/ext/vendor/github.com/klauspost/compress/zstd/bitwriter.go +113 -0
  1276. data/ext/vendor/github.com/klauspost/compress/zstd/blockdec.go +720 -0
  1277. data/ext/vendor/github.com/klauspost/compress/zstd/blockenc.go +871 -0
  1278. data/ext/vendor/github.com/klauspost/compress/zstd/blocktype_string.go +85 -0
  1279. data/ext/vendor/github.com/klauspost/compress/zstd/bytebuf.go +131 -0
  1280. data/ext/vendor/github.com/klauspost/compress/zstd/bytereader.go +82 -0
  1281. data/ext/vendor/github.com/klauspost/compress/zstd/decodeheader.go +230 -0
  1282. data/ext/vendor/github.com/klauspost/compress/zstd/decoder.go +950 -0
  1283. data/ext/vendor/github.com/klauspost/compress/zstd/decoder_options.go +149 -0
  1284. data/ext/vendor/github.com/klauspost/compress/zstd/dict.go +122 -0
  1285. data/ext/vendor/github.com/klauspost/compress/zstd/enc_base.go +188 -0
  1286. data/ext/vendor/github.com/klauspost/compress/zstd/enc_best.go +559 -0
  1287. data/ext/vendor/github.com/klauspost/compress/zstd/enc_better.go +1246 -0
  1288. data/ext/vendor/github.com/klauspost/compress/zstd/enc_dfast.go +1127 -0
  1289. data/ext/vendor/github.com/klauspost/compress/zstd/enc_fast.go +900 -0
  1290. data/ext/vendor/github.com/klauspost/compress/zstd/encoder.go +641 -0
  1291. data/ext/vendor/github.com/klauspost/compress/zstd/encoder_options.go +317 -0
  1292. data/ext/vendor/github.com/klauspost/compress/zstd/framedec.go +436 -0
  1293. data/ext/vendor/github.com/klauspost/compress/zstd/frameenc.go +137 -0
  1294. data/ext/vendor/github.com/klauspost/compress/zstd/fse_decoder.go +307 -0
  1295. data/ext/vendor/github.com/klauspost/compress/zstd/fse_decoder_amd64.go +65 -0
  1296. data/ext/vendor/github.com/klauspost/compress/zstd/fse_decoder_amd64.s +126 -0
  1297. data/ext/vendor/github.com/klauspost/compress/zstd/fse_decoder_generic.go +72 -0
  1298. data/ext/vendor/github.com/klauspost/compress/zstd/fse_encoder.go +701 -0
  1299. data/ext/vendor/github.com/klauspost/compress/zstd/fse_predefined.go +158 -0
  1300. data/ext/vendor/github.com/klauspost/compress/zstd/hash.go +35 -0
  1301. data/ext/vendor/github.com/klauspost/compress/zstd/history.go +116 -0
  1302. data/ext/vendor/github.com/klauspost/compress/zstd/internal/xxhash/LICENSE.txt +22 -0
  1303. data/ext/vendor/github.com/klauspost/compress/zstd/internal/xxhash/README.md +58 -0
  1304. data/ext/vendor/github.com/klauspost/compress/zstd/internal/xxhash/xxhash.go +237 -0
  1305. data/ext/vendor/github.com/klauspost/compress/zstd/internal/xxhash/xxhash_amd64.s +216 -0
  1306. data/ext/vendor/github.com/klauspost/compress/zstd/internal/xxhash/xxhash_arm64.s +186 -0
  1307. data/ext/vendor/github.com/klauspost/compress/zstd/internal/xxhash/xxhash_asm.go +16 -0
  1308. data/ext/vendor/github.com/klauspost/compress/zstd/internal/xxhash/xxhash_other.go +77 -0
  1309. data/ext/vendor/github.com/klauspost/compress/zstd/internal/xxhash/xxhash_safe.go +11 -0
  1310. data/ext/vendor/github.com/klauspost/compress/zstd/seqdec.go +509 -0
  1311. data/ext/vendor/github.com/klauspost/compress/zstd/seqdec_amd64.go +379 -0
  1312. data/ext/vendor/github.com/klauspost/compress/zstd/seqdec_amd64.s +4099 -0
  1313. data/ext/vendor/github.com/klauspost/compress/zstd/seqdec_generic.go +237 -0
  1314. data/ext/vendor/github.com/klauspost/compress/zstd/seqenc.go +114 -0
  1315. data/ext/vendor/github.com/klauspost/compress/zstd/snappy.go +435 -0
  1316. data/ext/vendor/github.com/klauspost/compress/zstd/zip.go +141 -0
  1317. data/ext/vendor/github.com/klauspost/compress/zstd/zstd.go +152 -0
  1318. data/ext/vendor/github.com/klauspost/cpuid/v2/.gitignore +24 -0
  1319. data/ext/vendor/github.com/klauspost/cpuid/v2/.goreleaser.yml +74 -0
  1320. data/ext/vendor/github.com/klauspost/cpuid/v2/CONTRIBUTING.txt +35 -0
  1321. data/ext/vendor/github.com/klauspost/cpuid/v2/LICENSE +22 -0
  1322. data/ext/vendor/github.com/klauspost/cpuid/v2/README.md +137 -0
  1323. data/ext/vendor/github.com/klauspost/cpuid/v2/cpuid.go +1070 -0
  1324. data/ext/vendor/github.com/klauspost/cpuid/v2/cpuid_386.s +47 -0
  1325. data/ext/vendor/github.com/klauspost/cpuid/v2/cpuid_amd64.s +72 -0
  1326. data/ext/vendor/github.com/klauspost/cpuid/v2/cpuid_arm64.s +26 -0
  1327. data/ext/vendor/github.com/klauspost/cpuid/v2/detect_arm64.go +246 -0
  1328. data/ext/vendor/github.com/klauspost/cpuid/v2/detect_ref.go +14 -0
  1329. data/ext/vendor/github.com/klauspost/cpuid/v2/detect_x86.go +35 -0
  1330. data/ext/vendor/github.com/klauspost/cpuid/v2/featureid_string.go +185 -0
  1331. data/ext/vendor/github.com/klauspost/cpuid/v2/os_darwin_arm64.go +19 -0
  1332. data/ext/vendor/github.com/klauspost/cpuid/v2/os_linux_arm64.go +130 -0
  1333. data/ext/vendor/github.com/klauspost/cpuid/v2/os_other_arm64.go +17 -0
  1334. data/ext/vendor/github.com/klauspost/cpuid/v2/os_safe_linux_arm64.go +7 -0
  1335. data/ext/vendor/github.com/klauspost/cpuid/v2/os_unsafe_linux_arm64.go +10 -0
  1336. data/ext/vendor/github.com/klauspost/cpuid/v2/test-architectures.sh +15 -0
  1337. data/ext/vendor/github.com/mattn/go-pointer/LICENSE +21 -0
  1338. data/ext/vendor/github.com/mattn/go-pointer/README.md +29 -0
  1339. data/ext/vendor/github.com/mattn/go-pointer/doc.go +1 -0
  1340. data/ext/vendor/github.com/mattn/go-pointer/pointer.go +57 -0
  1341. data/ext/vendor/github.com/minio/asm2plan9s/.gitignore +2 -0
  1342. data/ext/vendor/github.com/minio/asm2plan9s/LICENSE +202 -0
  1343. data/ext/vendor/github.com/minio/asm2plan9s/README.md +91 -0
  1344. data/ext/vendor/github.com/minio/asm2plan9s/asm2plan9s.go +252 -0
  1345. data/ext/vendor/github.com/minio/asm2plan9s/asm2plan9s_amd64.go +192 -0
  1346. data/ext/vendor/github.com/minio/asm2plan9s/asm2plan9s_arm64.go +122 -0
  1347. data/ext/vendor/github.com/minio/asm2plan9s/example.s +1 -0
  1348. data/ext/vendor/github.com/minio/asm2plan9s/neon.asm +1 -0
  1349. data/ext/vendor/github.com/minio/asm2plan9s/yasm.go +176 -0
  1350. data/ext/vendor/github.com/minio/c2goasm/LICENSE +202 -0
  1351. data/ext/vendor/github.com/minio/c2goasm/README.md +203 -0
  1352. data/ext/vendor/github.com/minio/c2goasm/arguments.go +122 -0
  1353. data/ext/vendor/github.com/minio/c2goasm/assembly.go +412 -0
  1354. data/ext/vendor/github.com/minio/c2goasm/c2goasm.go +300 -0
  1355. data/ext/vendor/github.com/minio/c2goasm/constants.go +255 -0
  1356. data/ext/vendor/github.com/minio/c2goasm/epilogue.go +219 -0
  1357. data/ext/vendor/github.com/minio/c2goasm/subroutine.go +294 -0
  1358. data/ext/vendor/github.com/mtibben/percent/LICENSE +21 -0
  1359. data/ext/vendor/github.com/mtibben/percent/README.md +5 -0
  1360. data/ext/vendor/github.com/mtibben/percent/percent.go +64 -0
  1361. data/ext/vendor/github.com/pierrec/lz4/v4/.gitignore +36 -0
  1362. data/ext/vendor/github.com/pierrec/lz4/v4/LICENSE +28 -0
  1363. data/ext/vendor/github.com/pierrec/lz4/v4/README.md +92 -0
  1364. data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4block/block.go +482 -0
  1365. data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4block/blocks.go +90 -0
  1366. data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4block/decode_amd64.s +448 -0
  1367. data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4block/decode_arm.s +231 -0
  1368. data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4block/decode_arm64.s +230 -0
  1369. data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4block/decode_asm.go +10 -0
  1370. data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4block/decode_other.go +139 -0
  1371. data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4errors/errors.go +19 -0
  1372. data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4stream/block.go +350 -0
  1373. data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4stream/frame.go +204 -0
  1374. data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4stream/frame_gen.go +103 -0
  1375. data/ext/vendor/github.com/pierrec/lz4/v4/internal/xxh32/xxh32zero.go +212 -0
  1376. data/ext/vendor/github.com/pierrec/lz4/v4/internal/xxh32/xxh32zero_arm.go +11 -0
  1377. data/ext/vendor/github.com/pierrec/lz4/v4/internal/xxh32/xxh32zero_arm.s +251 -0
  1378. data/ext/vendor/github.com/pierrec/lz4/v4/internal/xxh32/xxh32zero_other.go +10 -0
  1379. data/ext/vendor/github.com/pierrec/lz4/v4/lz4.go +157 -0
  1380. data/ext/vendor/github.com/pierrec/lz4/v4/options.go +214 -0
  1381. data/ext/vendor/github.com/pierrec/lz4/v4/options_gen.go +92 -0
  1382. data/ext/vendor/github.com/pierrec/lz4/v4/reader.go +275 -0
  1383. data/ext/vendor/github.com/pierrec/lz4/v4/state.go +75 -0
  1384. data/ext/vendor/github.com/pierrec/lz4/v4/state_gen.go +28 -0
  1385. data/ext/vendor/github.com/pierrec/lz4/v4/writer.go +238 -0
  1386. data/ext/vendor/github.com/pkg/browser/LICENSE +23 -0
  1387. data/ext/vendor/github.com/pkg/browser/README.md +55 -0
  1388. data/ext/vendor/github.com/pkg/browser/browser.go +57 -0
  1389. data/ext/vendor/github.com/pkg/browser/browser_darwin.go +5 -0
  1390. data/ext/vendor/github.com/pkg/browser/browser_freebsd.go +14 -0
  1391. data/ext/vendor/github.com/pkg/browser/browser_linux.go +21 -0
  1392. data/ext/vendor/github.com/pkg/browser/browser_netbsd.go +14 -0
  1393. data/ext/vendor/github.com/pkg/browser/browser_openbsd.go +14 -0
  1394. data/ext/vendor/github.com/pkg/browser/browser_unsupported.go +12 -0
  1395. data/ext/vendor/github.com/pkg/browser/browser_windows.go +7 -0
  1396. data/ext/vendor/github.com/sirupsen/logrus/.gitignore +4 -0
  1397. data/ext/vendor/github.com/sirupsen/logrus/.golangci.yml +40 -0
  1398. data/ext/vendor/github.com/sirupsen/logrus/.travis.yml +15 -0
  1399. data/ext/vendor/github.com/sirupsen/logrus/CHANGELOG.md +259 -0
  1400. data/ext/vendor/github.com/sirupsen/logrus/LICENSE +21 -0
  1401. data/ext/vendor/github.com/sirupsen/logrus/README.md +513 -0
  1402. data/ext/vendor/github.com/sirupsen/logrus/alt_exit.go +76 -0
  1403. data/ext/vendor/github.com/sirupsen/logrus/appveyor.yml +14 -0
  1404. data/ext/vendor/github.com/sirupsen/logrus/buffer_pool.go +43 -0
  1405. data/ext/vendor/github.com/sirupsen/logrus/doc.go +26 -0
  1406. data/ext/vendor/github.com/sirupsen/logrus/entry.go +442 -0
  1407. data/ext/vendor/github.com/sirupsen/logrus/exported.go +270 -0
  1408. data/ext/vendor/github.com/sirupsen/logrus/formatter.go +78 -0
  1409. data/ext/vendor/github.com/sirupsen/logrus/hooks.go +34 -0
  1410. data/ext/vendor/github.com/sirupsen/logrus/json_formatter.go +128 -0
  1411. data/ext/vendor/github.com/sirupsen/logrus/logger.go +417 -0
  1412. data/ext/vendor/github.com/sirupsen/logrus/logrus.go +186 -0
  1413. data/ext/vendor/github.com/sirupsen/logrus/terminal_check_appengine.go +11 -0
  1414. data/ext/vendor/github.com/sirupsen/logrus/terminal_check_bsd.go +13 -0
  1415. data/ext/vendor/github.com/sirupsen/logrus/terminal_check_js.go +7 -0
  1416. data/ext/vendor/github.com/sirupsen/logrus/terminal_check_no_terminal.go +11 -0
  1417. data/ext/vendor/github.com/sirupsen/logrus/terminal_check_notappengine.go +17 -0
  1418. data/ext/vendor/github.com/sirupsen/logrus/terminal_check_solaris.go +11 -0
  1419. data/ext/vendor/github.com/sirupsen/logrus/terminal_check_unix.go +13 -0
  1420. data/ext/vendor/github.com/sirupsen/logrus/terminal_check_windows.go +27 -0
  1421. data/ext/vendor/github.com/sirupsen/logrus/text_formatter.go +339 -0
  1422. data/ext/vendor/github.com/sirupsen/logrus/writer.go +70 -0
  1423. data/ext/vendor/github.com/snowflakedb/gosnowflake/.gitignore +13 -0
  1424. data/ext/vendor/github.com/snowflakedb/gosnowflake/.pre-commit-config.yaml +6 -0
  1425. data/ext/vendor/github.com/snowflakedb/gosnowflake/CONTRIBUTING.md +18 -0
  1426. data/ext/vendor/github.com/snowflakedb/gosnowflake/LICENSE +201 -0
  1427. data/ext/vendor/github.com/snowflakedb/gosnowflake/Makefile +52 -0
  1428. data/ext/vendor/github.com/snowflakedb/gosnowflake/README.md +109 -0
  1429. data/ext/vendor/github.com/snowflakedb/gosnowflake/arrow_chunk.go +91 -0
  1430. data/ext/vendor/github.com/snowflakedb/gosnowflake/async.go +142 -0
  1431. data/ext/vendor/github.com/snowflakedb/gosnowflake/auth.go +549 -0
  1432. data/ext/vendor/github.com/snowflakedb/gosnowflake/authexternalbrowser.go +251 -0
  1433. data/ext/vendor/github.com/snowflakedb/gosnowflake/authokta.go +341 -0
  1434. data/ext/vendor/github.com/snowflakedb/gosnowflake/azure_storage_client.go +294 -0
  1435. data/ext/vendor/github.com/snowflakedb/gosnowflake/bind_uploader.go +300 -0
  1436. data/ext/vendor/github.com/snowflakedb/gosnowflake/cacert.go +3454 -0
  1437. data/ext/vendor/github.com/snowflakedb/gosnowflake/chunk.go +312 -0
  1438. data/ext/vendor/github.com/snowflakedb/gosnowflake/chunk_downloader.go +742 -0
  1439. data/ext/vendor/github.com/snowflakedb/gosnowflake/client.go +38 -0
  1440. data/ext/vendor/github.com/snowflakedb/gosnowflake/connection.go +493 -0
  1441. data/ext/vendor/github.com/snowflakedb/gosnowflake/connection_util.go +287 -0
  1442. data/ext/vendor/github.com/snowflakedb/gosnowflake/connector.go +40 -0
  1443. data/ext/vendor/github.com/snowflakedb/gosnowflake/converter.go +1171 -0
  1444. data/ext/vendor/github.com/snowflakedb/gosnowflake/datatype.go +195 -0
  1445. data/ext/vendor/github.com/snowflakedb/gosnowflake/debug.go +12 -0
  1446. data/ext/vendor/github.com/snowflakedb/gosnowflake/doc.go +885 -0
  1447. data/ext/vendor/github.com/snowflakedb/gosnowflake/driver.go +66 -0
  1448. data/ext/vendor/github.com/snowflakedb/gosnowflake/dsn.go +667 -0
  1449. data/ext/vendor/github.com/snowflakedb/gosnowflake/encrypt_util.go +332 -0
  1450. data/ext/vendor/github.com/snowflakedb/gosnowflake/errors.go +321 -0
  1451. data/ext/vendor/github.com/snowflakedb/gosnowflake/file_compression_type.go +132 -0
  1452. data/ext/vendor/github.com/snowflakedb/gosnowflake/file_transfer_agent.go +1228 -0
  1453. data/ext/vendor/github.com/snowflakedb/gosnowflake/file_util.go +209 -0
  1454. data/ext/vendor/github.com/snowflakedb/gosnowflake/gcs_storage_client.go +355 -0
  1455. data/ext/vendor/github.com/snowflakedb/gosnowflake/gosnowflake.mak +42 -0
  1456. data/ext/vendor/github.com/snowflakedb/gosnowflake/heartbeat.go +98 -0
  1457. data/ext/vendor/github.com/snowflakedb/gosnowflake/local_storage_client.go +113 -0
  1458. data/ext/vendor/github.com/snowflakedb/gosnowflake/location.go +106 -0
  1459. data/ext/vendor/github.com/snowflakedb/gosnowflake/log.go +314 -0
  1460. data/ext/vendor/github.com/snowflakedb/gosnowflake/monitoring.go +271 -0
  1461. data/ext/vendor/github.com/snowflakedb/gosnowflake/multistatement.go +118 -0
  1462. data/ext/vendor/github.com/snowflakedb/gosnowflake/ocsp.go +966 -0
  1463. data/ext/vendor/github.com/snowflakedb/gosnowflake/parameters.json.tmpl +11 -0
  1464. data/ext/vendor/github.com/snowflakedb/gosnowflake/priv_key_test_coding_helper.go +30 -0
  1465. data/ext/vendor/github.com/snowflakedb/gosnowflake/query.go +128 -0
  1466. data/ext/vendor/github.com/snowflakedb/gosnowflake/release.go +8 -0
  1467. data/ext/vendor/github.com/snowflakedb/gosnowflake/restful.go +489 -0
  1468. data/ext/vendor/github.com/snowflakedb/gosnowflake/result.go +75 -0
  1469. data/ext/vendor/github.com/snowflakedb/gosnowflake/retry.go +322 -0
  1470. data/ext/vendor/github.com/snowflakedb/gosnowflake/rows.go +245 -0
  1471. data/ext/vendor/github.com/snowflakedb/gosnowflake/s3_storage_client.go +275 -0
  1472. data/ext/vendor/github.com/snowflakedb/gosnowflake/secret_detector.go +63 -0
  1473. data/ext/vendor/github.com/snowflakedb/gosnowflake/secure_storage_manager.go +282 -0
  1474. data/ext/vendor/github.com/snowflakedb/gosnowflake/sqlstate.go +18 -0
  1475. data/ext/vendor/github.com/snowflakedb/gosnowflake/statement.go +45 -0
  1476. data/ext/vendor/github.com/snowflakedb/gosnowflake/storage_client.go +253 -0
  1477. data/ext/vendor/github.com/snowflakedb/gosnowflake/telemetry.go +128 -0
  1478. data/ext/vendor/github.com/snowflakedb/gosnowflake/transaction.go +35 -0
  1479. data/ext/vendor/github.com/snowflakedb/gosnowflake/url_util.go +29 -0
  1480. data/ext/vendor/github.com/snowflakedb/gosnowflake/util.go +214 -0
  1481. data/ext/vendor/github.com/snowflakedb/gosnowflake/uuid.go +47 -0
  1482. data/ext/vendor/github.com/snowflakedb/gosnowflake/version.go +6 -0
  1483. data/ext/vendor/github.com/zeebo/xxh3/.gitignore +6 -0
  1484. data/ext/vendor/github.com/zeebo/xxh3/LICENSE +25 -0
  1485. data/ext/vendor/github.com/zeebo/xxh3/Makefile +27 -0
  1486. data/ext/vendor/github.com/zeebo/xxh3/README.md +38 -0
  1487. data/ext/vendor/github.com/zeebo/xxh3/_compat.c +39 -0
  1488. data/ext/vendor/github.com/zeebo/xxh3/accum_generic.go +542 -0
  1489. data/ext/vendor/github.com/zeebo/xxh3/accum_stubs_amd64.go +40 -0
  1490. data/ext/vendor/github.com/zeebo/xxh3/accum_stubs_other.go +25 -0
  1491. data/ext/vendor/github.com/zeebo/xxh3/accum_vector_avx512_amd64.s +379 -0
  1492. data/ext/vendor/github.com/zeebo/xxh3/accum_vector_avx_amd64.s +586 -0
  1493. data/ext/vendor/github.com/zeebo/xxh3/accum_vector_sse_amd64.s +1236 -0
  1494. data/ext/vendor/github.com/zeebo/xxh3/consts.go +97 -0
  1495. data/ext/vendor/github.com/zeebo/xxh3/hash128.go +253 -0
  1496. data/ext/vendor/github.com/zeebo/xxh3/hash128_seed.go +264 -0
  1497. data/ext/vendor/github.com/zeebo/xxh3/hash64.go +126 -0
  1498. data/ext/vendor/github.com/zeebo/xxh3/hash64_seed.go +134 -0
  1499. data/ext/vendor/github.com/zeebo/xxh3/hasher.go +239 -0
  1500. data/ext/vendor/github.com/zeebo/xxh3/utils.go +129 -0
  1501. data/ext/vendor/golang.org/x/crypto/LICENSE +27 -0
  1502. data/ext/vendor/golang.org/x/crypto/PATENTS +22 -0
  1503. data/ext/vendor/golang.org/x/crypto/ocsp/ocsp.go +792 -0
  1504. data/ext/vendor/golang.org/x/mod/LICENSE +27 -0
  1505. data/ext/vendor/golang.org/x/mod/PATENTS +22 -0
  1506. data/ext/vendor/golang.org/x/mod/internal/lazyregexp/lazyre.go +78 -0
  1507. data/ext/vendor/golang.org/x/mod/module/module.go +841 -0
  1508. data/ext/vendor/golang.org/x/mod/module/pseudo.go +250 -0
  1509. data/ext/vendor/golang.org/x/mod/semver/semver.go +401 -0
  1510. data/ext/vendor/golang.org/x/net/LICENSE +27 -0
  1511. data/ext/vendor/golang.org/x/net/PATENTS +22 -0
  1512. data/ext/vendor/golang.org/x/net/html/atom/atom.go +78 -0
  1513. data/ext/vendor/golang.org/x/net/html/atom/table.go +783 -0
  1514. data/ext/vendor/golang.org/x/net/html/const.go +111 -0
  1515. data/ext/vendor/golang.org/x/net/html/doc.go +121 -0
  1516. data/ext/vendor/golang.org/x/net/html/doctype.go +156 -0
  1517. data/ext/vendor/golang.org/x/net/html/entity.go +2253 -0
  1518. data/ext/vendor/golang.org/x/net/html/escape.go +339 -0
  1519. data/ext/vendor/golang.org/x/net/html/foreign.go +222 -0
  1520. data/ext/vendor/golang.org/x/net/html/node.go +225 -0
  1521. data/ext/vendor/golang.org/x/net/html/parse.go +2460 -0
  1522. data/ext/vendor/golang.org/x/net/html/render.go +273 -0
  1523. data/ext/vendor/golang.org/x/net/html/token.go +1261 -0
  1524. data/ext/vendor/golang.org/x/net/http/httpguts/guts.go +50 -0
  1525. data/ext/vendor/golang.org/x/net/http/httpguts/httplex.go +352 -0
  1526. data/ext/vendor/golang.org/x/net/idna/go118.go +14 -0
  1527. data/ext/vendor/golang.org/x/net/idna/idna10.0.0.go +770 -0
  1528. data/ext/vendor/golang.org/x/net/idna/idna9.0.0.go +718 -0
  1529. data/ext/vendor/golang.org/x/net/idna/pre_go118.go +12 -0
  1530. data/ext/vendor/golang.org/x/net/idna/punycode.go +217 -0
  1531. data/ext/vendor/golang.org/x/net/idna/tables10.0.0.go +4560 -0
  1532. data/ext/vendor/golang.org/x/net/idna/tables11.0.0.go +4654 -0
  1533. data/ext/vendor/golang.org/x/net/idna/tables12.0.0.go +4734 -0
  1534. data/ext/vendor/golang.org/x/net/idna/tables13.0.0.go +4840 -0
  1535. data/ext/vendor/golang.org/x/net/idna/tables9.0.0.go +4487 -0
  1536. data/ext/vendor/golang.org/x/net/idna/trie.go +72 -0
  1537. data/ext/vendor/golang.org/x/net/idna/trieval.go +119 -0
  1538. data/ext/vendor/golang.org/x/sys/LICENSE +27 -0
  1539. data/ext/vendor/golang.org/x/sys/PATENTS +22 -0
  1540. data/ext/vendor/golang.org/x/sys/cpu/asm_aix_ppc64.s +18 -0
  1541. data/ext/vendor/golang.org/x/sys/cpu/byteorder.go +66 -0
  1542. data/ext/vendor/golang.org/x/sys/cpu/cpu.go +287 -0
  1543. data/ext/vendor/golang.org/x/sys/cpu/cpu_aix.go +34 -0
  1544. data/ext/vendor/golang.org/x/sys/cpu/cpu_arm.go +73 -0
  1545. data/ext/vendor/golang.org/x/sys/cpu/cpu_arm64.go +172 -0
  1546. data/ext/vendor/golang.org/x/sys/cpu/cpu_arm64.s +32 -0
  1547. data/ext/vendor/golang.org/x/sys/cpu/cpu_gc_arm64.go +12 -0
  1548. data/ext/vendor/golang.org/x/sys/cpu/cpu_gc_s390x.go +22 -0
  1549. data/ext/vendor/golang.org/x/sys/cpu/cpu_gc_x86.go +17 -0
  1550. data/ext/vendor/golang.org/x/sys/cpu/cpu_gccgo_arm64.go +12 -0
  1551. data/ext/vendor/golang.org/x/sys/cpu/cpu_gccgo_s390x.go +23 -0
  1552. data/ext/vendor/golang.org/x/sys/cpu/cpu_gccgo_x86.c +39 -0
  1553. data/ext/vendor/golang.org/x/sys/cpu/cpu_gccgo_x86.go +33 -0
  1554. data/ext/vendor/golang.org/x/sys/cpu/cpu_linux.go +16 -0
  1555. data/ext/vendor/golang.org/x/sys/cpu/cpu_linux_arm.go +39 -0
  1556. data/ext/vendor/golang.org/x/sys/cpu/cpu_linux_arm64.go +111 -0
  1557. data/ext/vendor/golang.org/x/sys/cpu/cpu_linux_mips64x.go +24 -0
  1558. data/ext/vendor/golang.org/x/sys/cpu/cpu_linux_noinit.go +10 -0
  1559. data/ext/vendor/golang.org/x/sys/cpu/cpu_linux_ppc64x.go +32 -0
  1560. data/ext/vendor/golang.org/x/sys/cpu/cpu_linux_s390x.go +40 -0
  1561. data/ext/vendor/golang.org/x/sys/cpu/cpu_loong64.go +13 -0
  1562. data/ext/vendor/golang.org/x/sys/cpu/cpu_mips64x.go +16 -0
  1563. data/ext/vendor/golang.org/x/sys/cpu/cpu_mipsx.go +12 -0
  1564. data/ext/vendor/golang.org/x/sys/cpu/cpu_netbsd_arm64.go +173 -0
  1565. data/ext/vendor/golang.org/x/sys/cpu/cpu_openbsd_arm64.go +65 -0
  1566. data/ext/vendor/golang.org/x/sys/cpu/cpu_openbsd_arm64.s +11 -0
  1567. data/ext/vendor/golang.org/x/sys/cpu/cpu_other_arm.go +10 -0
  1568. data/ext/vendor/golang.org/x/sys/cpu/cpu_other_arm64.go +10 -0
  1569. data/ext/vendor/golang.org/x/sys/cpu/cpu_other_mips64x.go +13 -0
  1570. data/ext/vendor/golang.org/x/sys/cpu/cpu_other_ppc64x.go +15 -0
  1571. data/ext/vendor/golang.org/x/sys/cpu/cpu_other_riscv64.go +12 -0
  1572. data/ext/vendor/golang.org/x/sys/cpu/cpu_ppc64x.go +17 -0
  1573. data/ext/vendor/golang.org/x/sys/cpu/cpu_riscv64.go +12 -0
  1574. data/ext/vendor/golang.org/x/sys/cpu/cpu_s390x.go +172 -0
  1575. data/ext/vendor/golang.org/x/sys/cpu/cpu_s390x.s +58 -0
  1576. data/ext/vendor/golang.org/x/sys/cpu/cpu_wasm.go +18 -0
  1577. data/ext/vendor/golang.org/x/sys/cpu/cpu_x86.go +145 -0
  1578. data/ext/vendor/golang.org/x/sys/cpu/cpu_x86.s +28 -0
  1579. data/ext/vendor/golang.org/x/sys/cpu/cpu_zos.go +10 -0
  1580. data/ext/vendor/golang.org/x/sys/cpu/cpu_zos_s390x.go +25 -0
  1581. data/ext/vendor/golang.org/x/sys/cpu/endian_big.go +11 -0
  1582. data/ext/vendor/golang.org/x/sys/cpu/endian_little.go +11 -0
  1583. data/ext/vendor/golang.org/x/sys/cpu/hwcap_linux.go +71 -0
  1584. data/ext/vendor/golang.org/x/sys/cpu/parse.go +43 -0
  1585. data/ext/vendor/golang.org/x/sys/cpu/proc_cpuinfo_linux.go +54 -0
  1586. data/ext/vendor/golang.org/x/sys/cpu/runtime_auxv.go +16 -0
  1587. data/ext/vendor/golang.org/x/sys/cpu/runtime_auxv_go121.go +19 -0
  1588. data/ext/vendor/golang.org/x/sys/cpu/syscall_aix_gccgo.go +27 -0
  1589. data/ext/vendor/golang.org/x/sys/cpu/syscall_aix_ppc64_gc.go +36 -0
  1590. data/ext/vendor/golang.org/x/sys/execabs/execabs.go +102 -0
  1591. data/ext/vendor/golang.org/x/sys/execabs/execabs_go118.go +18 -0
  1592. data/ext/vendor/golang.org/x/sys/execabs/execabs_go119.go +21 -0
  1593. data/ext/vendor/golang.org/x/sys/internal/unsafeheader/unsafeheader.go +30 -0
  1594. data/ext/vendor/golang.org/x/sys/plan9/asm.s +8 -0
  1595. data/ext/vendor/golang.org/x/sys/plan9/asm_plan9_386.s +30 -0
  1596. data/ext/vendor/golang.org/x/sys/plan9/asm_plan9_amd64.s +30 -0
  1597. data/ext/vendor/golang.org/x/sys/plan9/asm_plan9_arm.s +25 -0
  1598. data/ext/vendor/golang.org/x/sys/plan9/const_plan9.go +70 -0
  1599. data/ext/vendor/golang.org/x/sys/plan9/dir_plan9.go +212 -0
  1600. data/ext/vendor/golang.org/x/sys/plan9/env_plan9.go +31 -0
  1601. data/ext/vendor/golang.org/x/sys/plan9/errors_plan9.go +50 -0
  1602. data/ext/vendor/golang.org/x/sys/plan9/mkall.sh +150 -0
  1603. data/ext/vendor/golang.org/x/sys/plan9/mkerrors.sh +246 -0
  1604. data/ext/vendor/golang.org/x/sys/plan9/mksysnum_plan9.sh +23 -0
  1605. data/ext/vendor/golang.org/x/sys/plan9/pwd_go15_plan9.go +22 -0
  1606. data/ext/vendor/golang.org/x/sys/plan9/pwd_plan9.go +24 -0
  1607. data/ext/vendor/golang.org/x/sys/plan9/race.go +31 -0
  1608. data/ext/vendor/golang.org/x/sys/plan9/race0.go +26 -0
  1609. data/ext/vendor/golang.org/x/sys/plan9/str.go +23 -0
  1610. data/ext/vendor/golang.org/x/sys/plan9/syscall.go +110 -0
  1611. data/ext/vendor/golang.org/x/sys/plan9/syscall_plan9.go +361 -0
  1612. data/ext/vendor/golang.org/x/sys/plan9/zsyscall_plan9_386.go +285 -0
  1613. data/ext/vendor/golang.org/x/sys/plan9/zsyscall_plan9_amd64.go +285 -0
  1614. data/ext/vendor/golang.org/x/sys/plan9/zsyscall_plan9_arm.go +285 -0
  1615. data/ext/vendor/golang.org/x/sys/plan9/zsysnum_plan9.go +49 -0
  1616. data/ext/vendor/golang.org/x/sys/unix/.gitignore +2 -0
  1617. data/ext/vendor/golang.org/x/sys/unix/README.md +184 -0
  1618. data/ext/vendor/golang.org/x/sys/unix/affinity_linux.go +86 -0
  1619. data/ext/vendor/golang.org/x/sys/unix/aliases.go +15 -0
  1620. data/ext/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s +18 -0
  1621. data/ext/vendor/golang.org/x/sys/unix/asm_bsd_386.s +29 -0
  1622. data/ext/vendor/golang.org/x/sys/unix/asm_bsd_amd64.s +29 -0
  1623. data/ext/vendor/golang.org/x/sys/unix/asm_bsd_arm.s +29 -0
  1624. data/ext/vendor/golang.org/x/sys/unix/asm_bsd_arm64.s +29 -0
  1625. data/ext/vendor/golang.org/x/sys/unix/asm_bsd_ppc64.s +31 -0
  1626. data/ext/vendor/golang.org/x/sys/unix/asm_bsd_riscv64.s +29 -0
  1627. data/ext/vendor/golang.org/x/sys/unix/asm_linux_386.s +66 -0
  1628. data/ext/vendor/golang.org/x/sys/unix/asm_linux_amd64.s +58 -0
  1629. data/ext/vendor/golang.org/x/sys/unix/asm_linux_arm.s +57 -0
  1630. data/ext/vendor/golang.org/x/sys/unix/asm_linux_arm64.s +53 -0
  1631. data/ext/vendor/golang.org/x/sys/unix/asm_linux_loong64.s +54 -0
  1632. data/ext/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s +57 -0
  1633. data/ext/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s +55 -0
  1634. data/ext/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s +45 -0
  1635. data/ext/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s +49 -0
  1636. data/ext/vendor/golang.org/x/sys/unix/asm_linux_s390x.s +57 -0
  1637. data/ext/vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s +30 -0
  1638. data/ext/vendor/golang.org/x/sys/unix/asm_solaris_amd64.s +18 -0
  1639. data/ext/vendor/golang.org/x/sys/unix/asm_zos_s390x.s +426 -0
  1640. data/ext/vendor/golang.org/x/sys/unix/bluetooth_linux.go +36 -0
  1641. data/ext/vendor/golang.org/x/sys/unix/cap_freebsd.go +196 -0
  1642. data/ext/vendor/golang.org/x/sys/unix/constants.go +14 -0
  1643. data/ext/vendor/golang.org/x/sys/unix/dev_aix_ppc.go +27 -0
  1644. data/ext/vendor/golang.org/x/sys/unix/dev_aix_ppc64.go +29 -0
  1645. data/ext/vendor/golang.org/x/sys/unix/dev_darwin.go +24 -0
  1646. data/ext/vendor/golang.org/x/sys/unix/dev_dragonfly.go +30 -0
  1647. data/ext/vendor/golang.org/x/sys/unix/dev_freebsd.go +30 -0
  1648. data/ext/vendor/golang.org/x/sys/unix/dev_linux.go +42 -0
  1649. data/ext/vendor/golang.org/x/sys/unix/dev_netbsd.go +29 -0
  1650. data/ext/vendor/golang.org/x/sys/unix/dev_openbsd.go +29 -0
  1651. data/ext/vendor/golang.org/x/sys/unix/dev_zos.go +29 -0
  1652. data/ext/vendor/golang.org/x/sys/unix/dirent.go +103 -0
  1653. data/ext/vendor/golang.org/x/sys/unix/endian_big.go +10 -0
  1654. data/ext/vendor/golang.org/x/sys/unix/endian_little.go +10 -0
  1655. data/ext/vendor/golang.org/x/sys/unix/env_unix.go +32 -0
  1656. data/ext/vendor/golang.org/x/sys/unix/epoll_zos.go +221 -0
  1657. data/ext/vendor/golang.org/x/sys/unix/fcntl.go +37 -0
  1658. data/ext/vendor/golang.org/x/sys/unix/fcntl_darwin.go +24 -0
  1659. data/ext/vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go +14 -0
  1660. data/ext/vendor/golang.org/x/sys/unix/fdset.go +30 -0
  1661. data/ext/vendor/golang.org/x/sys/unix/fstatfs_zos.go +164 -0
  1662. data/ext/vendor/golang.org/x/sys/unix/gccgo.go +60 -0
  1663. data/ext/vendor/golang.org/x/sys/unix/gccgo_c.c +45 -0
  1664. data/ext/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go +21 -0
  1665. data/ext/vendor/golang.org/x/sys/unix/ifreq_linux.go +142 -0
  1666. data/ext/vendor/golang.org/x/sys/unix/ioctl.go +70 -0
  1667. data/ext/vendor/golang.org/x/sys/unix/ioctl_linux.go +233 -0
  1668. data/ext/vendor/golang.org/x/sys/unix/ioctl_zos.go +72 -0
  1669. data/ext/vendor/golang.org/x/sys/unix/mkall.sh +249 -0
  1670. data/ext/vendor/golang.org/x/sys/unix/mkerrors.sh +778 -0
  1671. data/ext/vendor/golang.org/x/sys/unix/pagesize_unix.go +16 -0
  1672. data/ext/vendor/golang.org/x/sys/unix/pledge_openbsd.go +163 -0
  1673. data/ext/vendor/golang.org/x/sys/unix/ptrace_darwin.go +18 -0
  1674. data/ext/vendor/golang.org/x/sys/unix/ptrace_ios.go +18 -0
  1675. data/ext/vendor/golang.org/x/sys/unix/race.go +31 -0
  1676. data/ext/vendor/golang.org/x/sys/unix/race0.go +26 -0
  1677. data/ext/vendor/golang.org/x/sys/unix/readdirent_getdents.go +13 -0
  1678. data/ext/vendor/golang.org/x/sys/unix/readdirent_getdirentries.go +20 -0
  1679. data/ext/vendor/golang.org/x/sys/unix/sockcmsg_dragonfly.go +16 -0
  1680. data/ext/vendor/golang.org/x/sys/unix/sockcmsg_linux.go +85 -0
  1681. data/ext/vendor/golang.org/x/sys/unix/sockcmsg_unix.go +107 -0
  1682. data/ext/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go +47 -0
  1683. data/ext/vendor/golang.org/x/sys/unix/syscall.go +87 -0
  1684. data/ext/vendor/golang.org/x/sys/unix/syscall_aix.go +599 -0
  1685. data/ext/vendor/golang.org/x/sys/unix/syscall_aix_ppc.go +54 -0
  1686. data/ext/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go +85 -0
  1687. data/ext/vendor/golang.org/x/sys/unix/syscall_bsd.go +624 -0
  1688. data/ext/vendor/golang.org/x/sys/unix/syscall_darwin.go +827 -0
  1689. data/ext/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go +52 -0
  1690. data/ext/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go +52 -0
  1691. data/ext/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go +27 -0
  1692. data/ext/vendor/golang.org/x/sys/unix/syscall_dragonfly.go +546 -0
  1693. data/ext/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go +57 -0
  1694. data/ext/vendor/golang.org/x/sys/unix/syscall_freebsd.go +646 -0
  1695. data/ext/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go +65 -0
  1696. data/ext/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go +65 -0
  1697. data/ext/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go +61 -0
  1698. data/ext/vendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go +61 -0
  1699. data/ext/vendor/golang.org/x/sys/unix/syscall_freebsd_riscv64.go +61 -0
  1700. data/ext/vendor/golang.org/x/sys/unix/syscall_hurd.go +30 -0
  1701. data/ext/vendor/golang.org/x/sys/unix/syscall_hurd_386.go +29 -0
  1702. data/ext/vendor/golang.org/x/sys/unix/syscall_illumos.go +79 -0
  1703. data/ext/vendor/golang.org/x/sys/unix/syscall_linux.go +2510 -0
  1704. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_386.go +342 -0
  1705. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_alarm.go +14 -0
  1706. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go +147 -0
  1707. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_amd64_gc.go +13 -0
  1708. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_arm.go +244 -0
  1709. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go +195 -0
  1710. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_gc.go +15 -0
  1711. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go +17 -0
  1712. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_gc_arm.go +14 -0
  1713. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go +31 -0
  1714. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go +21 -0
  1715. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_loong64.go +222 -0
  1716. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go +191 -0
  1717. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go +203 -0
  1718. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_ppc.go +232 -0
  1719. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go +118 -0
  1720. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go +180 -0
  1721. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go +298 -0
  1722. data/ext/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go +114 -0
  1723. data/ext/vendor/golang.org/x/sys/unix/syscall_netbsd.go +623 -0
  1724. data/ext/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go +38 -0
  1725. data/ext/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go +38 -0
  1726. data/ext/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go +38 -0
  1727. data/ext/vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go +38 -0
  1728. data/ext/vendor/golang.org/x/sys/unix/syscall_openbsd.go +391 -0
  1729. data/ext/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go +42 -0
  1730. data/ext/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go +42 -0
  1731. data/ext/vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go +42 -0
  1732. data/ext/vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go +42 -0
  1733. data/ext/vendor/golang.org/x/sys/unix/syscall_openbsd_libc.go +27 -0
  1734. data/ext/vendor/golang.org/x/sys/unix/syscall_openbsd_mips64.go +39 -0
  1735. data/ext/vendor/golang.org/x/sys/unix/syscall_openbsd_ppc64.go +42 -0
  1736. data/ext/vendor/golang.org/x/sys/unix/syscall_openbsd_riscv64.go +42 -0
  1737. data/ext/vendor/golang.org/x/sys/unix/syscall_solaris.go +1136 -0
  1738. data/ext/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go +28 -0
  1739. data/ext/vendor/golang.org/x/sys/unix/syscall_unix.go +589 -0
  1740. data/ext/vendor/golang.org/x/sys/unix/syscall_unix_gc.go +16 -0
  1741. data/ext/vendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go +25 -0
  1742. data/ext/vendor/golang.org/x/sys/unix/syscall_zos_s390x.go +1994 -0
  1743. data/ext/vendor/golang.org/x/sys/unix/sysvshm_linux.go +21 -0
  1744. data/ext/vendor/golang.org/x/sys/unix/sysvshm_unix.go +52 -0
  1745. data/ext/vendor/golang.org/x/sys/unix/sysvshm_unix_other.go +14 -0
  1746. data/ext/vendor/golang.org/x/sys/unix/timestruct.go +77 -0
  1747. data/ext/vendor/golang.org/x/sys/unix/unveil_openbsd.go +42 -0
  1748. data/ext/vendor/golang.org/x/sys/unix/xattr_bsd.go +281 -0
  1749. data/ext/vendor/golang.org/x/sys/unix/zerrors_aix_ppc.go +1385 -0
  1750. data/ext/vendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go +1386 -0
  1751. data/ext/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go +1892 -0
  1752. data/ext/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go +1892 -0
  1753. data/ext/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go +1738 -0
  1754. data/ext/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go +2043 -0
  1755. data/ext/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go +2040 -0
  1756. data/ext/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go +2034 -0
  1757. data/ext/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go +2034 -0
  1758. data/ext/vendor/golang.org/x/sys/unix/zerrors_freebsd_riscv64.go +2148 -0
  1759. data/ext/vendor/golang.org/x/sys/unix/zerrors_linux.go +3479 -0
  1760. data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_386.go +829 -0
  1761. data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go +829 -0
  1762. data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go +835 -0
  1763. data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go +827 -0
  1764. data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_loong64.go +819 -0
  1765. data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go +836 -0
  1766. data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go +836 -0
  1767. data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go +836 -0
  1768. data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go +836 -0
  1769. data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go +888 -0
  1770. data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go +892 -0
  1771. data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go +892 -0
  1772. data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go +816 -0
  1773. data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go +891 -0
  1774. data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go +886 -0
  1775. data/ext/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go +1780 -0
  1776. data/ext/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go +1770 -0
  1777. data/ext/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go +1759 -0
  1778. data/ext/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go +1770 -0
  1779. data/ext/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go +1906 -0
  1780. data/ext/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go +1906 -0
  1781. data/ext/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go +1906 -0
  1782. data/ext/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go +1906 -0
  1783. data/ext/vendor/golang.org/x/sys/unix/zerrors_openbsd_mips64.go +1906 -0
  1784. data/ext/vendor/golang.org/x/sys/unix/zerrors_openbsd_ppc64.go +1905 -0
  1785. data/ext/vendor/golang.org/x/sys/unix/zerrors_openbsd_riscv64.go +1904 -0
  1786. data/ext/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go +1557 -0
  1787. data/ext/vendor/golang.org/x/sys/unix/zerrors_zos_s390x.go +860 -0
  1788. data/ext/vendor/golang.org/x/sys/unix/zptrace_armnn_linux.go +42 -0
  1789. data/ext/vendor/golang.org/x/sys/unix/zptrace_linux_arm64.go +17 -0
  1790. data/ext/vendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go +51 -0
  1791. data/ext/vendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go +51 -0
  1792. data/ext/vendor/golang.org/x/sys/unix/zptrace_x86_linux.go +81 -0
  1793. data/ext/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go +1495 -0
  1794. data/ext/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go +1453 -0
  1795. data/ext/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go +1199 -0
  1796. data/ext/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go +1078 -0
  1797. data/ext/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go +2561 -0
  1798. data/ext/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s +904 -0
  1799. data/ext/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go +2561 -0
  1800. data/ext/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s +904 -0
  1801. data/ext/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go +1699 -0
  1802. data/ext/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go +1919 -0
  1803. data/ext/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go +1919 -0
  1804. data/ext/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go +1919 -0
  1805. data/ext/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go +1919 -0
  1806. data/ext/vendor/golang.org/x/sys/unix/zsyscall_freebsd_riscv64.go +1919 -0
  1807. data/ext/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go +102 -0
  1808. data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux.go +2184 -0
  1809. data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go +497 -0
  1810. data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go +664 -0
  1811. data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go +612 -0
  1812. data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go +563 -0
  1813. data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_loong64.go +487 -0
  1814. data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go +664 -0
  1815. data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go +658 -0
  1816. data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go +647 -0
  1817. data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go +664 -0
  1818. data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc.go +669 -0
  1819. data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go +715 -0
  1820. data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go +715 -0
  1821. data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go +543 -0
  1822. data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go +506 -0
  1823. data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go +659 -0
  1824. data/ext/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go +1870 -0
  1825. data/ext/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go +1870 -0
  1826. data/ext/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go +1870 -0
  1827. data/ext/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go +1870 -0
  1828. data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go +2243 -0
  1829. data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.s +669 -0
  1830. data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go +2243 -0
  1831. data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.s +669 -0
  1832. data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go +2243 -0
  1833. data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.s +669 -0
  1834. data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go +2243 -0
  1835. data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.s +669 -0
  1836. data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.go +2243 -0
  1837. data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.s +669 -0
  1838. data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.go +2243 -0
  1839. data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.s +802 -0
  1840. data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.go +2243 -0
  1841. data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.s +669 -0
  1842. data/ext/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go +2117 -0
  1843. data/ext/vendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go +1265 -0
  1844. data/ext/vendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go +281 -0
  1845. data/ext/vendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go +281 -0
  1846. data/ext/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go +281 -0
  1847. data/ext/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go +281 -0
  1848. data/ext/vendor/golang.org/x/sys/unix/zsysctl_openbsd_mips64.go +281 -0
  1849. data/ext/vendor/golang.org/x/sys/unix/zsysctl_openbsd_ppc64.go +281 -0
  1850. data/ext/vendor/golang.org/x/sys/unix/zsysctl_openbsd_riscv64.go +282 -0
  1851. data/ext/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go +440 -0
  1852. data/ext/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go +438 -0
  1853. data/ext/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go +317 -0
  1854. data/ext/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go +394 -0
  1855. data/ext/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go +394 -0
  1856. data/ext/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go +394 -0
  1857. data/ext/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go +394 -0
  1858. data/ext/vendor/golang.org/x/sys/unix/zsysnum_freebsd_riscv64.go +394 -0
  1859. data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go +450 -0
  1860. data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go +372 -0
  1861. data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go +414 -0
  1862. data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go +317 -0
  1863. data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go +311 -0
  1864. data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go +434 -0
  1865. data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go +364 -0
  1866. data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go +364 -0
  1867. data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go +434 -0
  1868. data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go +441 -0
  1869. data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go +413 -0
  1870. data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go +413 -0
  1871. data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go +316 -0
  1872. data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go +378 -0
  1873. data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go +392 -0
  1874. data/ext/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go +275 -0
  1875. data/ext/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go +275 -0
  1876. data/ext/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go +275 -0
  1877. data/ext/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go +275 -0
  1878. data/ext/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go +220 -0
  1879. data/ext/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go +220 -0
  1880. data/ext/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go +220 -0
  1881. data/ext/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go +219 -0
  1882. data/ext/vendor/golang.org/x/sys/unix/zsysnum_openbsd_mips64.go +222 -0
  1883. data/ext/vendor/golang.org/x/sys/unix/zsysnum_openbsd_ppc64.go +218 -0
  1884. data/ext/vendor/golang.org/x/sys/unix/zsysnum_openbsd_riscv64.go +219 -0
  1885. data/ext/vendor/golang.org/x/sys/unix/zsysnum_zos_s390x.go +2670 -0
  1886. data/ext/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go +354 -0
  1887. data/ext/vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go +358 -0
  1888. data/ext/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go +795 -0
  1889. data/ext/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go +795 -0
  1890. data/ext/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go +474 -0
  1891. data/ext/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go +651 -0
  1892. data/ext/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go +656 -0
  1893. data/ext/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go +642 -0
  1894. data/ext/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go +636 -0
  1895. data/ext/vendor/golang.org/x/sys/unix/ztypes_freebsd_riscv64.go +638 -0
  1896. data/ext/vendor/golang.org/x/sys/unix/ztypes_linux.go +5812 -0
  1897. data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_386.go +696 -0
  1898. data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go +711 -0
  1899. data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go +691 -0
  1900. data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go +690 -0
  1901. data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_loong64.go +691 -0
  1902. data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go +696 -0
  1903. data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go +693 -0
  1904. data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go +693 -0
  1905. data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go +696 -0
  1906. data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_ppc.go +704 -0
  1907. data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go +699 -0
  1908. data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go +699 -0
  1909. data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go +718 -0
  1910. data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go +713 -0
  1911. data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go +694 -0
  1912. data/ext/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go +586 -0
  1913. data/ext/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go +594 -0
  1914. data/ext/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go +591 -0
  1915. data/ext/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go +594 -0
  1916. data/ext/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go +569 -0
  1917. data/ext/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go +569 -0
  1918. data/ext/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go +576 -0
  1919. data/ext/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go +569 -0
  1920. data/ext/vendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go +569 -0
  1921. data/ext/vendor/golang.org/x/sys/unix/ztypes_openbsd_ppc64.go +571 -0
  1922. data/ext/vendor/golang.org/x/sys/unix/ztypes_openbsd_riscv64.go +571 -0
  1923. data/ext/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go +517 -0
  1924. data/ext/vendor/golang.org/x/sys/unix/ztypes_zos_s390x.go +415 -0
  1925. data/ext/vendor/golang.org/x/sys/windows/aliases.go +13 -0
  1926. data/ext/vendor/golang.org/x/sys/windows/dll_windows.go +416 -0
  1927. data/ext/vendor/golang.org/x/sys/windows/empty.s +9 -0
  1928. data/ext/vendor/golang.org/x/sys/windows/env_windows.go +54 -0
  1929. data/ext/vendor/golang.org/x/sys/windows/eventlog.go +21 -0
  1930. data/ext/vendor/golang.org/x/sys/windows/exec_windows.go +178 -0
  1931. data/ext/vendor/golang.org/x/sys/windows/memory_windows.go +48 -0
  1932. data/ext/vendor/golang.org/x/sys/windows/mkerrors.bash +70 -0
  1933. data/ext/vendor/golang.org/x/sys/windows/mkknownfolderids.bash +27 -0
  1934. data/ext/vendor/golang.org/x/sys/windows/mksyscall.go +10 -0
  1935. data/ext/vendor/golang.org/x/sys/windows/race.go +31 -0
  1936. data/ext/vendor/golang.org/x/sys/windows/race0.go +26 -0
  1937. data/ext/vendor/golang.org/x/sys/windows/security_windows.go +1444 -0
  1938. data/ext/vendor/golang.org/x/sys/windows/service.go +247 -0
  1939. data/ext/vendor/golang.org/x/sys/windows/setupapi_windows.go +1425 -0
  1940. data/ext/vendor/golang.org/x/sys/windows/str.go +23 -0
  1941. data/ext/vendor/golang.org/x/sys/windows/syscall.go +105 -0
  1942. data/ext/vendor/golang.org/x/sys/windows/syscall_windows.go +1808 -0
  1943. data/ext/vendor/golang.org/x/sys/windows/types_windows.go +3345 -0
  1944. data/ext/vendor/golang.org/x/sys/windows/types_windows_386.go +35 -0
  1945. data/ext/vendor/golang.org/x/sys/windows/types_windows_amd64.go +34 -0
  1946. data/ext/vendor/golang.org/x/sys/windows/types_windows_arm.go +35 -0
  1947. data/ext/vendor/golang.org/x/sys/windows/types_windows_arm64.go +34 -0
  1948. data/ext/vendor/golang.org/x/sys/windows/zerrors_windows.go +9468 -0
  1949. data/ext/vendor/golang.org/x/sys/windows/zknownfolderids_windows.go +149 -0
  1950. data/ext/vendor/golang.org/x/sys/windows/zsyscall_windows.go +4336 -0
  1951. data/ext/vendor/golang.org/x/term/CONTRIBUTING.md +26 -0
  1952. data/ext/vendor/golang.org/x/term/LICENSE +27 -0
  1953. data/ext/vendor/golang.org/x/term/PATENTS +22 -0
  1954. data/ext/vendor/golang.org/x/term/README.md +19 -0
  1955. data/ext/vendor/golang.org/x/term/codereview.cfg +1 -0
  1956. data/ext/vendor/golang.org/x/term/term.go +60 -0
  1957. data/ext/vendor/golang.org/x/term/term_plan9.go +42 -0
  1958. data/ext/vendor/golang.org/x/term/term_unix.go +92 -0
  1959. data/ext/vendor/golang.org/x/term/term_unix_bsd.go +13 -0
  1960. data/ext/vendor/golang.org/x/term/term_unix_other.go +13 -0
  1961. data/ext/vendor/golang.org/x/term/term_unsupported.go +39 -0
  1962. data/ext/vendor/golang.org/x/term/term_windows.go +79 -0
  1963. data/ext/vendor/golang.org/x/term/terminal.go +986 -0
  1964. data/ext/vendor/golang.org/x/text/LICENSE +27 -0
  1965. data/ext/vendor/golang.org/x/text/PATENTS +22 -0
  1966. data/ext/vendor/golang.org/x/text/secure/bidirule/bidirule.go +336 -0
  1967. data/ext/vendor/golang.org/x/text/secure/bidirule/bidirule10.0.0.go +12 -0
  1968. data/ext/vendor/golang.org/x/text/secure/bidirule/bidirule9.0.0.go +15 -0
  1969. data/ext/vendor/golang.org/x/text/transform/transform.go +709 -0
  1970. data/ext/vendor/golang.org/x/text/unicode/bidi/bidi.go +359 -0
  1971. data/ext/vendor/golang.org/x/text/unicode/bidi/bracket.go +335 -0
  1972. data/ext/vendor/golang.org/x/text/unicode/bidi/core.go +1071 -0
  1973. data/ext/vendor/golang.org/x/text/unicode/bidi/prop.go +206 -0
  1974. data/ext/vendor/golang.org/x/text/unicode/bidi/tables10.0.0.go +1816 -0
  1975. data/ext/vendor/golang.org/x/text/unicode/bidi/tables11.0.0.go +1888 -0
  1976. data/ext/vendor/golang.org/x/text/unicode/bidi/tables12.0.0.go +1924 -0
  1977. data/ext/vendor/golang.org/x/text/unicode/bidi/tables13.0.0.go +1956 -0
  1978. data/ext/vendor/golang.org/x/text/unicode/bidi/tables9.0.0.go +1782 -0
  1979. data/ext/vendor/golang.org/x/text/unicode/bidi/trieval.go +48 -0
  1980. data/ext/vendor/golang.org/x/text/unicode/norm/composition.go +512 -0
  1981. data/ext/vendor/golang.org/x/text/unicode/norm/forminfo.go +279 -0
  1982. data/ext/vendor/golang.org/x/text/unicode/norm/input.go +109 -0
  1983. data/ext/vendor/golang.org/x/text/unicode/norm/iter.go +458 -0
  1984. data/ext/vendor/golang.org/x/text/unicode/norm/normalize.go +610 -0
  1985. data/ext/vendor/golang.org/x/text/unicode/norm/readwriter.go +125 -0
  1986. data/ext/vendor/golang.org/x/text/unicode/norm/tables10.0.0.go +7658 -0
  1987. data/ext/vendor/golang.org/x/text/unicode/norm/tables11.0.0.go +7694 -0
  1988. data/ext/vendor/golang.org/x/text/unicode/norm/tables12.0.0.go +7711 -0
  1989. data/ext/vendor/golang.org/x/text/unicode/norm/tables13.0.0.go +7761 -0
  1990. data/ext/vendor/golang.org/x/text/unicode/norm/tables9.0.0.go +7638 -0
  1991. data/ext/vendor/golang.org/x/text/unicode/norm/transform.go +88 -0
  1992. data/ext/vendor/golang.org/x/text/unicode/norm/trie.go +54 -0
  1993. data/ext/vendor/golang.org/x/tools/LICENSE +27 -0
  1994. data/ext/vendor/golang.org/x/tools/PATENTS +22 -0
  1995. data/ext/vendor/golang.org/x/tools/cmd/goimports/doc.go +50 -0
  1996. data/ext/vendor/golang.org/x/tools/cmd/goimports/goimports.go +380 -0
  1997. data/ext/vendor/golang.org/x/tools/cmd/goimports/goimports_gc.go +27 -0
  1998. data/ext/vendor/golang.org/x/tools/cmd/goimports/goimports_not_gc.go +12 -0
  1999. data/ext/vendor/golang.org/x/tools/cmd/stringer/stringer.go +657 -0
  2000. data/ext/vendor/golang.org/x/tools/go/ast/astutil/enclosing.go +636 -0
  2001. data/ext/vendor/golang.org/x/tools/go/ast/astutil/imports.go +485 -0
  2002. data/ext/vendor/golang.org/x/tools/go/ast/astutil/rewrite.go +488 -0
  2003. data/ext/vendor/golang.org/x/tools/go/ast/astutil/util.go +18 -0
  2004. data/ext/vendor/golang.org/x/tools/go/gcexportdata/gcexportdata.go +187 -0
  2005. data/ext/vendor/golang.org/x/tools/go/gcexportdata/importer.go +75 -0
  2006. data/ext/vendor/golang.org/x/tools/go/internal/packagesdriver/sizes.go +49 -0
  2007. data/ext/vendor/golang.org/x/tools/go/packages/doc.go +220 -0
  2008. data/ext/vendor/golang.org/x/tools/go/packages/external.go +101 -0
  2009. data/ext/vendor/golang.org/x/tools/go/packages/golist.go +1173 -0
  2010. data/ext/vendor/golang.org/x/tools/go/packages/golist_overlay.go +575 -0
  2011. data/ext/vendor/golang.org/x/tools/go/packages/loadmode_string.go +57 -0
  2012. data/ext/vendor/golang.org/x/tools/go/packages/packages.go +1326 -0
  2013. data/ext/vendor/golang.org/x/tools/go/packages/visit.go +59 -0
  2014. data/ext/vendor/golang.org/x/tools/internal/event/core/event.go +85 -0
  2015. data/ext/vendor/golang.org/x/tools/internal/event/core/export.go +70 -0
  2016. data/ext/vendor/golang.org/x/tools/internal/event/core/fast.go +77 -0
  2017. data/ext/vendor/golang.org/x/tools/internal/event/doc.go +7 -0
  2018. data/ext/vendor/golang.org/x/tools/internal/event/event.go +127 -0
  2019. data/ext/vendor/golang.org/x/tools/internal/event/keys/keys.go +564 -0
  2020. data/ext/vendor/golang.org/x/tools/internal/event/keys/standard.go +22 -0
  2021. data/ext/vendor/golang.org/x/tools/internal/event/label/label.go +215 -0
  2022. data/ext/vendor/golang.org/x/tools/internal/fastwalk/fastwalk.go +196 -0
  2023. data/ext/vendor/golang.org/x/tools/internal/fastwalk/fastwalk_darwin.go +119 -0
  2024. data/ext/vendor/golang.org/x/tools/internal/fastwalk/fastwalk_dirent_fileno.go +14 -0
  2025. data/ext/vendor/golang.org/x/tools/internal/fastwalk/fastwalk_dirent_ino.go +15 -0
  2026. data/ext/vendor/golang.org/x/tools/internal/fastwalk/fastwalk_dirent_namlen_bsd.go +14 -0
  2027. data/ext/vendor/golang.org/x/tools/internal/fastwalk/fastwalk_dirent_namlen_linux.go +29 -0
  2028. data/ext/vendor/golang.org/x/tools/internal/fastwalk/fastwalk_portable.go +38 -0
  2029. data/ext/vendor/golang.org/x/tools/internal/fastwalk/fastwalk_unix.go +153 -0
  2030. data/ext/vendor/golang.org/x/tools/internal/gcimporter/bexport.go +852 -0
  2031. data/ext/vendor/golang.org/x/tools/internal/gcimporter/bimport.go +1053 -0
  2032. data/ext/vendor/golang.org/x/tools/internal/gcimporter/exportdata.go +99 -0
  2033. data/ext/vendor/golang.org/x/tools/internal/gcimporter/gcimporter.go +265 -0
  2034. data/ext/vendor/golang.org/x/tools/internal/gcimporter/iexport.go +1180 -0
  2035. data/ext/vendor/golang.org/x/tools/internal/gcimporter/iimport.go +976 -0
  2036. data/ext/vendor/golang.org/x/tools/internal/gcimporter/newInterface10.go +22 -0
  2037. data/ext/vendor/golang.org/x/tools/internal/gcimporter/newInterface11.go +14 -0
  2038. data/ext/vendor/golang.org/x/tools/internal/gcimporter/support_go117.go +16 -0
  2039. data/ext/vendor/golang.org/x/tools/internal/gcimporter/support_go118.go +37 -0
  2040. data/ext/vendor/golang.org/x/tools/internal/gcimporter/unified_no.go +10 -0
  2041. data/ext/vendor/golang.org/x/tools/internal/gcimporter/unified_yes.go +10 -0
  2042. data/ext/vendor/golang.org/x/tools/internal/gcimporter/ureader_no.go +19 -0
  2043. data/ext/vendor/golang.org/x/tools/internal/gcimporter/ureader_yes.go +738 -0
  2044. data/ext/vendor/golang.org/x/tools/internal/gocommand/invoke.go +356 -0
  2045. data/ext/vendor/golang.org/x/tools/internal/gocommand/vendor.go +109 -0
  2046. data/ext/vendor/golang.org/x/tools/internal/gocommand/version.go +81 -0
  2047. data/ext/vendor/golang.org/x/tools/internal/gopathwalk/walk.go +254 -0
  2048. data/ext/vendor/golang.org/x/tools/internal/imports/fix.go +1738 -0
  2049. data/ext/vendor/golang.org/x/tools/internal/imports/imports.go +351 -0
  2050. data/ext/vendor/golang.org/x/tools/internal/imports/mod.go +716 -0
  2051. data/ext/vendor/golang.org/x/tools/internal/imports/mod_cache.go +236 -0
  2052. data/ext/vendor/golang.org/x/tools/internal/imports/sortimports.go +297 -0
  2053. data/ext/vendor/golang.org/x/tools/internal/imports/zstdlib.go +11115 -0
  2054. data/ext/vendor/golang.org/x/tools/internal/packagesinternal/packages.go +30 -0
  2055. data/ext/vendor/golang.org/x/tools/internal/pkgbits/codes.go +77 -0
  2056. data/ext/vendor/golang.org/x/tools/internal/pkgbits/decoder.go +517 -0
  2057. data/ext/vendor/golang.org/x/tools/internal/pkgbits/doc.go +32 -0
  2058. data/ext/vendor/golang.org/x/tools/internal/pkgbits/encoder.go +383 -0
  2059. data/ext/vendor/golang.org/x/tools/internal/pkgbits/flags.go +9 -0
  2060. data/ext/vendor/golang.org/x/tools/internal/pkgbits/frames_go1.go +21 -0
  2061. data/ext/vendor/golang.org/x/tools/internal/pkgbits/frames_go17.go +28 -0
  2062. data/ext/vendor/golang.org/x/tools/internal/pkgbits/reloc.go +42 -0
  2063. data/ext/vendor/golang.org/x/tools/internal/pkgbits/support.go +17 -0
  2064. data/ext/vendor/golang.org/x/tools/internal/pkgbits/sync.go +113 -0
  2065. data/ext/vendor/golang.org/x/tools/internal/pkgbits/syncmarker_string.go +89 -0
  2066. data/ext/vendor/golang.org/x/tools/internal/tokeninternal/tokeninternal.go +59 -0
  2067. data/ext/vendor/golang.org/x/tools/internal/typeparams/common.go +179 -0
  2068. data/ext/vendor/golang.org/x/tools/internal/typeparams/coretype.go +122 -0
  2069. data/ext/vendor/golang.org/x/tools/internal/typeparams/enabled_go117.go +12 -0
  2070. data/ext/vendor/golang.org/x/tools/internal/typeparams/enabled_go118.go +15 -0
  2071. data/ext/vendor/golang.org/x/tools/internal/typeparams/normalize.go +218 -0
  2072. data/ext/vendor/golang.org/x/tools/internal/typeparams/termlist.go +163 -0
  2073. data/ext/vendor/golang.org/x/tools/internal/typeparams/typeparams_go117.go +197 -0
  2074. data/ext/vendor/golang.org/x/tools/internal/typeparams/typeparams_go118.go +151 -0
  2075. data/ext/vendor/golang.org/x/tools/internal/typeparams/typeterm.go +170 -0
  2076. data/ext/vendor/golang.org/x/tools/internal/typesinternal/errorcode.go +1560 -0
  2077. data/ext/vendor/golang.org/x/tools/internal/typesinternal/errorcode_string.go +179 -0
  2078. data/ext/vendor/golang.org/x/tools/internal/typesinternal/types.go +52 -0
  2079. data/ext/vendor/golang.org/x/tools/internal/typesinternal/types_118.go +19 -0
  2080. data/ext/vendor/golang.org/x/xerrors/LICENSE +27 -0
  2081. data/ext/vendor/golang.org/x/xerrors/PATENTS +22 -0
  2082. data/ext/vendor/golang.org/x/xerrors/README +2 -0
  2083. data/ext/vendor/golang.org/x/xerrors/adaptor.go +193 -0
  2084. data/ext/vendor/golang.org/x/xerrors/codereview.cfg +1 -0
  2085. data/ext/vendor/golang.org/x/xerrors/doc.go +23 -0
  2086. data/ext/vendor/golang.org/x/xerrors/errors.go +33 -0
  2087. data/ext/vendor/golang.org/x/xerrors/fmt.go +190 -0
  2088. data/ext/vendor/golang.org/x/xerrors/format.go +34 -0
  2089. data/ext/vendor/golang.org/x/xerrors/frame.go +56 -0
  2090. data/ext/vendor/golang.org/x/xerrors/internal/internal.go +8 -0
  2091. data/ext/vendor/golang.org/x/xerrors/wrap.go +112 -0
  2092. data/ext/vendor/modules.txt +311 -0
  2093. data/ext/wrapper.go +158 -0
  2094. data/lib/ruby_snowflake_client/version.rb +3 -0
  2095. data/lib/ruby_snowflake_client.rb +46 -0
  2096. data/ruby_snowflake_client.gemspec +24 -0
  2097. metadata +2141 -0
@@ -0,0 +1,4099 @@
1
+ // Code generated by command: go run gen.go -out ../seqdec_amd64.s -pkg=zstd. DO NOT EDIT.
2
+
3
+ //go:build !appengine && !noasm && gc && !noasm
4
+
5
+ // func sequenceDecs_decode_amd64(s *sequenceDecs, br *bitReader, ctx *decodeAsmContext) int
6
+ // Requires: CMOV
7
+ TEXT ·sequenceDecs_decode_amd64(SB), $8-32
8
+ MOVQ br+8(FP), AX
9
+ MOVQ 32(AX), DX
10
+ MOVBQZX 40(AX), BX
11
+ MOVQ 24(AX), SI
12
+ MOVQ (AX), AX
13
+ ADDQ SI, AX
14
+ MOVQ AX, (SP)
15
+ MOVQ ctx+16(FP), AX
16
+ MOVQ 72(AX), DI
17
+ MOVQ 80(AX), R8
18
+ MOVQ 88(AX), R9
19
+ MOVQ 104(AX), R10
20
+ MOVQ s+0(FP), AX
21
+ MOVQ 144(AX), R11
22
+ MOVQ 152(AX), R12
23
+ MOVQ 160(AX), R13
24
+
25
+ sequenceDecs_decode_amd64_main_loop:
26
+ MOVQ (SP), R14
27
+
28
+ // Fill bitreader to have enough for the offset and match length.
29
+ CMPQ SI, $0x08
30
+ JL sequenceDecs_decode_amd64_fill_byte_by_byte
31
+ MOVQ BX, AX
32
+ SHRQ $0x03, AX
33
+ SUBQ AX, R14
34
+ MOVQ (R14), DX
35
+ SUBQ AX, SI
36
+ ANDQ $0x07, BX
37
+ JMP sequenceDecs_decode_amd64_fill_end
38
+
39
+ sequenceDecs_decode_amd64_fill_byte_by_byte:
40
+ CMPQ SI, $0x00
41
+ JLE sequenceDecs_decode_amd64_fill_end
42
+ CMPQ BX, $0x07
43
+ JLE sequenceDecs_decode_amd64_fill_end
44
+ SHLQ $0x08, DX
45
+ SUBQ $0x01, R14
46
+ SUBQ $0x01, SI
47
+ SUBQ $0x08, BX
48
+ MOVBQZX (R14), AX
49
+ ORQ AX, DX
50
+ JMP sequenceDecs_decode_amd64_fill_byte_by_byte
51
+
52
+ sequenceDecs_decode_amd64_fill_end:
53
+ // Update offset
54
+ MOVQ R9, AX
55
+ MOVQ BX, CX
56
+ MOVQ DX, R15
57
+ SHLQ CL, R15
58
+ MOVB AH, CL
59
+ SHRQ $0x20, AX
60
+ TESTQ CX, CX
61
+ JZ sequenceDecs_decode_amd64_of_update_zero
62
+ ADDQ CX, BX
63
+ CMPQ BX, $0x40
64
+ JA sequenceDecs_decode_amd64_of_update_zero
65
+ CMPQ CX, $0x40
66
+ JAE sequenceDecs_decode_amd64_of_update_zero
67
+ NEGQ CX
68
+ SHRQ CL, R15
69
+ ADDQ R15, AX
70
+
71
+ sequenceDecs_decode_amd64_of_update_zero:
72
+ MOVQ AX, 16(R10)
73
+
74
+ // Update match length
75
+ MOVQ R8, AX
76
+ MOVQ BX, CX
77
+ MOVQ DX, R15
78
+ SHLQ CL, R15
79
+ MOVB AH, CL
80
+ SHRQ $0x20, AX
81
+ TESTQ CX, CX
82
+ JZ sequenceDecs_decode_amd64_ml_update_zero
83
+ ADDQ CX, BX
84
+ CMPQ BX, $0x40
85
+ JA sequenceDecs_decode_amd64_ml_update_zero
86
+ CMPQ CX, $0x40
87
+ JAE sequenceDecs_decode_amd64_ml_update_zero
88
+ NEGQ CX
89
+ SHRQ CL, R15
90
+ ADDQ R15, AX
91
+
92
+ sequenceDecs_decode_amd64_ml_update_zero:
93
+ MOVQ AX, 8(R10)
94
+
95
+ // Fill bitreader to have enough for the remaining
96
+ CMPQ SI, $0x08
97
+ JL sequenceDecs_decode_amd64_fill_2_byte_by_byte
98
+ MOVQ BX, AX
99
+ SHRQ $0x03, AX
100
+ SUBQ AX, R14
101
+ MOVQ (R14), DX
102
+ SUBQ AX, SI
103
+ ANDQ $0x07, BX
104
+ JMP sequenceDecs_decode_amd64_fill_2_end
105
+
106
+ sequenceDecs_decode_amd64_fill_2_byte_by_byte:
107
+ CMPQ SI, $0x00
108
+ JLE sequenceDecs_decode_amd64_fill_2_end
109
+ CMPQ BX, $0x07
110
+ JLE sequenceDecs_decode_amd64_fill_2_end
111
+ SHLQ $0x08, DX
112
+ SUBQ $0x01, R14
113
+ SUBQ $0x01, SI
114
+ SUBQ $0x08, BX
115
+ MOVBQZX (R14), AX
116
+ ORQ AX, DX
117
+ JMP sequenceDecs_decode_amd64_fill_2_byte_by_byte
118
+
119
+ sequenceDecs_decode_amd64_fill_2_end:
120
+ // Update literal length
121
+ MOVQ DI, AX
122
+ MOVQ BX, CX
123
+ MOVQ DX, R15
124
+ SHLQ CL, R15
125
+ MOVB AH, CL
126
+ SHRQ $0x20, AX
127
+ TESTQ CX, CX
128
+ JZ sequenceDecs_decode_amd64_ll_update_zero
129
+ ADDQ CX, BX
130
+ CMPQ BX, $0x40
131
+ JA sequenceDecs_decode_amd64_ll_update_zero
132
+ CMPQ CX, $0x40
133
+ JAE sequenceDecs_decode_amd64_ll_update_zero
134
+ NEGQ CX
135
+ SHRQ CL, R15
136
+ ADDQ R15, AX
137
+
138
+ sequenceDecs_decode_amd64_ll_update_zero:
139
+ MOVQ AX, (R10)
140
+
141
+ // Fill bitreader for state updates
142
+ MOVQ R14, (SP)
143
+ MOVQ R9, AX
144
+ SHRQ $0x08, AX
145
+ MOVBQZX AL, AX
146
+ MOVQ ctx+16(FP), CX
147
+ CMPQ 96(CX), $0x00
148
+ JZ sequenceDecs_decode_amd64_skip_update
149
+
150
+ // Update Literal Length State
151
+ MOVBQZX DI, R14
152
+ SHRQ $0x10, DI
153
+ MOVWQZX DI, DI
154
+ LEAQ (BX)(R14*1), CX
155
+ MOVQ DX, R15
156
+ MOVQ CX, BX
157
+ ROLQ CL, R15
158
+ MOVL $0x00000001, BP
159
+ MOVB R14, CL
160
+ SHLL CL, BP
161
+ DECL BP
162
+ ANDQ BP, R15
163
+ ADDQ R15, DI
164
+
165
+ // Load ctx.llTable
166
+ MOVQ ctx+16(FP), CX
167
+ MOVQ (CX), CX
168
+ MOVQ (CX)(DI*8), DI
169
+
170
+ // Update Match Length State
171
+ MOVBQZX R8, R14
172
+ SHRQ $0x10, R8
173
+ MOVWQZX R8, R8
174
+ LEAQ (BX)(R14*1), CX
175
+ MOVQ DX, R15
176
+ MOVQ CX, BX
177
+ ROLQ CL, R15
178
+ MOVL $0x00000001, BP
179
+ MOVB R14, CL
180
+ SHLL CL, BP
181
+ DECL BP
182
+ ANDQ BP, R15
183
+ ADDQ R15, R8
184
+
185
+ // Load ctx.mlTable
186
+ MOVQ ctx+16(FP), CX
187
+ MOVQ 24(CX), CX
188
+ MOVQ (CX)(R8*8), R8
189
+
190
+ // Update Offset State
191
+ MOVBQZX R9, R14
192
+ SHRQ $0x10, R9
193
+ MOVWQZX R9, R9
194
+ LEAQ (BX)(R14*1), CX
195
+ MOVQ DX, R15
196
+ MOVQ CX, BX
197
+ ROLQ CL, R15
198
+ MOVL $0x00000001, BP
199
+ MOVB R14, CL
200
+ SHLL CL, BP
201
+ DECL BP
202
+ ANDQ BP, R15
203
+ ADDQ R15, R9
204
+
205
+ // Load ctx.ofTable
206
+ MOVQ ctx+16(FP), CX
207
+ MOVQ 48(CX), CX
208
+ MOVQ (CX)(R9*8), R9
209
+
210
+ sequenceDecs_decode_amd64_skip_update:
211
+ // Adjust offset
212
+ MOVQ 16(R10), CX
213
+ CMPQ AX, $0x01
214
+ JBE sequenceDecs_decode_amd64_adjust_offsetB_1_or_0
215
+ MOVQ R12, R13
216
+ MOVQ R11, R12
217
+ MOVQ CX, R11
218
+ JMP sequenceDecs_decode_amd64_after_adjust
219
+
220
+ sequenceDecs_decode_amd64_adjust_offsetB_1_or_0:
221
+ CMPQ (R10), $0x00000000
222
+ JNE sequenceDecs_decode_amd64_adjust_offset_maybezero
223
+ INCQ CX
224
+ JMP sequenceDecs_decode_amd64_adjust_offset_nonzero
225
+
226
+ sequenceDecs_decode_amd64_adjust_offset_maybezero:
227
+ TESTQ CX, CX
228
+ JNZ sequenceDecs_decode_amd64_adjust_offset_nonzero
229
+ MOVQ R11, CX
230
+ JMP sequenceDecs_decode_amd64_after_adjust
231
+
232
+ sequenceDecs_decode_amd64_adjust_offset_nonzero:
233
+ CMPQ CX, $0x01
234
+ JB sequenceDecs_decode_amd64_adjust_zero
235
+ JEQ sequenceDecs_decode_amd64_adjust_one
236
+ CMPQ CX, $0x02
237
+ JA sequenceDecs_decode_amd64_adjust_three
238
+ JMP sequenceDecs_decode_amd64_adjust_two
239
+
240
+ sequenceDecs_decode_amd64_adjust_zero:
241
+ MOVQ R11, AX
242
+ JMP sequenceDecs_decode_amd64_adjust_test_temp_valid
243
+
244
+ sequenceDecs_decode_amd64_adjust_one:
245
+ MOVQ R12, AX
246
+ JMP sequenceDecs_decode_amd64_adjust_test_temp_valid
247
+
248
+ sequenceDecs_decode_amd64_adjust_two:
249
+ MOVQ R13, AX
250
+ JMP sequenceDecs_decode_amd64_adjust_test_temp_valid
251
+
252
+ sequenceDecs_decode_amd64_adjust_three:
253
+ LEAQ -1(R11), AX
254
+
255
+ sequenceDecs_decode_amd64_adjust_test_temp_valid:
256
+ TESTQ AX, AX
257
+ JNZ sequenceDecs_decode_amd64_adjust_temp_valid
258
+ MOVQ $0x00000001, AX
259
+
260
+ sequenceDecs_decode_amd64_adjust_temp_valid:
261
+ CMPQ CX, $0x01
262
+ CMOVQNE R12, R13
263
+ MOVQ R11, R12
264
+ MOVQ AX, R11
265
+ MOVQ AX, CX
266
+
267
+ sequenceDecs_decode_amd64_after_adjust:
268
+ MOVQ CX, 16(R10)
269
+
270
+ // Check values
271
+ MOVQ 8(R10), AX
272
+ MOVQ (R10), R14
273
+ LEAQ (AX)(R14*1), R15
274
+ MOVQ s+0(FP), BP
275
+ ADDQ R15, 256(BP)
276
+ MOVQ ctx+16(FP), R15
277
+ SUBQ R14, 128(R15)
278
+ JS error_not_enough_literals
279
+ CMPQ AX, $0x00020002
280
+ JA sequenceDecs_decode_amd64_error_match_len_too_big
281
+ TESTQ CX, CX
282
+ JNZ sequenceDecs_decode_amd64_match_len_ofs_ok
283
+ TESTQ AX, AX
284
+ JNZ sequenceDecs_decode_amd64_error_match_len_ofs_mismatch
285
+
286
+ sequenceDecs_decode_amd64_match_len_ofs_ok:
287
+ ADDQ $0x18, R10
288
+ MOVQ ctx+16(FP), AX
289
+ DECQ 96(AX)
290
+ JNS sequenceDecs_decode_amd64_main_loop
291
+ MOVQ s+0(FP), AX
292
+ MOVQ R11, 144(AX)
293
+ MOVQ R12, 152(AX)
294
+ MOVQ R13, 160(AX)
295
+ MOVQ br+8(FP), AX
296
+ MOVQ DX, 32(AX)
297
+ MOVB BL, 40(AX)
298
+ MOVQ SI, 24(AX)
299
+
300
+ // Return success
301
+ MOVQ $0x00000000, ret+24(FP)
302
+ RET
303
+
304
+ // Return with match length error
305
+ sequenceDecs_decode_amd64_error_match_len_ofs_mismatch:
306
+ MOVQ $0x00000001, ret+24(FP)
307
+ RET
308
+
309
+ // Return with match too long error
310
+ sequenceDecs_decode_amd64_error_match_len_too_big:
311
+ MOVQ $0x00000002, ret+24(FP)
312
+ RET
313
+
314
+ // Return with match offset too long error
315
+ MOVQ $0x00000003, ret+24(FP)
316
+ RET
317
+
318
+ // Return with not enough literals error
319
+ error_not_enough_literals:
320
+ MOVQ $0x00000004, ret+24(FP)
321
+ RET
322
+
323
+ // Return with not enough output space error
324
+ MOVQ $0x00000005, ret+24(FP)
325
+ RET
326
+
327
+ // func sequenceDecs_decode_56_amd64(s *sequenceDecs, br *bitReader, ctx *decodeAsmContext) int
328
+ // Requires: CMOV
329
+ TEXT ·sequenceDecs_decode_56_amd64(SB), $8-32
330
+ MOVQ br+8(FP), AX
331
+ MOVQ 32(AX), DX
332
+ MOVBQZX 40(AX), BX
333
+ MOVQ 24(AX), SI
334
+ MOVQ (AX), AX
335
+ ADDQ SI, AX
336
+ MOVQ AX, (SP)
337
+ MOVQ ctx+16(FP), AX
338
+ MOVQ 72(AX), DI
339
+ MOVQ 80(AX), R8
340
+ MOVQ 88(AX), R9
341
+ MOVQ 104(AX), R10
342
+ MOVQ s+0(FP), AX
343
+ MOVQ 144(AX), R11
344
+ MOVQ 152(AX), R12
345
+ MOVQ 160(AX), R13
346
+
347
+ sequenceDecs_decode_56_amd64_main_loop:
348
+ MOVQ (SP), R14
349
+
350
+ // Fill bitreader to have enough for the offset and match length.
351
+ CMPQ SI, $0x08
352
+ JL sequenceDecs_decode_56_amd64_fill_byte_by_byte
353
+ MOVQ BX, AX
354
+ SHRQ $0x03, AX
355
+ SUBQ AX, R14
356
+ MOVQ (R14), DX
357
+ SUBQ AX, SI
358
+ ANDQ $0x07, BX
359
+ JMP sequenceDecs_decode_56_amd64_fill_end
360
+
361
+ sequenceDecs_decode_56_amd64_fill_byte_by_byte:
362
+ CMPQ SI, $0x00
363
+ JLE sequenceDecs_decode_56_amd64_fill_end
364
+ CMPQ BX, $0x07
365
+ JLE sequenceDecs_decode_56_amd64_fill_end
366
+ SHLQ $0x08, DX
367
+ SUBQ $0x01, R14
368
+ SUBQ $0x01, SI
369
+ SUBQ $0x08, BX
370
+ MOVBQZX (R14), AX
371
+ ORQ AX, DX
372
+ JMP sequenceDecs_decode_56_amd64_fill_byte_by_byte
373
+
374
+ sequenceDecs_decode_56_amd64_fill_end:
375
+ // Update offset
376
+ MOVQ R9, AX
377
+ MOVQ BX, CX
378
+ MOVQ DX, R15
379
+ SHLQ CL, R15
380
+ MOVB AH, CL
381
+ SHRQ $0x20, AX
382
+ TESTQ CX, CX
383
+ JZ sequenceDecs_decode_56_amd64_of_update_zero
384
+ ADDQ CX, BX
385
+ CMPQ BX, $0x40
386
+ JA sequenceDecs_decode_56_amd64_of_update_zero
387
+ CMPQ CX, $0x40
388
+ JAE sequenceDecs_decode_56_amd64_of_update_zero
389
+ NEGQ CX
390
+ SHRQ CL, R15
391
+ ADDQ R15, AX
392
+
393
+ sequenceDecs_decode_56_amd64_of_update_zero:
394
+ MOVQ AX, 16(R10)
395
+
396
+ // Update match length
397
+ MOVQ R8, AX
398
+ MOVQ BX, CX
399
+ MOVQ DX, R15
400
+ SHLQ CL, R15
401
+ MOVB AH, CL
402
+ SHRQ $0x20, AX
403
+ TESTQ CX, CX
404
+ JZ sequenceDecs_decode_56_amd64_ml_update_zero
405
+ ADDQ CX, BX
406
+ CMPQ BX, $0x40
407
+ JA sequenceDecs_decode_56_amd64_ml_update_zero
408
+ CMPQ CX, $0x40
409
+ JAE sequenceDecs_decode_56_amd64_ml_update_zero
410
+ NEGQ CX
411
+ SHRQ CL, R15
412
+ ADDQ R15, AX
413
+
414
+ sequenceDecs_decode_56_amd64_ml_update_zero:
415
+ MOVQ AX, 8(R10)
416
+
417
+ // Update literal length
418
+ MOVQ DI, AX
419
+ MOVQ BX, CX
420
+ MOVQ DX, R15
421
+ SHLQ CL, R15
422
+ MOVB AH, CL
423
+ SHRQ $0x20, AX
424
+ TESTQ CX, CX
425
+ JZ sequenceDecs_decode_56_amd64_ll_update_zero
426
+ ADDQ CX, BX
427
+ CMPQ BX, $0x40
428
+ JA sequenceDecs_decode_56_amd64_ll_update_zero
429
+ CMPQ CX, $0x40
430
+ JAE sequenceDecs_decode_56_amd64_ll_update_zero
431
+ NEGQ CX
432
+ SHRQ CL, R15
433
+ ADDQ R15, AX
434
+
435
+ sequenceDecs_decode_56_amd64_ll_update_zero:
436
+ MOVQ AX, (R10)
437
+
438
+ // Fill bitreader for state updates
439
+ MOVQ R14, (SP)
440
+ MOVQ R9, AX
441
+ SHRQ $0x08, AX
442
+ MOVBQZX AL, AX
443
+ MOVQ ctx+16(FP), CX
444
+ CMPQ 96(CX), $0x00
445
+ JZ sequenceDecs_decode_56_amd64_skip_update
446
+
447
+ // Update Literal Length State
448
+ MOVBQZX DI, R14
449
+ SHRQ $0x10, DI
450
+ MOVWQZX DI, DI
451
+ LEAQ (BX)(R14*1), CX
452
+ MOVQ DX, R15
453
+ MOVQ CX, BX
454
+ ROLQ CL, R15
455
+ MOVL $0x00000001, BP
456
+ MOVB R14, CL
457
+ SHLL CL, BP
458
+ DECL BP
459
+ ANDQ BP, R15
460
+ ADDQ R15, DI
461
+
462
+ // Load ctx.llTable
463
+ MOVQ ctx+16(FP), CX
464
+ MOVQ (CX), CX
465
+ MOVQ (CX)(DI*8), DI
466
+
467
+ // Update Match Length State
468
+ MOVBQZX R8, R14
469
+ SHRQ $0x10, R8
470
+ MOVWQZX R8, R8
471
+ LEAQ (BX)(R14*1), CX
472
+ MOVQ DX, R15
473
+ MOVQ CX, BX
474
+ ROLQ CL, R15
475
+ MOVL $0x00000001, BP
476
+ MOVB R14, CL
477
+ SHLL CL, BP
478
+ DECL BP
479
+ ANDQ BP, R15
480
+ ADDQ R15, R8
481
+
482
+ // Load ctx.mlTable
483
+ MOVQ ctx+16(FP), CX
484
+ MOVQ 24(CX), CX
485
+ MOVQ (CX)(R8*8), R8
486
+
487
+ // Update Offset State
488
+ MOVBQZX R9, R14
489
+ SHRQ $0x10, R9
490
+ MOVWQZX R9, R9
491
+ LEAQ (BX)(R14*1), CX
492
+ MOVQ DX, R15
493
+ MOVQ CX, BX
494
+ ROLQ CL, R15
495
+ MOVL $0x00000001, BP
496
+ MOVB R14, CL
497
+ SHLL CL, BP
498
+ DECL BP
499
+ ANDQ BP, R15
500
+ ADDQ R15, R9
501
+
502
+ // Load ctx.ofTable
503
+ MOVQ ctx+16(FP), CX
504
+ MOVQ 48(CX), CX
505
+ MOVQ (CX)(R9*8), R9
506
+
507
+ sequenceDecs_decode_56_amd64_skip_update:
508
+ // Adjust offset
509
+ MOVQ 16(R10), CX
510
+ CMPQ AX, $0x01
511
+ JBE sequenceDecs_decode_56_amd64_adjust_offsetB_1_or_0
512
+ MOVQ R12, R13
513
+ MOVQ R11, R12
514
+ MOVQ CX, R11
515
+ JMP sequenceDecs_decode_56_amd64_after_adjust
516
+
517
+ sequenceDecs_decode_56_amd64_adjust_offsetB_1_or_0:
518
+ CMPQ (R10), $0x00000000
519
+ JNE sequenceDecs_decode_56_amd64_adjust_offset_maybezero
520
+ INCQ CX
521
+ JMP sequenceDecs_decode_56_amd64_adjust_offset_nonzero
522
+
523
+ sequenceDecs_decode_56_amd64_adjust_offset_maybezero:
524
+ TESTQ CX, CX
525
+ JNZ sequenceDecs_decode_56_amd64_adjust_offset_nonzero
526
+ MOVQ R11, CX
527
+ JMP sequenceDecs_decode_56_amd64_after_adjust
528
+
529
+ sequenceDecs_decode_56_amd64_adjust_offset_nonzero:
530
+ CMPQ CX, $0x01
531
+ JB sequenceDecs_decode_56_amd64_adjust_zero
532
+ JEQ sequenceDecs_decode_56_amd64_adjust_one
533
+ CMPQ CX, $0x02
534
+ JA sequenceDecs_decode_56_amd64_adjust_three
535
+ JMP sequenceDecs_decode_56_amd64_adjust_two
536
+
537
+ sequenceDecs_decode_56_amd64_adjust_zero:
538
+ MOVQ R11, AX
539
+ JMP sequenceDecs_decode_56_amd64_adjust_test_temp_valid
540
+
541
+ sequenceDecs_decode_56_amd64_adjust_one:
542
+ MOVQ R12, AX
543
+ JMP sequenceDecs_decode_56_amd64_adjust_test_temp_valid
544
+
545
+ sequenceDecs_decode_56_amd64_adjust_two:
546
+ MOVQ R13, AX
547
+ JMP sequenceDecs_decode_56_amd64_adjust_test_temp_valid
548
+
549
+ sequenceDecs_decode_56_amd64_adjust_three:
550
+ LEAQ -1(R11), AX
551
+
552
+ sequenceDecs_decode_56_amd64_adjust_test_temp_valid:
553
+ TESTQ AX, AX
554
+ JNZ sequenceDecs_decode_56_amd64_adjust_temp_valid
555
+ MOVQ $0x00000001, AX
556
+
557
+ sequenceDecs_decode_56_amd64_adjust_temp_valid:
558
+ CMPQ CX, $0x01
559
+ CMOVQNE R12, R13
560
+ MOVQ R11, R12
561
+ MOVQ AX, R11
562
+ MOVQ AX, CX
563
+
564
+ sequenceDecs_decode_56_amd64_after_adjust:
565
+ MOVQ CX, 16(R10)
566
+
567
+ // Check values
568
+ MOVQ 8(R10), AX
569
+ MOVQ (R10), R14
570
+ LEAQ (AX)(R14*1), R15
571
+ MOVQ s+0(FP), BP
572
+ ADDQ R15, 256(BP)
573
+ MOVQ ctx+16(FP), R15
574
+ SUBQ R14, 128(R15)
575
+ JS error_not_enough_literals
576
+ CMPQ AX, $0x00020002
577
+ JA sequenceDecs_decode_56_amd64_error_match_len_too_big
578
+ TESTQ CX, CX
579
+ JNZ sequenceDecs_decode_56_amd64_match_len_ofs_ok
580
+ TESTQ AX, AX
581
+ JNZ sequenceDecs_decode_56_amd64_error_match_len_ofs_mismatch
582
+
583
+ sequenceDecs_decode_56_amd64_match_len_ofs_ok:
584
+ ADDQ $0x18, R10
585
+ MOVQ ctx+16(FP), AX
586
+ DECQ 96(AX)
587
+ JNS sequenceDecs_decode_56_amd64_main_loop
588
+ MOVQ s+0(FP), AX
589
+ MOVQ R11, 144(AX)
590
+ MOVQ R12, 152(AX)
591
+ MOVQ R13, 160(AX)
592
+ MOVQ br+8(FP), AX
593
+ MOVQ DX, 32(AX)
594
+ MOVB BL, 40(AX)
595
+ MOVQ SI, 24(AX)
596
+
597
+ // Return success
598
+ MOVQ $0x00000000, ret+24(FP)
599
+ RET
600
+
601
+ // Return with match length error
602
+ sequenceDecs_decode_56_amd64_error_match_len_ofs_mismatch:
603
+ MOVQ $0x00000001, ret+24(FP)
604
+ RET
605
+
606
+ // Return with match too long error
607
+ sequenceDecs_decode_56_amd64_error_match_len_too_big:
608
+ MOVQ $0x00000002, ret+24(FP)
609
+ RET
610
+
611
+ // Return with match offset too long error
612
+ MOVQ $0x00000003, ret+24(FP)
613
+ RET
614
+
615
+ // Return with not enough literals error
616
+ error_not_enough_literals:
617
+ MOVQ $0x00000004, ret+24(FP)
618
+ RET
619
+
620
+ // Return with not enough output space error
621
+ MOVQ $0x00000005, ret+24(FP)
622
+ RET
623
+
624
+ // func sequenceDecs_decode_bmi2(s *sequenceDecs, br *bitReader, ctx *decodeAsmContext) int
625
+ // Requires: BMI, BMI2, CMOV
626
+ TEXT ·sequenceDecs_decode_bmi2(SB), $8-32
627
+ MOVQ br+8(FP), CX
628
+ MOVQ 32(CX), AX
629
+ MOVBQZX 40(CX), DX
630
+ MOVQ 24(CX), BX
631
+ MOVQ (CX), CX
632
+ ADDQ BX, CX
633
+ MOVQ CX, (SP)
634
+ MOVQ ctx+16(FP), CX
635
+ MOVQ 72(CX), SI
636
+ MOVQ 80(CX), DI
637
+ MOVQ 88(CX), R8
638
+ MOVQ 104(CX), R9
639
+ MOVQ s+0(FP), CX
640
+ MOVQ 144(CX), R10
641
+ MOVQ 152(CX), R11
642
+ MOVQ 160(CX), R12
643
+
644
+ sequenceDecs_decode_bmi2_main_loop:
645
+ MOVQ (SP), R13
646
+
647
+ // Fill bitreader to have enough for the offset and match length.
648
+ CMPQ BX, $0x08
649
+ JL sequenceDecs_decode_bmi2_fill_byte_by_byte
650
+ MOVQ DX, CX
651
+ SHRQ $0x03, CX
652
+ SUBQ CX, R13
653
+ MOVQ (R13), AX
654
+ SUBQ CX, BX
655
+ ANDQ $0x07, DX
656
+ JMP sequenceDecs_decode_bmi2_fill_end
657
+
658
+ sequenceDecs_decode_bmi2_fill_byte_by_byte:
659
+ CMPQ BX, $0x00
660
+ JLE sequenceDecs_decode_bmi2_fill_end
661
+ CMPQ DX, $0x07
662
+ JLE sequenceDecs_decode_bmi2_fill_end
663
+ SHLQ $0x08, AX
664
+ SUBQ $0x01, R13
665
+ SUBQ $0x01, BX
666
+ SUBQ $0x08, DX
667
+ MOVBQZX (R13), CX
668
+ ORQ CX, AX
669
+ JMP sequenceDecs_decode_bmi2_fill_byte_by_byte
670
+
671
+ sequenceDecs_decode_bmi2_fill_end:
672
+ // Update offset
673
+ MOVQ $0x00000808, CX
674
+ BEXTRQ CX, R8, R14
675
+ MOVQ AX, R15
676
+ LEAQ (DX)(R14*1), CX
677
+ ROLQ CL, R15
678
+ BZHIQ R14, R15, R15
679
+ MOVQ CX, DX
680
+ MOVQ R8, CX
681
+ SHRQ $0x20, CX
682
+ ADDQ R15, CX
683
+ MOVQ CX, 16(R9)
684
+
685
+ // Update match length
686
+ MOVQ $0x00000808, CX
687
+ BEXTRQ CX, DI, R14
688
+ MOVQ AX, R15
689
+ LEAQ (DX)(R14*1), CX
690
+ ROLQ CL, R15
691
+ BZHIQ R14, R15, R15
692
+ MOVQ CX, DX
693
+ MOVQ DI, CX
694
+ SHRQ $0x20, CX
695
+ ADDQ R15, CX
696
+ MOVQ CX, 8(R9)
697
+
698
+ // Fill bitreader to have enough for the remaining
699
+ CMPQ BX, $0x08
700
+ JL sequenceDecs_decode_bmi2_fill_2_byte_by_byte
701
+ MOVQ DX, CX
702
+ SHRQ $0x03, CX
703
+ SUBQ CX, R13
704
+ MOVQ (R13), AX
705
+ SUBQ CX, BX
706
+ ANDQ $0x07, DX
707
+ JMP sequenceDecs_decode_bmi2_fill_2_end
708
+
709
+ sequenceDecs_decode_bmi2_fill_2_byte_by_byte:
710
+ CMPQ BX, $0x00
711
+ JLE sequenceDecs_decode_bmi2_fill_2_end
712
+ CMPQ DX, $0x07
713
+ JLE sequenceDecs_decode_bmi2_fill_2_end
714
+ SHLQ $0x08, AX
715
+ SUBQ $0x01, R13
716
+ SUBQ $0x01, BX
717
+ SUBQ $0x08, DX
718
+ MOVBQZX (R13), CX
719
+ ORQ CX, AX
720
+ JMP sequenceDecs_decode_bmi2_fill_2_byte_by_byte
721
+
722
+ sequenceDecs_decode_bmi2_fill_2_end:
723
+ // Update literal length
724
+ MOVQ $0x00000808, CX
725
+ BEXTRQ CX, SI, R14
726
+ MOVQ AX, R15
727
+ LEAQ (DX)(R14*1), CX
728
+ ROLQ CL, R15
729
+ BZHIQ R14, R15, R15
730
+ MOVQ CX, DX
731
+ MOVQ SI, CX
732
+ SHRQ $0x20, CX
733
+ ADDQ R15, CX
734
+ MOVQ CX, (R9)
735
+
736
+ // Fill bitreader for state updates
737
+ MOVQ R13, (SP)
738
+ MOVQ $0x00000808, CX
739
+ BEXTRQ CX, R8, R13
740
+ MOVQ ctx+16(FP), CX
741
+ CMPQ 96(CX), $0x00
742
+ JZ sequenceDecs_decode_bmi2_skip_update
743
+ LEAQ (SI)(DI*1), R14
744
+ ADDQ R8, R14
745
+ MOVBQZX R14, R14
746
+ LEAQ (DX)(R14*1), CX
747
+ MOVQ AX, R15
748
+ MOVQ CX, DX
749
+ ROLQ CL, R15
750
+ BZHIQ R14, R15, R15
751
+
752
+ // Update Offset State
753
+ BZHIQ R8, R15, CX
754
+ SHRXQ R8, R15, R15
755
+ MOVQ $0x00001010, R14
756
+ BEXTRQ R14, R8, R8
757
+ ADDQ CX, R8
758
+
759
+ // Load ctx.ofTable
760
+ MOVQ ctx+16(FP), CX
761
+ MOVQ 48(CX), CX
762
+ MOVQ (CX)(R8*8), R8
763
+
764
+ // Update Match Length State
765
+ BZHIQ DI, R15, CX
766
+ SHRXQ DI, R15, R15
767
+ MOVQ $0x00001010, R14
768
+ BEXTRQ R14, DI, DI
769
+ ADDQ CX, DI
770
+
771
+ // Load ctx.mlTable
772
+ MOVQ ctx+16(FP), CX
773
+ MOVQ 24(CX), CX
774
+ MOVQ (CX)(DI*8), DI
775
+
776
+ // Update Literal Length State
777
+ BZHIQ SI, R15, CX
778
+ MOVQ $0x00001010, R14
779
+ BEXTRQ R14, SI, SI
780
+ ADDQ CX, SI
781
+
782
+ // Load ctx.llTable
783
+ MOVQ ctx+16(FP), CX
784
+ MOVQ (CX), CX
785
+ MOVQ (CX)(SI*8), SI
786
+
787
+ sequenceDecs_decode_bmi2_skip_update:
788
+ // Adjust offset
789
+ MOVQ 16(R9), CX
790
+ CMPQ R13, $0x01
791
+ JBE sequenceDecs_decode_bmi2_adjust_offsetB_1_or_0
792
+ MOVQ R11, R12
793
+ MOVQ R10, R11
794
+ MOVQ CX, R10
795
+ JMP sequenceDecs_decode_bmi2_after_adjust
796
+
797
+ sequenceDecs_decode_bmi2_adjust_offsetB_1_or_0:
798
+ CMPQ (R9), $0x00000000
799
+ JNE sequenceDecs_decode_bmi2_adjust_offset_maybezero
800
+ INCQ CX
801
+ JMP sequenceDecs_decode_bmi2_adjust_offset_nonzero
802
+
803
+ sequenceDecs_decode_bmi2_adjust_offset_maybezero:
804
+ TESTQ CX, CX
805
+ JNZ sequenceDecs_decode_bmi2_adjust_offset_nonzero
806
+ MOVQ R10, CX
807
+ JMP sequenceDecs_decode_bmi2_after_adjust
808
+
809
+ sequenceDecs_decode_bmi2_adjust_offset_nonzero:
810
+ CMPQ CX, $0x01
811
+ JB sequenceDecs_decode_bmi2_adjust_zero
812
+ JEQ sequenceDecs_decode_bmi2_adjust_one
813
+ CMPQ CX, $0x02
814
+ JA sequenceDecs_decode_bmi2_adjust_three
815
+ JMP sequenceDecs_decode_bmi2_adjust_two
816
+
817
+ sequenceDecs_decode_bmi2_adjust_zero:
818
+ MOVQ R10, R13
819
+ JMP sequenceDecs_decode_bmi2_adjust_test_temp_valid
820
+
821
+ sequenceDecs_decode_bmi2_adjust_one:
822
+ MOVQ R11, R13
823
+ JMP sequenceDecs_decode_bmi2_adjust_test_temp_valid
824
+
825
+ sequenceDecs_decode_bmi2_adjust_two:
826
+ MOVQ R12, R13
827
+ JMP sequenceDecs_decode_bmi2_adjust_test_temp_valid
828
+
829
+ sequenceDecs_decode_bmi2_adjust_three:
830
+ LEAQ -1(R10), R13
831
+
832
+ sequenceDecs_decode_bmi2_adjust_test_temp_valid:
833
+ TESTQ R13, R13
834
+ JNZ sequenceDecs_decode_bmi2_adjust_temp_valid
835
+ MOVQ $0x00000001, R13
836
+
837
+ sequenceDecs_decode_bmi2_adjust_temp_valid:
838
+ CMPQ CX, $0x01
839
+ CMOVQNE R11, R12
840
+ MOVQ R10, R11
841
+ MOVQ R13, R10
842
+ MOVQ R13, CX
843
+
844
+ sequenceDecs_decode_bmi2_after_adjust:
845
+ MOVQ CX, 16(R9)
846
+
847
+ // Check values
848
+ MOVQ 8(R9), R13
849
+ MOVQ (R9), R14
850
+ LEAQ (R13)(R14*1), R15
851
+ MOVQ s+0(FP), BP
852
+ ADDQ R15, 256(BP)
853
+ MOVQ ctx+16(FP), R15
854
+ SUBQ R14, 128(R15)
855
+ JS error_not_enough_literals
856
+ CMPQ R13, $0x00020002
857
+ JA sequenceDecs_decode_bmi2_error_match_len_too_big
858
+ TESTQ CX, CX
859
+ JNZ sequenceDecs_decode_bmi2_match_len_ofs_ok
860
+ TESTQ R13, R13
861
+ JNZ sequenceDecs_decode_bmi2_error_match_len_ofs_mismatch
862
+
863
+ sequenceDecs_decode_bmi2_match_len_ofs_ok:
864
+ ADDQ $0x18, R9
865
+ MOVQ ctx+16(FP), CX
866
+ DECQ 96(CX)
867
+ JNS sequenceDecs_decode_bmi2_main_loop
868
+ MOVQ s+0(FP), CX
869
+ MOVQ R10, 144(CX)
870
+ MOVQ R11, 152(CX)
871
+ MOVQ R12, 160(CX)
872
+ MOVQ br+8(FP), CX
873
+ MOVQ AX, 32(CX)
874
+ MOVB DL, 40(CX)
875
+ MOVQ BX, 24(CX)
876
+
877
+ // Return success
878
+ MOVQ $0x00000000, ret+24(FP)
879
+ RET
880
+
881
+ // Return with match length error
882
+ sequenceDecs_decode_bmi2_error_match_len_ofs_mismatch:
883
+ MOVQ $0x00000001, ret+24(FP)
884
+ RET
885
+
886
+ // Return with match too long error
887
+ sequenceDecs_decode_bmi2_error_match_len_too_big:
888
+ MOVQ $0x00000002, ret+24(FP)
889
+ RET
890
+
891
+ // Return with match offset too long error
892
+ MOVQ $0x00000003, ret+24(FP)
893
+ RET
894
+
895
+ // Return with not enough literals error
896
+ error_not_enough_literals:
897
+ MOVQ $0x00000004, ret+24(FP)
898
+ RET
899
+
900
+ // Return with not enough output space error
901
+ MOVQ $0x00000005, ret+24(FP)
902
+ RET
903
+
904
+ // func sequenceDecs_decode_56_bmi2(s *sequenceDecs, br *bitReader, ctx *decodeAsmContext) int
905
+ // Requires: BMI, BMI2, CMOV
906
+ TEXT ·sequenceDecs_decode_56_bmi2(SB), $8-32
907
+ MOVQ br+8(FP), CX
908
+ MOVQ 32(CX), AX
909
+ MOVBQZX 40(CX), DX
910
+ MOVQ 24(CX), BX
911
+ MOVQ (CX), CX
912
+ ADDQ BX, CX
913
+ MOVQ CX, (SP)
914
+ MOVQ ctx+16(FP), CX
915
+ MOVQ 72(CX), SI
916
+ MOVQ 80(CX), DI
917
+ MOVQ 88(CX), R8
918
+ MOVQ 104(CX), R9
919
+ MOVQ s+0(FP), CX
920
+ MOVQ 144(CX), R10
921
+ MOVQ 152(CX), R11
922
+ MOVQ 160(CX), R12
923
+
924
+ sequenceDecs_decode_56_bmi2_main_loop:
925
+ MOVQ (SP), R13
926
+
927
+ // Fill bitreader to have enough for the offset and match length.
928
+ CMPQ BX, $0x08
929
+ JL sequenceDecs_decode_56_bmi2_fill_byte_by_byte
930
+ MOVQ DX, CX
931
+ SHRQ $0x03, CX
932
+ SUBQ CX, R13
933
+ MOVQ (R13), AX
934
+ SUBQ CX, BX
935
+ ANDQ $0x07, DX
936
+ JMP sequenceDecs_decode_56_bmi2_fill_end
937
+
938
+ sequenceDecs_decode_56_bmi2_fill_byte_by_byte:
939
+ CMPQ BX, $0x00
940
+ JLE sequenceDecs_decode_56_bmi2_fill_end
941
+ CMPQ DX, $0x07
942
+ JLE sequenceDecs_decode_56_bmi2_fill_end
943
+ SHLQ $0x08, AX
944
+ SUBQ $0x01, R13
945
+ SUBQ $0x01, BX
946
+ SUBQ $0x08, DX
947
+ MOVBQZX (R13), CX
948
+ ORQ CX, AX
949
+ JMP sequenceDecs_decode_56_bmi2_fill_byte_by_byte
950
+
951
+ sequenceDecs_decode_56_bmi2_fill_end:
952
+ // Update offset
953
+ MOVQ $0x00000808, CX
954
+ BEXTRQ CX, R8, R14
955
+ MOVQ AX, R15
956
+ LEAQ (DX)(R14*1), CX
957
+ ROLQ CL, R15
958
+ BZHIQ R14, R15, R15
959
+ MOVQ CX, DX
960
+ MOVQ R8, CX
961
+ SHRQ $0x20, CX
962
+ ADDQ R15, CX
963
+ MOVQ CX, 16(R9)
964
+
965
+ // Update match length
966
+ MOVQ $0x00000808, CX
967
+ BEXTRQ CX, DI, R14
968
+ MOVQ AX, R15
969
+ LEAQ (DX)(R14*1), CX
970
+ ROLQ CL, R15
971
+ BZHIQ R14, R15, R15
972
+ MOVQ CX, DX
973
+ MOVQ DI, CX
974
+ SHRQ $0x20, CX
975
+ ADDQ R15, CX
976
+ MOVQ CX, 8(R9)
977
+
978
+ // Update literal length
979
+ MOVQ $0x00000808, CX
980
+ BEXTRQ CX, SI, R14
981
+ MOVQ AX, R15
982
+ LEAQ (DX)(R14*1), CX
983
+ ROLQ CL, R15
984
+ BZHIQ R14, R15, R15
985
+ MOVQ CX, DX
986
+ MOVQ SI, CX
987
+ SHRQ $0x20, CX
988
+ ADDQ R15, CX
989
+ MOVQ CX, (R9)
990
+
991
+ // Fill bitreader for state updates
992
+ MOVQ R13, (SP)
993
+ MOVQ $0x00000808, CX
994
+ BEXTRQ CX, R8, R13
995
+ MOVQ ctx+16(FP), CX
996
+ CMPQ 96(CX), $0x00
997
+ JZ sequenceDecs_decode_56_bmi2_skip_update
998
+ LEAQ (SI)(DI*1), R14
999
+ ADDQ R8, R14
1000
+ MOVBQZX R14, R14
1001
+ LEAQ (DX)(R14*1), CX
1002
+ MOVQ AX, R15
1003
+ MOVQ CX, DX
1004
+ ROLQ CL, R15
1005
+ BZHIQ R14, R15, R15
1006
+
1007
+ // Update Offset State
1008
+ BZHIQ R8, R15, CX
1009
+ SHRXQ R8, R15, R15
1010
+ MOVQ $0x00001010, R14
1011
+ BEXTRQ R14, R8, R8
1012
+ ADDQ CX, R8
1013
+
1014
+ // Load ctx.ofTable
1015
+ MOVQ ctx+16(FP), CX
1016
+ MOVQ 48(CX), CX
1017
+ MOVQ (CX)(R8*8), R8
1018
+
1019
+ // Update Match Length State
1020
+ BZHIQ DI, R15, CX
1021
+ SHRXQ DI, R15, R15
1022
+ MOVQ $0x00001010, R14
1023
+ BEXTRQ R14, DI, DI
1024
+ ADDQ CX, DI
1025
+
1026
+ // Load ctx.mlTable
1027
+ MOVQ ctx+16(FP), CX
1028
+ MOVQ 24(CX), CX
1029
+ MOVQ (CX)(DI*8), DI
1030
+
1031
+ // Update Literal Length State
1032
+ BZHIQ SI, R15, CX
1033
+ MOVQ $0x00001010, R14
1034
+ BEXTRQ R14, SI, SI
1035
+ ADDQ CX, SI
1036
+
1037
+ // Load ctx.llTable
1038
+ MOVQ ctx+16(FP), CX
1039
+ MOVQ (CX), CX
1040
+ MOVQ (CX)(SI*8), SI
1041
+
1042
+ sequenceDecs_decode_56_bmi2_skip_update:
1043
+ // Adjust offset
1044
+ MOVQ 16(R9), CX
1045
+ CMPQ R13, $0x01
1046
+ JBE sequenceDecs_decode_56_bmi2_adjust_offsetB_1_or_0
1047
+ MOVQ R11, R12
1048
+ MOVQ R10, R11
1049
+ MOVQ CX, R10
1050
+ JMP sequenceDecs_decode_56_bmi2_after_adjust
1051
+
1052
+ sequenceDecs_decode_56_bmi2_adjust_offsetB_1_or_0:
1053
+ CMPQ (R9), $0x00000000
1054
+ JNE sequenceDecs_decode_56_bmi2_adjust_offset_maybezero
1055
+ INCQ CX
1056
+ JMP sequenceDecs_decode_56_bmi2_adjust_offset_nonzero
1057
+
1058
+ sequenceDecs_decode_56_bmi2_adjust_offset_maybezero:
1059
+ TESTQ CX, CX
1060
+ JNZ sequenceDecs_decode_56_bmi2_adjust_offset_nonzero
1061
+ MOVQ R10, CX
1062
+ JMP sequenceDecs_decode_56_bmi2_after_adjust
1063
+
1064
+ sequenceDecs_decode_56_bmi2_adjust_offset_nonzero:
1065
+ CMPQ CX, $0x01
1066
+ JB sequenceDecs_decode_56_bmi2_adjust_zero
1067
+ JEQ sequenceDecs_decode_56_bmi2_adjust_one
1068
+ CMPQ CX, $0x02
1069
+ JA sequenceDecs_decode_56_bmi2_adjust_three
1070
+ JMP sequenceDecs_decode_56_bmi2_adjust_two
1071
+
1072
+ sequenceDecs_decode_56_bmi2_adjust_zero:
1073
+ MOVQ R10, R13
1074
+ JMP sequenceDecs_decode_56_bmi2_adjust_test_temp_valid
1075
+
1076
+ sequenceDecs_decode_56_bmi2_adjust_one:
1077
+ MOVQ R11, R13
1078
+ JMP sequenceDecs_decode_56_bmi2_adjust_test_temp_valid
1079
+
1080
+ sequenceDecs_decode_56_bmi2_adjust_two:
1081
+ MOVQ R12, R13
1082
+ JMP sequenceDecs_decode_56_bmi2_adjust_test_temp_valid
1083
+
1084
+ sequenceDecs_decode_56_bmi2_adjust_three:
1085
+ LEAQ -1(R10), R13
1086
+
1087
+ sequenceDecs_decode_56_bmi2_adjust_test_temp_valid:
1088
+ TESTQ R13, R13
1089
+ JNZ sequenceDecs_decode_56_bmi2_adjust_temp_valid
1090
+ MOVQ $0x00000001, R13
1091
+
1092
+ sequenceDecs_decode_56_bmi2_adjust_temp_valid:
1093
+ CMPQ CX, $0x01
1094
+ CMOVQNE R11, R12
1095
+ MOVQ R10, R11
1096
+ MOVQ R13, R10
1097
+ MOVQ R13, CX
1098
+
1099
+ sequenceDecs_decode_56_bmi2_after_adjust:
1100
+ MOVQ CX, 16(R9)
1101
+
1102
+ // Check values
1103
+ MOVQ 8(R9), R13
1104
+ MOVQ (R9), R14
1105
+ LEAQ (R13)(R14*1), R15
1106
+ MOVQ s+0(FP), BP
1107
+ ADDQ R15, 256(BP)
1108
+ MOVQ ctx+16(FP), R15
1109
+ SUBQ R14, 128(R15)
1110
+ JS error_not_enough_literals
1111
+ CMPQ R13, $0x00020002
1112
+ JA sequenceDecs_decode_56_bmi2_error_match_len_too_big
1113
+ TESTQ CX, CX
1114
+ JNZ sequenceDecs_decode_56_bmi2_match_len_ofs_ok
1115
+ TESTQ R13, R13
1116
+ JNZ sequenceDecs_decode_56_bmi2_error_match_len_ofs_mismatch
1117
+
1118
+ sequenceDecs_decode_56_bmi2_match_len_ofs_ok:
1119
+ ADDQ $0x18, R9
1120
+ MOVQ ctx+16(FP), CX
1121
+ DECQ 96(CX)
1122
+ JNS sequenceDecs_decode_56_bmi2_main_loop
1123
+ MOVQ s+0(FP), CX
1124
+ MOVQ R10, 144(CX)
1125
+ MOVQ R11, 152(CX)
1126
+ MOVQ R12, 160(CX)
1127
+ MOVQ br+8(FP), CX
1128
+ MOVQ AX, 32(CX)
1129
+ MOVB DL, 40(CX)
1130
+ MOVQ BX, 24(CX)
1131
+
1132
+ // Return success
1133
+ MOVQ $0x00000000, ret+24(FP)
1134
+ RET
1135
+
1136
+ // Return with match length error
1137
+ sequenceDecs_decode_56_bmi2_error_match_len_ofs_mismatch:
1138
+ MOVQ $0x00000001, ret+24(FP)
1139
+ RET
1140
+
1141
+ // Return with match too long error
1142
+ sequenceDecs_decode_56_bmi2_error_match_len_too_big:
1143
+ MOVQ $0x00000002, ret+24(FP)
1144
+ RET
1145
+
1146
+ // Return with match offset too long error
1147
+ MOVQ $0x00000003, ret+24(FP)
1148
+ RET
1149
+
1150
+ // Return with not enough literals error
1151
+ error_not_enough_literals:
1152
+ MOVQ $0x00000004, ret+24(FP)
1153
+ RET
1154
+
1155
+ // Return with not enough output space error
1156
+ MOVQ $0x00000005, ret+24(FP)
1157
+ RET
1158
+
1159
+ // func sequenceDecs_executeSimple_amd64(ctx *executeAsmContext) bool
1160
+ // Requires: SSE
1161
+ TEXT ·sequenceDecs_executeSimple_amd64(SB), $8-9
1162
+ MOVQ ctx+0(FP), R10
1163
+ MOVQ 8(R10), CX
1164
+ TESTQ CX, CX
1165
+ JZ empty_seqs
1166
+ MOVQ (R10), AX
1167
+ MOVQ 24(R10), DX
1168
+ MOVQ 32(R10), BX
1169
+ MOVQ 80(R10), SI
1170
+ MOVQ 104(R10), DI
1171
+ MOVQ 120(R10), R8
1172
+ MOVQ 56(R10), R9
1173
+ MOVQ 64(R10), R10
1174
+ ADDQ R10, R9
1175
+
1176
+ // seqsBase += 24 * seqIndex
1177
+ LEAQ (DX)(DX*2), R11
1178
+ SHLQ $0x03, R11
1179
+ ADDQ R11, AX
1180
+
1181
+ // outBase += outPosition
1182
+ ADDQ DI, BX
1183
+
1184
+ main_loop:
1185
+ MOVQ (AX), R11
1186
+ MOVQ 16(AX), R12
1187
+ MOVQ 8(AX), R13
1188
+
1189
+ // Copy literals
1190
+ TESTQ R11, R11
1191
+ JZ check_offset
1192
+ XORQ R14, R14
1193
+
1194
+ copy_1:
1195
+ MOVUPS (SI)(R14*1), X0
1196
+ MOVUPS X0, (BX)(R14*1)
1197
+ ADDQ $0x10, R14
1198
+ CMPQ R14, R11
1199
+ JB copy_1
1200
+ ADDQ R11, SI
1201
+ ADDQ R11, BX
1202
+ ADDQ R11, DI
1203
+
1204
+ // Malformed input if seq.mo > t+len(hist) || seq.mo > s.windowSize)
1205
+ check_offset:
1206
+ LEAQ (DI)(R10*1), R11
1207
+ CMPQ R12, R11
1208
+ JG error_match_off_too_big
1209
+ CMPQ R12, R8
1210
+ JG error_match_off_too_big
1211
+
1212
+ // Copy match from history
1213
+ MOVQ R12, R11
1214
+ SUBQ DI, R11
1215
+ JLS copy_match
1216
+ MOVQ R9, R14
1217
+ SUBQ R11, R14
1218
+ CMPQ R13, R11
1219
+ JG copy_all_from_history
1220
+ MOVQ R13, R11
1221
+ SUBQ $0x10, R11
1222
+ JB copy_4_small
1223
+
1224
+ copy_4_loop:
1225
+ MOVUPS (R14), X0
1226
+ MOVUPS X0, (BX)
1227
+ ADDQ $0x10, R14
1228
+ ADDQ $0x10, BX
1229
+ SUBQ $0x10, R11
1230
+ JAE copy_4_loop
1231
+ LEAQ 16(R14)(R11*1), R14
1232
+ LEAQ 16(BX)(R11*1), BX
1233
+ MOVUPS -16(R14), X0
1234
+ MOVUPS X0, -16(BX)
1235
+ JMP copy_4_end
1236
+
1237
+ copy_4_small:
1238
+ CMPQ R13, $0x03
1239
+ JE copy_4_move_3
1240
+ CMPQ R13, $0x08
1241
+ JB copy_4_move_4through7
1242
+ JMP copy_4_move_8through16
1243
+
1244
+ copy_4_move_3:
1245
+ MOVW (R14), R11
1246
+ MOVB 2(R14), R12
1247
+ MOVW R11, (BX)
1248
+ MOVB R12, 2(BX)
1249
+ ADDQ R13, R14
1250
+ ADDQ R13, BX
1251
+ JMP copy_4_end
1252
+
1253
+ copy_4_move_4through7:
1254
+ MOVL (R14), R11
1255
+ MOVL -4(R14)(R13*1), R12
1256
+ MOVL R11, (BX)
1257
+ MOVL R12, -4(BX)(R13*1)
1258
+ ADDQ R13, R14
1259
+ ADDQ R13, BX
1260
+ JMP copy_4_end
1261
+
1262
+ copy_4_move_8through16:
1263
+ MOVQ (R14), R11
1264
+ MOVQ -8(R14)(R13*1), R12
1265
+ MOVQ R11, (BX)
1266
+ MOVQ R12, -8(BX)(R13*1)
1267
+ ADDQ R13, R14
1268
+ ADDQ R13, BX
1269
+
1270
+ copy_4_end:
1271
+ ADDQ R13, DI
1272
+ ADDQ $0x18, AX
1273
+ INCQ DX
1274
+ CMPQ DX, CX
1275
+ JB main_loop
1276
+ JMP loop_finished
1277
+
1278
+ copy_all_from_history:
1279
+ MOVQ R11, R15
1280
+ SUBQ $0x10, R15
1281
+ JB copy_5_small
1282
+
1283
+ copy_5_loop:
1284
+ MOVUPS (R14), X0
1285
+ MOVUPS X0, (BX)
1286
+ ADDQ $0x10, R14
1287
+ ADDQ $0x10, BX
1288
+ SUBQ $0x10, R15
1289
+ JAE copy_5_loop
1290
+ LEAQ 16(R14)(R15*1), R14
1291
+ LEAQ 16(BX)(R15*1), BX
1292
+ MOVUPS -16(R14), X0
1293
+ MOVUPS X0, -16(BX)
1294
+ JMP copy_5_end
1295
+
1296
+ copy_5_small:
1297
+ CMPQ R11, $0x03
1298
+ JE copy_5_move_3
1299
+ JB copy_5_move_1or2
1300
+ CMPQ R11, $0x08
1301
+ JB copy_5_move_4through7
1302
+ JMP copy_5_move_8through16
1303
+
1304
+ copy_5_move_1or2:
1305
+ MOVB (R14), R15
1306
+ MOVB -1(R14)(R11*1), BP
1307
+ MOVB R15, (BX)
1308
+ MOVB BP, -1(BX)(R11*1)
1309
+ ADDQ R11, R14
1310
+ ADDQ R11, BX
1311
+ JMP copy_5_end
1312
+
1313
+ copy_5_move_3:
1314
+ MOVW (R14), R15
1315
+ MOVB 2(R14), BP
1316
+ MOVW R15, (BX)
1317
+ MOVB BP, 2(BX)
1318
+ ADDQ R11, R14
1319
+ ADDQ R11, BX
1320
+ JMP copy_5_end
1321
+
1322
+ copy_5_move_4through7:
1323
+ MOVL (R14), R15
1324
+ MOVL -4(R14)(R11*1), BP
1325
+ MOVL R15, (BX)
1326
+ MOVL BP, -4(BX)(R11*1)
1327
+ ADDQ R11, R14
1328
+ ADDQ R11, BX
1329
+ JMP copy_5_end
1330
+
1331
+ copy_5_move_8through16:
1332
+ MOVQ (R14), R15
1333
+ MOVQ -8(R14)(R11*1), BP
1334
+ MOVQ R15, (BX)
1335
+ MOVQ BP, -8(BX)(R11*1)
1336
+ ADDQ R11, R14
1337
+ ADDQ R11, BX
1338
+
1339
+ copy_5_end:
1340
+ ADDQ R11, DI
1341
+ SUBQ R11, R13
1342
+
1343
+ // Copy match from the current buffer
1344
+ copy_match:
1345
+ MOVQ BX, R11
1346
+ SUBQ R12, R11
1347
+
1348
+ // ml <= mo
1349
+ CMPQ R13, R12
1350
+ JA copy_overlapping_match
1351
+
1352
+ // Copy non-overlapping match
1353
+ ADDQ R13, DI
1354
+ MOVQ BX, R12
1355
+ ADDQ R13, BX
1356
+
1357
+ copy_2:
1358
+ MOVUPS (R11), X0
1359
+ MOVUPS X0, (R12)
1360
+ ADDQ $0x10, R11
1361
+ ADDQ $0x10, R12
1362
+ SUBQ $0x10, R13
1363
+ JHI copy_2
1364
+ JMP handle_loop
1365
+
1366
+ // Copy overlapping match
1367
+ copy_overlapping_match:
1368
+ ADDQ R13, DI
1369
+
1370
+ copy_slow_3:
1371
+ MOVB (R11), R12
1372
+ MOVB R12, (BX)
1373
+ INCQ R11
1374
+ INCQ BX
1375
+ DECQ R13
1376
+ JNZ copy_slow_3
1377
+
1378
+ handle_loop:
1379
+ ADDQ $0x18, AX
1380
+ INCQ DX
1381
+ CMPQ DX, CX
1382
+ JB main_loop
1383
+
1384
+ loop_finished:
1385
+ // Return value
1386
+ MOVB $0x01, ret+8(FP)
1387
+
1388
+ // Update the context
1389
+ MOVQ ctx+0(FP), AX
1390
+ MOVQ DX, 24(AX)
1391
+ MOVQ DI, 104(AX)
1392
+ MOVQ 80(AX), CX
1393
+ SUBQ CX, SI
1394
+ MOVQ SI, 112(AX)
1395
+ RET
1396
+
1397
+ error_match_off_too_big:
1398
+ // Return value
1399
+ MOVB $0x00, ret+8(FP)
1400
+
1401
+ // Update the context
1402
+ MOVQ ctx+0(FP), AX
1403
+ MOVQ DX, 24(AX)
1404
+ MOVQ DI, 104(AX)
1405
+ MOVQ 80(AX), CX
1406
+ SUBQ CX, SI
1407
+ MOVQ SI, 112(AX)
1408
+ RET
1409
+
1410
+ empty_seqs:
1411
+ // Return value
1412
+ MOVB $0x01, ret+8(FP)
1413
+ RET
1414
+
1415
+ // func sequenceDecs_executeSimple_safe_amd64(ctx *executeAsmContext) bool
1416
+ // Requires: SSE
1417
+ TEXT ·sequenceDecs_executeSimple_safe_amd64(SB), $8-9
1418
+ MOVQ ctx+0(FP), R10
1419
+ MOVQ 8(R10), CX
1420
+ TESTQ CX, CX
1421
+ JZ empty_seqs
1422
+ MOVQ (R10), AX
1423
+ MOVQ 24(R10), DX
1424
+ MOVQ 32(R10), BX
1425
+ MOVQ 80(R10), SI
1426
+ MOVQ 104(R10), DI
1427
+ MOVQ 120(R10), R8
1428
+ MOVQ 56(R10), R9
1429
+ MOVQ 64(R10), R10
1430
+ ADDQ R10, R9
1431
+
1432
+ // seqsBase += 24 * seqIndex
1433
+ LEAQ (DX)(DX*2), R11
1434
+ SHLQ $0x03, R11
1435
+ ADDQ R11, AX
1436
+
1437
+ // outBase += outPosition
1438
+ ADDQ DI, BX
1439
+
1440
+ main_loop:
1441
+ MOVQ (AX), R11
1442
+ MOVQ 16(AX), R12
1443
+ MOVQ 8(AX), R13
1444
+
1445
+ // Copy literals
1446
+ TESTQ R11, R11
1447
+ JZ check_offset
1448
+ MOVQ R11, R14
1449
+ SUBQ $0x10, R14
1450
+ JB copy_1_small
1451
+
1452
+ copy_1_loop:
1453
+ MOVUPS (SI), X0
1454
+ MOVUPS X0, (BX)
1455
+ ADDQ $0x10, SI
1456
+ ADDQ $0x10, BX
1457
+ SUBQ $0x10, R14
1458
+ JAE copy_1_loop
1459
+ LEAQ 16(SI)(R14*1), SI
1460
+ LEAQ 16(BX)(R14*1), BX
1461
+ MOVUPS -16(SI), X0
1462
+ MOVUPS X0, -16(BX)
1463
+ JMP copy_1_end
1464
+
1465
+ copy_1_small:
1466
+ CMPQ R11, $0x03
1467
+ JE copy_1_move_3
1468
+ JB copy_1_move_1or2
1469
+ CMPQ R11, $0x08
1470
+ JB copy_1_move_4through7
1471
+ JMP copy_1_move_8through16
1472
+
1473
+ copy_1_move_1or2:
1474
+ MOVB (SI), R14
1475
+ MOVB -1(SI)(R11*1), R15
1476
+ MOVB R14, (BX)
1477
+ MOVB R15, -1(BX)(R11*1)
1478
+ ADDQ R11, SI
1479
+ ADDQ R11, BX
1480
+ JMP copy_1_end
1481
+
1482
+ copy_1_move_3:
1483
+ MOVW (SI), R14
1484
+ MOVB 2(SI), R15
1485
+ MOVW R14, (BX)
1486
+ MOVB R15, 2(BX)
1487
+ ADDQ R11, SI
1488
+ ADDQ R11, BX
1489
+ JMP copy_1_end
1490
+
1491
+ copy_1_move_4through7:
1492
+ MOVL (SI), R14
1493
+ MOVL -4(SI)(R11*1), R15
1494
+ MOVL R14, (BX)
1495
+ MOVL R15, -4(BX)(R11*1)
1496
+ ADDQ R11, SI
1497
+ ADDQ R11, BX
1498
+ JMP copy_1_end
1499
+
1500
+ copy_1_move_8through16:
1501
+ MOVQ (SI), R14
1502
+ MOVQ -8(SI)(R11*1), R15
1503
+ MOVQ R14, (BX)
1504
+ MOVQ R15, -8(BX)(R11*1)
1505
+ ADDQ R11, SI
1506
+ ADDQ R11, BX
1507
+
1508
+ copy_1_end:
1509
+ ADDQ R11, DI
1510
+
1511
+ // Malformed input if seq.mo > t+len(hist) || seq.mo > s.windowSize)
1512
+ check_offset:
1513
+ LEAQ (DI)(R10*1), R11
1514
+ CMPQ R12, R11
1515
+ JG error_match_off_too_big
1516
+ CMPQ R12, R8
1517
+ JG error_match_off_too_big
1518
+
1519
+ // Copy match from history
1520
+ MOVQ R12, R11
1521
+ SUBQ DI, R11
1522
+ JLS copy_match
1523
+ MOVQ R9, R14
1524
+ SUBQ R11, R14
1525
+ CMPQ R13, R11
1526
+ JG copy_all_from_history
1527
+ MOVQ R13, R11
1528
+ SUBQ $0x10, R11
1529
+ JB copy_4_small
1530
+
1531
+ copy_4_loop:
1532
+ MOVUPS (R14), X0
1533
+ MOVUPS X0, (BX)
1534
+ ADDQ $0x10, R14
1535
+ ADDQ $0x10, BX
1536
+ SUBQ $0x10, R11
1537
+ JAE copy_4_loop
1538
+ LEAQ 16(R14)(R11*1), R14
1539
+ LEAQ 16(BX)(R11*1), BX
1540
+ MOVUPS -16(R14), X0
1541
+ MOVUPS X0, -16(BX)
1542
+ JMP copy_4_end
1543
+
1544
+ copy_4_small:
1545
+ CMPQ R13, $0x03
1546
+ JE copy_4_move_3
1547
+ CMPQ R13, $0x08
1548
+ JB copy_4_move_4through7
1549
+ JMP copy_4_move_8through16
1550
+
1551
+ copy_4_move_3:
1552
+ MOVW (R14), R11
1553
+ MOVB 2(R14), R12
1554
+ MOVW R11, (BX)
1555
+ MOVB R12, 2(BX)
1556
+ ADDQ R13, R14
1557
+ ADDQ R13, BX
1558
+ JMP copy_4_end
1559
+
1560
+ copy_4_move_4through7:
1561
+ MOVL (R14), R11
1562
+ MOVL -4(R14)(R13*1), R12
1563
+ MOVL R11, (BX)
1564
+ MOVL R12, -4(BX)(R13*1)
1565
+ ADDQ R13, R14
1566
+ ADDQ R13, BX
1567
+ JMP copy_4_end
1568
+
1569
+ copy_4_move_8through16:
1570
+ MOVQ (R14), R11
1571
+ MOVQ -8(R14)(R13*1), R12
1572
+ MOVQ R11, (BX)
1573
+ MOVQ R12, -8(BX)(R13*1)
1574
+ ADDQ R13, R14
1575
+ ADDQ R13, BX
1576
+
1577
+ copy_4_end:
1578
+ ADDQ R13, DI
1579
+ ADDQ $0x18, AX
1580
+ INCQ DX
1581
+ CMPQ DX, CX
1582
+ JB main_loop
1583
+ JMP loop_finished
1584
+
1585
+ copy_all_from_history:
1586
+ MOVQ R11, R15
1587
+ SUBQ $0x10, R15
1588
+ JB copy_5_small
1589
+
1590
+ copy_5_loop:
1591
+ MOVUPS (R14), X0
1592
+ MOVUPS X0, (BX)
1593
+ ADDQ $0x10, R14
1594
+ ADDQ $0x10, BX
1595
+ SUBQ $0x10, R15
1596
+ JAE copy_5_loop
1597
+ LEAQ 16(R14)(R15*1), R14
1598
+ LEAQ 16(BX)(R15*1), BX
1599
+ MOVUPS -16(R14), X0
1600
+ MOVUPS X0, -16(BX)
1601
+ JMP copy_5_end
1602
+
1603
+ copy_5_small:
1604
+ CMPQ R11, $0x03
1605
+ JE copy_5_move_3
1606
+ JB copy_5_move_1or2
1607
+ CMPQ R11, $0x08
1608
+ JB copy_5_move_4through7
1609
+ JMP copy_5_move_8through16
1610
+
1611
+ copy_5_move_1or2:
1612
+ MOVB (R14), R15
1613
+ MOVB -1(R14)(R11*1), BP
1614
+ MOVB R15, (BX)
1615
+ MOVB BP, -1(BX)(R11*1)
1616
+ ADDQ R11, R14
1617
+ ADDQ R11, BX
1618
+ JMP copy_5_end
1619
+
1620
+ copy_5_move_3:
1621
+ MOVW (R14), R15
1622
+ MOVB 2(R14), BP
1623
+ MOVW R15, (BX)
1624
+ MOVB BP, 2(BX)
1625
+ ADDQ R11, R14
1626
+ ADDQ R11, BX
1627
+ JMP copy_5_end
1628
+
1629
+ copy_5_move_4through7:
1630
+ MOVL (R14), R15
1631
+ MOVL -4(R14)(R11*1), BP
1632
+ MOVL R15, (BX)
1633
+ MOVL BP, -4(BX)(R11*1)
1634
+ ADDQ R11, R14
1635
+ ADDQ R11, BX
1636
+ JMP copy_5_end
1637
+
1638
+ copy_5_move_8through16:
1639
+ MOVQ (R14), R15
1640
+ MOVQ -8(R14)(R11*1), BP
1641
+ MOVQ R15, (BX)
1642
+ MOVQ BP, -8(BX)(R11*1)
1643
+ ADDQ R11, R14
1644
+ ADDQ R11, BX
1645
+
1646
+ copy_5_end:
1647
+ ADDQ R11, DI
1648
+ SUBQ R11, R13
1649
+
1650
+ // Copy match from the current buffer
1651
+ copy_match:
1652
+ MOVQ BX, R11
1653
+ SUBQ R12, R11
1654
+
1655
+ // ml <= mo
1656
+ CMPQ R13, R12
1657
+ JA copy_overlapping_match
1658
+
1659
+ // Copy non-overlapping match
1660
+ ADDQ R13, DI
1661
+ MOVQ R13, R12
1662
+ SUBQ $0x10, R12
1663
+ JB copy_2_small
1664
+
1665
+ copy_2_loop:
1666
+ MOVUPS (R11), X0
1667
+ MOVUPS X0, (BX)
1668
+ ADDQ $0x10, R11
1669
+ ADDQ $0x10, BX
1670
+ SUBQ $0x10, R12
1671
+ JAE copy_2_loop
1672
+ LEAQ 16(R11)(R12*1), R11
1673
+ LEAQ 16(BX)(R12*1), BX
1674
+ MOVUPS -16(R11), X0
1675
+ MOVUPS X0, -16(BX)
1676
+ JMP copy_2_end
1677
+
1678
+ copy_2_small:
1679
+ CMPQ R13, $0x03
1680
+ JE copy_2_move_3
1681
+ JB copy_2_move_1or2
1682
+ CMPQ R13, $0x08
1683
+ JB copy_2_move_4through7
1684
+ JMP copy_2_move_8through16
1685
+
1686
+ copy_2_move_1or2:
1687
+ MOVB (R11), R12
1688
+ MOVB -1(R11)(R13*1), R14
1689
+ MOVB R12, (BX)
1690
+ MOVB R14, -1(BX)(R13*1)
1691
+ ADDQ R13, R11
1692
+ ADDQ R13, BX
1693
+ JMP copy_2_end
1694
+
1695
+ copy_2_move_3:
1696
+ MOVW (R11), R12
1697
+ MOVB 2(R11), R14
1698
+ MOVW R12, (BX)
1699
+ MOVB R14, 2(BX)
1700
+ ADDQ R13, R11
1701
+ ADDQ R13, BX
1702
+ JMP copy_2_end
1703
+
1704
+ copy_2_move_4through7:
1705
+ MOVL (R11), R12
1706
+ MOVL -4(R11)(R13*1), R14
1707
+ MOVL R12, (BX)
1708
+ MOVL R14, -4(BX)(R13*1)
1709
+ ADDQ R13, R11
1710
+ ADDQ R13, BX
1711
+ JMP copy_2_end
1712
+
1713
+ copy_2_move_8through16:
1714
+ MOVQ (R11), R12
1715
+ MOVQ -8(R11)(R13*1), R14
1716
+ MOVQ R12, (BX)
1717
+ MOVQ R14, -8(BX)(R13*1)
1718
+ ADDQ R13, R11
1719
+ ADDQ R13, BX
1720
+
1721
+ copy_2_end:
1722
+ JMP handle_loop
1723
+
1724
+ // Copy overlapping match
1725
+ copy_overlapping_match:
1726
+ ADDQ R13, DI
1727
+
1728
+ copy_slow_3:
1729
+ MOVB (R11), R12
1730
+ MOVB R12, (BX)
1731
+ INCQ R11
1732
+ INCQ BX
1733
+ DECQ R13
1734
+ JNZ copy_slow_3
1735
+
1736
+ handle_loop:
1737
+ ADDQ $0x18, AX
1738
+ INCQ DX
1739
+ CMPQ DX, CX
1740
+ JB main_loop
1741
+
1742
+ loop_finished:
1743
+ // Return value
1744
+ MOVB $0x01, ret+8(FP)
1745
+
1746
+ // Update the context
1747
+ MOVQ ctx+0(FP), AX
1748
+ MOVQ DX, 24(AX)
1749
+ MOVQ DI, 104(AX)
1750
+ MOVQ 80(AX), CX
1751
+ SUBQ CX, SI
1752
+ MOVQ SI, 112(AX)
1753
+ RET
1754
+
1755
+ error_match_off_too_big:
1756
+ // Return value
1757
+ MOVB $0x00, ret+8(FP)
1758
+
1759
+ // Update the context
1760
+ MOVQ ctx+0(FP), AX
1761
+ MOVQ DX, 24(AX)
1762
+ MOVQ DI, 104(AX)
1763
+ MOVQ 80(AX), CX
1764
+ SUBQ CX, SI
1765
+ MOVQ SI, 112(AX)
1766
+ RET
1767
+
1768
+ empty_seqs:
1769
+ // Return value
1770
+ MOVB $0x01, ret+8(FP)
1771
+ RET
1772
+
1773
+ // func sequenceDecs_decodeSync_amd64(s *sequenceDecs, br *bitReader, ctx *decodeSyncAsmContext) int
1774
+ // Requires: CMOV, SSE
1775
+ TEXT ·sequenceDecs_decodeSync_amd64(SB), $64-32
1776
+ MOVQ br+8(FP), AX
1777
+ MOVQ 32(AX), DX
1778
+ MOVBQZX 40(AX), BX
1779
+ MOVQ 24(AX), SI
1780
+ MOVQ (AX), AX
1781
+ ADDQ SI, AX
1782
+ MOVQ AX, (SP)
1783
+ MOVQ ctx+16(FP), AX
1784
+ MOVQ 72(AX), DI
1785
+ MOVQ 80(AX), R8
1786
+ MOVQ 88(AX), R9
1787
+ XORQ CX, CX
1788
+ MOVQ CX, 8(SP)
1789
+ MOVQ CX, 16(SP)
1790
+ MOVQ CX, 24(SP)
1791
+ MOVQ 112(AX), R10
1792
+ MOVQ 128(AX), CX
1793
+ MOVQ CX, 32(SP)
1794
+ MOVQ 144(AX), R11
1795
+ MOVQ 136(AX), R12
1796
+ MOVQ 200(AX), CX
1797
+ MOVQ CX, 56(SP)
1798
+ MOVQ 176(AX), CX
1799
+ MOVQ CX, 48(SP)
1800
+ MOVQ 184(AX), AX
1801
+ MOVQ AX, 40(SP)
1802
+ MOVQ 40(SP), AX
1803
+ ADDQ AX, 48(SP)
1804
+
1805
+ // Calculate poiter to s.out[cap(s.out)] (a past-end pointer)
1806
+ ADDQ R10, 32(SP)
1807
+
1808
+ // outBase += outPosition
1809
+ ADDQ R12, R10
1810
+
1811
+ sequenceDecs_decodeSync_amd64_main_loop:
1812
+ MOVQ (SP), R13
1813
+
1814
+ // Fill bitreader to have enough for the offset and match length.
1815
+ CMPQ SI, $0x08
1816
+ JL sequenceDecs_decodeSync_amd64_fill_byte_by_byte
1817
+ MOVQ BX, AX
1818
+ SHRQ $0x03, AX
1819
+ SUBQ AX, R13
1820
+ MOVQ (R13), DX
1821
+ SUBQ AX, SI
1822
+ ANDQ $0x07, BX
1823
+ JMP sequenceDecs_decodeSync_amd64_fill_end
1824
+
1825
+ sequenceDecs_decodeSync_amd64_fill_byte_by_byte:
1826
+ CMPQ SI, $0x00
1827
+ JLE sequenceDecs_decodeSync_amd64_fill_end
1828
+ CMPQ BX, $0x07
1829
+ JLE sequenceDecs_decodeSync_amd64_fill_end
1830
+ SHLQ $0x08, DX
1831
+ SUBQ $0x01, R13
1832
+ SUBQ $0x01, SI
1833
+ SUBQ $0x08, BX
1834
+ MOVBQZX (R13), AX
1835
+ ORQ AX, DX
1836
+ JMP sequenceDecs_decodeSync_amd64_fill_byte_by_byte
1837
+
1838
+ sequenceDecs_decodeSync_amd64_fill_end:
1839
+ // Update offset
1840
+ MOVQ R9, AX
1841
+ MOVQ BX, CX
1842
+ MOVQ DX, R14
1843
+ SHLQ CL, R14
1844
+ MOVB AH, CL
1845
+ SHRQ $0x20, AX
1846
+ TESTQ CX, CX
1847
+ JZ sequenceDecs_decodeSync_amd64_of_update_zero
1848
+ ADDQ CX, BX
1849
+ CMPQ BX, $0x40
1850
+ JA sequenceDecs_decodeSync_amd64_of_update_zero
1851
+ CMPQ CX, $0x40
1852
+ JAE sequenceDecs_decodeSync_amd64_of_update_zero
1853
+ NEGQ CX
1854
+ SHRQ CL, R14
1855
+ ADDQ R14, AX
1856
+
1857
+ sequenceDecs_decodeSync_amd64_of_update_zero:
1858
+ MOVQ AX, 8(SP)
1859
+
1860
+ // Update match length
1861
+ MOVQ R8, AX
1862
+ MOVQ BX, CX
1863
+ MOVQ DX, R14
1864
+ SHLQ CL, R14
1865
+ MOVB AH, CL
1866
+ SHRQ $0x20, AX
1867
+ TESTQ CX, CX
1868
+ JZ sequenceDecs_decodeSync_amd64_ml_update_zero
1869
+ ADDQ CX, BX
1870
+ CMPQ BX, $0x40
1871
+ JA sequenceDecs_decodeSync_amd64_ml_update_zero
1872
+ CMPQ CX, $0x40
1873
+ JAE sequenceDecs_decodeSync_amd64_ml_update_zero
1874
+ NEGQ CX
1875
+ SHRQ CL, R14
1876
+ ADDQ R14, AX
1877
+
1878
+ sequenceDecs_decodeSync_amd64_ml_update_zero:
1879
+ MOVQ AX, 16(SP)
1880
+
1881
+ // Fill bitreader to have enough for the remaining
1882
+ CMPQ SI, $0x08
1883
+ JL sequenceDecs_decodeSync_amd64_fill_2_byte_by_byte
1884
+ MOVQ BX, AX
1885
+ SHRQ $0x03, AX
1886
+ SUBQ AX, R13
1887
+ MOVQ (R13), DX
1888
+ SUBQ AX, SI
1889
+ ANDQ $0x07, BX
1890
+ JMP sequenceDecs_decodeSync_amd64_fill_2_end
1891
+
1892
+ sequenceDecs_decodeSync_amd64_fill_2_byte_by_byte:
1893
+ CMPQ SI, $0x00
1894
+ JLE sequenceDecs_decodeSync_amd64_fill_2_end
1895
+ CMPQ BX, $0x07
1896
+ JLE sequenceDecs_decodeSync_amd64_fill_2_end
1897
+ SHLQ $0x08, DX
1898
+ SUBQ $0x01, R13
1899
+ SUBQ $0x01, SI
1900
+ SUBQ $0x08, BX
1901
+ MOVBQZX (R13), AX
1902
+ ORQ AX, DX
1903
+ JMP sequenceDecs_decodeSync_amd64_fill_2_byte_by_byte
1904
+
1905
+ sequenceDecs_decodeSync_amd64_fill_2_end:
1906
+ // Update literal length
1907
+ MOVQ DI, AX
1908
+ MOVQ BX, CX
1909
+ MOVQ DX, R14
1910
+ SHLQ CL, R14
1911
+ MOVB AH, CL
1912
+ SHRQ $0x20, AX
1913
+ TESTQ CX, CX
1914
+ JZ sequenceDecs_decodeSync_amd64_ll_update_zero
1915
+ ADDQ CX, BX
1916
+ CMPQ BX, $0x40
1917
+ JA sequenceDecs_decodeSync_amd64_ll_update_zero
1918
+ CMPQ CX, $0x40
1919
+ JAE sequenceDecs_decodeSync_amd64_ll_update_zero
1920
+ NEGQ CX
1921
+ SHRQ CL, R14
1922
+ ADDQ R14, AX
1923
+
1924
+ sequenceDecs_decodeSync_amd64_ll_update_zero:
1925
+ MOVQ AX, 24(SP)
1926
+
1927
+ // Fill bitreader for state updates
1928
+ MOVQ R13, (SP)
1929
+ MOVQ R9, AX
1930
+ SHRQ $0x08, AX
1931
+ MOVBQZX AL, AX
1932
+ MOVQ ctx+16(FP), CX
1933
+ CMPQ 96(CX), $0x00
1934
+ JZ sequenceDecs_decodeSync_amd64_skip_update
1935
+
1936
+ // Update Literal Length State
1937
+ MOVBQZX DI, R13
1938
+ SHRQ $0x10, DI
1939
+ MOVWQZX DI, DI
1940
+ LEAQ (BX)(R13*1), CX
1941
+ MOVQ DX, R14
1942
+ MOVQ CX, BX
1943
+ ROLQ CL, R14
1944
+ MOVL $0x00000001, R15
1945
+ MOVB R13, CL
1946
+ SHLL CL, R15
1947
+ DECL R15
1948
+ ANDQ R15, R14
1949
+ ADDQ R14, DI
1950
+
1951
+ // Load ctx.llTable
1952
+ MOVQ ctx+16(FP), CX
1953
+ MOVQ (CX), CX
1954
+ MOVQ (CX)(DI*8), DI
1955
+
1956
+ // Update Match Length State
1957
+ MOVBQZX R8, R13
1958
+ SHRQ $0x10, R8
1959
+ MOVWQZX R8, R8
1960
+ LEAQ (BX)(R13*1), CX
1961
+ MOVQ DX, R14
1962
+ MOVQ CX, BX
1963
+ ROLQ CL, R14
1964
+ MOVL $0x00000001, R15
1965
+ MOVB R13, CL
1966
+ SHLL CL, R15
1967
+ DECL R15
1968
+ ANDQ R15, R14
1969
+ ADDQ R14, R8
1970
+
1971
+ // Load ctx.mlTable
1972
+ MOVQ ctx+16(FP), CX
1973
+ MOVQ 24(CX), CX
1974
+ MOVQ (CX)(R8*8), R8
1975
+
1976
+ // Update Offset State
1977
+ MOVBQZX R9, R13
1978
+ SHRQ $0x10, R9
1979
+ MOVWQZX R9, R9
1980
+ LEAQ (BX)(R13*1), CX
1981
+ MOVQ DX, R14
1982
+ MOVQ CX, BX
1983
+ ROLQ CL, R14
1984
+ MOVL $0x00000001, R15
1985
+ MOVB R13, CL
1986
+ SHLL CL, R15
1987
+ DECL R15
1988
+ ANDQ R15, R14
1989
+ ADDQ R14, R9
1990
+
1991
+ // Load ctx.ofTable
1992
+ MOVQ ctx+16(FP), CX
1993
+ MOVQ 48(CX), CX
1994
+ MOVQ (CX)(R9*8), R9
1995
+
1996
+ sequenceDecs_decodeSync_amd64_skip_update:
1997
+ // Adjust offset
1998
+ MOVQ s+0(FP), CX
1999
+ MOVQ 8(SP), R13
2000
+ CMPQ AX, $0x01
2001
+ JBE sequenceDecs_decodeSync_amd64_adjust_offsetB_1_or_0
2002
+ MOVUPS 144(CX), X0
2003
+ MOVQ R13, 144(CX)
2004
+ MOVUPS X0, 152(CX)
2005
+ JMP sequenceDecs_decodeSync_amd64_after_adjust
2006
+
2007
+ sequenceDecs_decodeSync_amd64_adjust_offsetB_1_or_0:
2008
+ CMPQ 24(SP), $0x00000000
2009
+ JNE sequenceDecs_decodeSync_amd64_adjust_offset_maybezero
2010
+ INCQ R13
2011
+ JMP sequenceDecs_decodeSync_amd64_adjust_offset_nonzero
2012
+
2013
+ sequenceDecs_decodeSync_amd64_adjust_offset_maybezero:
2014
+ TESTQ R13, R13
2015
+ JNZ sequenceDecs_decodeSync_amd64_adjust_offset_nonzero
2016
+ MOVQ 144(CX), R13
2017
+ JMP sequenceDecs_decodeSync_amd64_after_adjust
2018
+
2019
+ sequenceDecs_decodeSync_amd64_adjust_offset_nonzero:
2020
+ MOVQ R13, AX
2021
+ XORQ R14, R14
2022
+ MOVQ $-1, R15
2023
+ CMPQ R13, $0x03
2024
+ CMOVQEQ R14, AX
2025
+ CMOVQEQ R15, R14
2026
+ ADDQ 144(CX)(AX*8), R14
2027
+ JNZ sequenceDecs_decodeSync_amd64_adjust_temp_valid
2028
+ MOVQ $0x00000001, R14
2029
+
2030
+ sequenceDecs_decodeSync_amd64_adjust_temp_valid:
2031
+ CMPQ R13, $0x01
2032
+ JZ sequenceDecs_decodeSync_amd64_adjust_skip
2033
+ MOVQ 152(CX), AX
2034
+ MOVQ AX, 160(CX)
2035
+
2036
+ sequenceDecs_decodeSync_amd64_adjust_skip:
2037
+ MOVQ 144(CX), AX
2038
+ MOVQ AX, 152(CX)
2039
+ MOVQ R14, 144(CX)
2040
+ MOVQ R14, R13
2041
+
2042
+ sequenceDecs_decodeSync_amd64_after_adjust:
2043
+ MOVQ R13, 8(SP)
2044
+
2045
+ // Check values
2046
+ MOVQ 16(SP), AX
2047
+ MOVQ 24(SP), CX
2048
+ LEAQ (AX)(CX*1), R14
2049
+ MOVQ s+0(FP), R15
2050
+ ADDQ R14, 256(R15)
2051
+ MOVQ ctx+16(FP), R14
2052
+ SUBQ CX, 104(R14)
2053
+ JS error_not_enough_literals
2054
+ CMPQ AX, $0x00020002
2055
+ JA sequenceDecs_decodeSync_amd64_error_match_len_too_big
2056
+ TESTQ R13, R13
2057
+ JNZ sequenceDecs_decodeSync_amd64_match_len_ofs_ok
2058
+ TESTQ AX, AX
2059
+ JNZ sequenceDecs_decodeSync_amd64_error_match_len_ofs_mismatch
2060
+
2061
+ sequenceDecs_decodeSync_amd64_match_len_ofs_ok:
2062
+ MOVQ 24(SP), AX
2063
+ MOVQ 8(SP), CX
2064
+ MOVQ 16(SP), R13
2065
+
2066
+ // Check if we have enough space in s.out
2067
+ LEAQ (AX)(R13*1), R14
2068
+ ADDQ R10, R14
2069
+ CMPQ R14, 32(SP)
2070
+ JA error_not_enough_space
2071
+
2072
+ // Copy literals
2073
+ TESTQ AX, AX
2074
+ JZ check_offset
2075
+ XORQ R14, R14
2076
+
2077
+ copy_1:
2078
+ MOVUPS (R11)(R14*1), X0
2079
+ MOVUPS X0, (R10)(R14*1)
2080
+ ADDQ $0x10, R14
2081
+ CMPQ R14, AX
2082
+ JB copy_1
2083
+ ADDQ AX, R11
2084
+ ADDQ AX, R10
2085
+ ADDQ AX, R12
2086
+
2087
+ // Malformed input if seq.mo > t+len(hist) || seq.mo > s.windowSize)
2088
+ check_offset:
2089
+ MOVQ R12, AX
2090
+ ADDQ 40(SP), AX
2091
+ CMPQ CX, AX
2092
+ JG error_match_off_too_big
2093
+ CMPQ CX, 56(SP)
2094
+ JG error_match_off_too_big
2095
+
2096
+ // Copy match from history
2097
+ MOVQ CX, AX
2098
+ SUBQ R12, AX
2099
+ JLS copy_match
2100
+ MOVQ 48(SP), R14
2101
+ SUBQ AX, R14
2102
+ CMPQ R13, AX
2103
+ JG copy_all_from_history
2104
+ MOVQ R13, AX
2105
+ SUBQ $0x10, AX
2106
+ JB copy_4_small
2107
+
2108
+ copy_4_loop:
2109
+ MOVUPS (R14), X0
2110
+ MOVUPS X0, (R10)
2111
+ ADDQ $0x10, R14
2112
+ ADDQ $0x10, R10
2113
+ SUBQ $0x10, AX
2114
+ JAE copy_4_loop
2115
+ LEAQ 16(R14)(AX*1), R14
2116
+ LEAQ 16(R10)(AX*1), R10
2117
+ MOVUPS -16(R14), X0
2118
+ MOVUPS X0, -16(R10)
2119
+ JMP copy_4_end
2120
+
2121
+ copy_4_small:
2122
+ CMPQ R13, $0x03
2123
+ JE copy_4_move_3
2124
+ CMPQ R13, $0x08
2125
+ JB copy_4_move_4through7
2126
+ JMP copy_4_move_8through16
2127
+
2128
+ copy_4_move_3:
2129
+ MOVW (R14), AX
2130
+ MOVB 2(R14), CL
2131
+ MOVW AX, (R10)
2132
+ MOVB CL, 2(R10)
2133
+ ADDQ R13, R14
2134
+ ADDQ R13, R10
2135
+ JMP copy_4_end
2136
+
2137
+ copy_4_move_4through7:
2138
+ MOVL (R14), AX
2139
+ MOVL -4(R14)(R13*1), CX
2140
+ MOVL AX, (R10)
2141
+ MOVL CX, -4(R10)(R13*1)
2142
+ ADDQ R13, R14
2143
+ ADDQ R13, R10
2144
+ JMP copy_4_end
2145
+
2146
+ copy_4_move_8through16:
2147
+ MOVQ (R14), AX
2148
+ MOVQ -8(R14)(R13*1), CX
2149
+ MOVQ AX, (R10)
2150
+ MOVQ CX, -8(R10)(R13*1)
2151
+ ADDQ R13, R14
2152
+ ADDQ R13, R10
2153
+
2154
+ copy_4_end:
2155
+ ADDQ R13, R12
2156
+ JMP handle_loop
2157
+ JMP loop_finished
2158
+
2159
+ copy_all_from_history:
2160
+ MOVQ AX, R15
2161
+ SUBQ $0x10, R15
2162
+ JB copy_5_small
2163
+
2164
+ copy_5_loop:
2165
+ MOVUPS (R14), X0
2166
+ MOVUPS X0, (R10)
2167
+ ADDQ $0x10, R14
2168
+ ADDQ $0x10, R10
2169
+ SUBQ $0x10, R15
2170
+ JAE copy_5_loop
2171
+ LEAQ 16(R14)(R15*1), R14
2172
+ LEAQ 16(R10)(R15*1), R10
2173
+ MOVUPS -16(R14), X0
2174
+ MOVUPS X0, -16(R10)
2175
+ JMP copy_5_end
2176
+
2177
+ copy_5_small:
2178
+ CMPQ AX, $0x03
2179
+ JE copy_5_move_3
2180
+ JB copy_5_move_1or2
2181
+ CMPQ AX, $0x08
2182
+ JB copy_5_move_4through7
2183
+ JMP copy_5_move_8through16
2184
+
2185
+ copy_5_move_1or2:
2186
+ MOVB (R14), R15
2187
+ MOVB -1(R14)(AX*1), BP
2188
+ MOVB R15, (R10)
2189
+ MOVB BP, -1(R10)(AX*1)
2190
+ ADDQ AX, R14
2191
+ ADDQ AX, R10
2192
+ JMP copy_5_end
2193
+
2194
+ copy_5_move_3:
2195
+ MOVW (R14), R15
2196
+ MOVB 2(R14), BP
2197
+ MOVW R15, (R10)
2198
+ MOVB BP, 2(R10)
2199
+ ADDQ AX, R14
2200
+ ADDQ AX, R10
2201
+ JMP copy_5_end
2202
+
2203
+ copy_5_move_4through7:
2204
+ MOVL (R14), R15
2205
+ MOVL -4(R14)(AX*1), BP
2206
+ MOVL R15, (R10)
2207
+ MOVL BP, -4(R10)(AX*1)
2208
+ ADDQ AX, R14
2209
+ ADDQ AX, R10
2210
+ JMP copy_5_end
2211
+
2212
+ copy_5_move_8through16:
2213
+ MOVQ (R14), R15
2214
+ MOVQ -8(R14)(AX*1), BP
2215
+ MOVQ R15, (R10)
2216
+ MOVQ BP, -8(R10)(AX*1)
2217
+ ADDQ AX, R14
2218
+ ADDQ AX, R10
2219
+
2220
+ copy_5_end:
2221
+ ADDQ AX, R12
2222
+ SUBQ AX, R13
2223
+
2224
+ // Copy match from the current buffer
2225
+ copy_match:
2226
+ MOVQ R10, AX
2227
+ SUBQ CX, AX
2228
+
2229
+ // ml <= mo
2230
+ CMPQ R13, CX
2231
+ JA copy_overlapping_match
2232
+
2233
+ // Copy non-overlapping match
2234
+ ADDQ R13, R12
2235
+ MOVQ R10, CX
2236
+ ADDQ R13, R10
2237
+
2238
+ copy_2:
2239
+ MOVUPS (AX), X0
2240
+ MOVUPS X0, (CX)
2241
+ ADDQ $0x10, AX
2242
+ ADDQ $0x10, CX
2243
+ SUBQ $0x10, R13
2244
+ JHI copy_2
2245
+ JMP handle_loop
2246
+
2247
+ // Copy overlapping match
2248
+ copy_overlapping_match:
2249
+ ADDQ R13, R12
2250
+
2251
+ copy_slow_3:
2252
+ MOVB (AX), CL
2253
+ MOVB CL, (R10)
2254
+ INCQ AX
2255
+ INCQ R10
2256
+ DECQ R13
2257
+ JNZ copy_slow_3
2258
+
2259
+ handle_loop:
2260
+ MOVQ ctx+16(FP), AX
2261
+ DECQ 96(AX)
2262
+ JNS sequenceDecs_decodeSync_amd64_main_loop
2263
+
2264
+ loop_finished:
2265
+ MOVQ br+8(FP), AX
2266
+ MOVQ DX, 32(AX)
2267
+ MOVB BL, 40(AX)
2268
+ MOVQ SI, 24(AX)
2269
+
2270
+ // Update the context
2271
+ MOVQ ctx+16(FP), AX
2272
+ MOVQ R12, 136(AX)
2273
+ MOVQ 144(AX), CX
2274
+ SUBQ CX, R11
2275
+ MOVQ R11, 168(AX)
2276
+
2277
+ // Return success
2278
+ MOVQ $0x00000000, ret+24(FP)
2279
+ RET
2280
+
2281
+ // Return with match length error
2282
+ sequenceDecs_decodeSync_amd64_error_match_len_ofs_mismatch:
2283
+ MOVQ 16(SP), AX
2284
+ MOVQ ctx+16(FP), CX
2285
+ MOVQ AX, 216(CX)
2286
+ MOVQ $0x00000001, ret+24(FP)
2287
+ RET
2288
+
2289
+ // Return with match too long error
2290
+ sequenceDecs_decodeSync_amd64_error_match_len_too_big:
2291
+ MOVQ ctx+16(FP), AX
2292
+ MOVQ 16(SP), CX
2293
+ MOVQ CX, 216(AX)
2294
+ MOVQ $0x00000002, ret+24(FP)
2295
+ RET
2296
+
2297
+ // Return with match offset too long error
2298
+ error_match_off_too_big:
2299
+ MOVQ ctx+16(FP), AX
2300
+ MOVQ 8(SP), CX
2301
+ MOVQ CX, 224(AX)
2302
+ MOVQ R12, 136(AX)
2303
+ MOVQ $0x00000003, ret+24(FP)
2304
+ RET
2305
+
2306
+ // Return with not enough literals error
2307
+ error_not_enough_literals:
2308
+ MOVQ ctx+16(FP), AX
2309
+ MOVQ 24(SP), CX
2310
+ MOVQ CX, 208(AX)
2311
+ MOVQ $0x00000004, ret+24(FP)
2312
+ RET
2313
+
2314
+ // Return with not enough output space error
2315
+ error_not_enough_space:
2316
+ MOVQ ctx+16(FP), AX
2317
+ MOVQ 24(SP), CX
2318
+ MOVQ CX, 208(AX)
2319
+ MOVQ 16(SP), CX
2320
+ MOVQ CX, 216(AX)
2321
+ MOVQ R12, 136(AX)
2322
+ MOVQ $0x00000005, ret+24(FP)
2323
+ RET
2324
+
2325
+ // func sequenceDecs_decodeSync_bmi2(s *sequenceDecs, br *bitReader, ctx *decodeSyncAsmContext) int
2326
+ // Requires: BMI, BMI2, CMOV, SSE
2327
+ TEXT ·sequenceDecs_decodeSync_bmi2(SB), $64-32
2328
+ MOVQ br+8(FP), CX
2329
+ MOVQ 32(CX), AX
2330
+ MOVBQZX 40(CX), DX
2331
+ MOVQ 24(CX), BX
2332
+ MOVQ (CX), CX
2333
+ ADDQ BX, CX
2334
+ MOVQ CX, (SP)
2335
+ MOVQ ctx+16(FP), CX
2336
+ MOVQ 72(CX), SI
2337
+ MOVQ 80(CX), DI
2338
+ MOVQ 88(CX), R8
2339
+ XORQ R9, R9
2340
+ MOVQ R9, 8(SP)
2341
+ MOVQ R9, 16(SP)
2342
+ MOVQ R9, 24(SP)
2343
+ MOVQ 112(CX), R9
2344
+ MOVQ 128(CX), R10
2345
+ MOVQ R10, 32(SP)
2346
+ MOVQ 144(CX), R10
2347
+ MOVQ 136(CX), R11
2348
+ MOVQ 200(CX), R12
2349
+ MOVQ R12, 56(SP)
2350
+ MOVQ 176(CX), R12
2351
+ MOVQ R12, 48(SP)
2352
+ MOVQ 184(CX), CX
2353
+ MOVQ CX, 40(SP)
2354
+ MOVQ 40(SP), CX
2355
+ ADDQ CX, 48(SP)
2356
+
2357
+ // Calculate poiter to s.out[cap(s.out)] (a past-end pointer)
2358
+ ADDQ R9, 32(SP)
2359
+
2360
+ // outBase += outPosition
2361
+ ADDQ R11, R9
2362
+
2363
+ sequenceDecs_decodeSync_bmi2_main_loop:
2364
+ MOVQ (SP), R12
2365
+
2366
+ // Fill bitreader to have enough for the offset and match length.
2367
+ CMPQ BX, $0x08
2368
+ JL sequenceDecs_decodeSync_bmi2_fill_byte_by_byte
2369
+ MOVQ DX, CX
2370
+ SHRQ $0x03, CX
2371
+ SUBQ CX, R12
2372
+ MOVQ (R12), AX
2373
+ SUBQ CX, BX
2374
+ ANDQ $0x07, DX
2375
+ JMP sequenceDecs_decodeSync_bmi2_fill_end
2376
+
2377
+ sequenceDecs_decodeSync_bmi2_fill_byte_by_byte:
2378
+ CMPQ BX, $0x00
2379
+ JLE sequenceDecs_decodeSync_bmi2_fill_end
2380
+ CMPQ DX, $0x07
2381
+ JLE sequenceDecs_decodeSync_bmi2_fill_end
2382
+ SHLQ $0x08, AX
2383
+ SUBQ $0x01, R12
2384
+ SUBQ $0x01, BX
2385
+ SUBQ $0x08, DX
2386
+ MOVBQZX (R12), CX
2387
+ ORQ CX, AX
2388
+ JMP sequenceDecs_decodeSync_bmi2_fill_byte_by_byte
2389
+
2390
+ sequenceDecs_decodeSync_bmi2_fill_end:
2391
+ // Update offset
2392
+ MOVQ $0x00000808, CX
2393
+ BEXTRQ CX, R8, R13
2394
+ MOVQ AX, R14
2395
+ LEAQ (DX)(R13*1), CX
2396
+ ROLQ CL, R14
2397
+ BZHIQ R13, R14, R14
2398
+ MOVQ CX, DX
2399
+ MOVQ R8, CX
2400
+ SHRQ $0x20, CX
2401
+ ADDQ R14, CX
2402
+ MOVQ CX, 8(SP)
2403
+
2404
+ // Update match length
2405
+ MOVQ $0x00000808, CX
2406
+ BEXTRQ CX, DI, R13
2407
+ MOVQ AX, R14
2408
+ LEAQ (DX)(R13*1), CX
2409
+ ROLQ CL, R14
2410
+ BZHIQ R13, R14, R14
2411
+ MOVQ CX, DX
2412
+ MOVQ DI, CX
2413
+ SHRQ $0x20, CX
2414
+ ADDQ R14, CX
2415
+ MOVQ CX, 16(SP)
2416
+
2417
+ // Fill bitreader to have enough for the remaining
2418
+ CMPQ BX, $0x08
2419
+ JL sequenceDecs_decodeSync_bmi2_fill_2_byte_by_byte
2420
+ MOVQ DX, CX
2421
+ SHRQ $0x03, CX
2422
+ SUBQ CX, R12
2423
+ MOVQ (R12), AX
2424
+ SUBQ CX, BX
2425
+ ANDQ $0x07, DX
2426
+ JMP sequenceDecs_decodeSync_bmi2_fill_2_end
2427
+
2428
+ sequenceDecs_decodeSync_bmi2_fill_2_byte_by_byte:
2429
+ CMPQ BX, $0x00
2430
+ JLE sequenceDecs_decodeSync_bmi2_fill_2_end
2431
+ CMPQ DX, $0x07
2432
+ JLE sequenceDecs_decodeSync_bmi2_fill_2_end
2433
+ SHLQ $0x08, AX
2434
+ SUBQ $0x01, R12
2435
+ SUBQ $0x01, BX
2436
+ SUBQ $0x08, DX
2437
+ MOVBQZX (R12), CX
2438
+ ORQ CX, AX
2439
+ JMP sequenceDecs_decodeSync_bmi2_fill_2_byte_by_byte
2440
+
2441
+ sequenceDecs_decodeSync_bmi2_fill_2_end:
2442
+ // Update literal length
2443
+ MOVQ $0x00000808, CX
2444
+ BEXTRQ CX, SI, R13
2445
+ MOVQ AX, R14
2446
+ LEAQ (DX)(R13*1), CX
2447
+ ROLQ CL, R14
2448
+ BZHIQ R13, R14, R14
2449
+ MOVQ CX, DX
2450
+ MOVQ SI, CX
2451
+ SHRQ $0x20, CX
2452
+ ADDQ R14, CX
2453
+ MOVQ CX, 24(SP)
2454
+
2455
+ // Fill bitreader for state updates
2456
+ MOVQ R12, (SP)
2457
+ MOVQ $0x00000808, CX
2458
+ BEXTRQ CX, R8, R12
2459
+ MOVQ ctx+16(FP), CX
2460
+ CMPQ 96(CX), $0x00
2461
+ JZ sequenceDecs_decodeSync_bmi2_skip_update
2462
+ LEAQ (SI)(DI*1), R13
2463
+ ADDQ R8, R13
2464
+ MOVBQZX R13, R13
2465
+ LEAQ (DX)(R13*1), CX
2466
+ MOVQ AX, R14
2467
+ MOVQ CX, DX
2468
+ ROLQ CL, R14
2469
+ BZHIQ R13, R14, R14
2470
+
2471
+ // Update Offset State
2472
+ BZHIQ R8, R14, CX
2473
+ SHRXQ R8, R14, R14
2474
+ MOVQ $0x00001010, R13
2475
+ BEXTRQ R13, R8, R8
2476
+ ADDQ CX, R8
2477
+
2478
+ // Load ctx.ofTable
2479
+ MOVQ ctx+16(FP), CX
2480
+ MOVQ 48(CX), CX
2481
+ MOVQ (CX)(R8*8), R8
2482
+
2483
+ // Update Match Length State
2484
+ BZHIQ DI, R14, CX
2485
+ SHRXQ DI, R14, R14
2486
+ MOVQ $0x00001010, R13
2487
+ BEXTRQ R13, DI, DI
2488
+ ADDQ CX, DI
2489
+
2490
+ // Load ctx.mlTable
2491
+ MOVQ ctx+16(FP), CX
2492
+ MOVQ 24(CX), CX
2493
+ MOVQ (CX)(DI*8), DI
2494
+
2495
+ // Update Literal Length State
2496
+ BZHIQ SI, R14, CX
2497
+ MOVQ $0x00001010, R13
2498
+ BEXTRQ R13, SI, SI
2499
+ ADDQ CX, SI
2500
+
2501
+ // Load ctx.llTable
2502
+ MOVQ ctx+16(FP), CX
2503
+ MOVQ (CX), CX
2504
+ MOVQ (CX)(SI*8), SI
2505
+
2506
+ sequenceDecs_decodeSync_bmi2_skip_update:
2507
+ // Adjust offset
2508
+ MOVQ s+0(FP), CX
2509
+ MOVQ 8(SP), R13
2510
+ CMPQ R12, $0x01
2511
+ JBE sequenceDecs_decodeSync_bmi2_adjust_offsetB_1_or_0
2512
+ MOVUPS 144(CX), X0
2513
+ MOVQ R13, 144(CX)
2514
+ MOVUPS X0, 152(CX)
2515
+ JMP sequenceDecs_decodeSync_bmi2_after_adjust
2516
+
2517
+ sequenceDecs_decodeSync_bmi2_adjust_offsetB_1_or_0:
2518
+ CMPQ 24(SP), $0x00000000
2519
+ JNE sequenceDecs_decodeSync_bmi2_adjust_offset_maybezero
2520
+ INCQ R13
2521
+ JMP sequenceDecs_decodeSync_bmi2_adjust_offset_nonzero
2522
+
2523
+ sequenceDecs_decodeSync_bmi2_adjust_offset_maybezero:
2524
+ TESTQ R13, R13
2525
+ JNZ sequenceDecs_decodeSync_bmi2_adjust_offset_nonzero
2526
+ MOVQ 144(CX), R13
2527
+ JMP sequenceDecs_decodeSync_bmi2_after_adjust
2528
+
2529
+ sequenceDecs_decodeSync_bmi2_adjust_offset_nonzero:
2530
+ MOVQ R13, R12
2531
+ XORQ R14, R14
2532
+ MOVQ $-1, R15
2533
+ CMPQ R13, $0x03
2534
+ CMOVQEQ R14, R12
2535
+ CMOVQEQ R15, R14
2536
+ ADDQ 144(CX)(R12*8), R14
2537
+ JNZ sequenceDecs_decodeSync_bmi2_adjust_temp_valid
2538
+ MOVQ $0x00000001, R14
2539
+
2540
+ sequenceDecs_decodeSync_bmi2_adjust_temp_valid:
2541
+ CMPQ R13, $0x01
2542
+ JZ sequenceDecs_decodeSync_bmi2_adjust_skip
2543
+ MOVQ 152(CX), R12
2544
+ MOVQ R12, 160(CX)
2545
+
2546
+ sequenceDecs_decodeSync_bmi2_adjust_skip:
2547
+ MOVQ 144(CX), R12
2548
+ MOVQ R12, 152(CX)
2549
+ MOVQ R14, 144(CX)
2550
+ MOVQ R14, R13
2551
+
2552
+ sequenceDecs_decodeSync_bmi2_after_adjust:
2553
+ MOVQ R13, 8(SP)
2554
+
2555
+ // Check values
2556
+ MOVQ 16(SP), CX
2557
+ MOVQ 24(SP), R12
2558
+ LEAQ (CX)(R12*1), R14
2559
+ MOVQ s+0(FP), R15
2560
+ ADDQ R14, 256(R15)
2561
+ MOVQ ctx+16(FP), R14
2562
+ SUBQ R12, 104(R14)
2563
+ JS error_not_enough_literals
2564
+ CMPQ CX, $0x00020002
2565
+ JA sequenceDecs_decodeSync_bmi2_error_match_len_too_big
2566
+ TESTQ R13, R13
2567
+ JNZ sequenceDecs_decodeSync_bmi2_match_len_ofs_ok
2568
+ TESTQ CX, CX
2569
+ JNZ sequenceDecs_decodeSync_bmi2_error_match_len_ofs_mismatch
2570
+
2571
+ sequenceDecs_decodeSync_bmi2_match_len_ofs_ok:
2572
+ MOVQ 24(SP), CX
2573
+ MOVQ 8(SP), R12
2574
+ MOVQ 16(SP), R13
2575
+
2576
+ // Check if we have enough space in s.out
2577
+ LEAQ (CX)(R13*1), R14
2578
+ ADDQ R9, R14
2579
+ CMPQ R14, 32(SP)
2580
+ JA error_not_enough_space
2581
+
2582
+ // Copy literals
2583
+ TESTQ CX, CX
2584
+ JZ check_offset
2585
+ XORQ R14, R14
2586
+
2587
+ copy_1:
2588
+ MOVUPS (R10)(R14*1), X0
2589
+ MOVUPS X0, (R9)(R14*1)
2590
+ ADDQ $0x10, R14
2591
+ CMPQ R14, CX
2592
+ JB copy_1
2593
+ ADDQ CX, R10
2594
+ ADDQ CX, R9
2595
+ ADDQ CX, R11
2596
+
2597
+ // Malformed input if seq.mo > t+len(hist) || seq.mo > s.windowSize)
2598
+ check_offset:
2599
+ MOVQ R11, CX
2600
+ ADDQ 40(SP), CX
2601
+ CMPQ R12, CX
2602
+ JG error_match_off_too_big
2603
+ CMPQ R12, 56(SP)
2604
+ JG error_match_off_too_big
2605
+
2606
+ // Copy match from history
2607
+ MOVQ R12, CX
2608
+ SUBQ R11, CX
2609
+ JLS copy_match
2610
+ MOVQ 48(SP), R14
2611
+ SUBQ CX, R14
2612
+ CMPQ R13, CX
2613
+ JG copy_all_from_history
2614
+ MOVQ R13, CX
2615
+ SUBQ $0x10, CX
2616
+ JB copy_4_small
2617
+
2618
+ copy_4_loop:
2619
+ MOVUPS (R14), X0
2620
+ MOVUPS X0, (R9)
2621
+ ADDQ $0x10, R14
2622
+ ADDQ $0x10, R9
2623
+ SUBQ $0x10, CX
2624
+ JAE copy_4_loop
2625
+ LEAQ 16(R14)(CX*1), R14
2626
+ LEAQ 16(R9)(CX*1), R9
2627
+ MOVUPS -16(R14), X0
2628
+ MOVUPS X0, -16(R9)
2629
+ JMP copy_4_end
2630
+
2631
+ copy_4_small:
2632
+ CMPQ R13, $0x03
2633
+ JE copy_4_move_3
2634
+ CMPQ R13, $0x08
2635
+ JB copy_4_move_4through7
2636
+ JMP copy_4_move_8through16
2637
+
2638
+ copy_4_move_3:
2639
+ MOVW (R14), CX
2640
+ MOVB 2(R14), R12
2641
+ MOVW CX, (R9)
2642
+ MOVB R12, 2(R9)
2643
+ ADDQ R13, R14
2644
+ ADDQ R13, R9
2645
+ JMP copy_4_end
2646
+
2647
+ copy_4_move_4through7:
2648
+ MOVL (R14), CX
2649
+ MOVL -4(R14)(R13*1), R12
2650
+ MOVL CX, (R9)
2651
+ MOVL R12, -4(R9)(R13*1)
2652
+ ADDQ R13, R14
2653
+ ADDQ R13, R9
2654
+ JMP copy_4_end
2655
+
2656
+ copy_4_move_8through16:
2657
+ MOVQ (R14), CX
2658
+ MOVQ -8(R14)(R13*1), R12
2659
+ MOVQ CX, (R9)
2660
+ MOVQ R12, -8(R9)(R13*1)
2661
+ ADDQ R13, R14
2662
+ ADDQ R13, R9
2663
+
2664
+ copy_4_end:
2665
+ ADDQ R13, R11
2666
+ JMP handle_loop
2667
+ JMP loop_finished
2668
+
2669
+ copy_all_from_history:
2670
+ MOVQ CX, R15
2671
+ SUBQ $0x10, R15
2672
+ JB copy_5_small
2673
+
2674
+ copy_5_loop:
2675
+ MOVUPS (R14), X0
2676
+ MOVUPS X0, (R9)
2677
+ ADDQ $0x10, R14
2678
+ ADDQ $0x10, R9
2679
+ SUBQ $0x10, R15
2680
+ JAE copy_5_loop
2681
+ LEAQ 16(R14)(R15*1), R14
2682
+ LEAQ 16(R9)(R15*1), R9
2683
+ MOVUPS -16(R14), X0
2684
+ MOVUPS X0, -16(R9)
2685
+ JMP copy_5_end
2686
+
2687
+ copy_5_small:
2688
+ CMPQ CX, $0x03
2689
+ JE copy_5_move_3
2690
+ JB copy_5_move_1or2
2691
+ CMPQ CX, $0x08
2692
+ JB copy_5_move_4through7
2693
+ JMP copy_5_move_8through16
2694
+
2695
+ copy_5_move_1or2:
2696
+ MOVB (R14), R15
2697
+ MOVB -1(R14)(CX*1), BP
2698
+ MOVB R15, (R9)
2699
+ MOVB BP, -1(R9)(CX*1)
2700
+ ADDQ CX, R14
2701
+ ADDQ CX, R9
2702
+ JMP copy_5_end
2703
+
2704
+ copy_5_move_3:
2705
+ MOVW (R14), R15
2706
+ MOVB 2(R14), BP
2707
+ MOVW R15, (R9)
2708
+ MOVB BP, 2(R9)
2709
+ ADDQ CX, R14
2710
+ ADDQ CX, R9
2711
+ JMP copy_5_end
2712
+
2713
+ copy_5_move_4through7:
2714
+ MOVL (R14), R15
2715
+ MOVL -4(R14)(CX*1), BP
2716
+ MOVL R15, (R9)
2717
+ MOVL BP, -4(R9)(CX*1)
2718
+ ADDQ CX, R14
2719
+ ADDQ CX, R9
2720
+ JMP copy_5_end
2721
+
2722
+ copy_5_move_8through16:
2723
+ MOVQ (R14), R15
2724
+ MOVQ -8(R14)(CX*1), BP
2725
+ MOVQ R15, (R9)
2726
+ MOVQ BP, -8(R9)(CX*1)
2727
+ ADDQ CX, R14
2728
+ ADDQ CX, R9
2729
+
2730
+ copy_5_end:
2731
+ ADDQ CX, R11
2732
+ SUBQ CX, R13
2733
+
2734
+ // Copy match from the current buffer
2735
+ copy_match:
2736
+ MOVQ R9, CX
2737
+ SUBQ R12, CX
2738
+
2739
+ // ml <= mo
2740
+ CMPQ R13, R12
2741
+ JA copy_overlapping_match
2742
+
2743
+ // Copy non-overlapping match
2744
+ ADDQ R13, R11
2745
+ MOVQ R9, R12
2746
+ ADDQ R13, R9
2747
+
2748
+ copy_2:
2749
+ MOVUPS (CX), X0
2750
+ MOVUPS X0, (R12)
2751
+ ADDQ $0x10, CX
2752
+ ADDQ $0x10, R12
2753
+ SUBQ $0x10, R13
2754
+ JHI copy_2
2755
+ JMP handle_loop
2756
+
2757
+ // Copy overlapping match
2758
+ copy_overlapping_match:
2759
+ ADDQ R13, R11
2760
+
2761
+ copy_slow_3:
2762
+ MOVB (CX), R12
2763
+ MOVB R12, (R9)
2764
+ INCQ CX
2765
+ INCQ R9
2766
+ DECQ R13
2767
+ JNZ copy_slow_3
2768
+
2769
+ handle_loop:
2770
+ MOVQ ctx+16(FP), CX
2771
+ DECQ 96(CX)
2772
+ JNS sequenceDecs_decodeSync_bmi2_main_loop
2773
+
2774
+ loop_finished:
2775
+ MOVQ br+8(FP), CX
2776
+ MOVQ AX, 32(CX)
2777
+ MOVB DL, 40(CX)
2778
+ MOVQ BX, 24(CX)
2779
+
2780
+ // Update the context
2781
+ MOVQ ctx+16(FP), AX
2782
+ MOVQ R11, 136(AX)
2783
+ MOVQ 144(AX), CX
2784
+ SUBQ CX, R10
2785
+ MOVQ R10, 168(AX)
2786
+
2787
+ // Return success
2788
+ MOVQ $0x00000000, ret+24(FP)
2789
+ RET
2790
+
2791
+ // Return with match length error
2792
+ sequenceDecs_decodeSync_bmi2_error_match_len_ofs_mismatch:
2793
+ MOVQ 16(SP), AX
2794
+ MOVQ ctx+16(FP), CX
2795
+ MOVQ AX, 216(CX)
2796
+ MOVQ $0x00000001, ret+24(FP)
2797
+ RET
2798
+
2799
+ // Return with match too long error
2800
+ sequenceDecs_decodeSync_bmi2_error_match_len_too_big:
2801
+ MOVQ ctx+16(FP), AX
2802
+ MOVQ 16(SP), CX
2803
+ MOVQ CX, 216(AX)
2804
+ MOVQ $0x00000002, ret+24(FP)
2805
+ RET
2806
+
2807
+ // Return with match offset too long error
2808
+ error_match_off_too_big:
2809
+ MOVQ ctx+16(FP), AX
2810
+ MOVQ 8(SP), CX
2811
+ MOVQ CX, 224(AX)
2812
+ MOVQ R11, 136(AX)
2813
+ MOVQ $0x00000003, ret+24(FP)
2814
+ RET
2815
+
2816
+ // Return with not enough literals error
2817
+ error_not_enough_literals:
2818
+ MOVQ ctx+16(FP), AX
2819
+ MOVQ 24(SP), CX
2820
+ MOVQ CX, 208(AX)
2821
+ MOVQ $0x00000004, ret+24(FP)
2822
+ RET
2823
+
2824
+ // Return with not enough output space error
2825
+ error_not_enough_space:
2826
+ MOVQ ctx+16(FP), AX
2827
+ MOVQ 24(SP), CX
2828
+ MOVQ CX, 208(AX)
2829
+ MOVQ 16(SP), CX
2830
+ MOVQ CX, 216(AX)
2831
+ MOVQ R11, 136(AX)
2832
+ MOVQ $0x00000005, ret+24(FP)
2833
+ RET
2834
+
2835
+ // func sequenceDecs_decodeSync_safe_amd64(s *sequenceDecs, br *bitReader, ctx *decodeSyncAsmContext) int
2836
+ // Requires: CMOV, SSE
2837
+ TEXT ·sequenceDecs_decodeSync_safe_amd64(SB), $64-32
2838
+ MOVQ br+8(FP), AX
2839
+ MOVQ 32(AX), DX
2840
+ MOVBQZX 40(AX), BX
2841
+ MOVQ 24(AX), SI
2842
+ MOVQ (AX), AX
2843
+ ADDQ SI, AX
2844
+ MOVQ AX, (SP)
2845
+ MOVQ ctx+16(FP), AX
2846
+ MOVQ 72(AX), DI
2847
+ MOVQ 80(AX), R8
2848
+ MOVQ 88(AX), R9
2849
+ XORQ CX, CX
2850
+ MOVQ CX, 8(SP)
2851
+ MOVQ CX, 16(SP)
2852
+ MOVQ CX, 24(SP)
2853
+ MOVQ 112(AX), R10
2854
+ MOVQ 128(AX), CX
2855
+ MOVQ CX, 32(SP)
2856
+ MOVQ 144(AX), R11
2857
+ MOVQ 136(AX), R12
2858
+ MOVQ 200(AX), CX
2859
+ MOVQ CX, 56(SP)
2860
+ MOVQ 176(AX), CX
2861
+ MOVQ CX, 48(SP)
2862
+ MOVQ 184(AX), AX
2863
+ MOVQ AX, 40(SP)
2864
+ MOVQ 40(SP), AX
2865
+ ADDQ AX, 48(SP)
2866
+
2867
+ // Calculate poiter to s.out[cap(s.out)] (a past-end pointer)
2868
+ ADDQ R10, 32(SP)
2869
+
2870
+ // outBase += outPosition
2871
+ ADDQ R12, R10
2872
+
2873
+ sequenceDecs_decodeSync_safe_amd64_main_loop:
2874
+ MOVQ (SP), R13
2875
+
2876
+ // Fill bitreader to have enough for the offset and match length.
2877
+ CMPQ SI, $0x08
2878
+ JL sequenceDecs_decodeSync_safe_amd64_fill_byte_by_byte
2879
+ MOVQ BX, AX
2880
+ SHRQ $0x03, AX
2881
+ SUBQ AX, R13
2882
+ MOVQ (R13), DX
2883
+ SUBQ AX, SI
2884
+ ANDQ $0x07, BX
2885
+ JMP sequenceDecs_decodeSync_safe_amd64_fill_end
2886
+
2887
+ sequenceDecs_decodeSync_safe_amd64_fill_byte_by_byte:
2888
+ CMPQ SI, $0x00
2889
+ JLE sequenceDecs_decodeSync_safe_amd64_fill_end
2890
+ CMPQ BX, $0x07
2891
+ JLE sequenceDecs_decodeSync_safe_amd64_fill_end
2892
+ SHLQ $0x08, DX
2893
+ SUBQ $0x01, R13
2894
+ SUBQ $0x01, SI
2895
+ SUBQ $0x08, BX
2896
+ MOVBQZX (R13), AX
2897
+ ORQ AX, DX
2898
+ JMP sequenceDecs_decodeSync_safe_amd64_fill_byte_by_byte
2899
+
2900
+ sequenceDecs_decodeSync_safe_amd64_fill_end:
2901
+ // Update offset
2902
+ MOVQ R9, AX
2903
+ MOVQ BX, CX
2904
+ MOVQ DX, R14
2905
+ SHLQ CL, R14
2906
+ MOVB AH, CL
2907
+ SHRQ $0x20, AX
2908
+ TESTQ CX, CX
2909
+ JZ sequenceDecs_decodeSync_safe_amd64_of_update_zero
2910
+ ADDQ CX, BX
2911
+ CMPQ BX, $0x40
2912
+ JA sequenceDecs_decodeSync_safe_amd64_of_update_zero
2913
+ CMPQ CX, $0x40
2914
+ JAE sequenceDecs_decodeSync_safe_amd64_of_update_zero
2915
+ NEGQ CX
2916
+ SHRQ CL, R14
2917
+ ADDQ R14, AX
2918
+
2919
+ sequenceDecs_decodeSync_safe_amd64_of_update_zero:
2920
+ MOVQ AX, 8(SP)
2921
+
2922
+ // Update match length
2923
+ MOVQ R8, AX
2924
+ MOVQ BX, CX
2925
+ MOVQ DX, R14
2926
+ SHLQ CL, R14
2927
+ MOVB AH, CL
2928
+ SHRQ $0x20, AX
2929
+ TESTQ CX, CX
2930
+ JZ sequenceDecs_decodeSync_safe_amd64_ml_update_zero
2931
+ ADDQ CX, BX
2932
+ CMPQ BX, $0x40
2933
+ JA sequenceDecs_decodeSync_safe_amd64_ml_update_zero
2934
+ CMPQ CX, $0x40
2935
+ JAE sequenceDecs_decodeSync_safe_amd64_ml_update_zero
2936
+ NEGQ CX
2937
+ SHRQ CL, R14
2938
+ ADDQ R14, AX
2939
+
2940
+ sequenceDecs_decodeSync_safe_amd64_ml_update_zero:
2941
+ MOVQ AX, 16(SP)
2942
+
2943
+ // Fill bitreader to have enough for the remaining
2944
+ CMPQ SI, $0x08
2945
+ JL sequenceDecs_decodeSync_safe_amd64_fill_2_byte_by_byte
2946
+ MOVQ BX, AX
2947
+ SHRQ $0x03, AX
2948
+ SUBQ AX, R13
2949
+ MOVQ (R13), DX
2950
+ SUBQ AX, SI
2951
+ ANDQ $0x07, BX
2952
+ JMP sequenceDecs_decodeSync_safe_amd64_fill_2_end
2953
+
2954
+ sequenceDecs_decodeSync_safe_amd64_fill_2_byte_by_byte:
2955
+ CMPQ SI, $0x00
2956
+ JLE sequenceDecs_decodeSync_safe_amd64_fill_2_end
2957
+ CMPQ BX, $0x07
2958
+ JLE sequenceDecs_decodeSync_safe_amd64_fill_2_end
2959
+ SHLQ $0x08, DX
2960
+ SUBQ $0x01, R13
2961
+ SUBQ $0x01, SI
2962
+ SUBQ $0x08, BX
2963
+ MOVBQZX (R13), AX
2964
+ ORQ AX, DX
2965
+ JMP sequenceDecs_decodeSync_safe_amd64_fill_2_byte_by_byte
2966
+
2967
+ sequenceDecs_decodeSync_safe_amd64_fill_2_end:
2968
+ // Update literal length
2969
+ MOVQ DI, AX
2970
+ MOVQ BX, CX
2971
+ MOVQ DX, R14
2972
+ SHLQ CL, R14
2973
+ MOVB AH, CL
2974
+ SHRQ $0x20, AX
2975
+ TESTQ CX, CX
2976
+ JZ sequenceDecs_decodeSync_safe_amd64_ll_update_zero
2977
+ ADDQ CX, BX
2978
+ CMPQ BX, $0x40
2979
+ JA sequenceDecs_decodeSync_safe_amd64_ll_update_zero
2980
+ CMPQ CX, $0x40
2981
+ JAE sequenceDecs_decodeSync_safe_amd64_ll_update_zero
2982
+ NEGQ CX
2983
+ SHRQ CL, R14
2984
+ ADDQ R14, AX
2985
+
2986
+ sequenceDecs_decodeSync_safe_amd64_ll_update_zero:
2987
+ MOVQ AX, 24(SP)
2988
+
2989
+ // Fill bitreader for state updates
2990
+ MOVQ R13, (SP)
2991
+ MOVQ R9, AX
2992
+ SHRQ $0x08, AX
2993
+ MOVBQZX AL, AX
2994
+ MOVQ ctx+16(FP), CX
2995
+ CMPQ 96(CX), $0x00
2996
+ JZ sequenceDecs_decodeSync_safe_amd64_skip_update
2997
+
2998
+ // Update Literal Length State
2999
+ MOVBQZX DI, R13
3000
+ SHRQ $0x10, DI
3001
+ MOVWQZX DI, DI
3002
+ LEAQ (BX)(R13*1), CX
3003
+ MOVQ DX, R14
3004
+ MOVQ CX, BX
3005
+ ROLQ CL, R14
3006
+ MOVL $0x00000001, R15
3007
+ MOVB R13, CL
3008
+ SHLL CL, R15
3009
+ DECL R15
3010
+ ANDQ R15, R14
3011
+ ADDQ R14, DI
3012
+
3013
+ // Load ctx.llTable
3014
+ MOVQ ctx+16(FP), CX
3015
+ MOVQ (CX), CX
3016
+ MOVQ (CX)(DI*8), DI
3017
+
3018
+ // Update Match Length State
3019
+ MOVBQZX R8, R13
3020
+ SHRQ $0x10, R8
3021
+ MOVWQZX R8, R8
3022
+ LEAQ (BX)(R13*1), CX
3023
+ MOVQ DX, R14
3024
+ MOVQ CX, BX
3025
+ ROLQ CL, R14
3026
+ MOVL $0x00000001, R15
3027
+ MOVB R13, CL
3028
+ SHLL CL, R15
3029
+ DECL R15
3030
+ ANDQ R15, R14
3031
+ ADDQ R14, R8
3032
+
3033
+ // Load ctx.mlTable
3034
+ MOVQ ctx+16(FP), CX
3035
+ MOVQ 24(CX), CX
3036
+ MOVQ (CX)(R8*8), R8
3037
+
3038
+ // Update Offset State
3039
+ MOVBQZX R9, R13
3040
+ SHRQ $0x10, R9
3041
+ MOVWQZX R9, R9
3042
+ LEAQ (BX)(R13*1), CX
3043
+ MOVQ DX, R14
3044
+ MOVQ CX, BX
3045
+ ROLQ CL, R14
3046
+ MOVL $0x00000001, R15
3047
+ MOVB R13, CL
3048
+ SHLL CL, R15
3049
+ DECL R15
3050
+ ANDQ R15, R14
3051
+ ADDQ R14, R9
3052
+
3053
+ // Load ctx.ofTable
3054
+ MOVQ ctx+16(FP), CX
3055
+ MOVQ 48(CX), CX
3056
+ MOVQ (CX)(R9*8), R9
3057
+
3058
+ sequenceDecs_decodeSync_safe_amd64_skip_update:
3059
+ // Adjust offset
3060
+ MOVQ s+0(FP), CX
3061
+ MOVQ 8(SP), R13
3062
+ CMPQ AX, $0x01
3063
+ JBE sequenceDecs_decodeSync_safe_amd64_adjust_offsetB_1_or_0
3064
+ MOVUPS 144(CX), X0
3065
+ MOVQ R13, 144(CX)
3066
+ MOVUPS X0, 152(CX)
3067
+ JMP sequenceDecs_decodeSync_safe_amd64_after_adjust
3068
+
3069
+ sequenceDecs_decodeSync_safe_amd64_adjust_offsetB_1_or_0:
3070
+ CMPQ 24(SP), $0x00000000
3071
+ JNE sequenceDecs_decodeSync_safe_amd64_adjust_offset_maybezero
3072
+ INCQ R13
3073
+ JMP sequenceDecs_decodeSync_safe_amd64_adjust_offset_nonzero
3074
+
3075
+ sequenceDecs_decodeSync_safe_amd64_adjust_offset_maybezero:
3076
+ TESTQ R13, R13
3077
+ JNZ sequenceDecs_decodeSync_safe_amd64_adjust_offset_nonzero
3078
+ MOVQ 144(CX), R13
3079
+ JMP sequenceDecs_decodeSync_safe_amd64_after_adjust
3080
+
3081
+ sequenceDecs_decodeSync_safe_amd64_adjust_offset_nonzero:
3082
+ MOVQ R13, AX
3083
+ XORQ R14, R14
3084
+ MOVQ $-1, R15
3085
+ CMPQ R13, $0x03
3086
+ CMOVQEQ R14, AX
3087
+ CMOVQEQ R15, R14
3088
+ ADDQ 144(CX)(AX*8), R14
3089
+ JNZ sequenceDecs_decodeSync_safe_amd64_adjust_temp_valid
3090
+ MOVQ $0x00000001, R14
3091
+
3092
+ sequenceDecs_decodeSync_safe_amd64_adjust_temp_valid:
3093
+ CMPQ R13, $0x01
3094
+ JZ sequenceDecs_decodeSync_safe_amd64_adjust_skip
3095
+ MOVQ 152(CX), AX
3096
+ MOVQ AX, 160(CX)
3097
+
3098
+ sequenceDecs_decodeSync_safe_amd64_adjust_skip:
3099
+ MOVQ 144(CX), AX
3100
+ MOVQ AX, 152(CX)
3101
+ MOVQ R14, 144(CX)
3102
+ MOVQ R14, R13
3103
+
3104
+ sequenceDecs_decodeSync_safe_amd64_after_adjust:
3105
+ MOVQ R13, 8(SP)
3106
+
3107
+ // Check values
3108
+ MOVQ 16(SP), AX
3109
+ MOVQ 24(SP), CX
3110
+ LEAQ (AX)(CX*1), R14
3111
+ MOVQ s+0(FP), R15
3112
+ ADDQ R14, 256(R15)
3113
+ MOVQ ctx+16(FP), R14
3114
+ SUBQ CX, 104(R14)
3115
+ JS error_not_enough_literals
3116
+ CMPQ AX, $0x00020002
3117
+ JA sequenceDecs_decodeSync_safe_amd64_error_match_len_too_big
3118
+ TESTQ R13, R13
3119
+ JNZ sequenceDecs_decodeSync_safe_amd64_match_len_ofs_ok
3120
+ TESTQ AX, AX
3121
+ JNZ sequenceDecs_decodeSync_safe_amd64_error_match_len_ofs_mismatch
3122
+
3123
+ sequenceDecs_decodeSync_safe_amd64_match_len_ofs_ok:
3124
+ MOVQ 24(SP), AX
3125
+ MOVQ 8(SP), CX
3126
+ MOVQ 16(SP), R13
3127
+
3128
+ // Check if we have enough space in s.out
3129
+ LEAQ (AX)(R13*1), R14
3130
+ ADDQ R10, R14
3131
+ CMPQ R14, 32(SP)
3132
+ JA error_not_enough_space
3133
+
3134
+ // Copy literals
3135
+ TESTQ AX, AX
3136
+ JZ check_offset
3137
+ MOVQ AX, R14
3138
+ SUBQ $0x10, R14
3139
+ JB copy_1_small
3140
+
3141
+ copy_1_loop:
3142
+ MOVUPS (R11), X0
3143
+ MOVUPS X0, (R10)
3144
+ ADDQ $0x10, R11
3145
+ ADDQ $0x10, R10
3146
+ SUBQ $0x10, R14
3147
+ JAE copy_1_loop
3148
+ LEAQ 16(R11)(R14*1), R11
3149
+ LEAQ 16(R10)(R14*1), R10
3150
+ MOVUPS -16(R11), X0
3151
+ MOVUPS X0, -16(R10)
3152
+ JMP copy_1_end
3153
+
3154
+ copy_1_small:
3155
+ CMPQ AX, $0x03
3156
+ JE copy_1_move_3
3157
+ JB copy_1_move_1or2
3158
+ CMPQ AX, $0x08
3159
+ JB copy_1_move_4through7
3160
+ JMP copy_1_move_8through16
3161
+
3162
+ copy_1_move_1or2:
3163
+ MOVB (R11), R14
3164
+ MOVB -1(R11)(AX*1), R15
3165
+ MOVB R14, (R10)
3166
+ MOVB R15, -1(R10)(AX*1)
3167
+ ADDQ AX, R11
3168
+ ADDQ AX, R10
3169
+ JMP copy_1_end
3170
+
3171
+ copy_1_move_3:
3172
+ MOVW (R11), R14
3173
+ MOVB 2(R11), R15
3174
+ MOVW R14, (R10)
3175
+ MOVB R15, 2(R10)
3176
+ ADDQ AX, R11
3177
+ ADDQ AX, R10
3178
+ JMP copy_1_end
3179
+
3180
+ copy_1_move_4through7:
3181
+ MOVL (R11), R14
3182
+ MOVL -4(R11)(AX*1), R15
3183
+ MOVL R14, (R10)
3184
+ MOVL R15, -4(R10)(AX*1)
3185
+ ADDQ AX, R11
3186
+ ADDQ AX, R10
3187
+ JMP copy_1_end
3188
+
3189
+ copy_1_move_8through16:
3190
+ MOVQ (R11), R14
3191
+ MOVQ -8(R11)(AX*1), R15
3192
+ MOVQ R14, (R10)
3193
+ MOVQ R15, -8(R10)(AX*1)
3194
+ ADDQ AX, R11
3195
+ ADDQ AX, R10
3196
+
3197
+ copy_1_end:
3198
+ ADDQ AX, R12
3199
+
3200
+ // Malformed input if seq.mo > t+len(hist) || seq.mo > s.windowSize)
3201
+ check_offset:
3202
+ MOVQ R12, AX
3203
+ ADDQ 40(SP), AX
3204
+ CMPQ CX, AX
3205
+ JG error_match_off_too_big
3206
+ CMPQ CX, 56(SP)
3207
+ JG error_match_off_too_big
3208
+
3209
+ // Copy match from history
3210
+ MOVQ CX, AX
3211
+ SUBQ R12, AX
3212
+ JLS copy_match
3213
+ MOVQ 48(SP), R14
3214
+ SUBQ AX, R14
3215
+ CMPQ R13, AX
3216
+ JG copy_all_from_history
3217
+ MOVQ R13, AX
3218
+ SUBQ $0x10, AX
3219
+ JB copy_4_small
3220
+
3221
+ copy_4_loop:
3222
+ MOVUPS (R14), X0
3223
+ MOVUPS X0, (R10)
3224
+ ADDQ $0x10, R14
3225
+ ADDQ $0x10, R10
3226
+ SUBQ $0x10, AX
3227
+ JAE copy_4_loop
3228
+ LEAQ 16(R14)(AX*1), R14
3229
+ LEAQ 16(R10)(AX*1), R10
3230
+ MOVUPS -16(R14), X0
3231
+ MOVUPS X0, -16(R10)
3232
+ JMP copy_4_end
3233
+
3234
+ copy_4_small:
3235
+ CMPQ R13, $0x03
3236
+ JE copy_4_move_3
3237
+ CMPQ R13, $0x08
3238
+ JB copy_4_move_4through7
3239
+ JMP copy_4_move_8through16
3240
+
3241
+ copy_4_move_3:
3242
+ MOVW (R14), AX
3243
+ MOVB 2(R14), CL
3244
+ MOVW AX, (R10)
3245
+ MOVB CL, 2(R10)
3246
+ ADDQ R13, R14
3247
+ ADDQ R13, R10
3248
+ JMP copy_4_end
3249
+
3250
+ copy_4_move_4through7:
3251
+ MOVL (R14), AX
3252
+ MOVL -4(R14)(R13*1), CX
3253
+ MOVL AX, (R10)
3254
+ MOVL CX, -4(R10)(R13*1)
3255
+ ADDQ R13, R14
3256
+ ADDQ R13, R10
3257
+ JMP copy_4_end
3258
+
3259
+ copy_4_move_8through16:
3260
+ MOVQ (R14), AX
3261
+ MOVQ -8(R14)(R13*1), CX
3262
+ MOVQ AX, (R10)
3263
+ MOVQ CX, -8(R10)(R13*1)
3264
+ ADDQ R13, R14
3265
+ ADDQ R13, R10
3266
+
3267
+ copy_4_end:
3268
+ ADDQ R13, R12
3269
+ JMP handle_loop
3270
+ JMP loop_finished
3271
+
3272
+ copy_all_from_history:
3273
+ MOVQ AX, R15
3274
+ SUBQ $0x10, R15
3275
+ JB copy_5_small
3276
+
3277
+ copy_5_loop:
3278
+ MOVUPS (R14), X0
3279
+ MOVUPS X0, (R10)
3280
+ ADDQ $0x10, R14
3281
+ ADDQ $0x10, R10
3282
+ SUBQ $0x10, R15
3283
+ JAE copy_5_loop
3284
+ LEAQ 16(R14)(R15*1), R14
3285
+ LEAQ 16(R10)(R15*1), R10
3286
+ MOVUPS -16(R14), X0
3287
+ MOVUPS X0, -16(R10)
3288
+ JMP copy_5_end
3289
+
3290
+ copy_5_small:
3291
+ CMPQ AX, $0x03
3292
+ JE copy_5_move_3
3293
+ JB copy_5_move_1or2
3294
+ CMPQ AX, $0x08
3295
+ JB copy_5_move_4through7
3296
+ JMP copy_5_move_8through16
3297
+
3298
+ copy_5_move_1or2:
3299
+ MOVB (R14), R15
3300
+ MOVB -1(R14)(AX*1), BP
3301
+ MOVB R15, (R10)
3302
+ MOVB BP, -1(R10)(AX*1)
3303
+ ADDQ AX, R14
3304
+ ADDQ AX, R10
3305
+ JMP copy_5_end
3306
+
3307
+ copy_5_move_3:
3308
+ MOVW (R14), R15
3309
+ MOVB 2(R14), BP
3310
+ MOVW R15, (R10)
3311
+ MOVB BP, 2(R10)
3312
+ ADDQ AX, R14
3313
+ ADDQ AX, R10
3314
+ JMP copy_5_end
3315
+
3316
+ copy_5_move_4through7:
3317
+ MOVL (R14), R15
3318
+ MOVL -4(R14)(AX*1), BP
3319
+ MOVL R15, (R10)
3320
+ MOVL BP, -4(R10)(AX*1)
3321
+ ADDQ AX, R14
3322
+ ADDQ AX, R10
3323
+ JMP copy_5_end
3324
+
3325
+ copy_5_move_8through16:
3326
+ MOVQ (R14), R15
3327
+ MOVQ -8(R14)(AX*1), BP
3328
+ MOVQ R15, (R10)
3329
+ MOVQ BP, -8(R10)(AX*1)
3330
+ ADDQ AX, R14
3331
+ ADDQ AX, R10
3332
+
3333
+ copy_5_end:
3334
+ ADDQ AX, R12
3335
+ SUBQ AX, R13
3336
+
3337
+ // Copy match from the current buffer
3338
+ copy_match:
3339
+ MOVQ R10, AX
3340
+ SUBQ CX, AX
3341
+
3342
+ // ml <= mo
3343
+ CMPQ R13, CX
3344
+ JA copy_overlapping_match
3345
+
3346
+ // Copy non-overlapping match
3347
+ ADDQ R13, R12
3348
+ MOVQ R13, CX
3349
+ SUBQ $0x10, CX
3350
+ JB copy_2_small
3351
+
3352
+ copy_2_loop:
3353
+ MOVUPS (AX), X0
3354
+ MOVUPS X0, (R10)
3355
+ ADDQ $0x10, AX
3356
+ ADDQ $0x10, R10
3357
+ SUBQ $0x10, CX
3358
+ JAE copy_2_loop
3359
+ LEAQ 16(AX)(CX*1), AX
3360
+ LEAQ 16(R10)(CX*1), R10
3361
+ MOVUPS -16(AX), X0
3362
+ MOVUPS X0, -16(R10)
3363
+ JMP copy_2_end
3364
+
3365
+ copy_2_small:
3366
+ CMPQ R13, $0x03
3367
+ JE copy_2_move_3
3368
+ JB copy_2_move_1or2
3369
+ CMPQ R13, $0x08
3370
+ JB copy_2_move_4through7
3371
+ JMP copy_2_move_8through16
3372
+
3373
+ copy_2_move_1or2:
3374
+ MOVB (AX), CL
3375
+ MOVB -1(AX)(R13*1), R14
3376
+ MOVB CL, (R10)
3377
+ MOVB R14, -1(R10)(R13*1)
3378
+ ADDQ R13, AX
3379
+ ADDQ R13, R10
3380
+ JMP copy_2_end
3381
+
3382
+ copy_2_move_3:
3383
+ MOVW (AX), CX
3384
+ MOVB 2(AX), R14
3385
+ MOVW CX, (R10)
3386
+ MOVB R14, 2(R10)
3387
+ ADDQ R13, AX
3388
+ ADDQ R13, R10
3389
+ JMP copy_2_end
3390
+
3391
+ copy_2_move_4through7:
3392
+ MOVL (AX), CX
3393
+ MOVL -4(AX)(R13*1), R14
3394
+ MOVL CX, (R10)
3395
+ MOVL R14, -4(R10)(R13*1)
3396
+ ADDQ R13, AX
3397
+ ADDQ R13, R10
3398
+ JMP copy_2_end
3399
+
3400
+ copy_2_move_8through16:
3401
+ MOVQ (AX), CX
3402
+ MOVQ -8(AX)(R13*1), R14
3403
+ MOVQ CX, (R10)
3404
+ MOVQ R14, -8(R10)(R13*1)
3405
+ ADDQ R13, AX
3406
+ ADDQ R13, R10
3407
+
3408
+ copy_2_end:
3409
+ JMP handle_loop
3410
+
3411
+ // Copy overlapping match
3412
+ copy_overlapping_match:
3413
+ ADDQ R13, R12
3414
+
3415
+ copy_slow_3:
3416
+ MOVB (AX), CL
3417
+ MOVB CL, (R10)
3418
+ INCQ AX
3419
+ INCQ R10
3420
+ DECQ R13
3421
+ JNZ copy_slow_3
3422
+
3423
+ handle_loop:
3424
+ MOVQ ctx+16(FP), AX
3425
+ DECQ 96(AX)
3426
+ JNS sequenceDecs_decodeSync_safe_amd64_main_loop
3427
+
3428
+ loop_finished:
3429
+ MOVQ br+8(FP), AX
3430
+ MOVQ DX, 32(AX)
3431
+ MOVB BL, 40(AX)
3432
+ MOVQ SI, 24(AX)
3433
+
3434
+ // Update the context
3435
+ MOVQ ctx+16(FP), AX
3436
+ MOVQ R12, 136(AX)
3437
+ MOVQ 144(AX), CX
3438
+ SUBQ CX, R11
3439
+ MOVQ R11, 168(AX)
3440
+
3441
+ // Return success
3442
+ MOVQ $0x00000000, ret+24(FP)
3443
+ RET
3444
+
3445
+ // Return with match length error
3446
+ sequenceDecs_decodeSync_safe_amd64_error_match_len_ofs_mismatch:
3447
+ MOVQ 16(SP), AX
3448
+ MOVQ ctx+16(FP), CX
3449
+ MOVQ AX, 216(CX)
3450
+ MOVQ $0x00000001, ret+24(FP)
3451
+ RET
3452
+
3453
+ // Return with match too long error
3454
+ sequenceDecs_decodeSync_safe_amd64_error_match_len_too_big:
3455
+ MOVQ ctx+16(FP), AX
3456
+ MOVQ 16(SP), CX
3457
+ MOVQ CX, 216(AX)
3458
+ MOVQ $0x00000002, ret+24(FP)
3459
+ RET
3460
+
3461
+ // Return with match offset too long error
3462
+ error_match_off_too_big:
3463
+ MOVQ ctx+16(FP), AX
3464
+ MOVQ 8(SP), CX
3465
+ MOVQ CX, 224(AX)
3466
+ MOVQ R12, 136(AX)
3467
+ MOVQ $0x00000003, ret+24(FP)
3468
+ RET
3469
+
3470
+ // Return with not enough literals error
3471
+ error_not_enough_literals:
3472
+ MOVQ ctx+16(FP), AX
3473
+ MOVQ 24(SP), CX
3474
+ MOVQ CX, 208(AX)
3475
+ MOVQ $0x00000004, ret+24(FP)
3476
+ RET
3477
+
3478
+ // Return with not enough output space error
3479
+ error_not_enough_space:
3480
+ MOVQ ctx+16(FP), AX
3481
+ MOVQ 24(SP), CX
3482
+ MOVQ CX, 208(AX)
3483
+ MOVQ 16(SP), CX
3484
+ MOVQ CX, 216(AX)
3485
+ MOVQ R12, 136(AX)
3486
+ MOVQ $0x00000005, ret+24(FP)
3487
+ RET
3488
+
3489
+ // func sequenceDecs_decodeSync_safe_bmi2(s *sequenceDecs, br *bitReader, ctx *decodeSyncAsmContext) int
3490
+ // Requires: BMI, BMI2, CMOV, SSE
3491
+ TEXT ·sequenceDecs_decodeSync_safe_bmi2(SB), $64-32
3492
+ MOVQ br+8(FP), CX
3493
+ MOVQ 32(CX), AX
3494
+ MOVBQZX 40(CX), DX
3495
+ MOVQ 24(CX), BX
3496
+ MOVQ (CX), CX
3497
+ ADDQ BX, CX
3498
+ MOVQ CX, (SP)
3499
+ MOVQ ctx+16(FP), CX
3500
+ MOVQ 72(CX), SI
3501
+ MOVQ 80(CX), DI
3502
+ MOVQ 88(CX), R8
3503
+ XORQ R9, R9
3504
+ MOVQ R9, 8(SP)
3505
+ MOVQ R9, 16(SP)
3506
+ MOVQ R9, 24(SP)
3507
+ MOVQ 112(CX), R9
3508
+ MOVQ 128(CX), R10
3509
+ MOVQ R10, 32(SP)
3510
+ MOVQ 144(CX), R10
3511
+ MOVQ 136(CX), R11
3512
+ MOVQ 200(CX), R12
3513
+ MOVQ R12, 56(SP)
3514
+ MOVQ 176(CX), R12
3515
+ MOVQ R12, 48(SP)
3516
+ MOVQ 184(CX), CX
3517
+ MOVQ CX, 40(SP)
3518
+ MOVQ 40(SP), CX
3519
+ ADDQ CX, 48(SP)
3520
+
3521
+ // Calculate poiter to s.out[cap(s.out)] (a past-end pointer)
3522
+ ADDQ R9, 32(SP)
3523
+
3524
+ // outBase += outPosition
3525
+ ADDQ R11, R9
3526
+
3527
+ sequenceDecs_decodeSync_safe_bmi2_main_loop:
3528
+ MOVQ (SP), R12
3529
+
3530
+ // Fill bitreader to have enough for the offset and match length.
3531
+ CMPQ BX, $0x08
3532
+ JL sequenceDecs_decodeSync_safe_bmi2_fill_byte_by_byte
3533
+ MOVQ DX, CX
3534
+ SHRQ $0x03, CX
3535
+ SUBQ CX, R12
3536
+ MOVQ (R12), AX
3537
+ SUBQ CX, BX
3538
+ ANDQ $0x07, DX
3539
+ JMP sequenceDecs_decodeSync_safe_bmi2_fill_end
3540
+
3541
+ sequenceDecs_decodeSync_safe_bmi2_fill_byte_by_byte:
3542
+ CMPQ BX, $0x00
3543
+ JLE sequenceDecs_decodeSync_safe_bmi2_fill_end
3544
+ CMPQ DX, $0x07
3545
+ JLE sequenceDecs_decodeSync_safe_bmi2_fill_end
3546
+ SHLQ $0x08, AX
3547
+ SUBQ $0x01, R12
3548
+ SUBQ $0x01, BX
3549
+ SUBQ $0x08, DX
3550
+ MOVBQZX (R12), CX
3551
+ ORQ CX, AX
3552
+ JMP sequenceDecs_decodeSync_safe_bmi2_fill_byte_by_byte
3553
+
3554
+ sequenceDecs_decodeSync_safe_bmi2_fill_end:
3555
+ // Update offset
3556
+ MOVQ $0x00000808, CX
3557
+ BEXTRQ CX, R8, R13
3558
+ MOVQ AX, R14
3559
+ LEAQ (DX)(R13*1), CX
3560
+ ROLQ CL, R14
3561
+ BZHIQ R13, R14, R14
3562
+ MOVQ CX, DX
3563
+ MOVQ R8, CX
3564
+ SHRQ $0x20, CX
3565
+ ADDQ R14, CX
3566
+ MOVQ CX, 8(SP)
3567
+
3568
+ // Update match length
3569
+ MOVQ $0x00000808, CX
3570
+ BEXTRQ CX, DI, R13
3571
+ MOVQ AX, R14
3572
+ LEAQ (DX)(R13*1), CX
3573
+ ROLQ CL, R14
3574
+ BZHIQ R13, R14, R14
3575
+ MOVQ CX, DX
3576
+ MOVQ DI, CX
3577
+ SHRQ $0x20, CX
3578
+ ADDQ R14, CX
3579
+ MOVQ CX, 16(SP)
3580
+
3581
+ // Fill bitreader to have enough for the remaining
3582
+ CMPQ BX, $0x08
3583
+ JL sequenceDecs_decodeSync_safe_bmi2_fill_2_byte_by_byte
3584
+ MOVQ DX, CX
3585
+ SHRQ $0x03, CX
3586
+ SUBQ CX, R12
3587
+ MOVQ (R12), AX
3588
+ SUBQ CX, BX
3589
+ ANDQ $0x07, DX
3590
+ JMP sequenceDecs_decodeSync_safe_bmi2_fill_2_end
3591
+
3592
+ sequenceDecs_decodeSync_safe_bmi2_fill_2_byte_by_byte:
3593
+ CMPQ BX, $0x00
3594
+ JLE sequenceDecs_decodeSync_safe_bmi2_fill_2_end
3595
+ CMPQ DX, $0x07
3596
+ JLE sequenceDecs_decodeSync_safe_bmi2_fill_2_end
3597
+ SHLQ $0x08, AX
3598
+ SUBQ $0x01, R12
3599
+ SUBQ $0x01, BX
3600
+ SUBQ $0x08, DX
3601
+ MOVBQZX (R12), CX
3602
+ ORQ CX, AX
3603
+ JMP sequenceDecs_decodeSync_safe_bmi2_fill_2_byte_by_byte
3604
+
3605
+ sequenceDecs_decodeSync_safe_bmi2_fill_2_end:
3606
+ // Update literal length
3607
+ MOVQ $0x00000808, CX
3608
+ BEXTRQ CX, SI, R13
3609
+ MOVQ AX, R14
3610
+ LEAQ (DX)(R13*1), CX
3611
+ ROLQ CL, R14
3612
+ BZHIQ R13, R14, R14
3613
+ MOVQ CX, DX
3614
+ MOVQ SI, CX
3615
+ SHRQ $0x20, CX
3616
+ ADDQ R14, CX
3617
+ MOVQ CX, 24(SP)
3618
+
3619
+ // Fill bitreader for state updates
3620
+ MOVQ R12, (SP)
3621
+ MOVQ $0x00000808, CX
3622
+ BEXTRQ CX, R8, R12
3623
+ MOVQ ctx+16(FP), CX
3624
+ CMPQ 96(CX), $0x00
3625
+ JZ sequenceDecs_decodeSync_safe_bmi2_skip_update
3626
+ LEAQ (SI)(DI*1), R13
3627
+ ADDQ R8, R13
3628
+ MOVBQZX R13, R13
3629
+ LEAQ (DX)(R13*1), CX
3630
+ MOVQ AX, R14
3631
+ MOVQ CX, DX
3632
+ ROLQ CL, R14
3633
+ BZHIQ R13, R14, R14
3634
+
3635
+ // Update Offset State
3636
+ BZHIQ R8, R14, CX
3637
+ SHRXQ R8, R14, R14
3638
+ MOVQ $0x00001010, R13
3639
+ BEXTRQ R13, R8, R8
3640
+ ADDQ CX, R8
3641
+
3642
+ // Load ctx.ofTable
3643
+ MOVQ ctx+16(FP), CX
3644
+ MOVQ 48(CX), CX
3645
+ MOVQ (CX)(R8*8), R8
3646
+
3647
+ // Update Match Length State
3648
+ BZHIQ DI, R14, CX
3649
+ SHRXQ DI, R14, R14
3650
+ MOVQ $0x00001010, R13
3651
+ BEXTRQ R13, DI, DI
3652
+ ADDQ CX, DI
3653
+
3654
+ // Load ctx.mlTable
3655
+ MOVQ ctx+16(FP), CX
3656
+ MOVQ 24(CX), CX
3657
+ MOVQ (CX)(DI*8), DI
3658
+
3659
+ // Update Literal Length State
3660
+ BZHIQ SI, R14, CX
3661
+ MOVQ $0x00001010, R13
3662
+ BEXTRQ R13, SI, SI
3663
+ ADDQ CX, SI
3664
+
3665
+ // Load ctx.llTable
3666
+ MOVQ ctx+16(FP), CX
3667
+ MOVQ (CX), CX
3668
+ MOVQ (CX)(SI*8), SI
3669
+
3670
+ sequenceDecs_decodeSync_safe_bmi2_skip_update:
3671
+ // Adjust offset
3672
+ MOVQ s+0(FP), CX
3673
+ MOVQ 8(SP), R13
3674
+ CMPQ R12, $0x01
3675
+ JBE sequenceDecs_decodeSync_safe_bmi2_adjust_offsetB_1_or_0
3676
+ MOVUPS 144(CX), X0
3677
+ MOVQ R13, 144(CX)
3678
+ MOVUPS X0, 152(CX)
3679
+ JMP sequenceDecs_decodeSync_safe_bmi2_after_adjust
3680
+
3681
+ sequenceDecs_decodeSync_safe_bmi2_adjust_offsetB_1_or_0:
3682
+ CMPQ 24(SP), $0x00000000
3683
+ JNE sequenceDecs_decodeSync_safe_bmi2_adjust_offset_maybezero
3684
+ INCQ R13
3685
+ JMP sequenceDecs_decodeSync_safe_bmi2_adjust_offset_nonzero
3686
+
3687
+ sequenceDecs_decodeSync_safe_bmi2_adjust_offset_maybezero:
3688
+ TESTQ R13, R13
3689
+ JNZ sequenceDecs_decodeSync_safe_bmi2_adjust_offset_nonzero
3690
+ MOVQ 144(CX), R13
3691
+ JMP sequenceDecs_decodeSync_safe_bmi2_after_adjust
3692
+
3693
+ sequenceDecs_decodeSync_safe_bmi2_adjust_offset_nonzero:
3694
+ MOVQ R13, R12
3695
+ XORQ R14, R14
3696
+ MOVQ $-1, R15
3697
+ CMPQ R13, $0x03
3698
+ CMOVQEQ R14, R12
3699
+ CMOVQEQ R15, R14
3700
+ ADDQ 144(CX)(R12*8), R14
3701
+ JNZ sequenceDecs_decodeSync_safe_bmi2_adjust_temp_valid
3702
+ MOVQ $0x00000001, R14
3703
+
3704
+ sequenceDecs_decodeSync_safe_bmi2_adjust_temp_valid:
3705
+ CMPQ R13, $0x01
3706
+ JZ sequenceDecs_decodeSync_safe_bmi2_adjust_skip
3707
+ MOVQ 152(CX), R12
3708
+ MOVQ R12, 160(CX)
3709
+
3710
+ sequenceDecs_decodeSync_safe_bmi2_adjust_skip:
3711
+ MOVQ 144(CX), R12
3712
+ MOVQ R12, 152(CX)
3713
+ MOVQ R14, 144(CX)
3714
+ MOVQ R14, R13
3715
+
3716
+ sequenceDecs_decodeSync_safe_bmi2_after_adjust:
3717
+ MOVQ R13, 8(SP)
3718
+
3719
+ // Check values
3720
+ MOVQ 16(SP), CX
3721
+ MOVQ 24(SP), R12
3722
+ LEAQ (CX)(R12*1), R14
3723
+ MOVQ s+0(FP), R15
3724
+ ADDQ R14, 256(R15)
3725
+ MOVQ ctx+16(FP), R14
3726
+ SUBQ R12, 104(R14)
3727
+ JS error_not_enough_literals
3728
+ CMPQ CX, $0x00020002
3729
+ JA sequenceDecs_decodeSync_safe_bmi2_error_match_len_too_big
3730
+ TESTQ R13, R13
3731
+ JNZ sequenceDecs_decodeSync_safe_bmi2_match_len_ofs_ok
3732
+ TESTQ CX, CX
3733
+ JNZ sequenceDecs_decodeSync_safe_bmi2_error_match_len_ofs_mismatch
3734
+
3735
+ sequenceDecs_decodeSync_safe_bmi2_match_len_ofs_ok:
3736
+ MOVQ 24(SP), CX
3737
+ MOVQ 8(SP), R12
3738
+ MOVQ 16(SP), R13
3739
+
3740
+ // Check if we have enough space in s.out
3741
+ LEAQ (CX)(R13*1), R14
3742
+ ADDQ R9, R14
3743
+ CMPQ R14, 32(SP)
3744
+ JA error_not_enough_space
3745
+
3746
+ // Copy literals
3747
+ TESTQ CX, CX
3748
+ JZ check_offset
3749
+ MOVQ CX, R14
3750
+ SUBQ $0x10, R14
3751
+ JB copy_1_small
3752
+
3753
+ copy_1_loop:
3754
+ MOVUPS (R10), X0
3755
+ MOVUPS X0, (R9)
3756
+ ADDQ $0x10, R10
3757
+ ADDQ $0x10, R9
3758
+ SUBQ $0x10, R14
3759
+ JAE copy_1_loop
3760
+ LEAQ 16(R10)(R14*1), R10
3761
+ LEAQ 16(R9)(R14*1), R9
3762
+ MOVUPS -16(R10), X0
3763
+ MOVUPS X0, -16(R9)
3764
+ JMP copy_1_end
3765
+
3766
+ copy_1_small:
3767
+ CMPQ CX, $0x03
3768
+ JE copy_1_move_3
3769
+ JB copy_1_move_1or2
3770
+ CMPQ CX, $0x08
3771
+ JB copy_1_move_4through7
3772
+ JMP copy_1_move_8through16
3773
+
3774
+ copy_1_move_1or2:
3775
+ MOVB (R10), R14
3776
+ MOVB -1(R10)(CX*1), R15
3777
+ MOVB R14, (R9)
3778
+ MOVB R15, -1(R9)(CX*1)
3779
+ ADDQ CX, R10
3780
+ ADDQ CX, R9
3781
+ JMP copy_1_end
3782
+
3783
+ copy_1_move_3:
3784
+ MOVW (R10), R14
3785
+ MOVB 2(R10), R15
3786
+ MOVW R14, (R9)
3787
+ MOVB R15, 2(R9)
3788
+ ADDQ CX, R10
3789
+ ADDQ CX, R9
3790
+ JMP copy_1_end
3791
+
3792
+ copy_1_move_4through7:
3793
+ MOVL (R10), R14
3794
+ MOVL -4(R10)(CX*1), R15
3795
+ MOVL R14, (R9)
3796
+ MOVL R15, -4(R9)(CX*1)
3797
+ ADDQ CX, R10
3798
+ ADDQ CX, R9
3799
+ JMP copy_1_end
3800
+
3801
+ copy_1_move_8through16:
3802
+ MOVQ (R10), R14
3803
+ MOVQ -8(R10)(CX*1), R15
3804
+ MOVQ R14, (R9)
3805
+ MOVQ R15, -8(R9)(CX*1)
3806
+ ADDQ CX, R10
3807
+ ADDQ CX, R9
3808
+
3809
+ copy_1_end:
3810
+ ADDQ CX, R11
3811
+
3812
+ // Malformed input if seq.mo > t+len(hist) || seq.mo > s.windowSize)
3813
+ check_offset:
3814
+ MOVQ R11, CX
3815
+ ADDQ 40(SP), CX
3816
+ CMPQ R12, CX
3817
+ JG error_match_off_too_big
3818
+ CMPQ R12, 56(SP)
3819
+ JG error_match_off_too_big
3820
+
3821
+ // Copy match from history
3822
+ MOVQ R12, CX
3823
+ SUBQ R11, CX
3824
+ JLS copy_match
3825
+ MOVQ 48(SP), R14
3826
+ SUBQ CX, R14
3827
+ CMPQ R13, CX
3828
+ JG copy_all_from_history
3829
+ MOVQ R13, CX
3830
+ SUBQ $0x10, CX
3831
+ JB copy_4_small
3832
+
3833
+ copy_4_loop:
3834
+ MOVUPS (R14), X0
3835
+ MOVUPS X0, (R9)
3836
+ ADDQ $0x10, R14
3837
+ ADDQ $0x10, R9
3838
+ SUBQ $0x10, CX
3839
+ JAE copy_4_loop
3840
+ LEAQ 16(R14)(CX*1), R14
3841
+ LEAQ 16(R9)(CX*1), R9
3842
+ MOVUPS -16(R14), X0
3843
+ MOVUPS X0, -16(R9)
3844
+ JMP copy_4_end
3845
+
3846
+ copy_4_small:
3847
+ CMPQ R13, $0x03
3848
+ JE copy_4_move_3
3849
+ CMPQ R13, $0x08
3850
+ JB copy_4_move_4through7
3851
+ JMP copy_4_move_8through16
3852
+
3853
+ copy_4_move_3:
3854
+ MOVW (R14), CX
3855
+ MOVB 2(R14), R12
3856
+ MOVW CX, (R9)
3857
+ MOVB R12, 2(R9)
3858
+ ADDQ R13, R14
3859
+ ADDQ R13, R9
3860
+ JMP copy_4_end
3861
+
3862
+ copy_4_move_4through7:
3863
+ MOVL (R14), CX
3864
+ MOVL -4(R14)(R13*1), R12
3865
+ MOVL CX, (R9)
3866
+ MOVL R12, -4(R9)(R13*1)
3867
+ ADDQ R13, R14
3868
+ ADDQ R13, R9
3869
+ JMP copy_4_end
3870
+
3871
+ copy_4_move_8through16:
3872
+ MOVQ (R14), CX
3873
+ MOVQ -8(R14)(R13*1), R12
3874
+ MOVQ CX, (R9)
3875
+ MOVQ R12, -8(R9)(R13*1)
3876
+ ADDQ R13, R14
3877
+ ADDQ R13, R9
3878
+
3879
+ copy_4_end:
3880
+ ADDQ R13, R11
3881
+ JMP handle_loop
3882
+ JMP loop_finished
3883
+
3884
+ copy_all_from_history:
3885
+ MOVQ CX, R15
3886
+ SUBQ $0x10, R15
3887
+ JB copy_5_small
3888
+
3889
+ copy_5_loop:
3890
+ MOVUPS (R14), X0
3891
+ MOVUPS X0, (R9)
3892
+ ADDQ $0x10, R14
3893
+ ADDQ $0x10, R9
3894
+ SUBQ $0x10, R15
3895
+ JAE copy_5_loop
3896
+ LEAQ 16(R14)(R15*1), R14
3897
+ LEAQ 16(R9)(R15*1), R9
3898
+ MOVUPS -16(R14), X0
3899
+ MOVUPS X0, -16(R9)
3900
+ JMP copy_5_end
3901
+
3902
+ copy_5_small:
3903
+ CMPQ CX, $0x03
3904
+ JE copy_5_move_3
3905
+ JB copy_5_move_1or2
3906
+ CMPQ CX, $0x08
3907
+ JB copy_5_move_4through7
3908
+ JMP copy_5_move_8through16
3909
+
3910
+ copy_5_move_1or2:
3911
+ MOVB (R14), R15
3912
+ MOVB -1(R14)(CX*1), BP
3913
+ MOVB R15, (R9)
3914
+ MOVB BP, -1(R9)(CX*1)
3915
+ ADDQ CX, R14
3916
+ ADDQ CX, R9
3917
+ JMP copy_5_end
3918
+
3919
+ copy_5_move_3:
3920
+ MOVW (R14), R15
3921
+ MOVB 2(R14), BP
3922
+ MOVW R15, (R9)
3923
+ MOVB BP, 2(R9)
3924
+ ADDQ CX, R14
3925
+ ADDQ CX, R9
3926
+ JMP copy_5_end
3927
+
3928
+ copy_5_move_4through7:
3929
+ MOVL (R14), R15
3930
+ MOVL -4(R14)(CX*1), BP
3931
+ MOVL R15, (R9)
3932
+ MOVL BP, -4(R9)(CX*1)
3933
+ ADDQ CX, R14
3934
+ ADDQ CX, R9
3935
+ JMP copy_5_end
3936
+
3937
+ copy_5_move_8through16:
3938
+ MOVQ (R14), R15
3939
+ MOVQ -8(R14)(CX*1), BP
3940
+ MOVQ R15, (R9)
3941
+ MOVQ BP, -8(R9)(CX*1)
3942
+ ADDQ CX, R14
3943
+ ADDQ CX, R9
3944
+
3945
+ copy_5_end:
3946
+ ADDQ CX, R11
3947
+ SUBQ CX, R13
3948
+
3949
+ // Copy match from the current buffer
3950
+ copy_match:
3951
+ MOVQ R9, CX
3952
+ SUBQ R12, CX
3953
+
3954
+ // ml <= mo
3955
+ CMPQ R13, R12
3956
+ JA copy_overlapping_match
3957
+
3958
+ // Copy non-overlapping match
3959
+ ADDQ R13, R11
3960
+ MOVQ R13, R12
3961
+ SUBQ $0x10, R12
3962
+ JB copy_2_small
3963
+
3964
+ copy_2_loop:
3965
+ MOVUPS (CX), X0
3966
+ MOVUPS X0, (R9)
3967
+ ADDQ $0x10, CX
3968
+ ADDQ $0x10, R9
3969
+ SUBQ $0x10, R12
3970
+ JAE copy_2_loop
3971
+ LEAQ 16(CX)(R12*1), CX
3972
+ LEAQ 16(R9)(R12*1), R9
3973
+ MOVUPS -16(CX), X0
3974
+ MOVUPS X0, -16(R9)
3975
+ JMP copy_2_end
3976
+
3977
+ copy_2_small:
3978
+ CMPQ R13, $0x03
3979
+ JE copy_2_move_3
3980
+ JB copy_2_move_1or2
3981
+ CMPQ R13, $0x08
3982
+ JB copy_2_move_4through7
3983
+ JMP copy_2_move_8through16
3984
+
3985
+ copy_2_move_1or2:
3986
+ MOVB (CX), R12
3987
+ MOVB -1(CX)(R13*1), R14
3988
+ MOVB R12, (R9)
3989
+ MOVB R14, -1(R9)(R13*1)
3990
+ ADDQ R13, CX
3991
+ ADDQ R13, R9
3992
+ JMP copy_2_end
3993
+
3994
+ copy_2_move_3:
3995
+ MOVW (CX), R12
3996
+ MOVB 2(CX), R14
3997
+ MOVW R12, (R9)
3998
+ MOVB R14, 2(R9)
3999
+ ADDQ R13, CX
4000
+ ADDQ R13, R9
4001
+ JMP copy_2_end
4002
+
4003
+ copy_2_move_4through7:
4004
+ MOVL (CX), R12
4005
+ MOVL -4(CX)(R13*1), R14
4006
+ MOVL R12, (R9)
4007
+ MOVL R14, -4(R9)(R13*1)
4008
+ ADDQ R13, CX
4009
+ ADDQ R13, R9
4010
+ JMP copy_2_end
4011
+
4012
+ copy_2_move_8through16:
4013
+ MOVQ (CX), R12
4014
+ MOVQ -8(CX)(R13*1), R14
4015
+ MOVQ R12, (R9)
4016
+ MOVQ R14, -8(R9)(R13*1)
4017
+ ADDQ R13, CX
4018
+ ADDQ R13, R9
4019
+
4020
+ copy_2_end:
4021
+ JMP handle_loop
4022
+
4023
+ // Copy overlapping match
4024
+ copy_overlapping_match:
4025
+ ADDQ R13, R11
4026
+
4027
+ copy_slow_3:
4028
+ MOVB (CX), R12
4029
+ MOVB R12, (R9)
4030
+ INCQ CX
4031
+ INCQ R9
4032
+ DECQ R13
4033
+ JNZ copy_slow_3
4034
+
4035
+ handle_loop:
4036
+ MOVQ ctx+16(FP), CX
4037
+ DECQ 96(CX)
4038
+ JNS sequenceDecs_decodeSync_safe_bmi2_main_loop
4039
+
4040
+ loop_finished:
4041
+ MOVQ br+8(FP), CX
4042
+ MOVQ AX, 32(CX)
4043
+ MOVB DL, 40(CX)
4044
+ MOVQ BX, 24(CX)
4045
+
4046
+ // Update the context
4047
+ MOVQ ctx+16(FP), AX
4048
+ MOVQ R11, 136(AX)
4049
+ MOVQ 144(AX), CX
4050
+ SUBQ CX, R10
4051
+ MOVQ R10, 168(AX)
4052
+
4053
+ // Return success
4054
+ MOVQ $0x00000000, ret+24(FP)
4055
+ RET
4056
+
4057
+ // Return with match length error
4058
+ sequenceDecs_decodeSync_safe_bmi2_error_match_len_ofs_mismatch:
4059
+ MOVQ 16(SP), AX
4060
+ MOVQ ctx+16(FP), CX
4061
+ MOVQ AX, 216(CX)
4062
+ MOVQ $0x00000001, ret+24(FP)
4063
+ RET
4064
+
4065
+ // Return with match too long error
4066
+ sequenceDecs_decodeSync_safe_bmi2_error_match_len_too_big:
4067
+ MOVQ ctx+16(FP), AX
4068
+ MOVQ 16(SP), CX
4069
+ MOVQ CX, 216(AX)
4070
+ MOVQ $0x00000002, ret+24(FP)
4071
+ RET
4072
+
4073
+ // Return with match offset too long error
4074
+ error_match_off_too_big:
4075
+ MOVQ ctx+16(FP), AX
4076
+ MOVQ 8(SP), CX
4077
+ MOVQ CX, 224(AX)
4078
+ MOVQ R11, 136(AX)
4079
+ MOVQ $0x00000003, ret+24(FP)
4080
+ RET
4081
+
4082
+ // Return with not enough literals error
4083
+ error_not_enough_literals:
4084
+ MOVQ ctx+16(FP), AX
4085
+ MOVQ 24(SP), CX
4086
+ MOVQ CX, 208(AX)
4087
+ MOVQ $0x00000004, ret+24(FP)
4088
+ RET
4089
+
4090
+ // Return with not enough output space error
4091
+ error_not_enough_space:
4092
+ MOVQ ctx+16(FP), AX
4093
+ MOVQ 24(SP), CX
4094
+ MOVQ CX, 208(AX)
4095
+ MOVQ 16(SP), CX
4096
+ MOVQ CX, 216(AX)
4097
+ MOVQ R11, 136(AX)
4098
+ MOVQ $0x00000005, ret+24(FP)
4099
+ RET