Bug 47645 - Generic vector lowering does not preserve EH information
Summary: Generic vector lowering does not preserve EH information
Status: NEW
Alias: None
Product: gcc
Classification: Unclassified
Component: middle-end (show other bugs)
Version: 4.6.0
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords: wrong-code
Depends on:
Blocks:
 
Reported: 2011-02-08 12:12 UTC by Richard Biener
Modified: 2011-12-15 02:08 UTC (History)
0 users

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed: 2011-12-15 00:00:00


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Richard Biener 2011-02-08 12:12:18 UTC
typedef int __attribute__ ((vector_size (8))) vec;

vec foo (vec v1, vec v2)
{
  try
    {
      return v1 / v2;
    }
  catch (...)
    {
      throw;
    }
}

will be lowered to piecewise operations that do not throw and have no
EH landing pad associated (and blocks not split, etc.).

Split out from PR47639 where this issue uncovers as an ICE.

The vector lowering code needs some re-org to properly transition
EH info.  This bug isn't a regression.
Comment 1 Andrew Pinski 2011-12-15 02:08:50 UTC
confirmed