]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - gcc/cselib.c
poly_int: SUBREG_BYTE
[thirdparty/gcc.git] / gcc / cselib.c
index 21a690cd36160b89814986d6cd9a7191db31cf72..5a1da98c1fe1e55bc55462d0e2f81fd0e1b20f74 100644 (file)
@@ -987,6 +987,11 @@ rtx_equal_for_cselib_1 (rtx x, rtx y, machine_mode memmode, int depth)
            return 0;
          break;
 
+       case 'p':
+         if (maybe_ne (SUBREG_BYTE (x), SUBREG_BYTE (y)))
+           return 0;
+         break;
+
        case 'V':
        case 'E':
          /* Two vectors must have the same length.  */
@@ -1278,6 +1283,10 @@ cselib_hash_rtx (rtx x, int create, machine_mode memmode)
          hash += XINT (x, i);
          break;
 
+       case 'p':
+         hash += constant_lower_bound (SUBREG_BYTE (x));
+         break;
+
        case '0':
        case 't':
          /* unused */