Merge reload-branch up to revision 101000
[official-gcc.git] / gcc / testsuite / gcc.dg / 20020517-1.c
blobbde20095594ba36e6d796ea49f7e86452573aa6a
1 /* This testcase caused ICE in do_SUBST on IA-32, because 0xf6 constant
2 was not sign-extended for QImode. */
3 /* { dg-do run } */
4 /* { dg-options "-O2" } */
5 /* { dg-options "-O2 -mtune=i686" { target { i?86-*-* && ilp32 } } } */
6 /* { dg-options "-O2 -mtune=i686" { target { x86_64-*-* && ilp32 } } } */
8 #include <limits.h>
10 void abort (void);
11 void exit (int);
13 void foo (void)
15 int i;
16 char *p;
18 p = (char *) &i;
19 *p = -10;
20 if (* (unsigned char *) p != 0x100 - 10)
21 abort ();
24 int main (void)
26 if (UCHAR_MAX == 255)
27 foo ();
28 exit (0);