Print indices of assertions instead of raw bitsets#54928
Print indices of assertions instead of raw bitsets#54928BruceForstall merged 7 commits intodotnet:mainfrom
Conversation
820ff19 to
11b1a20
Compare
|
cc @AndyAyersMS |
sandreenko
left a comment
There was a problem hiding this comment.
LGTM, I like the new dump on small methods.
cc @dotnet/jit-contrib
|
I like the symbolic output. IMO, we don't need to dump anything for the actual dataflow propagation; that output is only useful if you're debugging that dataflow algorithm, which shouldn't be frequent, whereas debugging which assertions are in/out could be more generally useful. I'd I'd put in/out output (post-dataflow) on separate lines (and aligned). |
|
I've pushed out two changes, as per Bruce's feedback: 1) Changed the format of the final output for the assertions: BB01:
in = #NA
out = #NA
BB02:
in = #NA
out = #02
BB06 = #01
BB03:
in = #02
out = #02 #03 #04 #05
BB04:
in = #02 #03 #04 #05
out = #02 #03 #04 #05
BB06 = #01 #02 #03 #04 #05
BB05:
in = #02 #03 #04 #05
out = #02 #03 #04 #05
BB06:
in = #NA
out = #02
BB08 = #01
BB07:
in = #02
out = #02 #06
BB08:
in = #NA
out = #NA
BB09:
in = #02 #03 #04 #05
out = #02 #03 #04 #05
BB10:
in = #02 #03 #04 #05
out = #02 #03 #04 #05 #07
BB11:
in = #02 #03 #04 #05 #07
out = #02 #03 #04 #05 #07It is not what I would call "ideal", but it is aligned. 2) Removed the printing of dataflow from the regular dumps. This is intentionally conditioned on an instance method so that it can be easily enabled via the usual environment variable config switch mechanism if needed. |
|
Can you rebase and ensure there are no formatting issues? (rerun jit-format) |
For use in contexts where some printing method should only be executed when "verbose" is true.
To aid in understanding what assertions are being propagated and merged when reading the dumps.
It can still be enabled if needed.
2ad39fa to
157746d
Compare
|
CI failures do not appear related: 1) |
This is to improve the experience of reading assertion propagation dumps.
Before:
After:
Before:
After
Before:
After:
(This part I am unsure about - would it be worth it to increase the vertical size of the dump to align
ins withouts?)Before:
After:
Before:
After:
The downside to this style of printing is the horizontal size of the dump increases when working with methods that have a large number of assertions. I think it is worth it.
Naturally, no diffs for this change.