Conversation
Greptile SummaryThis PR reworks gated-flop detection to run after the full BFS clock-network traversal completes, replacing the old incremental per-vertex update during
Confidence Score: 1/5The PR cannot compile due to a stale call to the deleted isClkGateInstance function in updateClkGates. The stale call to isClkGateInstance on line 996 of Search.cc references a function whose declaration was removed from the header and whose definition was renamed to isClkGateVertex in the same commit. The translation unit will not compile, making the change unreachable until that single line is corrected. search/Search.cc — specifically the updateClkGates body where the renamed helper is still called by its old name. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[findArrivals1] --> B[findArrivalsSeed + visitParallel BFS]
B --> C{arrival_count > 0?}
C -- No --> Z[done]
C -- Yes --> D[computeClkGates]
D --> E[Reset clk_gated_ vector]
E --> F[Iterate all vertices, collect clock-tagged\nvertices into by_level buckets]
F --> G[For each level ascending,\ncall updateClkGates per vertex]
G --> H{isClkGateVertex?}
H -- Yes\nclock gate output pin --> I[any_live &&\none live arc sufficient]
H -- No\nregular cell --> J[any_live &&\nall live arcs must be gated]
I --> K[clk_gated_[id] = gated]
J --> K
Reviews (1): Last reviewed commit: "organize" | Re-trigger Greptile |
Changed implementation of determining gated flops
Algorithm: