IBM / NOVIA

NOVIA ontology toolset for discovery of unconventional inline accelerators
7 stars 4 forks source link

added NoneType check to preanalysis.py #3

Closed sei-cabidi closed 1 year ago

sei-cabidi commented 1 year ago

Added a check to see if the line in the input is NoneType before calling .group. This will prevent AttributeError: 'NoneType' object has no attribute 'group'.

dtrilla commented 1 year ago

Hi! I've looked deeper into this and found out the real cause behind this error. The filter for lines void of brackets comes right before, where we check if the name of the basic block (BB) is present in that line. Turns out some of the BBs names can be single letters or numbers (in this case 'r' which matched in 'O r igin'), hence allowing the line to be searched for brackets.

I've patched this behavior by strictly searching the name of the basic block at the begging of the line instead of searching for appearances in the line:

See commit ba972a1 . I have added your proposed changes, either way, turns out the regex package changed behavior from python 3.7 to 3.8, which might be why I didn't catch it the first time, since most of the testing happened on a native build. I think it doesn't hurt to add extra checks to it.

Thanks a lot for looking into this!