LLVM as compiler course infrastructure - thanks!

Charles Fischer and I, at the University of Wisconsin - Madison, have adapted our CS department's graduate compilers course to use LLVM. We've found it quite commodious, and a vast improvement on the system we'd been using previously.

So, first of all, to the LLVM devs - thanks many times over for making LLVM as good as it is. I admit that I haven't seen many, but LLVM is easily the least horrible compilation system I've ever worked with. :slight_smile:

Also, a question: about how much work do you suspect is required to make `llc` dynamically pluggable in a manner similar to `opt`? If ... someone ... was to do this plumbing in a reasonable way, would it likely get pulled up into a later version?

If you're interested, you can have a look at the kinds of assignments we're doing with LLVM here:


Thanks again,
- Matt Elder


I've exchanged email with Chuck and I'm glad to hear your experience with LLVM for your class has been positive. Since the project due date is past, I'd be interested to hear how you think the students found working with LLVM -- was it hard or easy to learn, and what parts were the most difficult. We can take that discussion off list ('reply' will go to llvmdev by default).

I have a collection of course projects for both an introductory and an advanced compiler class that use LLVM. I am interested in collecting materials for additional projects that can be made available for other faculty. If you are willing to contribute your project materials, along with a little help to make it usable by others, I would love to be able to include it in my collection.


Associate Professor, Computer Science
University of Illinois at Urbana-Champaign

You can use llc -load plugin.so to load codegen or GC modules today.

— Gordon