From 713aa7faacf46e41416e5d5de556e94807c9a6fa Mon Sep 17 00:00:00 2001 From: bbracker Date: Fri, 19 Nov 2021 20:25:00 -0800 Subject: [PATCH] automatic bug finder script --- .../regression/buildrootBugFinder.py | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100755 wally-pipelined/regression/buildrootBugFinder.py diff --git a/wally-pipelined/regression/buildrootBugFinder.py b/wally-pipelined/regression/buildrootBugFinder.py new file mode 100755 index 00000000..a20b7bf5 --- /dev/null +++ b/wally-pipelined/regression/buildrootBugFinder.py @@ -0,0 +1,41 @@ +#!/usr/bin/python3 +import sys, os, subprocess + +def main(): + maxGoodCount = 400e6 # num instrs that execute sucessfully starting from 0 + currInstrCount = maxGoodCount + linuxTestvectors = "../../tests/linux-testgen/linux-testvectors" + if not os.path.exists(linuxTestvectors): + sys.stderr.write("Error: Linux testvectors not found at "+linuxTestvectors+"\n") + exit(1) + checkpointList = [int(fileName.strip('checkpoint')) for fileName in os.listdir(linuxTestvectors) if 'checkpoint' in fileName] + checkpointList.sort() + + logDir = "./logs/buildrootBugFinderLogs/" + os.system("mkdir -p "+logDir) + summaryLogFilePath = logDir+"summary.log" + summaryLogFile = open(summaryLogFilePath,'w') + summaryLogFile.close() + while True: + checkpointList = [checkpoint for checkpoint in checkpointList if checkpoint > currInstrCount] + if len(checkpointList)==0: + break + checkpoint = checkpointList[0] + logFile = logDir+"checkpoint"+str(checkpoint)+".log" + runCommand="{\nvsim -c <