about summary refs log tree commit diff
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2014-03-06 23:46:40 -0800
committerbors <bors@rust-lang.org>2014-03-06 23:46:40 -0800
commit85ab68eed04ed22e7d45c34901d2e0284e2061ad (patch)
tree6c126bc10bdc2eea52c0b53515ca070b4e011c84
parent28e7631d8beadd8762adefde2346266732e1866d (diff)
parent0bdd31cc61706895d3cbde6979cc4c14750f759c (diff)
downloadrust-85ab68eed04ed22e7d45c34901d2e0284e2061ad.tar.gz
rust-85ab68eed04ed22e7d45c34901d2e0284e2061ad.zip
auto merge of #12749 : tedhorst/rust/master, r=huonw
Minor change to the FVN hashing function based on recommendation on: http://en.wikipedia.org/wiki/Fowler_Noll_Vo_hash

cc @alexcrichton
-rw-r--r--src/librustc/util/nodemap.rs2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/librustc/util/nodemap.rs b/src/librustc/util/nodemap.rs
index fe24733aba2..05b3b105981 100644
--- a/src/librustc/util/nodemap.rs
+++ b/src/librustc/util/nodemap.rs
@@ -118,8 +118,8 @@ impl Writer for FnvState {
     fn write(&mut self, bytes: &[u8]) -> io::IoResult<()> {
         let FnvState(mut hash) = *self;
         for byte in bytes.iter() {
-            hash = hash * 0x100000001b3;
             hash = hash ^ (*byte as u64);
+            hash = hash * 0x100000001b3;
         }
         *self = FnvState(hash);
         Ok(())