------- Comment #2 from pinskia at gcc dot gnu dot org 2006-01-02 17:12 ------- Actually this is invalid and GCC is correct to do what it is doing. Quote from the docs: A return of 0 does not indicate that the value is not a constant, but merely that GCC cannot prove it is a constant with the specified value of the -O option.
And GCC is able to thread the jump and prove that it is used as a constant so it lowers it to 1 for that bb. -- pinskia at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25639