diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 817abbde2143a808fbb7e782f4c145d8fbf33e79..70ae866463f989144949f50c98a55d5d261fa9f0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2011-11-02  Teresa Johnson  <tejohnson@google.com>
+
+	* config/i386/predicates.md (promotable_binary_operator): Add minus
+	to the list of promotable operators.
+
 2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
 
 	* gthr-single.h, gthr.h: Move to ../libgcc.
diff --git a/gcc/config/i386/predicates.md b/gcc/config/i386/predicates.md
index 48e110ad164397ac323c9a62fa01a0baa71eda4e..3745b497c192de0b5c72a4b8168a934a79bb9b16 100644
--- a/gcc/config/i386/predicates.md
+++ b/gcc/config/i386/predicates.md
@@ -1162,7 +1162,7 @@
 
 ;; Return true if OP is a binary operator that can be promoted to wider mode.
 (define_predicate "promotable_binary_operator"
-  (ior (match_code "plus,and,ior,xor,ashift")
+  (ior (match_code "plus,minus,and,ior,xor,ashift")
        (and (match_code "mult")
 	    (match_test "TARGET_TUNE_PROMOTE_HIMODE_IMUL"))))