From 87fbdf7b779372ecf694057d8538d454770cb4c9 Mon Sep 17 00:00:00 2001
From: kazu <kazu@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Mon, 23 Dec 2002 07:46:32 +0000
Subject: [PATCH] 	* config/h8300/h8300.c (output_a_shift): Remove unused
 code.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@60423 138bc75d-0d04-0410-961f-82ee72b054a4
---
 gcc/ChangeLog            |  4 ++++
 gcc/config/h8300/h8300.c | 32 +++++++++-----------------------
 2 files changed, 13 insertions(+), 23 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 65e8ed77067d..114be4503a81 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2002-12-23  Kazu Hirata  <kazu@cs.umass.edu>
+
+	* config/h8300/h8300.c (output_a_shift): Remove unused code.
+
 2002-12-22  Mark Mitchell  <mark@codesourcery.com>
 
 	* stor-layout.c (update_alignment_for_field): Guard use of
diff --git a/gcc/config/h8300/h8300.c b/gcc/config/h8300/h8300.c
index 0eb973dc078f..6d8cbb637a19 100644
--- a/gcc/config/h8300/h8300.c
+++ b/gcc/config/h8300/h8300.c
@@ -3104,29 +3104,15 @@ output_a_shift (operands)
 	      output_asm_insn (info.shift1, operands);
 
 	    /* Now mask off the high bits.  */
-	    switch (mode)
-	      {
-	      case QImode:
-		sprintf (insn_buf, "and\t#%d,%%X0", mask);
-		cc_status.value1 = operands[0];
-		cc_status.flags |= CC_NO_CARRY;
-		break;
-	      case HImode:
-		if (TARGET_H8300)
-		  {
-		    sprintf (insn_buf, "and\t#%d,%%s0\n\tand\t#%d,%%t0",
-			     mask & 255, mask >> 8);
-		  }
-		else
-		  {
-		    sprintf (insn_buf, "and.w\t#%d,%%T0", mask);
-		    cc_status.value1 = operands[0];
-		    cc_status.flags |= CC_NO_CARRY;
-		  }
-		break;
-	      default:
-		abort ();
-	      }
+	    if (mode == QImode)
+	      sprintf (insn_buf, "and\t#%d,%%X0", mask);
+	    else if (mode == HImode && (TARGET_H8300H || TARGET_H8300S))
+	      sprintf (insn_buf, "and.w\t#%d,%%T0", mask);
+	    else
+	      abort ();
+
+	    cc_status.value1 = operands[0];
+	    cc_status.flags |= CC_NO_CARRY;
 	    output_asm_insn (insn_buf, operands);
 	    return "";
 	  }
-- 
GitLab