1
Fork 0

Rollup merge of #64974 - ecstatic-morse:generic-graphviz-zebra, r=petrochenkov

Fix zebra-striping in generic dataflow visualization

A small formatting improvement to #64828.

Prior to this, the background color of the first row of the table for each basic block changed seemingly at random. You can see this in [basic block #5](https://github.com/rust-lang/rust/pull/64828#issuecomment-536690047) under "New table". Now it is always light.

This also updates the example table to match the current output.
This commit is contained in:
Tyler Mandry 2019-10-01 23:06:22 -07:00 committed by GitHub
commit 643ae957d2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -165,25 +165,25 @@ where
block: BasicBlock, block: BasicBlock,
) -> io::Result<()> { ) -> io::Result<()> {
// Sample output: // Sample output:
// +-+--------------------------------------------------+ // +-+-----------------------------------------------+
// A | bb4 | // A | bb4 |
// +-+----------------------------------+---------------+ // +-+----------------------------------+------------+
// B | MIR | STATE | // B | MIR | STATE |
// +-+----------------------------------+---------------+ // +-+----------------------------------+------------+
// C | | (on entry) | {_0,_2,_3} | // C | | (on entry) | {_0,_2,_3} |
// +-+----------------------------------+---------------+ // +-+----------------------------------+------------+
// D |0| 0: StorageLive(_7) | | // D |0| StorageLive(_7) | |
// +-+----------------------------------+---------------+ // +-+----------------------------------+------------+
// |1| 1: StorageLive(_8) | | // |1| StorageLive(_8) | |
// +-+----------------------------------+---------------+ // +-+----------------------------------+------------+
// |2| 2: _8 = &mut _1 | +_8 | // |2| _8 = &mut _1 | +_8 |
// +-+----------------------------------+---------------+ // +-+----------------------------------+------------+
// E |T| _7 = const Foo::twiddle(move _8) | -_8 | // E |T| _4 = const Foo::twiddle(move _2) | -_2 |
// +-+----------------------------------+---------------+ // +-+----------------------------------+------------+
// F | | (on unwind) | {_0,_2,_3,_7} | // F | | (on unwind) | {_0,_3,_8} |
// +-+----------------------------------+---------------+ // +-+----------------------------------+------------+
// | | (on successful return) | +_7 | // | | (on successful return) | +_4 |
// +-+----------------------------------+---------------+ // +-+----------------------------------+------------+
write!( write!(
w, w,
@ -211,6 +211,7 @@ where
)?; )?;
// C: Entry state // C: Entry state
self.bg = Background::Light;
self.results.seek_to_block_start(block); self.results.seek_to_block_start(block);
self.write_row_with_curr_state(w, "", "(on entry)")?; self.write_row_with_curr_state(w, "", "(on entry)")?;
self.prev_state.overwrite(self.results.get()); self.prev_state.overwrite(self.results.get());