1import re
2
3parseRe = re.compile('(.*)\s+([0-9]+):([0-9a-f]+):(.*)')
4
5dbgCnt=0
6
7clk0=0
8clk1=0
9
10def getCycles(t):
11    global dbgCnt
12    global clk0
13    global clk1
14    while(True):
15      try:
16        line = next(t)
17        if line:
18          m = parseRe.match(line)
19          if m:
20             if (('OP_HINT_DBG_32' in line) or ('DBG' in line)):
21                 curClk = int(m.group(2))
22                 if dbgCnt==0:
23                  clk0 =curClk
24                 if dbgCnt == 1:
25                  clk1 = curClk
26                 dbgCnt += 1
27                 if dbgCnt == 2:
28                    dbgCnt = 0
29                    return(clk1 - clk0)
30      except StopIteration:
31        dbgCnt = 0
32        return(0)
33
34
35
36