mirror of
https://github.com/nArnoSNES/tcc-65816.git
synced 2024-06-11 22:29:28 +00:00
38 lines
707 B
C
38 lines
707 B
C
/* PR target/14209. Bug in cris.md, shrinking access size of
|
|
postincrement.
|
|
Origin: <hp@axis.com>. */
|
|
|
|
long int xb (long int *y) __attribute__ ((__noinline__));
|
|
long int xw (long int *y) __attribute__ ((__noinline__));
|
|
short int yb (short int *y) __attribute__ ((__noinline__));
|
|
|
|
long int xb (long int *y)
|
|
{
|
|
long int xx = *y & 255;
|
|
return xx + y[1];
|
|
}
|
|
|
|
long int xw (long int *y)
|
|
{
|
|
long int xx = *y & 65535;
|
|
return xx + y[1];
|
|
}
|
|
|
|
short int yb (short int *y)
|
|
{
|
|
short int xx = *y & 255;
|
|
return xx + y[1];
|
|
}
|
|
|
|
int main (void)
|
|
{
|
|
long int y[] = {-1, 16000};
|
|
short int yw[] = {-1, 16000};
|
|
|
|
if (xb (y) != 16255
|
|
|| xw (y) != 81535
|
|
|| yb (yw) != 16255)
|
|
abort ();
|
|
exit (0);
|
|
}
|