Hi,

I checked in the following cleanup patches.


H.J.
commit b45118372b8e816325072760d431747354bb5f46
Author: H.J. Lu <hjl.to...@gmail.com>
Date:   Fri Jul 22 09:37:26 2011 -0700

    Rename x32_general_operand to si_general_operand.

diff --git a/gcc/ChangeLog.x32 b/gcc/ChangeLog.x32
index a4b34b9..5c2c673 100644
--- a/gcc/ChangeLog.x32
+++ b/gcc/ChangeLog.x32
@@ -1,3 +1,23 @@
+2011-07-22  H.J. Lu  <hongjiu...@intel.com>
+
+       * config/i386/i386.md (general_operand): Replace
+       x32_general_operand with si_general_operand.
+       (general_szext_operand): Likewise.
+       (addsi_1_zext): Likewise.
+       (*addsi_2_zext): Likewise.
+       (*subsi_1_zext): Likewise.
+       (*subsi_2_zext): Likewise.
+       (*subsi_3_zext): Likewise.
+       (*addsi3_carry_zext): Likewise.
+       (*subsi3_carry_zext): Likewise.
+       (*andsi_1): Likewise.
+       (*andsi_1_zext): Likewise.
+       (*andsi_2_zext): Likewise.
+
+       * config/i386/predicates.md (x32_general_operand): Renamed to
+       ...
+       (si_general_operand): This.
+
 2011-07-21  H.J. Lu  <hongjiu...@intel.com>
 
        * config/i386/i386.c (ix86_option_override_internal): Disallow
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 09ea1d4..c834bad 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -879,7 +879,7 @@
 (define_mode_attr general_operand
        [(QI "general_operand")
         (HI "general_operand")
-        (SI "x32_general_operand")
+        (SI "si_general_operand")
         (DI "x86_64_general_operand")
         (TI "x86_64_general_operand")])
 
@@ -887,7 +887,7 @@
 (define_mode_attr general_szext_operand
        [(QI "general_operand")
         (HI "general_operand")
-        (SI "x32_general_operand")
+        (SI "si_general_operand")
         (DI "x86_64_szext_general_operand")])
 
 ;; Immediate operand predicate for integer modes.
@@ -5531,7 +5531,7 @@
   [(set (match_operand:DI 0 "register_operand" "=r,r,r")
        (zero_extend:DI
          (plus:SI (match_operand:SI 1 "nonimmediate_operand" "%0,r,r")
-                  (match_operand:SI 2 "x32_general_operand" "rmYe,0,lYl"))))
+                  (match_operand:SI 2 "si_general_operand" "rmYe,0,lYl"))))
    (clobber (reg:CC FLAGS_REG))]
   "TARGET_64BIT && ix86_binary_operator_ok (PLUS, SImode, operands)"
 {
@@ -5920,7 +5920,7 @@
   [(set (reg FLAGS_REG)
        (compare
          (plus:SI (match_operand:SI 1 "nonimmediate_operand" "%0")
-                  (match_operand:SI 2 "x32_general_operand" "rmYe"))
+                  (match_operand:SI 2 "si_general_operand" "rmYe"))
          (const_int 0)))
    (set (match_operand:DI 0 "register_operand" "=r")
        (zero_extend:DI (plus:SI (match_dup 1) (match_dup 2))))]
@@ -6500,7 +6500,7 @@
   [(set (match_operand:DI 0 "register_operand" "=r")
        (zero_extend:DI
          (minus:SI (match_operand:SI 1 "register_operand" "0")
-                   (match_operand:SI 2 "x32_general_operand" "rmYe"))))
+                   (match_operand:SI 2 "si_general_operand" "rmYe"))))
    (clobber (reg:CC FLAGS_REG))]
   "TARGET_64BIT && ix86_binary_operator_ok (MINUS, SImode, operands)"
   "sub{l}\t{%2, %k0|%k0, %2}"
