+2017-07-16 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR rtl-optimization/81424
+ * optabs.c (prepare_cmp_insn): Use copy_to_reg instead of force_reg
+ to remove potential trapping from operands if -fnon-call-exceptions.
+
2017-07-16 Jan Hubicka <hubicka@ucw.cz>
* tree-ssa-loop-manip.c (tree_transform_and_unroll_loop): Use
if (cfun->can_throw_non_call_exceptions)
{
if (may_trap_p (x))
- x = force_reg (mode, x);
+ x = copy_to_reg (x);
if (may_trap_p (y))
- y = force_reg (mode, y);
+ y = copy_to_reg (y);
}
if (GET_MODE_CLASS (mode) == MODE_CC)
+2017-07-16 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gnat.dg/opt65.adb: New test.
+
2017-07-16 Jan Hubicka <hubicka@ucw.cz>
* gcc.dg/predict-8.c: Update.
--- /dev/null
+-- { dg-do run }
+-- { dg-options "-O2" }
+
+with Ada.Command_Line; use Ada.Command_Line;
+
+procedure Opt65 is
+
+ procedure Check_Version_And_Help (Version_String : String) is
+ Help_Switch_Present : Boolean := False;
+ Next_Arg : Natural := 1;
+ begin
+ while Next_Arg <= Argument_Count loop
+ declare
+ Next_Argv : constant String := Argument (Next_Arg);
+ begin
+ if Next_Argv = "--help" then
+ Help_Switch_Present := True;
+ end if;
+ Next_Arg := Next_Arg + 1;
+ end;
+ end loop;
+
+ if Help_Switch_Present then
+ raise Program_Error;
+ end if;
+ end;
+
+begin
+ Check_Version_And_Help ("version");
+end;