[PATCH] D60379: Make precompiled headers reproducible

Bruno Ricci via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Apr 8 14:35:56 PDT 2019


riccibruno added a comment.

In D60379#1458799 <https://reviews.llvm.org/D60379#1458799>, @thakis wrote:

> In D60379#1458668 <https://reviews.llvm.org/D60379#1458668>, @riccibruno wrote:
>
> > After looking at the bug report (https://bugs.debian.org/877359), I would like to point out that there is currently *absolutely* no stability guarantee for the serialization format (ie, you need the exact same revision). In regard of this I am wondering how sane it is to ship pch files.
>
>
> I agree we shouldn't make guarantees about pch file format stability and that distributing pch files isn't a good idea. Having said that, making clang write the same output when given the same input is still a Good Thing as it enables caching these outputs e.g. with tools like distcc.


Good point.

I went through each of the structures serialized in `ASTWriter.cpp`, and unless I missed one, `OpenCLDeclExtMap` and `OpenCLTypeExtMap` are the only one which are serialized in a non-deterministic way (so my earlier inline comment was mistaken).


Repository:
  rC Clang

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D60379/new/

https://reviews.llvm.org/D60379





More information about the cfe-commits mailing list