diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3ac3a3fb3a3ed07ebe6048609d6039489f30eb17..2f39a9d0e55a6a23a1c6d53d43bb50eac57aa6c0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2000-11-21  Richard Henderson  <rth@redhat.com>
+
+	* config/i386/i386.c (i386_simplify_dwarf_addr): Simplify @GOT
+	references as well.
+
 2000-11-21  Bernd Schmidt  <bernds@redhat.co.uk>
 
 	* loop.c (consec_sets_giv): If the reg we're examining is anything
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 8e54acc5a6095ceeaac57968a530ed41e353f094..ca3881f11938f76f86a71badd0a01a538a91dfcd 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -3068,13 +3068,15 @@ i386_simplify_dwarf_addr (orig_x)
 
   x = XEXP (XEXP (x, 1), 0);
   if (GET_CODE (x) == UNSPEC
-      && XINT (x, 1) == 7)
+      && (XINT (x, 1) == 6
+	  || XINT (x, 1) == 7))
     return XVECEXP (x, 0, 0);
 
   if (GET_CODE (x) == PLUS
       && GET_CODE (XEXP (x, 0)) == UNSPEC
       && GET_CODE (XEXP (x, 1)) == CONST_INT
-      && XINT (XEXP (x, 0), 1) == 7)
+      && (XINT (XEXP (x, 0), 1) == 6
+	  || XINT (XEXP (x, 0), 1) == 7))
     return gen_rtx_PLUS (VOIDmode, XVECEXP (XEXP (x, 0), 0, 0), XEXP (x, 1));
 
   return orig_x;