1 /* PR target/14209. Bug in cris.md, shrinking access size of 2 postincrement. 3 Origin: <hp@axis.com>. */ 4 5 long int xb (long int *y) __attribute__ ((__noinline__)); 6 long int xw (long int *y) __attribute__ ((__noinline__)); 7 short int yb (short int *y) __attribute__ ((__noinline__)); 8 xb(long int * y)9long int xb (long int *y) 10 { 11 long int xx = *y & 255; 12 return xx + y[1]; 13 } 14 xw(long int * y)15long int xw (long int *y) 16 { 17 long int xx = *y & 65535; 18 return xx + y[1]; 19 } 20 yb(short int * y)21short int yb (short int *y) 22 { 23 short int xx = *y & 255; 24 return xx + y[1]; 25 } 26 main(void)27int main (void) 28 { 29 long int y[] = {-1, 16000}; 30 short int yw[] = {-1, 16000}; 31 32 if (xb (y) != 16255 33 || xw (y) != 81535 34 || yb (yw) != 16255) 35 abort (); 36 exit (0); 37 } 38