[LLVMdev] -gcolumn-info and PR 14106

Adrian Prantl aprantl at apple.com
Thu Jun 26 12:39:33 PDT 2014


> On Jun 26, 2014, at 12:31 PM, Eric Christopher <echristo at gmail.com> wrote:
> 
> On Thu, Jun 26, 2014 at 9:46 AM, Diego Novillo <dnovillo at google.com> wrote:
>> For -Rpass, and other related uses, I am looking at enabling column info by
>> default. David pointed me at PR 14106, which seems to be the original
>> motivation for introducing -gcolumn-info. However, I am finding no
>> differences when using it on this test.  I've tried building with/without
>> -gcolumn-info and found almost no difference in compile time (+0.4%):
>> 
>> $ /usr/bin/time clang -w -fno-builtin -O2 -g -gcolumn-info test-tgmath2.i
>> 474.38user 2.10system 7:58.00elapsed 99%CPU
>> 
>> $ /usr/bin/time clang -w -fno-builtin -O2 -g  test-tgmath2.i
>> 472.63user 2.02system 7:56.11elapsed 99%CPU
>> 
>> I'm running clang from trunk @211693.
>> 
>> The size of all debug sections (according to readelf) are:
>> 
>> - with -g -gcolumn-info: 836,177 bytes
>> - with -g: 826,552 bytes
>> 
>> That's a growth of about 1% in debug info size.
>> 
>> These numbers are in line with a comparative build I did of our internal
>> codebase. The build included a massive number of C and C++ files. For C
>> files, total file size grows by 1% on average. For C++ files the average
>> growth is around 0.2%. Build times are unchanged as well.
>> 
>> Does anyone remember any other edge case I may want to try? It seems to me
>> that these differences are not really worth the effort of having a flag
>> controlling column information.
>> 
> 
> I remember it being larger last I'd looked, but I know I didn't have
> quite the range that you just tested. I'm all for turning it on -
> especially if it doesn't really cost us anything.
> 
> Adrian: any issues on your end before I turn it on by default and
> remove the option? This will also obviate a few of the patches that
> you had to distinguish call sites as well I think.

No, please do! I’ve been wanting to enable it by default for a long time. We can also get rid of all uses of forceColumnInfo this way.

-- adrian
> 
> -eric





More information about the llvm-dev mailing list