@@ -6537,7 +6537,7 @@
   [(set (reg FLAGS_REG)
        (compare
          (minus:SI (match_operand:SI 1 "register_operand" "0")
-                   (match_operand:SI 2 "x32_general_operand" "rmYe"))
+                   (match_operand:SI 2 "si_general_operand" "rmYe"))
          (const_int 0)))
    (set (match_operand:DI 0 "register_operand" "=r")
        (zero_extend:DI
@@ -6564,7 +6564,7 @@
 (define_insn "*subsi_3_zext"
   [(set (reg FLAGS_REG)
        (compare (match_operand:SI 1 "register_operand" "0")
-                (match_operand:SI 2 "x32_general_operand" "rmYe")))
+                (match_operand:SI 2 "si_general_operand" "rmYe")))
    (set (match_operand:DI 0 "register_operand" "=r")
        (zero_extend:DI
          (minus:SI (match_dup 1)
@@ -6611,7 +6611,7 @@
          (plus:SI (match_operand:SI 1 "nonimmediate_operand" "%0")
                   (plus:SI (match_operator 3 "ix86_carry_flag_operator"
                             [(reg FLAGS_REG) (const_int 0)])
-                           (match_operand:SI 2 "x32_general_operand" 
"rmYe")))))
+                           (match_operand:SI 2 "si_general_operand" "rmYe")))))
    (clobber (reg:CC FLAGS_REG))]
   "TARGET_64BIT && ix86_binary_operator_ok (PLUS, SImode, operands)"
   "adc{l}\t{%2, %k0|%k0, %2}"
@@ -6626,7 +6626,7 @@
          (minus:SI (match_operand:SI 1 "register_operand" "0")
                    (plus:SI (match_operator 3 "ix86_carry_flag_operator"
                              [(reg FLAGS_REG) (const_int 0)])
-                            (match_operand:SI 2 "x32_general_operand" 
"rmYe")))))
+                            (match_operand:SI 2 "si_general_operand" 
"rmYe")))))
    (clobber (reg:CC FLAGS_REG))]
   "TARGET_64BIT && ix86_binary_operator_ok (MINUS, SImode, operands)"
   "sbb{l}\t{%2, %k0|%k0, %2}"
@@ -7749,7 +7749,7 @@
 (define_insn "*andsi_1"
   [(set (match_operand:SI 0 "nonimmediate_operand" "=rm,r,r")
        (and:SI (match_operand:SI 1 "nonimmediate_operand" "%0,0,qm")
-               (match_operand:SI 2 "x32_general_operand" "rYe,rm,L")))
+               (match_operand:SI 2 "si_general_operand" "rYe,rm,L")))
    (clobber (reg:CC FLAGS_REG))]
   "ix86_binary_operator_ok (AND, SImode, operands)"
 {
@@ -7796,7 +7796,7 @@
   [(set (match_operand:DI 0 "register_operand" "=r")
        (zero_extend:DI
          (and:SI (match_operand:SI 1 "nonimmediate_operand" "%0")
-                 (match_operand:SI 2 "x32_general_operand" "rmYe"))))
+                 (match_operand:SI 2 "si_general_operand" "rmYe"))))
    (clobber (reg:CC FLAGS_REG))]
   "TARGET_64BIT && ix86_binary_operator_ok (AND, SImode, operands)"
   "and{l}\t{%2, %k0|%k0, %2}"
@@ -7959,7 +7959,7 @@
   [(set (reg FLAGS_REG)
        (compare (and:SI
                  (match_operand:SI 1 "nonimmediate_operand" "%0")
-                 (match_operand:SI 2 "x32_general_operand" "rmYe"))
+                 (match_operand:SI 2 "si_general_operand" "rmYe"))
                 (const_int 0)))
    (set (match_operand:DI 0 "register_operand" "=r")
        (zero_extend:DI (and:SI (match_dup 1) (match_dup 2))))]
diff --git a/gcc/config/i386/predicates.md b/gcc/config/i386/predicates.md
index 8b87753..56ce0a6 100644
--- a/gcc/config/i386/predicates.md
+++ b/gcc/config/i386/predicates.md
@@ -1206,8 +1206,8 @@
   return !TARGET_X32 || !pic_32bit_operand (op, mode);
 })
 
