LLVM / C--

C--'s weakness is it's incompleteness (missing many major features),
instability/bugginess, poor performance (both time to compile and the
generated code), lack of high-level optimizations, lack of ABI
compatibility with the native tools, lack of C++ frontend support, and the
small size of its community.

To quote Tony Hoare :

"premature optimization is the root of all evil."

"That would then force us to choose a
versatile target architecture (such as PPC) and minimize
architecture-dependent optimizations."

http://www.cs.ualberta.ca/~pengzhao/open64-devel/msg00205.html

Will we be able to retarget easily LLVM ?

Has it a sense to retarget a compiler ?

Nowadays, this is the holy grail, if not we will not be able to get rid of
legacy architectures ...

For example, here is cutting-edge stuff in the embedded design :

http://www.sandbridgetech.com/sandbridge_solutions.htm

But when you ask where is the compiler, there is nobody to answer to your
question ... :slight_smile:

The goal of C-- is to have a multiple language/architecture framework.

Personally, I believe that if we don't follow this philosophy, we will fall
into the GCC game and have a painful retargetable compiler ...

I believe that in the compiler design issues, the main concern will be : What
is our philosophy ?

"In order" or "out of order" :The programmers do/ do not learn to optimise
their algorithms... Who does what ? :slight_smile:

The secular war ... x86 vs PPC.

Note : For me it's PPC ... :slight_smile:

And why doesn't LLVM use lcc instead of gcc ?

Best Regards,

      WIll

[snips]

And why doesn't LLVM use lcc instead of gcc ?

I have doubt so let me ask. Do you understand what is LLVM ?

>C--'s weakness is it's incompleteness (missing many major features),
>instability/bugginess, poor performance (both time to compile and the
>generated code), lack of high-level optimizations, lack of ABI
>compatibility with the native tools, lack of C++ frontend support, and the
>small size of its community.

To quote Tony Hoare :

"premature optimization is the root of all evil."

You are taking that quote out of context. Hoare is refering to people
who try to optimize their code before making sure that it runs
correctly, not an optimizing compiler (such as LLVM). (Of course, if
you don't want optimizations, simply use -O0 on the command line
during compilation.)

Will we be able to retarget easily LLVM ?

Has it a sense to retarget a compiler ?

Yes of course. It supports C, C++, and Objective-C. It also has many
different back-ends: PowerPC, X86, X86-64, Alpha, ARM, etc. And it has
many target-independent optimizations.

"In order" or "out of order" :The programmers do/ do not learn to optimise
their algorithms... Who does what ? :slight_smile:

I don't follow...What does this have to do with an optimizing compiler?

And why doesn't LLVM use lcc instead of gcc ?

LCC's front-en is not as full-featured as GCC's front-end. In
particular, it doesn't have C++ or Objective-C support. And, note,
that GCC is *only* used as the front-end (i.e., parser) in LLVM.

-bw

[...]

> Will we be able to retarget easily LLVM ?
>
> Has it a sense to retarget a compiler ?
>
Yes of course. It supports C, C++, and Objective-C.

Don't forget Stacker! =)

I'm sorry, I think you misunderstood my question.

What are you trying to *accomplish*?

Philosophy is wonderful, all else being equal. In practice, if you want to accomplish a particular goal, some approachs are more useful than others. Note that, in practice, LLVM lives up to much of the stuff you cited.

What are you trying to build, and how much of the existing support we have do you intend to reuse?

-Chris