From cee93a68b368d438c0425f9bb32f4d2f2a5846f1 Mon Sep 17 00:00:00 2001 From: Matthias Braun Date: Wed, 25 Nov 2009 17:37:18 +0000 Subject: [PATCH] vfnodes supporting addressmode did not keep to res, flags, M standards for outputs [r26742] --- ir/be/ia32/ia32_spec.pl | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/ir/be/ia32/ia32_spec.pl b/ir/be/ia32/ia32_spec.pl index 5c0ba3fa4..9d88e8f45 100644 --- a/ir/be/ia32/ia32_spec.pl +++ b/ir/be/ia32/ia32_spec.pl @@ -2128,8 +2128,10 @@ Conv_FP2FP => { vfadd => { # irn_flags => "R", state => "exc_pinned", - reg_req => { in => [ "gp", "gp", "none", "vfp", "vfp", "fpcw" ], out => [ "vfp" ] }, + reg_req => { in => [ "gp", "gp", "none", "vfp", "vfp", "fpcw" ], + out => [ "vfp", "none", "none" ] }, ins => [ "base", "index", "mem", "left", "right", "fpcw" ], + outs => [ "res", "dummy", "M" ], am => "source,binary", latency => 4, units => [ "VFP" ], @@ -2140,8 +2142,10 @@ vfadd => { vfmul => { # irn_flags => "R", state => "exc_pinned", - reg_req => { in => [ "gp", "gp", "none", "vfp", "vfp", "fpcw" ], out => [ "vfp" ] }, + reg_req => { in => [ "gp", "gp", "none", "vfp", "vfp", "fpcw" ], + out => [ "vfp", "none", "none" ] }, ins => [ "base", "index", "mem", "left", "right", "fpcw" ], + outs => [ "res", "dummy", "M" ], am => "source,binary", latency => 4, units => [ "VFP" ], @@ -2152,8 +2156,10 @@ vfmul => { vfsub => { # irn_flags => "R", state => "exc_pinned", - reg_req => { in => [ "gp", "gp", "none", "vfp", "vfp", "fpcw" ], out => [ "vfp" ] }, + reg_req => { in => [ "gp", "gp", "none", "vfp", "vfp", "fpcw" ], + out => [ "vfp", "none", "none" ] }, ins => [ "base", "index", "mem", "minuend", "subtrahend", "fpcw" ], + outs => [ "res", "dummy", "M" ], am => "source,binary", latency => 4, units => [ "VFP" ], @@ -2163,10 +2169,11 @@ vfsub => { vfdiv => { state => "exc_pinned", - reg_req => { in => [ "gp", "gp", "none", "vfp", "vfp", "fpcw" ], out => [ "vfp", "none" ] }, + reg_req => { in => [ "gp", "gp", "none", "vfp", "vfp", "fpcw" ], + out => [ "vfp", "none", "none" ] }, ins => [ "base", "index", "mem", "dividend", "divisor", "fpcw" ], + outs => [ "res", "dummy", "M" ], am => "source,binary", - outs => [ "res", "M" ], latency => 20, units => [ "VFP" ], attr_type => "ia32_x87_attr_t", -- 2.20.1