Auto merge of #34539 - arielb1:metadata-hash, r=alexcrichton

Make the metadata lock more robust

Fixes #33778 and friends.

I also needed to add a metadata encoding version to rlibs, as they did not have it before. To keep it backwards-compatible, I added 4 zeroes to the start of the metadata, which are treated as an empty length field by older rustcs.

r? @alexcrichton
This commit is contained in:
bors 2016-07-02 06:50:59 -07:00 committed by GitHub
commit 7a262d3034
23 changed files with 214 additions and 159 deletions

View file

@ -118,8 +118,6 @@ impl DepGraphThreadData {
/// the buffer is full, this may swap.)
#[inline]
pub fn enqueue(&self, message: DepMessage) {
debug!("enqueue: {:?} tasks_pushed={}", message, self.tasks_pushed.get());
// Regardless of whether dep graph construction is enabled, we
// still want to check that we always have a valid task on the
// stack when a read/write/etc event occurs.