preferred platform?

Hi,

What's the state of llvm on various platforms? I've tried working
with it on windows/cygwin a few times, and been fairly frustrated.
I made some abortive efforts on RedHat 9, which also didn't go
so well, but I put much less time into them.

Is there a plan or a timeline to end up with some low-intensity
linux target? Sort of like: grab these three RPMs and go. Having
to get my own binutils and gcc and compile from scratch makes
life hard.

What do things look like on the Mac?

I'm working on an initial implementation of a new language, and
I'm fairly far into the interpreter. Once that's done, I'd like to start
an llvm backend, since it's clearly the coolest thing going. Should
I aim for 1.5, or 2.0, or is it premature to say?

Marshall

Hi,

What's the state of llvm on various platforms? I've tried working
with it on windows/cygwin a few times, and been fairly frustrated.
I made some abortive efforts on RedHat 9, which also didn't go
so well, but I put much less time into them.

Platforms that are used daily include FC2, Redhat something (has issues
with a bad compiler), debian (on alpha and x86), OSX. Other people on
this list use FreeBSD, cygwin, and (partially I think) MSVC.

Is there a plan or a timeline to end up with some low-intensity
linux target? Sort of like: grab these three RPMs and go. Having
to get my own binutils and gcc and compile from scratch makes
life hard.

<shameless debian plug>
If you are tracking testing:
apt-get install llvm llvm-cfe llvm-libs llvm-doc
</shameless debian plug>

What do things look like on the Mac?

OSX is used daily be some developers, and a nightly tester runs on it.

I'm working on an initial implementation of a new language, and
I'm fairly far into the interpreter. Once that's done, I'd like to start
an llvm backend, since it's clearly the coolest thing going. Should
I aim for 1.5, or 2.0, or is it premature to say?

Excellent. I think it depends on how much effort you want to put into
tracking the main tree. Writing for 1.4 or CVS both make sense. I
don't think there are any changes that would make it difficult to port
to 1.5 from 1.4 when it comes out.

Andrew Lenharth
andrewl@debian.org
http://www.lenharth.org/~andrewl/

Marshall,

In addition to Andrew's comments, here's a few of my own:

Hi,

What's the state of llvm on various platforms? I've tried working
with it on windows/cygwin a few times, and been fairly frustrated.
I made some abortive efforts on RedHat 9, which also didn't go
so well, but I put much less time into them.

I was working on the cygwin port but unfortunately that machine's disk
drive crashed (too many nightly builds probably) so work has stopped on
that. There are still issues with cygwin. Talk to Jeff Cohen about MSVC
support. He uses 7.x (I think) and keeps the "win32" directory up to
date with changes to the MSVC project files needed to build LLVM under
Windows. There are some remaining issues, I believe (certain unix-
centric tools don't work like the debugger).

Is there a plan or a timeline to end up with some low-intensity
linux target? Sort of like: grab these three RPMs and go. Having
to get my own binutils and gcc and compile from scratch makes
life hard.

Linux is the natural platform for LLVM. It should work on just about any
modern distribution. We have it running on many as well as FreeBSD,
Solaris and Mac OS X. There are some platform "gotchas" so please make
sure you read:

http://llvm.cs.uiuc.edu/docs/GettingStarted.html

first. It will save you vast amounts of time.

As for RPMs and the like, we do have a spec file but I believe its out
of date. One of the "to do" things on my list is to provide LLVM
binaries as part of a commercial compiler (cheap). Haven't gotten there
yet, though.

What do things look like on the Mac?

Pretty good. Code generation is very good on the Mac and getting better
all the time. Its used daily by several developers. With Chris moving on
to Apple, I expect this backend will improve dramatically in the coming
months.

I'm working on an initial implementation of a new language, and
I'm fairly far into the interpreter. Once that's done, I'd like to start
an llvm backend, since it's clearly the coolest thing going. Should
I aim for 1.5, or 2.0, or is it premature to say?

Great! I'd start with the current CVS sources. It won't change much
between here and 1.5 (released in a week or two). If you're going to
take some time before you write the backend, you might consider waiting
for 2.0 (no timeline yet). We are planning several incompatible changes
in the 2.0 release (long put off enhancements to the IR, etc.). But, as
with everything LLVM, the CVS will always compile and generally work on
a daily basis. We develop incrementally so its generally safe to work
from LLVM and update frequently.

Welcome aboard!

Reid