36 lines
715 B
Python
Executable File
36 lines
715 B
Python
Executable File
import re
|
|
|
|
parseRe = re.compile('(.*)\s+([0-9]+):([0-9a-f]+):(.*)')
|
|
|
|
dbgCnt=0
|
|
|
|
clk0=0
|
|
clk1=0
|
|
|
|
def getCycles(t):
|
|
global dbgCnt
|
|
global clk0
|
|
global clk1
|
|
while(True):
|
|
try:
|
|
line = next(t)
|
|
if line:
|
|
m = parseRe.match(line)
|
|
if m:
|
|
if (('OP_HINT_DBG_32' in line) or ('DBG' in line)):
|
|
curClk = int(m.group(2))
|
|
if dbgCnt==0:
|
|
clk0 =curClk
|
|
if dbgCnt == 1:
|
|
clk1 = curClk
|
|
dbgCnt += 1
|
|
if dbgCnt == 2:
|
|
dbgCnt = 0
|
|
return(clk1 - clk0)
|
|
except StopIteration:
|
|
dbgCnt = 0
|
|
return(0)
|
|
|
|
|
|
|