http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55011



--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> 2012-10-22 
10:03:56 UTC ---

We are iterating between



Visiting PHI node: s_56 = PHI <_53(3), _12(12)>



    Argument #0 (3 -> 4 executable)

        _53

        Value: [63740, +INF]  EQUIVALENCES: { _19 } (1 elements)



    Argument #1 (12 -> 4 executable)

        _12

        Value: UNDEFINED

Meeting

  [63740, +INF]  EQUIVALENCES: { _19 } (1 elements)

and

  UNDEFINED

to

  [63740, +INF]  EQUIVALENCES: { } (0 elements)

Found new range for s_56: [63740, +INF]



Simulating statement (from ssa_edges): s_56 = PHI <_53(3), _12(12)>



Visiting PHI node: s_56 = PHI <_53(3), _12(12)>



    Argument #0 (3 -> 4 executable)

        _53

        Value: UNDEFINED



    Argument #1 (12 -> 4 executable)

        _12

        Value: UNDEFINED

Meeting

  UNDEFINED

and

  UNDEFINED

to

  UNDEFINED

Found new range for s_56: UNDEFINED



Simulating statement (from ssa_edges): s_56 = PHI <_53(3), _12(12)>



Visiting PHI node: s_56 = PHI <_53(3), _12(12)>



    Argument #0 (3 -> 4 executable)

        _53

        Value: [63740, +INF]  EQUIVALENCES: { _19 } (1 elements)



    Argument #1 (12 -> 4 executable)

        _12

        Value: UNDEFINED

Meeting

  [63740, +INF]  EQUIVALENCES: { _19 } (1 elements)

and

  UNDEFINED

to

  [63740, +INF]  EQUIVALENCES: { } (0 elements)

Found new range for s_56: [63740, +INF]



which means _53 has bogus transitions:



Visiting statement:

_53 = ASSERT_EXPR <_19, _19 > 63739>;



Intersecting

  [63740, +INF]  EQUIVALENCES: { _19 } (1 elements)

and

  [0, +INF]

to

  [63740, +INF]  EQUIVALENCES: { _19 } (1 elements)

Found new range for _53: [63740, +INF]



Visiting statement:

_53 = ASSERT_EXPR <_19, _19 > 63739>;



Intersecting

  [63740, +INF]  EQUIVALENCES: { _19 } (1 elements)

and

  [15935, 32767]

to

  UNDEFINED

Found new range for _53: UNDEFINED



I have a patch.

Reply via email to