This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: optimization/7726: Fails to produce the correct implementation-dependant output for loop optimization under x86 -> optimizes away a loop that should complete


> State-Changed-From-To: open->feedback
> State-Changed-By: bangerth
> State-Changed-When: Fri Dec  6 13:01:29 2002
> State-Changed-Why:
>     Hm, the code goes into an endless loop on my system also
>     without optimization and with all the compilers I have
>     (i.e. gcc2.95, 3.0, 3.2, 3.2.2pre, 3.3pre, and icc7).
>     Are you sure that the overflow you are exploiting is
>     really defined in ISO C?

Unsigned overflow is defined. It is GCC's inconsistent
implementation-dependant conversion that is causing the problem.

"The comparison is between to signed values that gcc
must convert. This conversion is implementation-dependant.
As such, the implementation-dependant behaviour cannot
be optimized away and must remain consistent across
optimization levels." - Carlos

c.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]