gotosocial/vendor/github.com/minio/crc64nvme
kim c00cad2ceb [chore] bump dependencies (#4339)
- github.com/KimMachineGun/automemlimit v0.7.4
- github.com/miekg/dns v1.1.67
- github.com/minio/minio-go/v7 v7.0.95
- github.com/spf13/pflag v1.0.7
- github.com/tdewolff/minify/v2 v2.23.9
- github.com/uptrace/bun v1.2.15
- github.com/uptrace/bun/dialect/pgdialect v1.2.15
- github.com/uptrace/bun/dialect/sqlitedialect v1.2.15
- github.com/uptrace/bun/extra/bunotel v1.2.15
- golang.org/x/image v0.29.0
- golang.org/x/net v0.42.0

Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4339
Co-authored-by: kim <grufwub@gmail.com>
Co-committed-by: kim <grufwub@gmail.com>
2025-07-22 18:00:27 +02:00
..
crc64.go [chore]: Bump github.com/minio/minio-go/v7 from 7.0.85 to 7.0.89 (#3977) 2025-04-07 11:05:51 +01:00
crc64_amd64.go [chore]: Bump github.com/minio/minio-go/v7 from 7.0.85 to 7.0.89 (#3977) 2025-04-07 11:05:51 +01:00
crc64_amd64.s [chore]: Bump github.com/minio/minio-go/v7 from 7.0.85 to 7.0.89 (#3977) 2025-04-07 11:05:51 +01:00
crc64_arm64.go [chore] bump dependencies (#4339) 2025-07-22 18:00:27 +02:00
crc64_arm64.s [chore]: Bump github.com/minio/minio-go/v7 from 7.0.85 to 7.0.89 (#3977) 2025-04-07 11:05:51 +01:00
crc64_other.go [chore]: Bump github.com/minio/minio-go/v7 from 7.0.85 to 7.0.89 (#3977) 2025-04-07 11:05:51 +01:00
LICENSE [chore]: Bump github.com/minio/minio-go/v7 from 7.0.85 to 7.0.89 (#3977) 2025-04-07 11:05:51 +01:00
README.md [chore]: Bump github.com/minio/minio-go/v7 from 7.0.85 to 7.0.89 (#3977) 2025-04-07 11:05:51 +01:00

crc64nvme

This Golang package calculates CRC64 checksums using carryless-multiplication accelerated with SIMD instructions for both ARM and x86. It is based on the NVME polynomial as specified in the NVM Express® NVM Command Set Specification.

The code is based on the crc64fast-nvme package in Rust and is released under the Apache 2.0 license.

For more background on the exact technique used, see this Fast CRC Computation for Generic Polynomials Using PCLMULQDQ Instruction paper.

Performance

To follow.

Requirements

All Go versions >= 1.22 are supported.

Contributing

Contributions are welcome, please send PRs for any enhancements.