-;; Return nonzero if OP is general operand representable on x32.
-(define_predicate "x32_general_operand"
+;; Test for a valid general operand for SImode.
+(define_predicate "si_general_operand"
   (if_then_else (and (match_test "TARGET_X32")
                     (match_test "flag_pic"))
     (match_operand 0 "x86_64_general_operand")
commit 66f086369b2afb58fde7eefd8fef01fe7a9442a6
Author: H.J. Lu <hjl.to...@gmail.com>
Date:   Fri Jul 22 09:40:10 2011 -0700

    Remove pointer_register_operand.

diff --git a/gcc/ChangeLog.x32 b/gcc/ChangeLog.x32
index 5c2c673..ab8f9c5 100644
--- a/gcc/ChangeLog.x32
+++ b/gcc/ChangeLog.x32
@@ -1,5 +1,9 @@
 2011-07-22  H.J. Lu  <hongjiu...@intel.com>
 
+       * config/i386/predicates.md (pointer_register_operand): Removed.
+
+2011-07-22  H.J. Lu  <hongjiu...@intel.com>
+
        * config/i386/i386.md (general_operand): Replace
        x32_general_operand with si_general_operand.
        (general_szext_operand): Likewise.
diff --git a/gcc/config/i386/predicates.md b/gcc/config/i386/predicates.md
index 56ce0a6..42dd599 100644
--- a/gcc/config/i386/predicates.md
+++ b/gcc/config/i386/predicates.md
@@ -1226,8 +1226,3 @@
 {
   return !TARGET_X32 || !SYMBOLIC_CONST (op);
 })
-
-;; Test for pointer register operand
-(define_predicate "pointer_register_operand"
-  (and (match_code "reg")
-       (match_test "REG_POINTER (op)")))
commit 9c1bdcbb84e5da6fbfc30accde0fba38d2ec0ef6
Author: H.J. Lu <hjl.to...@gmail.com>
Date:   Fri Jul 22 10:54:57 2011 -0700

    Replace x32_lea_nonmemory_operand with si_lea_nonmemory_operand.

diff --git a/gcc/ChangeLog.x32 b/gcc/ChangeLog.x32
index ab8f9c5..e5fb2a4 100644
--- a/gcc/ChangeLog.x32
+++ b/gcc/ChangeLog.x32
@@ -1,5 +1,15 @@
 2011-07-22  H.J. Lu  <hongjiu...@intel.com>
 
+       * config/i386/i386.md (LEA split): Replace
+       x32_lea_nonmemory_operand with si_lea_nonmemory_operand.
+       (*lea_general_2): Likewise.
+       (*lea_general_2_zext): Likewise.
+
+       * config/i386/predicates.md (x32_lea_nonmemory_operand): Removed.
+       (si_lea_nonmemory_operand): New.
+
+2011-07-22  H.J. Lu  <hongjiu...@intel.com>
+
        * config/i386/predicates.md (pointer_register_operand): Removed.
 
 2011-07-22  H.J. Lu  <hongjiu...@intel.com>
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index c834bad..b03fd88 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -5863,7 +5863,7 @@
   [(set (match_operand:DI 0 "register_operand" "")
        (zero_extend:DI
          (plus:SI (match_operand:SI 1 "register_operand" "")
-                  (match_operand:SI 2 "x32_lea_nonmemory_operand" ""))))
+                  (match_operand:SI 2 "si_lea_nonmemory_operand" ""))))
    (clobber (reg:CC FLAGS_REG))]
   "TARGET_64BIT && reload_completed
    && ix86_lea_for_add_ok (insn, operands)"
@@ -6312,7 +6312,7 @@
   [(set (match_operand 0 "register_operand" "=r")
        (plus (mult (match_operand 1 "index_register_operand" "l")
                    (match_operand 2 "const248_operand" "i"))
-             (match_operand 3 "x32_lea_nonmemory_operand" "rYe")))]
+             (match_operand 3 "si_lea_nonmemory_operand" "rYe")))]
   "(GET_MODE (operands[0]) == QImode || GET_MODE (operands[0]) == HImode
     || (TARGET_64BIT && GET_MODE (operands[0]) == SImode))
    && (!TARGET_PARTIAL_REG_STALL
@@ -6345,7 +6345,7 @@
          (plus:SI (mult:SI
                     (match_operand:SI 1 "index_register_operand" "l")
                     (match_operand:SI 2 "const248_operand" "n"))
-                  (match_operand:SI 3 "x32_lea_nonmemory_operand" "rYe"))))]
+                  (match_operand:SI 3 "si_lea_nonmemory_operand" "rYe"))))]
   "TARGET_64BIT"
   "#"
   "&& reload_completed"
