[PATCH] D113168: [clang-tblgen] Fix non-determinism in generating AttrSubMatchRulesParserStringSwitches.inc

Aaron Ballman via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Nov 8 06:48:15 PST 2021

aaron.ballman added a comment.

In D113168#3114626 <https://reviews.llvm.org/D113168#3114626>, @ikudrin wrote:

> We've noticed binary differences in `clang` in several builds on our local build bots, and the patch fixed that.
> As for generating the documentation, the issue can be seen, for example, in Clang-12 <https://releases.llvm.org/12.0.0/tools/clang/docs/AttributeReference.html>  and Clang-13 <https://releases.llvm.org/13.0.0/tools/clang/docs/AttributeReference.html> documentation, where the section "Nullable Attributes" is placed differently. Maybe it'll be better to sort the categories alphabetically. Anyway, that is a similar but still a different issue.

FWIW, I consider the documentation issue to be more of a problem than the one being fixed here. The fix for this means code we generate will be generated in the same order every time, which has nice properties in terms of doing incremental builds, but is largely unimportant as far as users are concerned. The documentation is user facing, so there's more of a chance to notice positional changes there.

I'm happy enough with the changes, but please fix the other nondeterminism at the same time so that we don't have to play whack-a-mole in this file.

  rG LLVM Github Monorepo



More information about the cfe-commits mailing list