# The 32 per-phase stopwatches -- stopwatch_start / _elapsed / _stop vs the timeline

Written by hand from tools/re-capture/isl.py; see docs/re/structures/isl-timers.md.
(Built-ins 8 / 9 / 93; the corpus called them set_flag / read_freg / clear_flag
until the reading below showed they are a stopwatch bank.)

Claim under test: `[phase+88][i]` only advances while `[phase+120][i] == 1`,
and built-in 8 is the only thing that sets that flag.  So every timeline
entry's `kind` must be an index its own phase starts, or the entry is dead.

file           phase stopwatch_start(i)                 stopwatch_elapsed(i)   timeline kinds
Stage01.ssb    1     [0, 5, 14]                         [0]                    {0: 27, 5: 3}
Stage01.ssb    2     [0, 5, 14]                         [0]                    {0: 24, 5: 3}
Stage02.ssb    1     [0, 5, 8]                          [0, 8]                 {0: 21, 5: 4}
Stage02.ssb    2     [0, 5, 8, 14, 15]                  [0, 8]                 {0: 10, 5: 3}
Stage02.ssb    3     [0, 5, 14, 15]                     [0]                    {0: 14, 5: 4}
Stage03.ssb    1     [0, 5, 14]                         [0]                    {0: 16, 5: 4}
Stage03.ssb    2     [0, 1, 5, 14]                      [0, 1, 14]             {0: 29, 5: 3}
Stage03.ssb    3     [0, 1, 5, 14, 15]                  [0, 1]                 {0: 14, 5: 3}
Stage04.ssb    1     [0, 5, 14]                         [0, 14]                {0: 8, 5: 3}
Stage04.ssb    2     [0, 1, 5, 14]                      [0, 1]                 {0: 13, 5: 3}
Stage05.ssb    1     [0, 1, 5]                          [0, 1]                 {0: 16, 5: 3}
Stage05.ssb    2     [0, 5, 8]                          [0, 8]                 {0: 6, 5: 3}
Stage06.ssb    1     [0, 5]                             [0, 15]                {0: 18, 5: 3}
Stage06.ssb    2     [0, 5, 14, 15]                     [0]                    {0: 6, 5: 3}
Stage06.ssb    3     [0, 1, 5, 14, 15]                  [0, 1, 15]             {0: 7, 5: 3}
Stage07.ssb    1     [0, 5, 15]                         [0, 15]                {0: 10, 5: 3}
Stage07.ssb    2     [0, 5, 15]                         [0, 15]                {0: 3, 5: 3}
Stage08.ssb    1     [0, 1, 5, 15]                      [0, 1, 15]             {0: 17, 5: 5}
Stage08.ssb    2     [0, 5, 15]                         [0, 15]                {0: 13, 5: 3}
Stage09.ssb    1     [0, 5, 14, 15]                     [0]                    {0: 10, 5: 3}
Stage09.ssb    2     [0, 5, 14]                         [0]                    {0: 7, 5: 3}
Stage09.ssb    3     [0, 5, 14, 15]                     [0]                    {0: 11, 5: 3}
Stage10.ssb    1     [0, 5, 14, 15]                     [0]                    {0: 8, 5: 3}
Stage11.ssb    1     [0, 5]                             [0]                    {0: 14, 5: 3}
Stage11.ssb    2     [0, 5, 15]                         [0, 15]                {0: 5, 5: 3}
Stage12.ssb    1     [0, 1, 5, 15]                      [0, 1, 15]             {0: 17, 5: 3}
Stage13.ssb    1     [0, 2, 5, 15]                      [0, 2, 15]             {0: 25, 5: 3}
Stage14.ssb    1     [0, 5, 15]                         [0, 15]                {0: 8, 5: 3}
Stage14.ssb    2     [0, 5, 15]                         [0, 15]                {0: 11, 5: 3}
Stage15.ssb    1     [0, 5, 15]                         [0, 15]                {0: 20, 5: 3}
Stage15.ssb    2     [0, 5, 10, 15]                     [0, 10, 15]            {0: 21, 5: 3}
Stage16.ssb    1     [0, 5]                             [0]                    {0: 17, 5: 3}
Stage18.ssb    1     [0]                                []                     {0: 3}
Stage19.ssb    1     [0]                                []                     {0: 3}
Stage20.ssb    1     [0]                                []                     {0: 3}
Stage21.ssb    1     [0]                                []                     {0: 3}
Stage22.ssb    1     [0]                                []                     {0: 3}
Stage23.ssb    1     [0]                                []                     {0: 3}
Stage24.ssb    1     [0, 1, 5]                          [0, 1]                 {0: 11, 5: 3}
Stage25.ssb    1     [0, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21] [0, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21] {0: 14, 5: 3}
Stage26.ssb    1     [0, 5]                             [0]                    {0: 22, 5: 3}
Stage27.ssb    1     [0, 5]                             [0]                    {0: 16, 5: 3}
Stage28.ssb    1     [0, 5]                             [0]                    {0: 5, 5: 3}
Stage29.ssb    1     [0, 5]                             [0]                    {0: 24, 5: 3}

timeline entries whose kind is started in the same phase : 675 / 675 = 100.0%
entry-weighted control (a random index in 0..31)         : 11.2%
stopwatch_elapsed indices started in the same phase       : 82 yes / 1 no  ['Stage06.ssb ph1 stopwatch_elapsed(15)']

stopwatch_start    argument histogram: {0: 44, 1: 10, 2: 1, 4: 2, 5: 38, 6: 2, 7: 2, 8: 5, 9: 2, 10: 4, 11: 2, 12: 1, 13: 1, 14: 21, 15: 24, 16: 1, 17: 3, 18: 3, 19: 2, 20: 2, 21: 2}
stopwatch_elapsed  argument histogram: {0: 105, 1: 13, 2: 2, 4: 1, 6: 2, 7: 2, 8: 5, 9: 2, 10: 3, 11: 2, 12: 3, 13: 1, 14: 5, 15: 28, 16: 1, 17: 3, 18: 3, 19: 2, 20: 2, 21: 2, None: 31}
stopwatch_stop     argument histogram: {-1: 133}
