-
-
Notifications
You must be signed in to change notification settings - Fork 14.9k
Non-deterministic builds with parallel-frontend-threads option #154259
Copy link
Copy link
Open
Labels
A-parallel-compilerArea: parallel compilerArea: parallel compilerA-reproducibilityArea: Reproducible / deterministic buildsArea: Reproducible / deterministic buildsC-bugCategory: This is a bug.Category: This is a bug.T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.
Metadata
Metadata
Assignees
Labels
A-parallel-compilerArea: parallel compilerArea: parallel compilerA-reproducibilityArea: Reproducible / deterministic buildsArea: Reproducible / deterministic buildsC-bugCategory: This is a bug.Category: This is a bug.T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.
Type
Fields
Give feedbackNo fields configured for issues without a type.
While enabling parallel-frontend-threads option in our build env (Yocto), the build outputs are not reproducible.
The difference is in the librustc_driver***.so file .gnu_debuglink section. Further analysis on debug data shows the .strtab section is differed and there I found the debug symbols are generated with changed *.llvm.{hash} between the builds. For e.g.,
In above lines the *.llvm.{hash} is changed. Is there a way or an option to make this hash generation is unique? I tried by setting CGU to 1 but still the same issue is seen.
The same observation is made on rust upstream sources w/o Yocto build env.