On Mon, 22 May 2023, Richard Biener wrote: > On Thu, May 18, 2023 at 11:04 PM Alexander Monakov via Gcc-patches > wrote: > > > > Implement -ffp-contract=on for C and C++ without changing default > > behavior (=off for -std=cNN, =fast for C++ and -std=gnuNN). > > The documentation changes mention the defaults are changed for > standard modes, I suppose you want to remove that hunk. No, the current documentation is incomplete, and that hunk extends it to match the current GCC behavior. Should I break it out to a separate patch? I see this drive-by fix could look confusing — sorry about that. > it would be possible to do > > *expr_p = build_call_expr_internal (ifn, type, ops[0], ops[1]. ops[2]); > return GS_OK; > > and not worry about temporary creation and gimplifying of the operands. > That would in theory also leave the possibility to do this during > genericization instead (and avoid the guard against late invocation of > the hook). Ah, no, I deliberately decided against that, because that way we would go via gimplify_arg, which would emit all side effects in *pre_p. That seems wrong if arguments had side-effects that should go in *post_p. Thanks. Alexander > Otherwise it looks OK, but I'll let frontend maintainers have a chance to look > as well. > > Thanks for tackling this long-standing issue. > Richard.