This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PR tree-optimization/19337
On Tue, 2005-01-18 at 13:44 +0100, Jan Hubicka wrote:
> > On Thu, 2005-01-13 at 08:50 +0100, Jan Hubicka wrote:
> > > Hi,
> > > the problem here is link pointer being mapped incorrectly during
> > > recursive inlining.
> > >
> > > Honza
> > >
> > > void write_char(char);
> > > int len(char*);
> > > void f(char *a)
> > > {
> > > int col = 0;
> > > int i;
> > > void wchar(char c)
> > > {
> > > if (c == '\t')
> > > {
> > > do {
> > > wchar(' ');
> > > } while ((col%8)!=0);
> > > }
> > > else
> > > {
> > > write_char (c);
> > > col++;
> > > }
> > > }
> > > for(i =0;i<len(a);i++)
> > > {
> > > wchar(*a);
> > > }
> > > }
> > >
> > > 2005-01-13 Jan Hubicka <jh@suse.cz>
> > >
> > > PR tree-optimize/19337
> > > * tree-inlie.c (initialize_inlined_parameters): Copy
> > > saved_static_chain_decl only.
> > Why not this instead?
> >
> > if (fn == current_function_decl)
> > p = DECL_STRUCT_FUNCTION (fn)->saved_static_chain_decl;
> >
> >
> > That seems to work just as well and matches the test used for using
> > the saved_args earlier in the same function.
>
> void write_char(char);
> int len(char*);
> void f(char *a)
> {
> int col = 0;
> int i;
> void wchar(char c)
> {
> if (c == '\t')
> {
> do {
> wchar(' ');
> } while ((col%8)!=0);
> }
> else
> {
> write_char (c);
> col++;
> }
> }
> for(i =0;i<len(a);i++)
> {
> wchar(*a);
> }
> }
>
> 2005-01-13 Jan Hubicka <jh@suse.cz>
>
> PR tree-optimize/19337
> * tree-inlie.c (initialize_inlined_parameters): Copy
> saved_static_chain_decl only.
Approved. Please install, along with the testcase.
Note you've got a typo in your ChangeLog entry "inlie" -> "inline".
Thanks,
jeff