D121929 happens to cause CodeGen/MIR/AArch64/mirnamer.mir to fail due to a hash collision caused by adding two extra opcodes. The collision is only in the top 19 bits of the hashed opcode so fix this by just using the whole hash (in fixed width hex for consistency) instead of the top 5 decimal digits.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
LGTM, Nice work John.
Would format_hex_no_prefix be replaceable with std::format once C++20 for LLVM drops?
@aditya_nandakumar Any thoughts? Are you folks still using the pass in places where the change in hashing could break things?
Comment Actions
Yes, it looks like std::format with format string "{:016x}" should so the same thing as format_hex_no_prefix.