Bug 18268 - structure copy propagation not done
Summary: structure copy propagation not done
Status: RESOLVED DUPLICATE of bug 36327
Alias: None
Product: gcc
Classification: Unclassified
Component: tree-optimization (show other bugs)
Version: 4.0.0
: P2 enhancement
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords: diagnostic, missed-optimization
Depends on: 14295
Blocks: 22156 22157
  Show dependency treegraph
 
Reported: 2004-11-01 22:21 UTC by Andrew Pinski
Modified: 2008-12-28 03:11 UTC (History)
3 users (show)

See Also:
Host:
Target: powerpc-*
Build:
Known to work:
Known to fail:
Last reconfirmed: 2005-06-15 03:19:16


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Pinski 2004-11-01 22:21:03 UTC
I think this is a regression from a previous version of 4.0.0

typedef struct
{
  void *ptr1, *ptr2;
  unsigned word;
  unsigned word_bit;
} bitmap_iterator;
void
get_call_expr_operands ()
{
  bitmap_iterator bi;
  bi.ptr1 = 0;
  bi.word = 0;
  bi.word_bit = 0;
start:
  {
    bitmap_iterator bi1 = bi;
    if (bi1.ptr1 != 0)
      goto start;
  }
}
Comment 1 Andrew Pinski 2004-12-07 18:51:32 UTC
Confirmed.
Comment 2 Richard Henderson 2004-12-16 22:07:40 UTC
SRA shouldn't be responsible for this.  There should be a generalized
block copy propagator.  Which would help with copies far larger than
you'd ever expect SRA to handle as well.
Comment 3 Andrew Pinski 2005-09-14 17:34:57 UTC
This is the same issue as PR 14295 so closing as a dup.

*** This bug has been marked as a duplicate of 14295 ***
Comment 4 Andrew Pinski 2008-12-28 03:10:56 UTC
Reopening to ...
Comment 5 Andrew Pinski 2008-12-28 03:11:29 UTC
To mark as a dup of bug 36327.

*** This bug has been marked as a duplicate of 36327 ***