updates

New versions of wig compilers

All versions of wig compilers have been updated (wig4, wig10, wig18 and perfectwig).
  • For the C-based compilers there are now two binaries for each of them in ~hendren/WIG/Bin.
    • wig4, wig18 and perfectwig are Sparc Solaris binaries. Run them on mimi or willy.
    • bsdwig4, bsdwig18 and bsdperfectwig are FreeBSD binaries. Run them on any FreeBSD machine (for example, lab4-x).
  • The Java-based compiler for wig10 has also been updated. It can be run from any machine with Java.

What has been fixed?

  • All compilers now produce code that refers to the correct directory for the runwig.c and/or runwig.h libraries. These were broken because the home directory structures had been changed, but now they should be fine.
  • Some WIG compilers produce code where strings may start on one line and continue on another line. For example, code that looks like:
    printf("the beginning of a string
     the ending of the string");
    

    It turns out that older versions of gcc (version 2.x) allowed this by default, whereas newer versions (version 3.x) do not. This has been fixed for each compiler by either:

    • rewriting the code generator to not produce such code (this is what your WIG compilers should do)
    • rewriting the code that produces the install script to use gcc -E -traditional .... , which forces gcc to allow multi-line strings.

What is still broken?

  • Unfortunately it seems that there is a mismatch now between the binaries produced on the FreeBSD machines in the lab, and the binaries expected by the cs.mcgill.ca web server. Apparently this is due to the fact that the server is running older software than the lab. I have asked the SOCS technical support to look into this, and I hope this will be resolved very soon.
  • Some of the "tiny" examples on the WIG Examples web page will not run now, because I recompiled them with the new compilers. I didn't touch any of the other examples, so they should be ok.

Can I proceed with my deliverable?

  • Yes, please proceed making your WIG benchmarks. You can compile them, and you can look at the C output that the compilers are producing. You can also run the install scripts (in order to verify that the generated code compiles). However, until the problem with the server is fixed you cannot run the WIG service.

Maintained by Laurie J. Hendren. Last modified Sat Oct 2 07:34:03 EDT 2004. [HOME]
Compiler research projects: Soot, a Java analysis, optimization and transformation toolkit ---- abc, an AspectJ compiler. (AspectJ)