diff options
Diffstat (limited to 'gcc/testsuite/gcc.target/i386/pr39139.c')
-rw-r--r-- | gcc/testsuite/gcc.target/i386/pr39139.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/gcc/testsuite/gcc.target/i386/pr39139.c b/gcc/testsuite/gcc.target/i386/pr39139.c index 95ea7fda9ba..e4cb845f9ec 100644 --- a/gcc/testsuite/gcc.target/i386/pr39139.c +++ b/gcc/testsuite/gcc.target/i386/pr39139.c @@ -12,22 +12,24 @@ # define SI_REG asm ("esi") #endif +__extension__ typedef __SIZE_TYPE__ size_t; + static inline int foo (unsigned int x, void *y) { - register unsigned long r AX_REG; - register unsigned long a1 DI_REG; - register unsigned long a2 SI_REG; - a1 = (unsigned long) x; - a2 = (unsigned long) y; + register size_t r AX_REG; + register size_t a1 DI_REG; + register size_t a2 SI_REG; + a1 = (size_t) x; + a2 = (size_t) y; asm volatile ("" : "=r" (r), "+r" (a1), "+r" (a2) : : "memory"); return (int) r; } -struct T { unsigned long t1, t2; unsigned int t3, t4, t5; }; +struct T { size_t t1, t2; unsigned int t3, t4, t5; }; int -bar (unsigned long x, unsigned int y, unsigned long u, unsigned int v) +bar (size_t x, unsigned int y, size_t u, unsigned int v) { long r; struct T e = { .t1 = x, .t2 = u }; |