I am a professor who wants my students to write a very simple compiler using LLVM. The students will have their own frontends. They will generate machine code after converting their codes to LLVM IR. I just want them to have the basic understanding of LLVM IR. Which tutorial will be best to learn the basics of LLVM IR ? I understand that the documentation in the link https://llvm.org/docs/tutorial/MyFirstLanguageFrontend/index.html is the best document; however, I also understand that this is very elaborate for a beginner to LLVM.
It would be very helpful if in the learning process a few of your interested students update the OCaml Kaleidoscope. It is similar to the tutorial written in C++ but not updated from a long time.
They may have a good chance to learn LLVM IR, LLVM APIs, OCaml binding, writing test cases in LLVM IR using lit and filecheck, patch review process with Phabricator instance (https://reviews.llvm.org/), etc.