diff options
author | Mark Mitchell <mark@codesourcery.com> | 1999-10-22 15:59:21 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 1999-10-22 15:59:21 +0000 |
commit | 7ebb782bd0e9d21944f2aaf15d780f7377b3748a (patch) | |
tree | a8b6b237248eb116635ae04a3366096b8eed4a2f | |
parent | 8f9ca9127473a43ba75f03fbfc30c32e9984c982 (diff) | |
download | gcc-7ebb782bd0e9d21944f2aaf15d780f7377b3748a.zip gcc-7ebb782bd0e9d21944f2aaf15d780f7377b3748a.tar.gz gcc-7ebb782bd0e9d21944f2aaf15d780f7377b3748a.tar.bz2 |
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
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/i386/i386.md | 102 |
2 files changed, 56 insertions, 51 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6646c8c..b21a883 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Fri Oct 22 09:03:44 1999 Mark Mitchell <mark@codesourcery.com> + + * i386.md: Add missing `y' modifiers to uses of fst, fstp, fld, + and fld. + 1999-10-22 Bruce Korb <autogen@linuxbox.com> * fixinc/README: document the "mach" machine matching test diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index 22a081c..e6c3ddc 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")]) |