diff --git a/gcc/config/i386/predicates.md b/gcc/config/i386/predicates.md
index 42dd599..51c5e0b 100644
--- a/gcc/config/i386/predicates.md
+++ b/gcc/config/i386/predicates.md
@@ -1220,9 +1220,9 @@
   return !TARGET_X32 || !SYMBOLIC_CONST (op);
 })
 
-;; Return nonzero if OP is nonmemory operand representable in lea on x32.
-(define_predicate "x32_lea_nonmemory_operand"
-  (match_operand 0 "nonmemory_operand")
-{
-  return !TARGET_X32 || !SYMBOLIC_CONST (op);
-})
+;; Test for a valid nonmemory operand for lea in SImode.
+(define_predicate "si_lea_nonmemory_operand"
+  (and (match_operand 0 "nonmemory_operand")
+       (ior (match_test "!TARGET_X32")
+           (match_test "GET_MODE (op) != SImode")
+           (match_test "!SYMBOLIC_CONST (op)"))))
commit 09fae22ac46320ac4bc120982105258372d9f276
Author: H.J. Lu <hjl.to...@gmail.com>
Date:   Fri Jul 22 11:11:01 2011 -0700

    Replace x32_lea_immediate_operand with si_lea_immediate_operand.

diff --git a/gcc/ChangeLog.x32 b/gcc/ChangeLog.x32
index e5fb2a4..3dc46e2 100644
--- a/gcc/ChangeLog.x32
+++ b/gcc/ChangeLog.x32
@@ -1,5 +1,17 @@
 2011-07-22  H.J. Lu  <hongjiu...@intel.com>
 
+       * config/i386/constraints.md (Yl): Replace
+       x32_lea_immediate_operand with si_lea_immediate_operand.
+       * config/i386/i386.md (*lea_general_1): Likewise.
+       (*lea_general_1_zext): Likewise.
+       (*lea_general_3): Likewise.
+       (*lea_general_3_zext): Likewise.
+
+       * config/i386/predicates.md (x32_lea_immediate_operand): Removed.
+       (si_lea_immediate_operand): New.
+
+2011-07-22  H.J. Lu  <hongjiu...@intel.com>
+
        * config/i386/i386.md (LEA split): Replace
        x32_lea_nonmemory_operand with si_lea_nonmemory_operand.
        (*lea_general_2): Likewise.
diff --git a/gcc/config/i386/constraints.md b/gcc/config/i386/constraints.md
index 0b53c76..53806c6 100644
--- a/gcc/config/i386/constraints.md
+++ b/gcc/config/i386/constraints.md
@@ -143,7 +143,7 @@
 (define_constraint "Yl"
   "Immediate constant for lea."
   (if_then_else (match_test "TARGET_X32")
-    (match_operand 0 "x32_lea_immediate_operand")
+    (match_operand 0 "si_lea_immediate_operand")
     (match_operand 0 "immediate_operand")))
 
 (define_constraint "z"
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index b03fd88..2cf5c93 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -6259,7 +6259,7 @@
   [(set (match_operand 0 "register_operand" "=r")
        (plus (plus (match_operand 1 "index_register_operand" "l")
                    (match_operand 2 "register_operand" "r"))
-             (match_operand 3 "x32_lea_immediate_operand" "Ye")))]
+             (match_operand 3 "si_lea_immediate_operand" "Ye")))]
   "(GET_MODE (operands[0]) == QImode || GET_MODE (operands[0]) == HImode
     || (TARGET_64BIT && GET_MODE (operands[0]) == SImode))
    && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
@@ -6292,7 +6292,7 @@
          (plus:SI (plus:SI
                     (match_operand:SI 1 "index_register_operand" "l")
                     (match_operand:SI 2 "register_operand" "r"))
-                  (match_operand:SI 3 "x32_lea_immediate_operand" "Ye"))))]
+                  (match_operand:SI 3 "si_lea_immediate_operand" "Ye"))))]
   "TARGET_64BIT"
   "#"
   "&& reload_completed"
