Commit Graph

14 Commits

Author SHA1 Message Date
bgeron
ec9465eb9b [turbolizer] Enlarge node labels and bubbles. Fix dead node display on old JSON.
BUG=

Review-Url: https://codereview.chromium.org/2230313002
Cr-Commit-Position: refs/heads/master@{#38588}
2016-08-11 16:46:18 +00:00
danno
d3905561b9 [turbolizer] Use locations rather than ranges everywhere
Also convert CodeView to a class and fix a host of selection
bugs in the process, as well as move the logic and data to
"enrich" location with one type of location data with location
data known globally to the whole graph in the selection broker.

Review-Url: https://codereview.chromium.org/2230083004
Cr-Commit-Position: refs/heads/master@{#38544}
2016-08-10 14:46:11 +00:00
bgeron
01766cd8cc [turbolizer] Visualize also the dead nodes.
R=danno,jarin
BUG=

Review-Url: https://codereview.chromium.org/2226293002
Cr-Commit-Position: refs/heads/master@{#38502}
2016-08-09 16:20:32 +00:00
bgeron
0d9ce3acff [turbolizer] Allow selecting inputs also with numeric keyboard.
R=danno
BUG=

Review-Url: https://codereview.chromium.org/2227643002
Cr-Commit-Position: refs/heads/master@{#38442}
2016-08-08 13:07:25 +00:00
bgeron
fbccad5c66 [turbolizer] Remember the last phase, search query, and pane expansions.
BUG=
R=danno

Review-Url: https://codereview.chromium.org/2171543004
Cr-Commit-Position: refs/heads/master@{#38045}
2016-07-26 11:47:24 +00:00
bgeron
54d483d9f9 [turbolizer] Add two keyboard shortcuts: R for relayout, / for search.
/ also selects the search box.

BUG=

Review-Url: https://codereview.chromium.org/2169053002
Cr-Commit-Position: refs/heads/master@{#38027}
2016-07-25 15:26:17 +00:00
bgeron
69c291dc47 [turbolizer] Factor out some user actions into methods of GraphView.
BUG=
R=danno

Review-Url: https://codereview.chromium.org/2169043002
Cr-Commit-Position: refs/heads/master@{#38025}
2016-07-25 14:25:46 +00:00
bgeron
cc51cfcac3 [turbolizer] Redetermine graph bounding box after dragging a node.
If you dragged the node out of the bounding box, this commit allows you to see
it again after you zoom. The zoom looks jittery, but I think it's better than
not being able to see it at all.

BUG=
R=danno

Review-Url: https://codereview.chromium.org/2168713005
Cr-Commit-Position: refs/heads/master@{#38024}
2016-07-25 14:22:23 +00:00
bgeron
fe728e52b4 [turbolizer] Fix a latent bug when dragging a node under another node.
BUG=
R=danno

Review-Url: https://codereview.chromium.org/2169023002
Cr-Commit-Position: refs/heads/master@{#38004}
2016-07-25 09:50:42 +00:00
bgeron
feb93dd60b [turbolizer] Show a label with a shorter parameter for some opcodes.
With this patch, every node in turbo-*.json has an opcode, a title, and
a label. The label field is new; the opcode and title were already
there. The title is for the mouseover text. The label is what will be
displayed in the graph view, unless it's too long, in which case only
the opcode will be displayed. (This is similar to the preexisting
behaviour of putting titles in labels, except that the titles were
rarely short enough to fit in a label.)

With this patch, the labels generated are in practice the same as the
titles we had before, except for LoadField and StoreField, which will be
rendered as LoadField[[+432]] and StoreField[[+432]] (if 432 was the
offset).

This diff adds an overloadable method

    virtual void Operator1<T>::PrintParameter(ostream&, PrintVerbosity)

for each type T to Operator1. Its default implementation just uses
operator<<(ostream&, T const&) and adds square brackets around it, but
it is overridden for FieldAccess to print "[+432]" in the example case.

BUG=
R=jarin,danno

Review-Url: https://codereview.chromium.org/2093013002
Cr-Commit-Position: refs/heads/master@{#37795}
2016-07-15 12:07:43 +00:00
danno
9dc2c31d64 [turbolizer] Performance improvements for selection in graph & schedule
Review-Url: https://codereview.chromium.org/2066313002
Cr-Commit-Position: refs/heads/master@{#37177}
2016-06-22 10:11:39 +00:00
danno
deb67d7d05 [turbolizer]: Fix bugs
* The default text (placeholder) in the search box is now present.
* All key events handled by turbolizer are not passed through to Chrome.

Review-Url: https://codereview.chromium.org/2061713002
Cr-Commit-Position: refs/heads/master@{#36936}
2016-06-13 16:36:09 +00:00
danno
e52907f807 [turbolizer] Features and bug-fixes
Fix bugs and add a few small useful features:

* Fix Schedule view to properly parse schedule output and respond to switching
  back to graph views.
* Add shorcuts for showing edges of selected nodes.
  - 'i' shows all inputs
  - 'o' shows all outputs
  - '1'-'9' shows all nodes nth input where 1 <= n <= 9
  - 'c' shows all control inputs
  - 'e' shows all effect inputs
* Holding the control key down when using a edge-showing shortcut toggles edge
  state rather the just showing.
* 'a' selects all nodes in graph view.
* Node selection is preserved between graph views and Schedule views.
* Holding control key down when using regular expression search shows currently
  hidden nodes that match the regex search.
* Pane expansion buttons now respond to clicks in entire button area.
* Default text in regex search box makes searching more discoverable.

Review-Url: https://codereview.chromium.org/2059193002
Cr-Commit-Position: refs/heads/master@{#36932}
2016-06-13 13:21:54 +00:00
danno
9c15c05596 Add a html-based visualizer for TurboFan graphs
Review-Url: https://codereview.chromium.org/729913004
Cr-Commit-Position: refs/heads/master@{#36351}
2016-05-19 08:18:01 +00:00