[PATCH] D113002: TableGen: sort SearchableTable emission order by fields, not top-level name

Tim Northover via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 2 04:22:10 PDT 2021


t.p.northover created this revision.
t.p.northover added a reviewer: labrinea.
Herald added subscribers: mgrang, kristof.beyls, mcrosier.
t.p.northover requested review of this revision.
Herald added a project: LLVM.

This is often used for anonymous definitions, so we were sorting alphabetically by `anonymous_1234` record names, which while less bad than pointers can be easily perturbed by adding code even in completely unrelated systems.

That causes test failures on AArch64 when sysregs with multiple valid names suddenly start printing a different one for no obvious reason.

At Apple we've had aliased sysregs for a while, and this semi-deterministic printing was a scourge ; and judging by a few of the check lines being replaced it was hit even during the development of D110065 <https://reviews.llvm.org/D110065>.

So this patch instead sorts by the contents of the record.


https://reviews.llvm.org/D113002

Files:
  llvm/test/MC/AArch64/armv8r-sysreg.s
  llvm/utils/TableGen/SearchableTableEmitter.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D113002.384039.patch
Type: text/x-patch
Size: 12472 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20211102/33c5f8ce/attachment.bin>


More information about the llvm-commits mailing list