@@ -6365,7 +6365,7 @@
        (plus (plus (mult (match_operand 1 "index_register_operand" "l")
                          (match_operand 2 "const248_operand" "i"))
                    (match_operand 3 "register_operand" "r"))
-             (match_operand 4 "x32_lea_immediate_operand" "Ye")))]
+             (match_operand 4 "si_lea_immediate_operand" "Ye")))]
   "(GET_MODE (operands[0]) == QImode || GET_MODE (operands[0]) == HImode
     || (TARGET_64BIT && GET_MODE (operands[0]) == SImode))
    && (!TARGET_PARTIAL_REG_STALL
@@ -6403,7 +6403,7 @@
                       (match_operand:SI 1 "index_register_operand" "l")
                       (match_operand:SI 2 "const248_operand" "n"))
                     (match_operand:SI 3 "register_operand" "r"))
-                  (match_operand:SI 4 "x32_lea_immediate_operand" "Ye"))))]
+                  (match_operand:SI 4 "si_lea_immediate_operand" "Ye"))))]
   "TARGET_64BIT"
   "#"
   "&& reload_completed"
diff --git a/gcc/config/i386/predicates.md b/gcc/config/i386/predicates.md
index 51c5e0b..e1e5b6a 100644
--- a/gcc/config/i386/predicates.md
+++ b/gcc/config/i386/predicates.md
@@ -1213,12 +1213,12 @@
     (match_operand 0 "x86_64_general_operand")
     (match_operand 0 "general_operand")))
 
-;; Return true when a constant operand can be used in lea on x32.
-(define_predicate "x32_lea_immediate_operand"
-  (match_operand 0 "immediate_operand")
-{
-  return !TARGET_X32 || !SYMBOLIC_CONST (op);
-})
+;; Test for a valid immediate operand for lea in SImode.
+(define_predicate "si_lea_immediate_operand"
+  (and (match_operand 0 "immediate_operand")
+       (ior (match_test "!TARGET_X32")
+           (match_test "GET_MODE (op) != SImode")
+           (match_test "!SYMBOLIC_CONST (op)"))))
 
 ;; Test for a valid nonmemory operand for lea in SImode.
 (define_predicate "si_lea_nonmemory_operand"
commit 79c4d30aaca91c0602ce760654647f7379b8b668
Author: H.J. Lu <hjl.to...@gmail.com>
Date:   Fri Jul 22 11:34:01 2011 -0700

    Remove x32_store_immediate_operand.

diff --git a/gcc/ChangeLog.x32 b/gcc/ChangeLog.x32
index 3dc46e2..f8f99ff 100644
--- a/gcc/ChangeLog.x32
+++ b/gcc/ChangeLog.x32
@@ -1,5 +1,13 @@
 2011-07-22  H.J. Lu  <hongjiu...@intel.com>
 
+       * config/i386/constraints.md (Ys): Rewritten.
+       (Ye): Updated.
+       (Yl): Likewise.
+
+       * config/i386/predicates.md (x32_store_immediate_operand): Removed.
+
+2011-07-22  H.J. Lu  <hongjiu...@intel.com>
+
        * config/i386/constraints.md (Yl): Replace
        x32_lea_immediate_operand with si_lea_immediate_operand.
        * config/i386/i386.md (*lea_general_1): Likewise.
diff --git a/gcc/config/i386/constraints.md b/gcc/config/i386/constraints.md
index 53806c6..a5d54a1 100644
--- a/gcc/config/i386/constraints.md
+++ b/gcc/config/i386/constraints.md
@@ -125,23 +125,25 @@
 
 ;; Constant constraints.
 ;; We also use the Y prefix to denote constant constraints:
-;;  s  Immediate constant for x32 store
-;;  e  Immediate constant for x32
-;;  l  Immediate constant for lea 
+;;  s  Immediate constant source operand for store
+;;  e  Immediate constant for SImode
+;;  l  Immediate constant for lea
 
 (define_constraint "Ys"
-  "Immediate constant for x32 store."
-  (match_operand 0 "x32_store_immediate_operand"))
+  "@internal Immediate constant source operand for store."
+  (and (match_operand 0 "immediate_operand")
+       (ior (match_test "!TARGET_X32")
+           (not (match_operand 0 "pic_32bit_operand")))))
 
 (define_constraint "Ye"
-  "Immediate constant for x32."
+  "@internal Immediate constant for SImode."
   (if_then_else (and (match_test "TARGET_X32")
                     (match_test "flag_pic"))
     (match_operand 0 "x86_64_immediate_operand")
     (match_operand 0 "immediate_operand")))
 
 (define_constraint "Yl"
-  "Immediate constant for lea."
+  "@internal Immediate constant for lea."
   (if_then_else (match_test "TARGET_X32")
     (match_operand 0 "si_lea_immediate_operand")
     (match_operand 0 "immediate_operand")))
