Что означает SCC в отношении LLVM? - PullRequest
17 голосов
/ 17 декабря 2011

Я читал этот документ http://llvm.org/docs/WritingAnLLVMPass.html,, где я наткнулся на CallGraphSCCPass . Я искал аббревиатуру SCC, но не смог ее найти. Что такое SCC? Где я могу прочитать об этом подробнее?

Ответы [ 3 ]

19 голосов
/ 17 декабря 2011

Согласно LLVM Lexicon , он означает " сильно связанный компонент ".

Комментарии исходного кода объясняют это так:

Поскольку в графе вызовов могут быть циклы, проходы этого типа работают на графе вызовов в порядке SCC: то есть они обрабатывают функцию снизу вверх, за исключением рекурсивных функций, которые они обрабатывают все сразу.

(Но единственная причина, по которой мне удалось найти лексикон, заключается в том, что я понял, что они должны означать «сильно связанный компонент», а затем я прогуглил эту фразу на site:llvm.org, чтобы подтвердитьКажется, это не заметно связано.)

4 голосов
/ 17 декабря 2011

Я полагаю, что это означает Сильно связанные компоненты , поскольку в этой документации говорится о алгоритме Тарьяна .

1 голос
/ 17 декабря 2011

SCC = Сильно подключенный компонент

...