Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What does SCC stand for, with respect to LLVM?

I was reading through this document http://llvm.org/docs/WritingAnLLVMPass.html, where in I came across CallGraphSCCPass. I searched for SCC abbreviation, but wasn't able to find one. What does SCC stand for? Where can I read more about it?

like image 857
Chethan Ravindranath Avatar asked Dec 17 '11 16:12

Chethan Ravindranath


3 Answers

According to The LLVM Lexicon, It stands for "strongly connected component".

The source-code comments explain it this way:

Because there may be cycles in the call graph, passes of this type operate on the call-graph in SCC order: that is, they process function bottom-up, except for recursive functions, which they process all at once.

(But the only reason I was able to find the lexicon is that I figured out that they must mean "strongly connected component", and then I Googled for that phrase on site:llvm.org to confirm. It doesn't seem to be prominently linked.)

like image 72
ruakh Avatar answered Nov 13 '22 16:11

ruakh


I believe it stands for Strongly Connected Components, since that documentation talks about Tarjan's algorithm.

like image 6
Mat Avatar answered Nov 13 '22 15:11

Mat


SCC = Strongly connected component

like image 1
Thipor Kong Avatar answered Nov 13 '22 16:11

Thipor Kong