aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/sparc/sparc.c
diff options
context:
space:
mode:
authorJim Wilson <wilson@gcc.gnu.org>1993-01-25 12:19:46 -0800
committerJim Wilson <wilson@gcc.gnu.org>1993-01-25 12:19:46 -0800
commit019c2b2495428713f635b18e63d32c872bd234b4 (patch)
tree22cd065f968c73a9eee484f8bd403e719e0f9db7 /gcc/config/sparc/sparc.c
parent4c1dfa8ff35940ed6f6619e5378b40de8df1dc88 (diff)
downloadgcc-019c2b2495428713f635b18e63d32c872bd234b4.zip
gcc-019c2b2495428713f635b18e63d32c872bd234b4.tar.gz
gcc-019c2b2495428713f635b18e63d32c872bd234b4.tar.bz2
(print_operand): Delete '@' case.
(output_fp_move_double): Delete FP_REG to GENERAL_REG and vice versa copy support. (output_fp_move_quad): Likewise. From-SVN: r3334
Diffstat (limited to 'gcc/config/sparc/sparc.c')
-rw-r--r--gcc/config/sparc/sparc.c35
1 files changed, 5 insertions, 30 deletions
diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c
index bc64f54..da1c241 100644
--- a/gcc/config/sparc/sparc.c
+++ b/gcc/config/sparc/sparc.c
@@ -1440,24 +1440,14 @@ output_fp_move_double (operands)
if (FP_REG_P (operands[1]))
return "fmovs %1,%0\n\tfmovs %R1,%R0";
else if (GET_CODE (operands[1]) == REG)
- {
- if ((REGNO (operands[1]) & 1) == 0)
- return "std %1,[%@-8]\n\tldd [%@-8],%0";
- else
- return "st %R1,[%@-4]\n\tst %1,[%@-8]\n\tldd [%@-8],%0";
- }
+ abort ();
else
return output_move_double (operands);
}
else if (FP_REG_P (operands[1]))
{
if (GET_CODE (operands[0]) == REG)
- {
- if ((REGNO (operands[0]) & 1) == 0)
- return "std %1,[%@-8]\n\tldd [%@-8],%0";
- else
- return "std %1,[%@-8]\n\tld [%@-4],%R0\n\tld [%@-8],%0";
- }
+ abort ();
else
return output_move_double (operands);
}
@@ -1478,25 +1468,15 @@ output_fp_move_quad (operands)
{
if (FP_REG_P (op1))
return "fmovs %1,%0\n\tfmovs %R1,%R0\n\tfmovs %S1,%S0\n\tfmovs %T1,%T0";
- if (GET_CODE (op1) == REG)
- {
- if ((REGNO (op1) & 1) == 0)
- return "std %1,[%@-8]\n\tldd [%@-8],%0\n\tstd %S1,[%@-8]\n\tldd [%@-8],%S0";
- else
- return "st %R1,[%@-4]\n\tst %1,[%@-8]\n\tldd [%@-8],%0\n\tst %T1,[%@-4]\n\tst %S1,[%@-8]\n\tldd [%@-8],%S0";
- }
+ else if (GET_CODE (op1) == REG)
+ abort ();
else
return output_move_quad (operands);
}
else if (FP_REG_P (op1))
{
if (GET_CODE (op0) == REG)
- {
- if ((REGNO (op0) & 1) == 0)
- return "std %1,[%@-8]\n\tldd [%@-8],%0\n\tstd %S1,[%@-8]\n\tldd [%@-8],%S0";
- else
- return "std %S1,[%@-8]\n\tld [%@-4],%T0\n\tld [%@-8],%S0\n\tstd %1,[%@-8]\n\tld [%@-4],%R0\n\tld [%@-8],%0";
- }
+ abort ();
else
return output_move_quad (operands);
}
@@ -2706,11 +2686,6 @@ print_operand (file, x, code)
else
abort ();
return;
- case '@':
- /* Print out what we are using as the frame pointer. This might
- be %fp, or might be %sp+offset. */
- fputs (frame_base_name, file);
- return;
case 'R':
/* Print out the second register name of a register pair or quad.
I.e., R (%o0) => %o1. */