This is the mail archive of the gcc@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] |
> if (TARGET_FLOAT_FORMAT == IEEE_FLOAT_FORMAT > && did_reverse_condition && code != NE && code != EQ > && ! flag_fast_math > && GET_MODE_CLASS (GET_MODE (op0)) == MODE_FLOAT) > return 0; > > That means > > double x; > int y; > ... > if (x > 0.2) > y = 1; > > will never turn into a conditional move for IEEE math and flag_fast_math > is not zero. Any reasons for that? No, read again. This test applies only when flag_fast_math is zero. Reversing a inequality comparison does not work correctly when handling NaNs.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |