[google/gcc-4_9] Add -ftwo-level-line-tables and -gline-tables-only options

Cary Coutant ccoutant@google.com
Thu Jan 29 20:15:00 GMT 2015


>>> Is it correct that block_num has 1-1 mapping with block_table. And
>>> block_table has 1-1 mapping with logical_table?
>>
>> The first part, yes -- there's one entry in block_table for each
>> block_num in the function tree. But two or more blocks may map to a
>> single logical, and some blocks may not correspond to a logical at all
>> -- if dwarf2out_source_line() is never called for a block, I'll never
>> create a logical for it.
>
> I don't understand why multiple blocks may map to a single
> logical_entry. Can you give an example?

Sorry, you may be right that two different block cannot map to a
single logical entry. But I don't think that's relevant. I create a
logical for a specific combination of
file/line/discriminator/subprog/context, which I obtain from the block
entry. It is definitely possible for many logicals to map to a single
block, though, so there is not a 1-1 mapping.

-cary



More information about the Gcc-patches mailing list