C front-end news

Here are a few bits of news about the C frontend:

1. I have ported it to compile and run under linux. On our research
   machines, it is available here:

   Note that this C compiler will still generate "64-bit" LLVM files, thus
   the code will probably not work right if run through the C backend,
   then compiled on x86. For middle-end work (optimizers) this shouldn't
   matter too much. I did some VERY brief touch testing of LLI on Linux,
   and it ran hello world correctly, so you may have good luck with that.
   If you run into problems with LLI on Linux not running a program
   correctly, please let me know.

2. I have hacked the Makefile.common and Makefile.$(UNAME) to
   automatically pick the right gcc frontend based on the architecture
   being compiled for, so on the research machines, the stock
   Makefile.config will work regardless of whether you are building on
   Linux or Sparc. You can still override the choice of GCC frontend in
   the Makefile.config file if you feel the urge.

3. This rebuild of GCC is actually a correct, clean, cross compiler. I am
   in the process of updating the Sparc version to be built with the same
   process. As part of this change, however, IT IS VERY IMPORTANT that
   you no longer refer to $(GCCINSTALL)/bin/gcc. Instead, use
   $(GCCINSTALL)/bin/llvm-gcc. You will probably have to update your
   local .cshrc to point to the correct location (the LLVM build tree has
   been updated, so you only have to update aliases and stuff).

4. As far as the sparc version of the GCC frontend goes, I am going to
   leave what is in /home/vadve/lattner/cvs/gcc_install alone for the time
   being. It is not correctly built, has problems, and is (among other
   things) huge (217M vs 21M for the x86 build). As soon as my LLVM tree
   is done building on solaris, I will make a new sparc version of the GCC
   frontend available in /home/vadve/lattner/cvs/gcc_install_sparc, with
   all of the nice characteristics of the x86 build.

   In a few weeks, or whenever I think about it, I will nuke the old
   /home/vadve/lattner/cvs/gcc_install directory, so you all should
   transition over sometime in the near future. As long as this tree is
   alive, gcc_install/bin/gcc will be a valid executable.

5. I have a list of some simple instructions for how to configure and
   build the C frontend. No hacks required. If anyone is interested, I
   can make these available on the web site. This is only important if we
   plan to distribute the GCC front-end source.

6. It's possible we could do a binary distro of the x86 version of the GCC
   frontend, which would probably make several 426 people happy. Whether
   or not we can do this, and how we go about it needs to be discussed
   before we do so however.

Anyway, enjoy the new x86 version, this should make life simpler. :slight_smile: