On 4/17/21 12:11 AM, NightStrike via Gcc wrote:
I was under the (likely incorrect, please enlighten me) impression
that the meteoric rise of LLVM had more to do with the license
allowing corporate contributors to ship derived works in binary form
without sharing proprietary code.  Intel, IBM, nVidia, etc. are

I think this is a blinkered view. Sure, there are companies that build proprietary toolchains using llvm as the base but I would argue that it is the *result* of the rise of llvm and not the cause.

The cause IMO is accessibility to other projects, most notably compiler researchers and students who find it a lot easier to target llvm than gcc because compiler-as-a-library. License may have been a factor for some of those uses (e.g. I know some who think copyleft is not free enough and BSD style licensing is the *real* freedom), but concluding that it is the major reason is to delude ourselves.

It is also the reason why gcc does not even figure in situations where a larger project would need AOT or JIT compilation; we had to concede that ground all because of the FSF/GNU fears that companies would make proprietary compilers out of a gcc compiler-as-a-library.

Of computer science graduates I have encountered over the last decade, I know few who started their journey with gcc and they were all in the initial part of the decade. In recent years I don't think I encountered any student who works on gcc; many even start with the assumption that gcc is in maintenance mode.

So to summarize, the reasons why llvm is gaining traction *today* (I'm sure there are more):

- Compiler-as-a-library - llvm is the first choice in FOSS projects and use cases are exploding with gcc nowhere in sight

- Mindshare - most students and researchers are focused on it

- Funding - llvm has a much stronger funding ecosystem than gcc. This includes direct funding from the foundation and development workforce from various organizations and universities.

- License - Companies are building proprietary solutions on top of llvm.

Siddhesh

Reply via email to