diff options
Diffstat (limited to 'src/analyzer.js')
-rw-r--r-- | src/analyzer.js | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/src/analyzer.js b/src/analyzer.js index c9ccf82a..6daf9191 100644 --- a/src/analyzer.js +++ b/src/analyzer.js @@ -12,7 +12,6 @@ function cleanFunc(func) { } function analyzer(data) { -//print('zz analaz') substrate = new Substrate('Analyzer'); // Sorter @@ -261,6 +260,26 @@ function analyzer(data) { dprint('vars', '// var ' + vname + ': ' + JSON.stringify(variable)); } }); + this.forwardItem(item, 'LabelAnalyzer'); + }, + }); + + // Label analyzer + substrate.addZyme('LabelAnalyzer', { + processItem: function(item) { + item.functions.forEach(function(func) { + func.hasPhi = false; + func.remarkableLabels = []; + func.labels.forEach(function(label) { + label.lines.forEach(function(line) { + if (line.value && line.value.intertype == 'phi') { + func.remarkableLabels.push(toNiceIdent(line.value.label1)); + func.remarkableLabels.push(toNiceIdent(line.value.label2)); + func.hasPhi = true; + } + }); + }); + }); this.forwardItem(item, 'Relooper'); }, }); |