From: Josef E. <za...@za...> - 2009-11-24 22:26:46
|
Hello! I want to summarize the current status of the avr-llvm project and the next steps from my point of view. The current version of llvm is 2.6 and was release on 23.10.09 [1]. The 2.6 branch of avr-llvm can be built (successfully on linux) following the procedure described below: - Get the LLVM 2.6 release (e.g. via svn) - Get the avr-llvm 2.6 branch - setup the build environment - configure and build On Linux: $ svn co http://llvm.org/svn/llvm-project/llvm/tags/RELEASE_26 llvm $ svn co https://avr-llvm.svn.sourceforge.net/svnroot/avr-llvm/branches/release_26 avr-llvm $ cp -rf avr-llvm/AVR llvm/lib/Target/ $ cd llvm $ patch -p0 < ../avr-llvm/patches/configure.ac.diff $ patch -p0 < ../avr-llvm/patches/configure.diff $ patch -p0 < ../avr-llvm/patches/triple.diff $ cd .. $ mkdir build $ cd build $ ../llvm/configure --prefix=$HOME/usr/avr-llvm/ --disable-optimized --enable-targets=avr $ make Compiling against llvm trunk is currently broken but since the 2.6 release is not that old this should be easy to fix. The question is if we should work on trunk or on the latest release? I would prefer working on trunk. Anyway, the avr-llvm tools like llc don't produce avr assembly code yet. In my opinion we should start with simple llvm IR test cases like define i8 @main() { ret i8 1 } and add at least one test case for every feature added. As soon as the back-end produces correct code we should consider setting up a testing framework. Another topic for discussion is documentation. In my opinion a good project documentation is essential in order to get more people into development. We should also talk about coding standards, commit guidelines, etc. It is easier to do this at the 'beginning' than later. Any Suggestions? Thoughts? BR Josef [1] http://llvm.org/releases/2.6/docs/ReleaseNotes.html |