From 7ebb782bd0e9d21944f2aaf15d780f7377b3748a Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Fri, 22 Oct 1999 15:59:21 +0000 Subject: [PATCH] i386.md: Add missing `y' modifiers to uses of fst, fstp, fld, and fld. * i386.md: Add missing `y' modifiers to uses of fst, fstp, fld, and fld. From-SVN: r30131 --- gcc/ChangeLog | 5 ++ gcc/config/i386/i386.md | 102 ++++++++++++++++++++-------------------- 2 files changed, 56 insertions(+), 51 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6646c8c399a..b21a88323c7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Fri Oct 22 09:03:44 1999 Mark Mitchell + + * i386.md: Add missing `y' modifiers to uses of fst, fstp, fld, + and fld. + 1999-10-22 Bruce Korb * fixinc/README: document the "mach" machine matching test diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index 22a081c1a25..e6c3ddc81e2 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -1717,9 +1717,9 @@ operands[2] = stack_pointer_rtx; operands[3] = GEN_INT (4); if (find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"sub{l}\\t{%3, %2|%2, %3}\;fstp%z0\\t%0\"; + return \"sub{l}\\t{%3, %2|%2, %3}\;fstp%z0\\t%y0\"; else - return \"sub{l}\\t{%3, %2|%2, %3}\;fst%z0\\t%0\"; + return \"sub{l}\\t{%3, %2|%2, %3}\;fst%z0\\t%y0\"; case 1: return \"push{l}\\t%1\"; @@ -1749,17 +1749,17 @@ case 0: if (REG_P (operands[1]) && find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"fstp\\t%0\"; + return \"fstp\\t%y0\"; else if (STACK_TOP_P (operands[0])) - return \"fld%z1\\t%1\"; + return \"fld%z1\\t%y1\"; else - return \"fst\\t%0\"; + return \"fst\\t%y0\"; case 1: if (find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"fstp%z0\\t%0\"; + return \"fstp%z0\\t%y0\"; else - return \"fst%z0\\t%0\"; + return \"fst%z0\\t%y0\"; case 2: switch (standard_80387_constant_p (operands[1])) @@ -1817,9 +1817,9 @@ operands[2] = stack_pointer_rtx; operands[3] = GEN_INT (8); if (find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"sub{l}\\t{%3, %2|%2, %3}\;fstp%z0\\t%0\"; + return \"sub{l}\\t{%3, %2|%2, %3}\;fstp%z0\\t%y0\"; else - return \"sub{l}\\t{%3, %2|%2, %3}\;fst%z0\\t%0\"; + return \"sub{l}\\t{%3, %2|%2, %3}\;fst%z0\\t%y0\"; case 1: return \"#\"; @@ -1865,17 +1865,17 @@ case 0: if (REG_P (operands[1]) && find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"fstp\\t%0\"; + return \"fstp\\t%y0\"; else if (STACK_TOP_P (operands[0])) - return \"fld%z1\\t%1\"; + return \"fld%z1\\t%y1\"; else - return \"fst\\t%0\"; + return \"fst\\t%y0\"; case 1: if (find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"fstp%z0\\t%0\"; + return \"fstp%z0\\t%y0\"; else - return \"fst%z0\\t%0\"; + return \"fst%z0\\t%y0\"; case 2: switch (standard_80387_constant_p (operands[1])) @@ -1946,9 +1946,9 @@ operands[2] = stack_pointer_rtx; operands[3] = GEN_INT (12); if (find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"sub{l}\\t{%3, %2|%2, %3}\;fstp%z0\\t%0\"; + return \"sub{l}\\t{%3, %2|%2, %3}\;fstp%z0\\t%y0\"; else - return \"sub{l}\\t{%3, %2|%2, %3}\;fst%z0\\t%0\"; + return \"sub{l}\\t{%3, %2|%2, %3}\;fst%z0\\t%y0\"; }" [(set_attr "type" "multi")]) @@ -1990,19 +1990,19 @@ case 0: if (REG_P (operands[1]) && find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"fstp\\t%0\"; + return \"fstp\\t%y0\"; else if (STACK_TOP_P (operands[0])) - return \"fld%z1\\t%1\"; + return \"fld%z1\\t%y1\"; else - return \"fst\\t%0\"; + return \"fst\\t%y0\"; case 1: /* There is no non-popping store to memory for XFmode. So if we need one, follow the store with a load. */ if (! find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"fstp%z0\\t%0\;fld%z0\\t%0\"; + return \"fstp%z0\\t%y0\;fld%z0\\t%y0\"; else - return \"fstp%z0\\t%0\"; + return \"fstp%z0\\t%y0\"; case 2: switch (standard_80387_constant_p (operands[1])) @@ -2426,18 +2426,18 @@ case 0: if (REG_P (operands[1]) && find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"fstp\\t%0\"; + return \"fstp\\t%y0\"; else if (STACK_TOP_P (operands[0])) - return \"fld%z1\\t%1\"; + return \"fld%z1\\t%y1\"; else - return \"fst\\t%0\"; + return \"fst\\t%y0\"; case 1: if (find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"fstp%z0\\t%0\"; + return \"fstp%z0\\t%y0\"; else - return \"fst%z0\\t%0\"; + return \"fst%z0\\t%y0\"; default: abort (); @@ -2456,19 +2456,19 @@ case 0: if (REG_P (operands[1]) && find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"fstp\\t%0\"; + return \"fstp\\t%y0\"; else if (STACK_TOP_P (operands[0])) - return \"fld%z1\\t%1\"; + return \"fld%z1\\t%y1\"; else - return \"fst\\t%0\"; + return \"fst\\t%y0\"; case 1: /* There is no non-popping store to memory for XFmode. So if we need one, follow the store with a load. */ if (! find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"fstp%z0\\t%0\\n\\tfld%z0\\t%0\"; + return \"fstp%z0\\t%y0\\n\\tfld%z0\\t%y0\"; else - return \"fstp%z0\\t%0\"; + return \"fstp%z0\\t%y0\"; default: abort (); @@ -2487,19 +2487,19 @@ case 0: if (REG_P (operands[1]) && find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"fstp\\t%0\"; + return \"fstp\\t%y0\"; else if (STACK_TOP_P (operands[0])) - return \"fld%z1\\t%1\"; + return \"fld%z1\\t%y1\"; else - return \"fst\\t%0\"; + return \"fst\\t%y0\"; case 1: /* There is no non-popping store to memory for XFmode. So if we need one, follow the store with a load. */ if (! find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"fstp%z0\\t%0\\n\\tfld%z0\\t%0\"; + return \"fstp%z0\\t%y0\\n\\tfld%z0\\t%y0\"; else - return \"fstp%z0\\t%0\"; + return \"fstp%z0\\t%y0\"; default: abort (); @@ -2533,11 +2533,11 @@ { case 0: if (find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"fstp%z0\\t%0\"; + return \"fstp%z0\\t%y0\"; else - return \"fst%z0\\t%0\"; + return \"fst%z0\\t%y0\"; case 1: - return \"fstp%z2\\t%2\;fld%z2\\t%2\"; + return \"fstp%z2\\t%y2\;fld%z2\\t%y2\"; } abort (); }" @@ -2551,9 +2551,9 @@ "* { if (find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"fstp%z0\\t%0\"; + return \"fstp%z0\\t%y0\"; else - return \"fst%z0\\t%0\"; + return \"fst%z0\\t%y0\"; }" [(set_attr "type" "fmov")]) @@ -2596,11 +2596,11 @@ { case 0: if (find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"fstp%z0\\t%0\"; + return \"fstp%z0\\t%y0\"; else - return \"fst%z0\\t%0\"; + return \"fst%z0\\t%y0\"; case 1: - return \"fstp%z2\\t%2\;fld%z2\\t%2\"; + return \"fstp%z2\\t%y2\;fld%z2\\t%y2\"; } abort (); }" @@ -2614,9 +2614,9 @@ "* { if (find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"fstp%z0\\t%0\"; + return \"fstp%z0\\t%y0\"; else - return \"fst%z0\\t%0\"; + return \"fst%z0\\t%y0\"; }" [(set_attr "type" "fmov")]) @@ -2659,11 +2659,11 @@ { case 0: if (find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"fstp%z0\\t%0\"; + return \"fstp%z0\\t%y0\"; else - return \"fst%z0\\t%0\"; + return \"fst%z0\\t%y0\"; case 1: - return \"fstp%z2\\t%2\;fld%z2\\t%2\"; + return \"fstp%z2\\t%y2\;fld%z2\\t%y2\"; } abort (); }" @@ -2677,9 +2677,9 @@ "* { if (find_regno_note (insn, REG_DEAD, REGNO (operands[1]))) - return \"fstp%z0\\t%0\"; + return \"fstp%z0\\t%y0\"; else - return \"fst%z0\\t%0\"; + return \"fst%z0\\t%y0\"; }" [(set_attr "type" "fmov")]) -- 2.30.2