[all-commits] [llvm/llvm-project] b0440c: [CycleInfo] Reference cycles by preorder index, no...
Fangrui Song via All-commits
all-commits at lists.llvm.org
Fri Jul 17 18:28:22 PDT 2026
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: b0440cb55a22e979e81934e0c031c9d46e71f9da
https://github.com/llvm/llvm-project/commit/b0440cb55a22e979e81934e0c031c9d46e71f9da
Author: Fangrui Song <i at maskray.me>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/include/llvm/ADT/GenericCycleImpl.h
M llvm/include/llvm/ADT/GenericCycleInfo.h
Log Message:
-----------
[CycleInfo] Reference cycles by preorder index, not pointer. NFC (#210271)
The block-to-innermost-cycle map (BlockMap) and each cycle's parent link
hold a GenericCycle pointer. Store the cycle's preorder index instead,
so no raw cycle pointer remains in the stored representation: BlockMap
becomes a SmallVector<unsigned>, four bytes per block rather than eight,
and the parent link becomes ParentIndex.
The flat Cycles array does not exist during construction, so both hold
creation-order indices into the temporary forest until flatten()
resolves them to preorder indices.
Aided by Claude Opus 4.8
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list