diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index adbae72ff0952da7c96121d850bf9f5f819735bf..d3ff77705b5600788eb7cf9abb36f1a70990018f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -4,6 +4,8 @@ Wed Nov  3 12:12:59 1999  Bernd Schmidt  <bernds@cygnus.co.uk>
 
 Wed Nov  3 03:26:28 1999  Jeffrey A Law  (law@cygnus.com)
 
+	* pa.md (negdi2): Turn into expander + anonymous pattern.
+
 	* reload.c (find_reloads): Fix typos in recent change.
 
 	* dwarf2out.c: Do not include ctype.h.
diff --git a/gcc/config/pa/pa.md b/gcc/config/pa/pa.md
index 5baf635e820ae97c56a05049e0bcb82cdc9b28a1..d753035d7274ccb2221954a00623f47dd9ef0b7b 100644
--- a/gcc/config/pa/pa.md
+++ b/gcc/config/pa/pa.md
@@ -3623,7 +3623,13 @@
   [(set_attr "type" "binary")
    (set_attr "length" "4")])
 
-(define_insn "negdi2"
+(define_expand "negdi2"
+  [(set (match_operand:DI 0 "register_operand" "")
+	(neg:DI (match_operand:DI 1 "register_operand" "")))]
+  ""
+  "")
+
+(define_insn ""
   [(set (match_operand:DI 0 "register_operand" "=r")
 	(neg:DI (match_operand:DI 1 "register_operand" "r")))]
   ""