Sent from my iPhone

> On Aug 14, 2014, at 19:52, Nico Weber <[email protected]> wrote:
> 
>> On Thu, Aug 14, 2014 at 4:40 PM, Rafael Avila de Espindola 
>> <[email protected]> wrote:
>> 
>> > One drawback is that the new ARMSubtargetCommon.cpp file is in the library 
>> > ARMCodeGen, so clang's driver now depends on ARMCodeGen, which is a bit 
>> > icky. I could make it a standalone target I suppose, but that standalone 
>> > target's cpp file depends on the ARMCodeGen target's tablegen output, so 
>> > that wouldn't be a huge win. And since the driver processes flags related 
>> > to ARMCodeGen, the dependency doesn't seem _that_ icky to me.
>> >
>> > (There are several places in the driver that say "FIXME: this is 
>> > duplicating subtarget code", both for ARM and x86, this patch removes one 
>> > of them.)
>> 
>> Does the driver need to process the  -mfpu just to pass the results to -cc1 
>> or is the information needed for something like deciding which libraries to 
>> link with? If just -cc1, maybe we could just pass down the raw option?
> 
> It's possible, but translating flags into -target-option flags in the driver 
> is pretty pervasive in the driver (63 "Features.push_back" calls in 
> lib/Driver/Tools.cpp). So that'd be fairly different from the current code, 
> and I'm not sure if Frontend depending on ARMCodeGen is much better than 
> Driver depending on it?

Yes, I agree, they are both equally odd.

What is the size impact in libclang? It links with lib/Driver, no?

Short of creating a small libTargetInfo for each target your approach is 
probably the best. We discussed doing something like it for solving the data 
layout duplication, but I never got around to implementing it :-(

Cheers,
Rafael
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to