Where can I find the paper of optimization algorithm?

Hello, every one, I’m a graduate student.

I’m researching about loop-rotate, div-rem-pairs and others llvm optimization algorithm.

I need to read the paper of them to learn the core concepts. I know the source code explains clearly, but I want to get the papers and cite them in my paper.

I checked the first commit of the source code of them, but there are nothing that mention about the source concepts.

Where can I find them?


In general, if an optimization pass in LLVM is based off of an academic research paper, a reference to the paper being cited is listed in the comments for the implementing file. See, e.g., SLPVectorizer.cpp or NewGVN.cpp.

However, many optimization passes are not directly based on papers and are instead “well-known” optimization passes you’d cover in regular compiler courses–the loop passes are a salient example here–and these won’t have such comments. In general, though, such concepts are old enough in compiler land that I wouldn’t expect to see an academic paper actually cite where they come from: you’d either cite the more relevant recent work in the field, or if you actually need a cite to the general concept, you can just drop a cite to a well-known compiler textbook that talks about it, such as Allen and Kennedy’s “Optimizing compilers for modern architectures” (which is probably the cite I’d use for loop optimizations).

Thanks for your reply!