This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Generate annotations for a binary translator
- From: Ian Lance Taylor <iant at google dot com>
- To: ééä <chenwj at iis dot sinica dot edu dot tw>
- Cc: gcc at gcc dot gnu dot org
- Date: Mon, 13 Jun 2011 13:40:01 -0700
- Subject: Re: Generate annotations for a binary translator
- References: <mcr7h9va1ta.fsf@coign.corp.google.com> <20110513033505.GA79308@cs.nctu.edu.tw> <mcrtycz8aaa.fsf@coign.corp.google.com> <20110516085156.GA67683@cs.nctu.edu.tw> <mcrei3y4cmh.fsf@coign.corp.google.com> <20110517053946.GA99002@cs.nctu.edu.tw> <mcrzkmlzur7.fsf@coign.corp.google.com> <20110517090528.GA56624@cs.nctu.edu.tw> <20110609053825.GA68628@cs.nctu.edu.tw> <mcr8vtb7bn1.fsf@coign.corp.google.com> <20110613062757.GA57357@cs.nctu.edu.tw>
ééä <chenwj@iis.sinica.edu.tw> writes:
>> > At the end of the link belows,
>> > http://gcc.gnu.org/onlinedocs/gccint/Maintaining-the-CFG.html#Maintaining-the-CFG
>> >
>> > It says,
>> >
>> > "Note that at present, the representation of control flow in the tree
>> > representation is discarded before expanding to RTL. Long term the CFG
>> > should be maintained and "expanded" to the RTL representation along
>> > with the function tree itself."
>> >
>> > Does this mean in the end of GCC compilation, the CFG information is
>> > lost? Thanks!
>>
>> That documentation is out of date. The CFG is now retained through most
>> of the RTL passes.
>
> The comment on function gimple_expand_cfg in gcc/cfgexpand.c prove the
> document is wrong, right?
>
> "We do conversion per basic block and preserve/update the tree CFG.
> This implies we have to do some magic as the CFG can simultaneously
> consist of basic blocks containing RTL and GIMPLE trees."
>
> Is there a way for me to correct the document? Thanks!
Sure: the document source is gcc/doc/cfg.texi. Thanks.
Ian