F

Feature creation and Bug finding in LLVM

Solving a backend problem in the LLVM compiler project

F

Feature creation and Bug finding in LLVM

Solving a backend problem in the LLVM compiler project


The problem Feature creation and Bug finding in LLVM solves

Solving the problem of trivial loop optimizations not being performed in the LoopIdiomRecognize pass.

Challenges I ran into

LLVM is an enormous project, with pages and pages of documentation on contribution alone. Initial difficulties were found in finding the area of the codebase to contribute to and recognizing patterns and anti-patterns in the code with the help of the programmer’s manual. With some help from my mentor, I got somewhat accustomed to navigating the codebase.

Understanding the functions and objects used in the codebase was another major problem in the initial phases of the project.
Building was another problem in the initial phases of the project due to the technical limitations of my machine. Much of development was slowed down due to the size of the project and the build time of it. It was minimised to close to an hour by simplifying the build parameters and installing a different linker.

Technologies used

Discussion