Skip to content

rts: update xxhash used by the linker's hashmap

Tamar Christina requested to merge Phyx/ghc:gh-update-xxhash-linker into master

Updates the xxHash used by the linker. The linker uses this to speed up symbolic resolution.

To cut any discussion about xxHash not being cryptographically secure:

it doesn't matter. Collisions are natural and expected during symbol resolution. At any given time the linker has multiple definition of symbols, but only one is fully resolved.

Since only the symbol name needs to be the same, any potential attack would not have to generate a collision through any fancy methods. They simply need to provide a symbol with the same name.

Any collisions that happen with different symbol names also don't matter as the linker needs the exact symbolic name in order for it to use the symbol.

Given that no "secure" hashing function changes the attack surface or provides any extra security I rather go for throughput and latency over all else. There's no issue with any timing attacks revealing any secrets as the symbols are stored in plain text.

Merge request reports