[llvm-dev] unable to compile llvm with gcc 4.7.4

Renato Golin via llvm-dev llvm-dev at lists.llvm.org
Tue Oct 18 02:54:31 PDT 2016


On 18 October 2016 at 10:17, Sylvain BERTRAND
<sylvain.bertrand at gmail.com> wrote:
> The purpose of my distro is to account for complexity lock-in and to remove
> this as much as possible. This complexity is usually performed in 2 ways:
>  - ultra costly languages/runtime to implement (c++/java...), and I don't think
>    "ultra" is a word big enough.
>  - multiplication of script languages (python2/python3/ruby/javascript/perl/guile...)

A worthy goal, and a niche that has been left untouched by most
distros our there.


> Then c++ compilers and c++ in itself fail big time to achieve my goal, because their
> implementation cost is orders of magnitude higher than a C99 compiler.

Unfortunately, we don't have a C-only front-end, nor you can select
some C-only libraries in LLVM to compile C-only code. Such a goal
should have been set from the beginning, and honestly, it would have
made LLVM's code horrendous to work with.


> Not to mention the sick attitude of many c++ developers which is to maximize the
> complexity of their object oriented design because they think it makes them
> smart.

C++, Perl, Python, Haskell, Ocaml... and I have to say, C programmers
as well. The amount of hackery I've seen in C programs by so called
"smart guys" is astounding.


> Currently mesa glsl compiler is based on llvm for AMD gpu. That's why I'm
> looking at integrating llvm.

Ah! This explains it! Honestly, I'd go back to the mesa guys and check
to see if there is any other back-end that you can use.

Last time I checked (a very long time ago), LLVM-pipe was an
experimental thing. I'm not sure what's the new rage in terms of
rendering libraries nowadays, but I'd be surprised if you couldn't
find some old C-only (or simplified C++) that is still supported in
some way.


> llvm is c++, then I know I'm talking to walls there, but this is a matter of
> sincerity.

You're most certainly not talking to walls, here.

I think most of us understand these problems quite well, and we try
very hard to not fall into the fallacy of language power. We're
constantly refactoring our data structures and algorithms to make them
easier to understand as well as faster and more reliable, so you got
the right crowd here.

However, C++14 has brought a lot of simplicity to the convoluted
C++98, and has made it a much simpler, saner language, and that's why
we're so keen on moving on. Not because it's a cool toy, but because
it makes the code simpler to read and maintain.

But that's not going to save your day. :/

cheers,
--renato


More information about the llvm-dev mailing list