From dd192c2d7f5087a66d64fa65413a050e5e7260a8 Mon Sep 17 00:00:00 2001
From: law <law@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Mon, 28 Jun 1999 03:09:43 +0000
Subject: [PATCH]         * expmed.c (expand_divmod): Ensure unsigned value
 fits in reg_note.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@27796 138bc75d-0d04-0410-961f-82ee72b054a4
---
 gcc/ChangeLog | 4 ++++
 gcc/expmed.c  | 4 +++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0426f63c87a0..968334700e7b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+Mon Jun 28 04:07:27 1999  David Edelsohn  <edelsohn@gnu.org>
+
+	* expmed.c (expand_divmod): Ensure unsigned value fits in reg_note.
+
 Sun Jun 27 02:39:08 1999  Richard Henderson  <rth@cygnus.com>
 
 	* jump.c (jump_optimize_1): Validate the cmov copy to a temporary.
diff --git a/gcc/expmed.c b/gcc/expmed.c
index dc6382c296d2..ffe16fedaf47 100644
--- a/gcc/expmed.c
+++ b/gcc/expmed.c
@@ -3246,7 +3246,9 @@ expand_divmod (rem_flag, code, mode, op0, op1, target, unsignedp)
 			insn = get_last_insn ();
 			if (insn != last
 			    && (set = single_set (insn)) != 0
-			    && SET_DEST (set) == quotient)
+			    && SET_DEST (set) == quotient
+			    && abs_d < ((unsigned HOST_WIDE_INT) 1
+					<< (HOST_BITS_PER_WIDE_INT - 1)))
 			  set_unique_reg_note (insn, 
 			  		       REG_EQUAL,
 					       gen_rtx_DIV (compute_mode,
-- 
GitLab