Shopify / seafoam

A tool for working with compiler graphs dumped by the GraalVM compiler
MIT License
126 stars 22 forks source link

A way to get describe stats after passes #65

Closed eregon closed 1 year ago

eregon commented 1 year ago

Currently the stats from seafoam render --describe seem to be before any passes are done, and so e.g.:


38 nodes, linear
ConstantNode: 12
LoadIndexedNode: 10
PiNode: 3
BoxNode$TrustedBoxedValue: 2
UnboxNode: 2
BoxNode$AllocatingBoxNode: 1
FixedGuardNode: 1
FrameState: 1
IntegerAddExactNode: 1
IntegerAddExactOverflowNode: 1
ParameterNode: 1
PiArrayNode: 1
ReturnNode: 1
StartNode: 1```

But there are actually no LoadIndexedNode in the rendered output (`seafoam render`).

It'd be nice if we run passes before describe, and then with the previously-mentioned flag to disable all passes we could get the same output as now.

We'll also need to ignore hidden nodes for `--describe`.
chrisseaton commented 1 year ago

We should report after passes, and include a global flag to disable all passes as well.