News for hackers. Stuff that matters.
Re:The LLVM Compiler Infrastructure by saagarjha on Friday December 14, 2018 @09:16PM (#18686618)
> The name "LLVM" itself is not an acronym; it is the full name of the project.

What happened to Lower-Level Virtual Machine?

Re:The LLVM Compiler Infrastructure by cornstalks on Friday December 14, 2018 @09:23PM (#18686644)
From Chris Lattner (http://lists.llvm.org/pipermail/llvm-dev/2011-December/04644...):

> "LLVM" is officially no longer an acronym. The acronym it once expanded too was confusing, and inappropriate almost from day 1. :) As LLVM has grown to encompass other subprojects, it became even less useful and meaningless.

> In short, it is just "The LLVM Project", and LLVM doesn't stand for anything anymore. It is a nice short domain name though

Re:The LLVM Compiler Infrastructure by stdplaceholder on Friday December 14, 2018 @11:23PM (#18687018)
It wasn't ever an acronym. It was an initialism.
Re:The LLVM Compiler Infrastructure by nsstring96 on Friday December 14, 2018 @09:41PM (#18686706)
I think that originally, it was indeed supposed to be an optimizing virtual machine. IIRC, Lattner's PhD thesis might have been about it.
Re:The LLVM Compiler Infrastructure by jcranmer on Friday December 14, 2018 @11:43PM (#18687092)
LLVM was always intended to be a compiler IR rather than a "JIT for C", and the "virtual machine" in the name was named as much to refer to the idea that it's a more direct model of an instantiation of the C abstract machine as any actual ability to perform dynamic optimization.

The big push LLVM made early on was on being able to do ahead-of-time, runtime, and idle-time optimization; the latter of which is mostly reflected in profile-guided optimization. The poor quality of its dynamic optimization [1] and the general reluctance to use profile-guided optimization means that LLVM ended up focusing hard on optimizing ahead-of-time like traditional C compilers. The fact that people got too easily confused about what LLVM actually did caused Lattner to de-acronymize it officially several years ago.

[1] A more difficult problem for C and C++ is that actually collecting enough of the code in a single IR representation is surprisingly hard, as build systems are completely and totally inane, and that's before you start trying to figure out how to glue in things like assembly files or glibc.

Re:The LLVM Compiler Infrastructure by saagarjha on Friday December 14, 2018 @09:52PM (#18686746)
Re:The LLVM Compiler Infrastructure by monocasa on Friday December 14, 2018 @10:02PM (#18686781)
Its current tradeoffs make more sense as a offline compiler than a traditional virtual machine compiler. Best case for using LLVM in a VM is a last tier compilation that's supposed to approach offline compilation. But even projects that have done that like JavaScriptCore have ended up replacing LLVM with their own backend.