From 3bbb735576a33e338dbf3d303349e1f4906083a8 Mon Sep 17 00:00:00 2001 From: Christoph Mallon Date: Fri, 19 Oct 2007 20:29:30 +0000 Subject: [PATCH] Make the emit sequences of ShrD and ShlD probably more correct by copying first and shifting after that. [r16293] --- ir/be/ia32/ia32_spec.pl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ir/be/ia32/ia32_spec.pl b/ir/be/ia32/ia32_spec.pl index a6390a2ea..438585920 100644 --- a/ir/be/ia32/ia32_spec.pl +++ b/ir/be/ia32/ia32_spec.pl @@ -722,8 +722,8 @@ ShlD => { # see ShrD about the strange out constraint reg_req => { in => [ "gp", "gp", "ecx" ], out => [ "!in" ] }, ins => [ "left_high", "left_low", "right" ], - emit => ". shld%M %SB2, %S1, %S0\n". - ". movl %S0, %D0", + emit => ". movl %S0, %D0". + ". shld%M %SB2, %S1, %D0\n", latency => 6, units => [ "GP" ], mode => $mode_gp, @@ -784,8 +784,8 @@ ShrD => { irn_flags => "R", reg_req => { in => [ "gp", "gp", "ecx" ], out => [ "!in" ] }, ins => [ "left_high", "left_low", "right" ], - emit => ". shrd%M %SB2, %S1, %S0\n". - ". movl %S0, %D0", + emit => ". movl %S0, %D0". + ". shld%M %SB2, %S1, %D0\n", latency => 6, units => [ "GP" ], mode => $mode_gp, -- 2.20.1