diff --git a/gcc/config/i386/predicates.md b/gcc/config/i386/predicates.md
index e1e5b6a..267136a 100644
--- a/gcc/config/i386/predicates.md
+++ b/gcc/config/i386/predicates.md
@@ -1199,13 +1199,6 @@
   return true;
 })
 
-;; Return true when a constant operand can be stored into memory for x32.
-(define_predicate "x32_store_immediate_operand"
-  (match_operand 0 "immediate_operand")
-{
-  return !TARGET_X32 || !pic_32bit_operand (op, mode);
-})
-
 ;; Test for a valid general operand for SImode.
 (define_predicate "si_general_operand"
   (if_then_else (and (match_test "TARGET_X32")
commit 04f07e5710ee4ee16efb056230522b3d71da1956
Author: H.J. Lu <hjl.to...@gmail.com>
Date:   Fri Jul 22 11:36:46 2011 -0700

    Put back a blank line in config/i386/i386.md.

diff --git a/gcc/ChangeLog.x32 b/gcc/ChangeLog.x32
index f8f99ff..f2afa84 100644
--- a/gcc/ChangeLog.x32
+++ b/gcc/ChangeLog.x32
@@ -1,5 +1,9 @@
 2011-07-22  H.J. Lu  <hongjiu...@intel.com>
 
+       * config/i386/i386.md: Put back a blank line.
+
+2011-07-22  H.J. Lu  <hongjiu...@intel.com>
+
        * config/i386/constraints.md (Ys): Rewritten.
        (Ye): Updated.
        (Yl): Likewise.
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 2cf5c93..02b6fd6 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -977,6 +977,7 @@
 (include "geode.md")
 (include "atom.md")
 (include "core2.md")
+
 
 ;; Operand and operator predicates and constraints
 
commit 2f83a7a2b6b454f5bd805aa80f37303d1cc5cddb
Author: H.J. Lu <hjl.to...@gmail.com>
Date:   Fri Jul 22 13:55:03 2011 -0700

    Don't check SUBREG_REG in aligned_operand.

diff --git a/gcc/ChangeLog.x32 b/gcc/ChangeLog.x32
index f2afa84..c2a33da 100644
--- a/gcc/ChangeLog.x32
+++ b/gcc/ChangeLog.x32
@@ -1,5 +1,10 @@
 2011-07-22  H.J. Lu  <hongjiu...@intel.com>
 
+       * config/i386/predicates.md (aligned_operand): Don't check
+       SUBREG_REG for parts.index and parts.base.
+
+2011-07-22  H.J. Lu  <hongjiu...@intel.com>
+
        * config/i386/i386.md: Put back a blank line.
 
 2011-07-22  H.J. Lu  <hongjiu...@intel.com>
diff --git a/gcc/config/i386/predicates.md b/gcc/config/i386/predicates.md
index 267136a..cda74b7 100644
--- a/gcc/config/i386/predicates.md
+++ b/gcc/config/i386/predicates.md
@@ -857,15 +857,11 @@
   /* Look for some component that isn't known to be aligned.  */
   if (parts.index)
     {
-      if (GET_CODE (parts.index) == SUBREG)
-       parts.index = SUBREG_REG (parts.index);
       if (REGNO_POINTER_ALIGN (REGNO (parts.index)) * parts.scale < 32)
        return false;
     }
   if (parts.base)
     {
-      if (GET_CODE (parts.base) == SUBREG)
-       parts.base = SUBREG_REG (parts.base);
       if (REGNO_POINTER_ALIGN (REGNO (parts.base)) < 32)
        return false;
     }

Reply via email to