[cfe-dev] clang vs llc

Eli Friedman eli.friedman at gmail.com
Tue Jun 1 02:20:38 PDT 2010


On Tue, Jun 1, 2010 at 1:18 AM, Luc Bourhis <luc_j_bourhis at mac.com> wrote:
>
> On 1 Jun 2010, at 10:11, Eli Friedman wrote:
>
>> They're doing essentially the same thing.
>
> That was my naive expectation in the first place but then I stumbled upon one of Jeffrey Yasskin's comment in a recent thread:
>
> "The tricky bit for clang seems to be that LLVM is good at propagating constants, but clang isn't, so we may have to generate more IR [...]"
>
> Hence my question.

The comparison there is between the clang generator for LLVM IR (part
of the clang source) and the LLVM IR optimizers (part of the general
LLVM source).  clang has to finish generating IR before we can run the
optimizers.

clang is all linked into one binary, but it still goes through the
same steps as if it generated an IR file, ran opt over it, then ran
llc over the result.

-Eli



More information about the cfe-dev mailing list