上传者: 38334677
|
上传时间: 2022-06-10 18:04:59
|
文件大小: 11KB
|
文件类型: ZIP
rustc 中使用的快速哈希算法。liballoc 中的 hashmap 默认使用 SipHash,它并没有我们想要的那么快。在编译器中,我们并不真正担心 DOS 尝试,因此我们使用快速非加密哈希。
这与 Firefox 使用的算法相同——它是一种不基于任何广为人知的算法的自制算法——尽管经过修改以生成 64 位散列值而不是 32 位散列值。它始终优于 rustc 本身中基于 FNV 的哈希——冲突率与 FNV 相似或略差,但哈希函数本身的速度要高得多,因为它一次最多可以处理 8 个字节。